الوصف¶
يمكن
استخدام localectl
للاستعلام
عن إعدادات
محلية
النظام
وتخطيط
لوحة
المفاتيح
وتغييرها.
يتواصل مع
systemd-localed(8) لتعديل
ملفات مثل
/etc/locale.conf و /etc/vconsole.conf.
تتحكم
محلية
النظام في
إعدادات
اللغة
لخدمات
النظام
وواجهة
المستخدم
قبل ولوج
المستخدم،
مثل مدير
العرض،
بالإضافة
إلى
الإعداد
المبدئي
للمستخدمين
بعد
الولوج.
تتحكم
إعدادات
لوحة
المفاتيح
في تخطيط
لوحة
المفاتيح
المستخدم
في الطرفية
النصية
وواجهة
المستخدم
الرسومية
قبل ولوج
المستخدم،
مثل مدير
العرض،
بالإضافة
إلى
الإعداد
المبدئي
للمستخدمين
بعد
الولوج.
لاحظ أن
التغييرات
التي
أُجريت
باستخدام
هذه الأداة
قد تتطلب
إعادة بناء
initrd لتدخل حيز
التنفيذ
أثناء بدء
تشغيل
النظام
المبكر. لا
يُعاد بناء
initrd آليًا
بواسطة localectl،
يجب تنفيذ
هذه المهمة
يدويًا،
عادةً عن
طريق إعادة
تثبيت حزمة
نواة
التوزيعة.
لاحظ أنه
يمكن
استخدام
systemd-firstboot(1) لتهيئة
محلية
النظام
لصور
النظام
الموصلة
(ولكن غير
المبدأ
تشغيلها).
الأوامر¶
الأوامر
التالية
مفهومة:
status
يعرض
الإعدادات
الحالية
لمحلية
النظام
وتخطيط
لوحة
المفاتيح.
إذا لم
يُحدد أي
أمر، فهذا
هو الإعداد
المبدئي
الضمني.
أُضيف في
الإصدارة 195.
set-locale LOCALE، set-locale
VARIABLE=LOCALE...
يضبط
محلية
النظام.
يأخذ هذا
محلية
واحدة مثل
"en_US.UTF-8"، أو
يأخذ
تعيينًا
واحدًا أو
أكثر
للمحلية
مثل "LANG=de_DE.utf8"، و
"LC_MESSAGES=en_GB.utf8"،
وهكذا. إذا
وُفرت
محلية
واحدة بدون
اسم متغير،
فسيُضبط
متغير
المحلية "LANG=".
راجع
locale(7)
لمعرفة
التفاصيل
حول
الإعدادات
المتاحة
ومعانيها.
استخدم
list-locales
لقائمة
بالمحليات
المتاحة
(انظر أدناه).
أُضيف في
الإصدارة 195.
list-locales
يسرد
المحليات
المتاحة
المفيدة
للضبط
باستخدام
set-locale.
أُضيف في
الإصدارة 195.
set-keymap MAP [TOGGLEMAP]
يضبط
تخطيط لوحة
مفاتيح
النظام
للطرفية و X11.
يأخذ هذا
اسم تخطيط
(مثل "de" أو
"us")، وربما
اسمًا
ثانيًا
لتعريف
تخطيط
تبديل لوحة
المفاتيح.
ما لم يُمرر
--no-convert، يُطبق
الإعداد
المحدد
أيضًا
كخريطة
لوحة
مفاتيح
النظام
المبدئية
لـ X11، بعد
تحويلها
إلى أقرب
خريطة لوحة
مفاتيح X11
مطابقة.
استخدم
list-keymaps
لقائمة
بتخطيطات
لوحة
المفاتيح
المتاحة
(انظر أدناه).
أُضيف في
الإصدارة 195.
list-keymaps
يسرد
تخطيطات
لوحة
المفاتيح
المتاحة
للطرفية،
وهي مفيدة
للضبط
باستخدام
set-keymap.
أُضيف في
الإصدارة 195.
set-x11-keymap LAYOUT [MODEL [VARIANT [OPTIONS]]]
يضبط
تخطيط لوحة
المفاتيح
المبدئي
للنظام لـ X11
والطرفية
الافتراضية.
يأخذ هذا
اسم تخطيط
لوحة
مفاتيح (مثل
"de" أو "us")،
وربما
طرازًا،
ومتغيرًا،
وخيارات،
راجع
kbd(4)
للتفاصيل.
ما لم يُمرر
--no-convert، يُطبق
الإعداد
المحدد
أيضًا
كتخطيط
لوحة
مفاتيح
طرفية
النظام،
بعد تحويله
إلى أقرب
تخطيط لوحة
مفاتيح
طرفية
مطابق.
أُضيف في
الإصدارة 195.
list-x11-keymap-models،
list-x11-keymap-layouts، list-x11-keymap-variants
[LAYOUT]، list-x11-keymap-options
يسرد
طرز،
وتخطيطات،
ومتغيرات،
وخيارات
خريطة
مفاتيح X11
المتاحة،
وهي مفيدة
للضبط
باستخدام
set-keymap. يأخذ
الأمر
list-x11-keymap-variants
اختياريًا
وسيط تخطيط
لقصر
المخرج على
المتغيرات
المناسبة
للتخطيط
المحدد.
أُضيف في
الإصدارة 201.
الخيارات¶
الخيارات
التالية
مفهومة:
-l، --full
لا تضع
علامة حذف
(حذف
الأطراف) في
المخرجات.
أُضيف في
الإصدار 257.
--no-convert
إذا
استُدعي
set-keymap
أو
set-x11-keymap
ومُرر هذا
الخيار،
فلن تُحول
خريطة
المفاتيح
من الطرفية
إلى X11، أو من X11
إلى
الطرفية،
على
التوالي.
أُضيف في
الإصدارة 195.
-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).
البيئة¶
$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 وشروط
أخرى.