TIMEDATECTL(1)

الاسم
timedatectl - التحكم في وقت وتاريخ النظام

موجز

timedatectl [خيارات...] {أمر}

الوصف

يمكن استخدام timedatectl للاستعلام عن ساعة النظام وإعداداتها وتغييرها، وتمكين أو تعطيل خدمات مزامنة الوقت.

استخدم systemd-firstboot(1) لتهيئة المنطقة الزمنية للنظام لصور النظام الموصولة (ولكن غير المُقلعة).

يمكن استخدام timedatectl لعرض الحالة الحالية لخدمات مزامنة الوقت، على سبيل المثال systemd-timesyncd.service(8).

الأوامر

الأوامر التالية مفهومة:

status
    يعرض الإعدادات الحالية لساعة النظام وساعة الوقت الحقيقي (RTC)، بما في ذلك ما إذا كانت مزامنة وقت الشبكة نشطة. إذا لم يُحدد أمر، فهذا هو المبدئي الضمني.

    أُضيف في الإصدارة 195.

show
    يعرض نفس المعلومات مثل status، ولكن بشكل قابل للقراءة آليًا. هذا الأمر مخصص للاستخدام كلما كان الإخراج القابل للتحليل بواسطة الحاسوب مطلوبًا. استخدم status إذا كنت تبحث عن إخراج منسق قابل للقراءة البشرية.

    بشكل مبدئي، تُكبت الخصائص الفارغة. استخدم --all لعرضها أيضًا. لاختيار خصائص محددة لعرضها، استخدم --property=.

    أُضيف في الإصدار 239.

set-time [وقت]
    يضبط ساعة النظام على الطابع الزمني المحدد. سيؤدي هذا أيضًا إلى تحديث وقت ساعة الوقت الحقيقي (RTC) وفقًا لذلك. يمكن تحديد الطابع الزمني بالتنسيق "2012-10-30 18:17:16". راجع systemd.time(7) لمزيد من التفاصيل حول تنسيق الطابع الزمني المقبول.

    أُضيف في الإصدارة 195.

set-timezone [منطقة زمنية]
    يضبط المنطقة الزمنية للنظام على القيمة المحددة. يمكن سرد المناطق الزمنية المتاحة باستخدام list-timezones. إذا كانت ساعة الوقت الحقيقي (RTC) مهيأة لتكون بالتوقيت المحلي، فسيؤدي هذا أيضًا إلى تحديث وقت RTC. سيغير هذا الاستدعاء الرابط الرمزي /etc/localtime. راجع localtime(5) لمزيد من المعلومات.

    أُضيف في الإصدارة 195.

list-timezones
    يسرد المناطق الزمنية المتاحة، واحدة لكل سطر. يمكن ضبط الإدخالات من القائمة كمنطقة زمنية للنظام باستخدام set-timezone.

    أُضيف في الإصدارة 195.

set-local-rtc [قيمة منطقية]
    يأخذ وسيطًا منطقيًا. إذا كان "0"، يُهيأ النظام للحفاظ على ساعة الوقت الحقيقي (RTC) بالتوقيت العالمي. إذا كان "1"، فسيحافظ على RTC بالتوقيت المحلي بدلاً من ذلك. لاحظ أن الحفاظ على RTC في المنطقة الزمنية المحلية غير مدعوم بالكامل وسيخلق مشاكل متنوعة مع تغييرات المنطقة الزمنية وتعديلات التوقيت الصيفي. إذا كان ذلك ممكنًا على الإطلاق، حافظ على RTC في وضع UTC. لاحظ أن استدعاء هذا سيقوم أيضًا بمزامنة RTC من ساعة النظام، ما لم يُمرر --adjust-system-clock (انظر أعلاه). سيغير هذا الأمر السطر الثالث من /etc/adjtime، كما هو موثق في hwclock(8).

    أُضيف في الإصدارة 195.

set-ntp [قيمة منطقية]
    يأخذ وسيطًا منطقيًا. يتحكم في ما إذا كانت مزامنة وقت الشبكة نشطة ومُمكّنة (إذا كانت متاحة). إذا كانت الوسيطة صحيحة، فإن هذا يمكّن ويبدأ أول خدمة مزامنة شبكة موجودة. إذا كانت الوسيطة خاطئة، فإن هذا يعطل ويوقف خدمات مزامنة الشبكة المعروفة. الطريقة التي تُبنى بها قائمة الخدمات موصوفة في systemd-timedated.service(8).

    أُضيف في الإصدارة 195.

  أوامر systemd-timesyncd

الأوامر التالية خاصة بـ systemd-timesyncd.service(8).

timesync-status
    يعرض الحالة الحالية لـ systemd-timesyncd.service(8). إذا تم تحديد --monitor، فسيقوم هذا بمراقبة تحديثات الحالة.

    أُضيف في الإصدار 239.

show-timesync
    يعرض نفس المعلومات مثل timesync-status، ولكن بشكل قابل للقراءة آليًا. هذا الأمر مخصص للاستخدام كلما كان الإخراج القابل للتحليل بواسطة الحاسوب مطلوبًا. استخدم timesync-status إذا كنت تبحث عن إخراج منسق قابل للقراءة البشرية.

    بشكل مبدئي، تُكبت الخصائص الفارغة. استخدم --all لعرضها أيضًا. لاختيار خصائص محددة لعرضها، استخدم --property=.

    أُضيف في الإصدار 239.

ntp-servers واجهة خادم...
    يضبط خوادم NTP الخاصة بالواجهة. يمكن استخدام هذا الأمر فقط عندما تكون الواجهة مُدارة بواسطة systemd-networkd.

    أُضيف في الإصدار 243.

revert واجهة
    يعيد خوادم NTP الخاصة بالواجهة إلى حالتها السابقة. يمكن استخدام هذا الأمر فقط عندما تكون الواجهة مُدارة بواسطة systemd-networkd.

    أُضيف في الإصدار 243.

الخيارات

الخيارات التالية مفهومة:

--adjust-system-clock
    إذا تم استدعاء set-local-rtc وتم تمرير هذا الخيار، فسيتم مزامنة ساعة النظام من ساعة الوقت الحقيقي (RTC) مرة أخرى، مع مراعاة الإعداد الجديد. وإلا، فسيتم مزامنة RTC من ساعة النظام.

    أُضيف في الإصدارة 195.

--monitor
    إذا تم استدعاء timesync-status وتم تمرير هذا الخيار، فإن timedatectl يراقب حالة systemd-timesyncd.service(8) ويُحدّث المخرجات. استخدم Ctrl+C لإنهاء المراقبة.

    أُضيف في الإصدار 239.

-a، --all
    عند عرض خصائص systemd-timesyncd.service(8)، اعرض جميع الخصائص بغض النظر عن كونها مضبوطة أم لا.

    أُضيف في الإصدار 239.

-p، --property=
    عند عرض خصائص systemd-timesyncd.service(8)، قصر العرض على خصائص معينة كما هو محدد كوسيط. إذا لم يُحدد، تُعرض جميع الخصائص المضبوطة. يجب أن يكون الوسيط اسم خاصية، مثل "ServerName". إذا حُدد أكثر من مرة، تُعرض جميع الخصائص بالأسماء المحددة.

    أُضيف في الإصدار 239.

--value
    عند طباعة الخصائص باستخدام show-timesync، اطبع القيمة فقط، وتجاوز اسم الخاصية و"=".

    أُضيف في الإصدار 239.

-P
    يكافئ --value --property=، أي يعرض قيمة الخاصية دون اسم الخاصية أو علامة "=". لاحظ أن استخدام -P مرة واحدة سيؤثر أيضًا على جميع الخصائص المدرجة مع -p/--property=.

    أُضيف في الإصدار 256.

-H، --host=
    نفّذ العملية عن بُعد. حدد اسم مضيف، أو اسم مستخدم واسم مضيف يفصل بينهما "@" للاتصال به. يمكن اختيارياً إلحاق اسم المضيف بمنفذ يستمع إليه ssh، مفصولاً بـ ":"، ثم اسم حاوية، مفصولاً بـ "/"، مما يوصل مباشرة بحاوية معينة على المضيف المحدد. سيستخدم هذا SSH للتحدث إلى نسخة مدير الحاسوب البعيد. يمكن سرد أسماء الحاويات باستخدام machinectl -H المضيف. ضع عناوين IPv6بين قوسين.

-M، --machine=
    نفّذ العملية على حاوية محلية. حدد اسم الحاوية للاتصال بها، مسبوقًا اختياريًا باسم مستخدم للاتصال به وحرف "@" كفاصل. إذا استُخدمت السلسلة الخاصة ".host" بدلاً من اسم الحاوية، فسيُجرى اتصال بالنظام المحلي (وهو أمر مفيد للاتصال بناقل مستخدم معين: "--user --machine=lennart@.host"). إذا لم تُستخدم صيغة "@"، فسيُتصل كمستخدم جذر (root). إذا استُخدمت صيغة "@"، فيمكن حذف الجانب الأيسر أو الأيمن (ولكن ليس كلاهما) وفي هذه الحالة يُفترض اسم المستخدم المحلي و ".host".

--no-ask-password
    لا تسأل المستخدم عن الاستيثاق للعمليات ذات الامتيازات.

-h، --help
    اطبع نص مساعدة قصير واخرج.

--version
    اطبع سلسلة إصدار قصيرة واخرج.

--no-pager
    لا تمرر المخرجات إلى برنامج عرض (pager).

حالة الخروج

عند النجاح، يُعاد الرقم 0، وإلا فيُعاد رمز فشل غير صفري.

البيئة

$SYSTEMD_LOG_LEVEL
    الحد الأقصى لمستوى السجل للرسائل الصادرة (تُكتم الرسائل ذات مستوى السجل الأعلى، أي الأقل أهمية). يأخذ قائمة قيم مفصولة بفواصل. يمكن أن تكون القيمة إما واحدة من (بترتيب تنازلي للأهمية) emerg، أو alert، أو crit، أو err، أو warning، أو notice، أو info، أو debug، أو رقمًا صحيحًا في النطاق من 0 إلى 7. راجع syslog(3) لمزيد من المعلومات. يمكن اختياريًا سبق كل قيمة بأحد الخيارات console، أو syslog، أو kmsg أو journal متبوعة بنقطتين لضبط الحد الأقصى لمستوى السجل لهذا الهدف المحدد (مثلاً: SYSTEMD_LOG_LEVEL=debug,console:info يحدد التسجيل بمستوى debug باستثناء التسجيل في الطرفية الذي يجب أن يكون بمستوى info). لاحظ أن الحد الأقصى العالمي لمستوى السجل له الأولوية على أي حدود مستويات سجل لكل هدف على حدة.

$SYSTEMD_LOG_COLOR
    قيمة منطقية. إذا كانت صحيحة، فستُلون الرسائل المكتوبة في الـ tty حسب الأولوية.

    هذا الإعداد مفيد فقط عندما تُكتب الرسائل مباشرة إلى الطرفية، لأن journalctl(1) والأدوات الأخرى التي تعرض السجلات ستلون الرسائل بناءً على مستوى السجل من تلقاء نفسها.

$SYSTEMD_LOG_TIME
    قيمة منطقية. إذا كانت صحيحة، فستُسبق رسائل سجل الطرفية بختم زمني.

    هذا الإعداد مفيد فقط عندما تُكتب الرسائل مباشرة إلى الطرفية أو إلى ملف، لأن journalctl(1) والأدوات الأخرى التي تعرض السجلات ستُرفق طوابع زمنية بناءً على البيانات الوصفية للمدخلات من تلقاء نفسها.

$SYSTEMD_LOG_LOCATION
    قيمة منطقية. إذا كانت صحيحة، فستُسبق الرسائل باسم الملف ورقم السطر في الشيفرة المصدرية حيث نشأت الرسالة.

    لاحظ أن موقع السجل غالبًا ما يُرفق كبيانات وصفية بمدخلات اليوميات على أي حال. ومع ذلك، قد يكون تضمينه مباشرة في نص الرسالة مفيدًا عند تنقيح البرامج.

$SYSTEMD_LOG_TID
    قيمة منطقية. إذا كانت صحيحة، فستُسبق الرسائل بمعرّف الخيط الرقمي الحالي (TID).

    لاحظ أن هذه المعلومات تُرفق كبيانات وصفية بمدخلات اليوميات على أي حال. ومع ذلك، قد يكون تضمينه مباشرة في نص الرسالة مفيدًا عند تنقيح البرامج.

$SYSTEMD_LOG_TARGET
    وجهة رسائل السجل. أحد الخيارات: console (التسجيل في الطرفية المرفقة)، أو console-prefixed (التسجيل في الطرفية المرفقة ولكن مع بادئات ترميز مستوى السجل و"المرفق"، راجع syslog(3)، أو kmsg (التسجيل في ذاكرة السجل الدائرية للنواة)، أو journal (التسجيل في اليوميات)، أو journal-or-kmsg (التسجيل في اليوميات إذا كانت متاحة، وفي kmsg بخلاف ذلك)، أو auto (تحديد هدف السجل المناسب آليًا، وهو المبدئي)، أو null (تعطيل مخرج السجل).

$SYSTEMD_LOG_RATELIMIT_KMSG
    فيما إذا كان سيُحد معدل kmsg أم لا. يأخذ قيمة منطقية. القيمة المبدئية هي "true". إذا عُطّل، فلن يحد systemd من معدل الرسائل المكتوبة في kmsg.

$SYSTEMD_PAGER، $PAGER
    مستعرض الصفحات المراد استخدامه عندما لا يُعطى الخيار --no-pager. يُستخدم $SYSTEMD_PAGER إذا كان مضبوطًا؛ وإلا فيُستخدم $PAGER. إذا لم يُضبط أي من $SYSTEMD_PAGER أو $PAGER، فتُجرب مجموعة من التطبيقات المعروفة لمستعرضات الصفحات تباعًا، بما في ذلك less(1) و more(1)، حتى يُعثر على أحدها. إذا لم يُكتشف أي تطبيق لمستعرض الصفحات، فلا يُستدعى أي مستعرض. ضبط متغيرات البيئة هذه على سلسلة فارغة أو القيمة "cat" يعادل تمرير الخيار --no-pager.

    ملاحظة: إذا لم يُضبط $SYSTEMD_PAGERSECURE، فلا يمكن استخدام $SYSTEMD_PAGER و $PAGER إلا لتعطيل مستعرض الصفحات (باستخدام "cat" أو "")، ويُتجاهل فيما عدا ذلك.

$SYSTEMD_LESS
    تجاوز الخيارات الممررة إلى less (مبدئيًا "FRSXMK").

    قد يرغب المستخدمون في تغيير خيارين على وجه الخصوص:

    K
        يوجه هذا الخيار مستعرض الصفحات بالخروج فورًا عند الضغط على Ctrl+C. للسماح لـ less بالتعامل مع Ctrl+C بنفسه للعودة إلى محث أوامر المستعرض، قم بإلغاء ضبط هذا الخيار.

        إذا لم تتضمن قيمة $SYSTEMD_LESS الحرف "K"، وكان المستعرض المستدعى هو less، فسيُتجاهل Ctrl+C من قبل الملف التنفيذي، ويجب معالجته من قبل المستعرض.

    X
        يوجه هذا الخيار مستعرض الصفحات بعدم إرسال سلاسل تهيئة وإنهاء termcap إلى الطرفية. يُضبط مبدئيًا للسماح لمخرجات الأوامر بالبقاء مرئية في الطرفية حتى بعد خروج المستعرض. ومع ذلك، فإن هذا يمنع بعض وظائف المستعرض من العمل، لا سيما أن المخرجات المفصولة بصفحات لا يمكن تمريرها باستخدام الفأرة.

    لاحظ أن ضبط متغير البيئة العادي $LESS ليس له أي تأثير عند استدعاء less بواسطة أدوات systemd.

    راجع less(1) لمزيد من النقاش.

$SYSTEMD_LESSCHARSET
    يتجاوز طقم المحارف الممرر إلى less (مبدئيًا "utf-8"، إذا حُدّد أن الطرفية المستدعية متوافقة مع UTF-8).

    لاحظ أن ضبط متغير البيئة العادي $LESSCHARSET ليس له أي تأثير عند استدعاء less بواسطة أدوات systemd.

$SYSTEMD_PAGERSECURE
    تدعم أوامر المستعرض (pager) الشائعة مثل less(1)، بالإضافة إلى "التصفح"، أي التمرير عبر المخرجات، فتح ملفات أخرى أو الكتابة إليها وتشغيل أوامر صدفة عشوائية. عند استدعاء الأوامر بامتيازات مرفوعة، على سبيل المثال تحت sudo(8) أو pkexec(1)، يصبح المستعرض حدًا أمنيًا. يجب الحرص على استخدام البرامج ذات الوظائف المحدودة للغاية فقط كمستعرضات، وعدم السماح بالميزات التفاعلية غير المقصودة مثل فتح ملفات جديدة أو إنشائها أو بدء عمليات فرعية. يمكن تمكين "الوضع الآمن" للمستعرض كما هو موضح أدناه، إذا كان المستعرض يدعم ذلك (معظم المستعرضات لم تُكتب بطريقة تأخذ هذا في الاعتبار). يوصى إما بتمكين "الوضع الآمن" صراحةً أو تعطيل المستعرض تمامًا باستخدام --no-pager أو PAGER=cat عند السماح للمستخدمين غير الموثوق بهم بتنفيذ أوامر بامتيازات مرفوعة.

    يأخذ هذا الخيار وسيطًا منطقيًا. عند ضبطه على صحيح (true)، يُمكن "الوضع الآمن" لمستعرض الصفحات. في "الوضع الآمن"، سيُضبط LESSSECURE=1 عند استدعاء المستعرض، مما يوجه المستعرض لتعطيل الأوامر التي تفتح أو تنشئ ملفات جديدة أو تبدأ عمليات فرعية جديدة. حاليًا، يُعرف فقط less(1) بقدرته على فهم هذا المتغير وتطبيق "الوضع الآمن".

    عند الضبط إلى false، لا توضع قيود على أداة التصفح (pager). إن ضبط SYSTEMD_PAGERSECURE=0 أو عدم إزالته من البيئة الموروثة قد يسمح للمستخدم باستدعاء أوامر اعتباطية.

    عندما لا يُضبط $SYSTEMD_PAGERSECURE، تحاول أدوات systemd استنتاج ما إذا كان ينبغي تمكين "الوضع الآمن" آليًا وما إذا كان المستعرض يدعمه. يُمكن "الوضع الآمن" إذا كان معرف المستخدم الفعلي (UID) ليس هو نفسه مالك جلسة الولوج، انظر geteuid(2) و sd_pid_get_owner_uid(3)، أو عند التشغيل تحت sudo(8) أو أدوات مماثلة ($SUDO_UID مضبوط [1]). في تلك الحالات، سيُضبط SYSTEMD_PAGERSECURE=1 ولن تُستخدم المستعرضات التي لا يُعرف عنها تطبيق "الوضع الآمن" على الإطلاق. لاحظ أن هذا الاستكشاف الآلي يغطي فقط الآليات الأكثر شيوعًا لرفع الامتيازات وهو مخصص للتسهيل. يوصى بضبط $SYSTEMD_PAGERSECURE صراحةً أو تعطيل المستعرض.

    لاحظ أنه إذا أُريد احترام المتغيرات $SYSTEMD_PAGER أو $PAGER، لغير غرض تعطيل مستعرض الصفحات، فيجب ضبط $SYSTEMD_PAGERSECURE أيضًا.

$SYSTEMD_COLORS
    يأخذ وسيطًا منطقيًا (boolean)، أو قيمة خاصة. مبدئيًا (عند عدم الضبط)، سيستخدم systemd والأدوات المرتبطة به الألوان في مخرجاتها إذا أمكن ذلك. إذا ضُبط $COLORTERM على "truecolor" أو "24bit"، فستُمكّن ألوان 24 بت، وإلا فستُستخدم 256 لونًا، ما لم يشر $NO_COLOR أو $TERM إلى تعطيل الألوان.

    true
        نفس حالة عدم الضبط، باستثناء تجاهل $NO_COLOR.

    false
        سيكون المخرج أحادي اللون.

    "16"، "256"، "24bit"
        استخدم دائمًا ألوان ANSI الـ 16 الأساسية، أو 256 لونًا، أو لون 24 بت، على التوالي.

    "auto-16"، "auto-256"، "auto-24bit"
        استخدم كمية الألوان المعطاة، بشرط $TERM، وما هو متصل بالطرفية.

$SYSTEMD_URLIFY
    يجب أن تكون القيمة منطقية. تتحكم فيما إذا كان يجب توليد روابط قابلة للنقر في المخرج لمحاكيات الطرفية التي تدعم ذلك. يمكن تحديد هذا لتجاوز القرار الذي يتخذه systemd بناءً على $TERM وشروط أخرى.

أمثلة

اعرض الإعدادات الحالية:

    $ timedatectl
                   Local time: Thu 2017-09-21 16:08:56 CEST
               Universal time: Thu 2017-09-21 14:08:56 UTC
                     RTC time: Thu 2017-09-21 14:08:56
                    Time zone: Europe/Warsaw (CEST, +0200)
    System clock synchronized: yes
                  NTP service: active
              RTC in local TZ: no

فعّل مزامنة وقت الشبكة:

    $ timedatectl set-ntp true
    ==== AUTHENTICATING FOR org.freedesktop.timedate1.set-ntp ===
    Authentication is required to control whether network time synchronization shall be enabled.
    Authenticating as: user
    Password: ********
    ==== AUTHENTICATION COMPLETE ===

    $ systemctl status systemd-timesyncd.service
    ● systemd-timesyncd.service - Network Time Synchronization
       Loaded: loaded (/usr/lib/systemd/system/systemd-timesyncd.service; enabled)
       Active: active (running) since Mo 2015-03-30 14:20:38 CEST; 5s ago
         Docs: man:systemd-timesyncd.service(8)
     Main PID: 595 (systemd-timesyn)
       Status: "Using Time Server 216.239.38.15:123 (time4.google.com)."
       CGroup: /system.slice/systemd-timesyncd.service
               └─595 /usr/lib/systemd/systemd-timesyncd
    ...

اعرض الحالة الحالية لـ systemd-timesyncd.service(8):

    $ timedatectl timesync-status
           Server: 216.239.38.15 (time4.google.com)
    Poll interval: 1min 4s (min: 32s; max 34min 8s)
             Leap: normal
          Version: 4
          Stratum: 1
        Reference: GPS
        Precision: 1us (-20)
    Root distance: 335us (max: 5s)
           Offset: +316us
            Delay: 349us
           Jitter: 0
     Packet count: 1
        Frequency: -8.802ppm

انظر أيضًا

systemd(1), hwclock(8), date(1), localtime(5), systemctl(1), systemd-timedated.service(8), systemd-timesyncd.service(8), systemd-firstboot(1)

ملاحظات

1.  يوصى للأدوات الأخرى بضبط والتحقق من $SUDO_UID حسب الاقتضاء، ومعاملته كواجهة مشتركة.

ترجمة
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>

هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 (https://www.gnu.org/licenses/gpl-3.0.html) أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.

إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.