SYSTEMD.SYNTAX(7)

الاسم
systemd.syntax - الصياغة العامة لملفات إعدادات systemd

مقدمة

تصف هذه الصفحة المبادئ الأساسية لملفات الإعدادات المستخدمة بواسطة systemd(1) والبرامج ذات الصلة لـ:

    • ملفات وحدات systemd، انظر systemd.unit(5), systemd.service(5), systemd.socket(5), systemd.device(5), systemd.mount(5), systemd.automount(5), systemd.swap(5), systemd.target(5), systemd.path(5), systemd.timer(5), systemd.slice(5), systemd.scope(5)

    • ملفات الروابط، انظر systemd.link(5)

    • ملفات netdev والشبكة، انظر systemd.netdev(5), systemd.network(5)

    • ملفات إعدادات الخفي، انظر systemd-system.conf(5), systemd-user.conf(5), logind.conf(5), journald.conf(5), journal-remote.conf(5), journal-upload.conf(5), systemd-sleep.conf(5), timesyncd.conf(5)

    • ملفات nspawn، انظر systemd.nspawn(5)

الصياغة مستوحاة من ملفات XDG Desktop Entry Specification[1] .desktop، والتي بدورها مستوحاة من ملفات .ini لنظام Microsoft Windows.

كل ملف هو ملف نصي عادي مقسم إلى أقسام، مع إدخالات إعدادات بأسلوب مفتاح=قيمة. يتم تجاهل المسافات البيضاء مباشرة قبل أو بعد "=". يتم تجاهل الأسطر الفارغة والأسطر التي تبدأ بـ "#" أو ";"، والتي يمكن استخدامها للتعليق.

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

    [Section A]
    KeyOne=value 1
    KeyTwo=value 2
    # a comment
    [Section B]
    Setting="something" "some thing" "..."
    KeyTwo=value 2 \
           value 2 continued
    [Section C]
    KeyThree=value 3\
    # this line is ignored
    ; this line is ignored too
           value 3 continued

يمكن كتابة الوسائط المنطقية المستخدمة في ملفات الإعدادات بتنسيقات مختلفة. للإعدادات الإيجابية، السلاسل 1, yes, true و on متكافئة. للإعدادات السلبية، السلاسل 0, no, false و off متكافئة.

يمكن كتابة قيم الفترات الزمنية المشفرة في ملفات الإعدادات بتنسيقات مختلفة. الرقم المستقل يحدد وقتًا بالثواني. إذا تم إلحاقه بوحدة زمنية، يتم احترام الوحدة. يتم دعم دمج قيم متعددة مع وحدات، وفي هذه الحالة يتم جمع القيم. مثال: "50" يشير إلى 50 ثانية؛ "2min 200ms" يشير إلى دقيقتين و200 مللي ثانية، أي 120200 مللي ثانية. يتم فهم وحدات الوقت التالية: "s", "min", "h", "d", "w", "ms", "us". للتفاصيل انظر systemd.time(7).

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

الاقتباس

للإعدادات التي يُسمح فيها بالاقتباس، تنطبق القواعد العامة التالية: يمكن استخدام علامات الاقتباس المزدوجة ("...") وعلامات الاقتباس المفردة ('...') لتغليف عنصر كامل (قد تظهر علامة الاقتباس الافتتاحية فقط في البداية أو بعد مسافة بيضاء غير مقتبسة، ويجب أن تتبع علامة الاقتباس الختامية بمسافة بيضاء أو نهاية السطر)، وفي هذه الحالة يصبح كل شيء حتى علامة الاقتباس المطابقة التالية جزءًا من نفس العنصر. يتم إزالة علامات الاقتباس نفسها. يتم دعم هروب نمط C. يحتوي الجدول أدناه على قائمة بأنماط الهروب المعروفة. يُسمح فقط بأنماط الهروب التي تطابق الصياغة في الجدول؛ قد تُضاف أنماط أخرى في المستقبل وستؤدي الأنماط غير المعروفة إلى تحذير. على وجه الخصوص، يجب مضاعفة أي شرطات مائلة عكسية. أخيرًا، يمكن استخدام شرطة مائلة عكسية زائدة ("\") لدمج الأسطر، كما هو موضح أعلاه. يتم قبول UTF-8، وبالتالي لا تحتاج أحرف unicode النمطية إلى الهروب.

الجدول 1. أنماط الهروب المدعومة
حرفي | القيمة الفعلية
"\a" | bell
"\b" | backspace
"\f" | تغذية الصفحة
"\n" | newline
"\r" | رجوع العربة
"\t" | tab
"\v" | علامة جدولة عمودية
"\\" | backslash
"\"" | علامة اقتباس مزدوجة
"\'" | علامة اقتباس مفردة
"\s" | مسافة
"\xxx" | رقم الحرف xx في الترميز الست عشري
"\nnn" | رقم الحرف nnn في الترميز الثماني
"\unnnn" | نقطة ترميز يونيكود nnnn في الترميز الست عشري
"\Unnnnnnnn" | نقطة ترميز يونيكود nnnnnnnn في الترميز الست عشري

انظر أيضًا

systemd(1)، systemd.time(7)

ملاحظات

1.  مواصفات إدخال سطح المكتب XDG
    https://standards.freedesktop.org/desktop-entry-spec/latest/

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

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

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