الخيارات¶
الخيارات
التالية
مفهومة:
--output=وضع
يختار
وضع
الإخراج.
يأخذ أحد
القيم "classic" أو
"friendly" أو "table" أو
"json". إذا كان
"classic"، يتم
إنشاء
إخراج قريب
جدًا من
تنسيق /etc/passwd أو
/etc/group. إذا كان
"friendly"، يتم
إنشاء
إخراج أكثر
شمولاً
وسهل
الاستخدام
وقابل
للقراءة
البشرية.
إذا كان "table"،
يُنشئ
إخراج
جدولي بسيط.
إذا كان "json"،
يُنشئ
إخراج
بتنسيق JSON.
المبدئي هو
"friendly" إذا حُدد
مستخدم/مجموعة
في سطر
الأوامر، و
"table" بخلاف
ذلك.
لاحظ أن
معظم
تنسيقات
الإخراج لا
تظهر جميع
المعلومات
المتاحة.
على وجه
الخصوص،
يظهر "classic" و
"table" فقط
الحقول
الأكثر
أهمية. كما
لا تظهر
الأوضاع
المختلفة
تجزئات
كلمات
المرور.
استخدم "json"
لعرض جميع
الحقول،
بما في ذلك
أي حقول
استيثاق.
أُضيف في
الإصدار 245.
--json=تنسيق
يختار
وضع إخراج JSON
(مثل
--output=json)
ويختار وضع
العرض
الدقيق.
يأخذ أحد
القيم "pretty" أو
"short". إذا كان
"pretty"، تُدرج
مسافات
بيضاء
وأسطر
جديدة سهلة
للبشر في
الإخراج
لجعل
بيانات JSON
أكثر
قابلية
للقراءة.
إذا كان "short"،
تُقمع جميع
المسافات
البيضاء
الزائدة.
أُضيف في
الإصدار 250.
--service=خدمة[:خدمة...],
-s
خدمة:خدمة...
يتحكم في
الخدمات
التي
سيُستعلم
عنها
للمستخدمين/المجموعات.
يأخذ قائمة
من اسم خدمة
واحد أو
أكثر،
مفصولة بـ
":". انظر
أدناه
للحصول على
قائمة
بأسماء
الخدمات
المعروفة.
إذا لم
يُحدد،
سيُستعلم
عن جميع
الخدمات
المتاحة
مرة واحدة.
أُضيف في
الإصدار 245.
--with-nss=منطقي
يتحكم في
ما إذا كان
ستُضمن
عمليات
البحث
التقليدية
عن
المستخدم/المجموعة
عبر glibc/NSS في
الإخراج.
إذا
اُستخدم
--with-nss=no، تُقمع
أي محاولات
لحل أو
تعداد
المستخدمين/المجموعات
المقدمة
فقط عبر glibc NSS.
إذا حُدد
--with-nss=yes، ييُضمن
هؤلاء
المستخدمين/المجموعات
في الإخراج
(وهو
المبدئي).
أُضيف في
الإصدار 245.
--with-varlink=منطقي
يتحكم في
ما إذا كان
ستُضمن
عمليات
البحث عن
المستخدم/المجموعة
عبر Varlink في
الإخراج،
أي تلك التي
تتم عبر
واجهة
برمجة
تطبيقات
البحث عن
سجلات
المستخدم/المجموعة
عبر Varlink[3]. إذا
اُستخدم
--with-varlink=no، تُقمع
أي محاولات
لحل أو
تعداد
المستخدمين/المجموعات
المقدمة
فقط عبر Varlink.
إذا حُدد
--with-varlink=yes،
ييُضمن
هؤلاء
المستخدمين/المجموعات
في الإخراج
(وهو
المبدئي).
أُضيف في
الإصدار 249.
--with-dropin=منطقي
يتحكم في
ما إذا كان
ستُضمن
عمليات
البحث عن
المستخدم/المجموعة
في الإخراج
المعرفة
باستخدام
ملفات
إضافية في /etc/userdb/
و /run/userdb/ و /run/host/userdb/ و /usr/lib/userdb/.
إذا
اُستخدم
--with-dropin=no، يتم
قمع هذه
السجلات.
إذا حُدد
--with-dropin=yes،
ييُضمن
هؤلاء
المستخدمين/المجموعات
في الإخراج
(وهو
المبدئي).
أُضيف في
الإصدار 249.
--synthesize=BOOL
يتحكم في
ما إذا كان
سيُولف
سجلات
للمستخدمين/المجموعات
root و nobody إذا لم
تُعرّف
بطريقة
أخرى،
بالإضافة
إلى
المستخدمين/المجموعات
لنطاق UID
"الأجنبي".
بشكل مبدئي
(أو مع "yes")،
تُولف هذه
السجلات
ضمنيًا إذا
كانت
مفقودة
بطريقة
أخرى لأن
لها أهمية
خاصة لنظام
التشغيل.
عند "no"،
يُوقف هذا
التوليف.
أُضيف في
الإصدار 245.
-N
هذا
الخيار هو
اختصار لـ
--with-nss=no --synthesize=no.
استخدم هذا
الخيار
لإظهار
السجلات
المحددة
أصلاً فقط
كسجلات
مستخدم أو
مجموعة JSON، مع
إيقاف جميع
توافقات NSS/glibc
وجميع
التوليفات
الضمنية.
أُضيف في
الإصدار 245.
--multiplexer=قيمة_منطقية
يتحكم في
ما إذا كان
سيُجرى
عمليات
البحث عبر
خدمة
المعدد (إذا
حُدد
كصحيح،
المبدئي) أو
إجراء
عمليات
البحث في
العميل (إذا
حُدد كخاطئ).
استخدام
خدمة
المعدد هو
الأفضل
عادةً،
لأنها تعمل
في صندوق
حماية مقفل.
أُضيف في
الإصدار 250.
--chain
عند
استخدامه
مع أمر
ssh-authorized-keys،
سيسمح هذا
بتمرير سطر
أوامر
إضافي بعد
اسم
المستخدم
يُنفذ بشكل
متسلسل بعد
اكتمال
البحث. يسمح
هذا بتسلسل
أدوات
متعددة
تظهر
مفاتيح SSH
المصرح بها.
أُضيف في
الإصدار 250.
--fuzzy, -z
عند
استخدامه
مع أمر
user أو
group، يُجرى
بحث سلسلة
ضبابي.
سيُطابق أي
وسائط
محددة
مقابل اسم
المستخدم
والاسم
الحقيقي
لسجل
المستخدم
وعنوان
البريد
الإلكتروني
وسلاسل
وصفية أخرى
لسجل
المستخدم
أو
المجموعة.
علاوة على
ذلك، بدلاً
من
المطابقة
الدقيقة،
يُطبق
مطابقة
سلسلة
فرعية أو
مطابقة
تسمح
بانحرافات
طفيفة في
التهجئة.
أُضيف في
الإصدار 257.
--disposition=
عند
استخدامه
مع الأمر
user
أو
group، يُرشح
حسب تصنيف
السجل. يأخذ
أحد القيم
"intrinsic"، "system"،
"regular"، "dynamic"، "container".
يمكن
استخدامه
عدة مرات،
وفي هذه
الحالة لا
تُعرض إلا
المستخدمون
المطابقون
لأي من
التصنيفات
المحددة.
أُضيف في
الإصدار 257.
-I، -S، -R
اختصارات
لـ
--disposition=intrinsic،
--disposition=system،
--disposition=regular،
على
الترتيب.
أُضيف في
الإصدار 257.
--uid-min=، --uid-max=
عند
استخدامه
مع الأمر
user
أو
group، يُرشح
المخرجات
حسب نطاقات
UID/GID. يأخذ
قيمًا
رقمية للحد
الأدنى أو
الأقصى لـ
UID/GID، على
الترتيب.
يُظهر فقط
السجلات
ضمن النطاق
المحدد. عند
تطبيقه على
الأمر
user،
يُطابق مع UIDs.
عند تطبيقه
على الأمر
group، يُطابق
مع GIDs (رغم اسم
المفتاح).
إذا لم
يُحدد،
فالمبدئي
هو 0 (للحد
الأدنى) و4294967294
(للحد
الأقصى)، أي
مبدئيًا لا
يُطبق أي
ترشيح، حيث
يُغطى نطاق
UID/GID بالكامل.
أُضيف في
الإصدار 257.
--uuid=
عند
استخدامه
مع الأمر
user
أو
group، يُرشح
المخرجات
إلى السجل
ذي UUID المحدد.
إذا لم
يُحدد، فلا
يُطبق أي
ترشيح قائم
على UUID.
أُضيف في
الإصدار 259.
--boundaries=
عند
استخدامه
مع الأمر
user
أو
group، يتحكم
في إظهار
معلومات
حدود نطاق UID/GID
ذات الصلة
في
المخرجات
الجدولية.
يأخذ قيمة
منطقية.
المبدئي هو
true.
أُضيف في
الإصدار 257.
-B
اختصار
لـ
--boundaries=no.
أُضيف في
الإصدار 257.
--from-file=PATH، -F
عند
استخدامه
مع الأمر
user
أو
group، يُقرأ
تعريف
المستخدم
بصيغة JSON من
الملف
المحدد،
بدلاً من
الاستعلام
عنه من
النظام. إذا
حُدد
المسار كـ
"-"، يُقرأ
بيانات JSON من
الإدخال
المعياري.
هذا مفيد
للتحقق من
صحة وفحص
سجلات
المستخدم
أو
المجموعة
بصيغة JSON
بسرعة،
والتحقق من
كيفية
تفسيرها
على النظام
المحلي.
أُضيف في
الإصدار 258.
--no-pager
لا تمرر
المخرجات
إلى برنامج
عرض (pager).
--no-legend
لا تطبع
مفتاح
الرموز، أي
ترويسات
الأعمدة
والتذييل
المزود
بالتلميحات.
-h، --help
اطبع نص
مساعدة
قصير
واخرج.
--version
اطبع
سلسلة
إصدار
قصيرة
واخرج.
الأوامر¶
الأوامر
التالية
مفهومة:
user [USER...]
اسرد
جميع سجلات
المستخدمين
المعروفة
أو أظهر
تفاصيل سجل
مستخدم
واحد أو
أكثر.
استخدم
--output=
لتعديل وضع
المخرجات.
إذا
استُخدم مع
--from-file=، تُقرأ
بيانات سجل
المستخدم
بصيغة JSON من
الملف
المحدد
بدلاً من
الاستعلام
عنها من
النظام.
للتفاصيل
انظر
أعلاه.
أُضيف في
الإصدار 245.
group [GROUP...]
اسرد
جميع سجلات
المجموعات
المعروفة
أو أظهر
تفاصيل سجل
مجموعة
واحد أو
أكثر.
استخدم
--output=
لتعديل وضع
المخرجات.
إذا
استُخدم مع
--from-file=، تُقرأ
بيانات سجل
المجموعة
بصيغة JSON من
الملف
المحدد
بدلاً من
الاستعلام
عنها من
النظام.
للتفاصيل
انظر
أعلاه.
أُضيف في
الإصدار 245.
users-in-group [GROUP...]
اسرد
المستخدمين
الأعضاء في
المجموعات
المحددة.
إذا لم
تُحدد أي
مجموعات،
اسرد جميع
عضويات
المستخدم/المجموعة
المعرفة.
استخدم
--output=
لتعديل وضع
المخرجات.
أُضيف في
الإصدار 245.
groups-of-user [USER...]
اسرد
المجموعات
التي ينتمي
إليها
المستخدمون
المحددون.
إذا لم
يُحدد أي
مستخدمين،
اسرد جميع
عضويات
المستخدم/المجموعة
المعرفة (في
هذه
الحالة،
groups-of-user
و
users-in-group
متكافئان).
استخدم
--output=
لتعديل وضع
المخرجات.
أُضيف في
الإصدار 245.
خدمات
اسرد
جميع
الخدمات
التي توفر
حاليًا
تعريفات
المستخدم/المجموعة
للنظام.
انظر أدناه
لقائمة
الخدمات
المعروفة
التي توفر
معلومات
المستخدم.
أُضيف في
الإصدار 245.
ssh-authorized-keys
أظهر
مفاتيح SSH
المصرح بها
لهذا
الحساب. هذا
الأمر
يُقصد
استخدامه
للسماح
لخفي SSH
بالتقاط
المفاتيح
المصرح بها
من سجلات
المستخدم،
انظر أدناه.
أُضيف في
الإصدار 245.
load-credentials
عند
التحديد،
تُستخدم
بيانات
الاعتماد
التالية
عند
تمريرها:
userdb.user.*, userdb.group.*
يجب أن
تحتوي هذه
الاستيثاقات
على سجلات
JSON
User[1] و
JSON Group[2]
صالحة. لكل
استيثاق
مطابق،
تُنشأ
ملفات
متنوعة في
/etc/userdb/، لتنفيذ
الواجهة
الموصوفة
في
nss-systemd(8). يجب
أن تحتوي أي
سجلات
مستخدم
مُمررة على
حقول UID و GID
صالحة. يجب
أن تحتوي أي
سجلات
مجموعة
مُمررة على
حقل GID (أي أن
التخصيص
الآلي لـ UID/GID
غير مدعوم).
لكل من
سجلات
المستخدم
والمجموعة،
يجب أن
تتطابق
لاحقة
الاستيثاق
(لـ "userdb.user.foobar"
اللاحقة هي
"foobar") مع اسم
المستخدم
أو
المجموعة
المُشفّر
في السجل.
أُضيف في
الإصدار 258.
أُضيف في
الإصدار 258.
الخدمات المعروفة¶
يسرد أمر
userdbctl services جميع
الخدمات
الجارية
حالياً
التي توفر
تعريفات
المستخدم
أو
المجموعة
للنظام.
تُعرض
الخدمات
المعروفة
التالية
ضمن هذه
القائمة:
io.systemd.DynamicUser
تُوفر
هذه الخدمة
بواسطة
مدير خدمة
النظام
نفسه (أي PID 1)
وتجعل جميع
المستخدمين
(ومجموعاتهم)
المُركّبين
عبر إعداد
DynamicUser= في ملفات
وحدة
الخدمة
متاحة
للنظام
(انظر
systemd.exec(5)
للتفاصيل
حول هذا
الإعداد).
أُضيف في
الإصدار 245.
io.systemd.Home
تُوفر
هذه الخدمة
بواسطة
systemd-homed.service(8) وتجعل
جميع
المستخدمين
(ومجموعاتهم)
المنتمين
إلى أدلة
منزلية
تُدار
بواسطة تلك
الخدمة
متاحة
للنظام.
أُضيف في
الإصدار 245.
io.systemd.Machine
تُوفر
هذه الخدمة
بواسطة
systemd-machined.service(8)
وتُركّب
سجلات
لجميع
المستخدمين/المجموعات
المستخدمة
بواسطة
حاوية
تستخدم
نطاقات
أسماء
المستخدمين.
أُضيف في
الإصدار 246.
io.systemd.Multiplexer
تُوفر
هذه الخدمة
بواسطة
systemd-userdbd.service(8)
وتُعدد
عمليات بحث
المستخدم/المجموعة
إلى جميع
خدمات
البحث
الجارية
الأخرى. هذه
هي نقطة
الدخول
الرئيسة
لعملاء
سجلات
المستخدم/المجموعة،
حيث تُبسط
تنفيذ جانب
العميل
بشكل كبير،
إذ يمكنهم
سؤال خدمة
واحدة
للبحث
بدلاً من
سؤال جميع
الخدمات
الجارية
بالتوازي.
يستخدم
userdbctl
هذه الخدمة
بشكل مفضل
أيضًا، ما
لم يُستخدم
--with-nss= أو
--service=،
وفي هذه
الحالة
يلزم تحكم
أدق في
الخدمات
التي
سيُتحدث
إليها.
أُضيف في
الإصدار 245.
io.systemd.NameServiceSwitch
تُوفر
هذه الخدمة
(أيضًا)
بواسطة
systemd-userdbd.service(8)
وتُحوّل
سجلات
المستخدم/المجموعة
الكلاسيكية
لـ NSS/glibc إلى
سجلات JSON
للمستخدم/المجموعة،
مما يوفر
توافقاً
كاملاً مع
الإصدارات
السابقة.
استخدم
--with-nss=no
لتعطيل هذا
التوافق،
انظر أعلاه.
لاحظ أن
التوافق
يُوفر
فعلياً في
كلا
الاتجاهين:
سيقوم
nss-systemd(8)
آلياً
بتركيب
سجلات
المستخدم/المجموعة
الكلاسيكية
لـ NSS/glibc من جميع
سجلات JSON
للمستخدم/المجموعة
المُقدمة
للنظام،
وبالتالي
فإن
استخدام
كلتا
واجهتي API
مكافئ إلى
حد كبير
ويوفر
الوصول إلى
نفس
البيانات،
ومع ذلك فإن
واجهات API لـ
NSS/glibc تُظهر
بالضرورة
مجموعة
حقول أكثر
تقييداً
فقط.
أُضيف في
الإصدار 245.
io.systemd.DropIn
تُوفر
هذه الخدمة
(أيضًا)
بواسطة
systemd-userdbd.service(8)
وتلتقط
سجلات JSON
للمستخدم/المجموعة
من /etc/userdb/، /run/userdb/،
/run/host/userdb/، /usr/lib/userdb/.
أُضيف في
الإصدار 249.
لاحظ أن userdbctl
لديه دعم
داخلي
لعمليات
البحث
المستندة
إلى NSS أيضًا.
هذا يعني
أنه إذا لم
يكن io.systemd.Multiplexer
ولا io.systemd.NameServiceSwitch
قيد
التشغيل،
فستظل
عمليات
البحث في
قواعد
بيانات
المستخدم/المجموعة
الأساسية
تعمل.
البيئة¶
$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 [4]). في
تلك
الحالات،
سيُضبط
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 وشروط
أخرى.