.\" -*- coding: UTF-8 -*- '\" t .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH SYSTEMD\&.ENVIRONMENT\-GENERATOR 7 "" "systemd 260.2" systemd.environment\-generator .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH الاسم systemd.environment\-generator \- مولدات ملفات البيئة لـ systemd .SH موجز .HP \w'\fB/usr/lib/systemd/system\-environment\-generators/some\-generator\fR\ 'u \fB/usr/lib/systemd/system\-environment\-generators/some\-generator\fP .HP \w'\fB/usr/lib/systemd/user\-environment\-generators/some\-generator\fR\ 'u \fB/usr/lib/systemd/user\-environment\-generators/some\-generator\fP .PP .RS 4 /run/systemd/system\-environment\-generators/* .RE .RS 4 /etc/systemd/system\-environment\-generators/* .RE .RS 4 /usr/local/lib/systemd/user\-environment\-generators/* .RE .RS 4 /usr/lib/systemd/system\-environment\-generators/* .RE .PP .RS 4 /run/systemd/user\-environment\-generators/* .RE .RS 4 /etc/systemd/user\-environment\-generators/* .RE .RS 4 /usr/local/lib/systemd/user\-environment\-generators/* .RE .RS 4 /usr/lib/systemd/user\-environment\-generators/* .RE .SH الوصف .PP المولدات هي برامج تنفيذية صغيرة توجد في /usr/lib/systemd/system\-environment\-generators/ والدلائل الأخرى المذكورة أعلاه\&. سيقوم \fBsystemd\fP(1) بتنفيذ هذه البرامج الثنائية في وقت مبكر جدًا عند بدء تشغيل كل مدير وعند إعادة تحميل الإعدادات، قبل تشغيل المولدات الموصوفة في \fBsystemd.generator\fP(7) وقبل بدء أي وحدات\&. يمكن لمولدات البيئة تجاوز البيئة التي يصدرها المدير إلى الخدمات والعمليات الأخرى\&. .PP يتم تحميل المولدات من مجموعة من المسارات المحددة أثناء التجميع، كما هو مذكور أعلاه\&. يتم تحميل مولدات بيئة النظام والمستخدم من الدلائل التي تنتهي أسماؤها بـ system\-environment\-generators/ و user\-environment\-generators/، على التوالي\&. المولدات الموجودة في الدلائل المذكورة سابقًا تتجاوز تلك التي تحمل الاسم نفسه في الدلائل الأدنى في القائمة \&\s-2\u[1]\d\s+2\&. يمكن استخدام رابط رمزي إلى /dev/null أو ملف فارغ لإخفاء مولد، وبالتالي منعه من التشغيل\&. يُرجى ملاحظة أن ترتيب الدليلين ذوي الأولوية الأعلى معكوس بالنسبة لمسار تحميل الوحدة، والمولدات في /run/ تستبدل تلك الموجودة في /etc/\&. .PP بعد تثبيت مولدات جديدة أو تحديث الإعدادات، يمكن تنفيذ \fBsystemctl daemon\-reload\fP\&. سيعيد هذا تشغيل جميع المولدات، وتحديث إعدادات البيئة\&. سيتم استخدامه لأي خدمات تبدأ لاحقًا\&. .PP يتم تنفيذ مولدات ملفات البيئة بشكل مشابه لمولدات ملفات الوحدات الموصوفة في \fBsystemd.generator\fP(7)، مع الاختلافات التالية: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} يتم تنفيذ المولدات بشكل تسلسلي بالترتيب الأبجدي الرقمي للمكون النهائي لاسمها\&. يتم تحليل مخرجات كل مولد فورًا واستخدامها لتحديث البيئة للمولدات التي تعمل بعده\&. وبالتالي، يمكن للمولدات اللاحقة استخدام و/أو تعديل مخرجات المولدات السابقة\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} يتم تشغيل المولدات بواسطة كل مثيل مدير، ويمكن أن تكون مخرجاتها مختلفة لكل مستخدم\&. .RE .PP يُوصى باستخدام بادئات رقمية لأسماء المولدات لتبسيط الترتيب\&. .SH أمثلة .PP \fBمثال\ \&1.\ \&مولد بسيط يوسع متغير بيئة إذا كان دليل موجودًا في نظام الملفات\fP .sp .if n \{\ .RS 4 .\} .nf # 50\-xdg\-data\-dirs\&.sh #!/bin/sh # SPDX\-License\-Identifier: MIT\-0 # set the default value XDG_DATA_DIRS="${XDG_DATA_DIRS:\-/usr/local/share/:/usr/share}" # add a directory if it exists if [ \-d /opt/foo/share ]; then XDG_DATA_DIRS="/opt/foo/share:${XDG_DATA_DIRS}" fi # write our output echo "XDG_DATA_DIRS=${XDG_DATA_DIRS}" .fi .if n \{\ .RE .\} .PP \fBمثال\ \&2.\ \&مولد أكثر تعقيدًا يقرأ الإعدادات الحالية ويغير متغيرًا واحدًا\fP .sp .if n \{\ .RS 4 .\} .nf # 90\-rearrange\-path\&.py #!/usr/bin/python # SPDX\-License\-Identifier: MIT\-0 """ أداة تجريبية لتوليد بيئة systemd تضمن أن تكون مجلدات bin دائمًا بعد مجلدات sbin المطابقة في المسار\&. (تقوم بتغيير /sbin:/bin:/foo/bar إلى /bin:/sbin:/foo/bar\&.) يوضح هذا المولد كيفية تجاوز الإعدادات التي ربما أنشأتها المولدات السابقة\&. قد يكون من الأسهل كتابة ذلك بلغة bash، ولكن دعونا نكتبه بلغة Python فقط لإثبات قدرتنا على ذلك، وليكون بمثابة نموذج لمولدات أكثر إثارة للاهتمام\&. """ import os import pathlib def rearrange_bin_sbin(path): """Make sure any pair of \&.../bin, \&.../sbin directories is in this order >>> rearrange_bin_sbin(\*(Aq/bin:/sbin:/usr/sbin:/usr/bin\*(Aq) \*(Aq/bin:/sbin:/usr/bin:/usr/sbin\*(Aq """ items = [pathlib\&.Path(p) for p in path\&.split(\*(Aq:\*(Aq)] for i in range(len(items)): if \*(Aqsbin\*(Aq in items[i]\&.parts: ind = items[i]\&.parts\&.index(\*(Aqsbin\*(Aq) bin = pathlib\&.Path(*items[i]\&.parts[:ind], \*(Aqbin\*(Aq, *items[i]\&.parts[ind+1:]) if bin in items[i+1:]: j = i + 1 + items[i+1:]\&.index(bin) items[i], items[j] = items[j], items[i] return \*(Aq:\*(Aq\&.join(p\&.as_posix() for p in items) if __name__ == \*(Aq__main__\*(Aq: path = os\&.environ[\*(AqPATH\*(Aq] # This should be always set\&. # If it is not, we will just crash, which is OK too\&. new = rearrange_bin_sbin(path) if new != path: print(\*(AqPATH={}\*(Aq\&.format(new)) .fi .if n \{\ .RE .\} .PP \fBالمثال\ \&3.\ \&تنقيح مولد\fP .sp .if n \{\ .RS 4 .\} .nf SYSTEMD_LOG_LEVEL=debug VAR_A=something VAR_B="something else" \e /usr/lib/systemd/system\-environment\-generators/path\-to\-generator .fi .if n \{\ .RE .\} .SH "انظر أيضًا" .PP \fBsystemd\-environment\-d\-generator\fP(8)، \fBsystemd.generator\fP(7)، \fBsystemd\fP(1)، \fBsystemctl\fP(1) .SH ملاحظات .IP " 1." 4 💣💥🧨💥💥💣 يرجى ملاحظة أن ملفات الضبط تلك يجب أن تكون متوفرة في جميع الأوقات. إذا كان /usr/local/ قسماً منفصلاً، فقد لا يكون متوفراً أثناء بدء التشغيل المبكر، ويجب عدم استخدامه للضبط. .PP .SH ترجمة تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي . .PP هذه الترجمة هي وثيقة مجانية؛ راجع .UR https://www.gnu.org/licenses/gpl-3.0.html رخصة جنو العامة الإصدار 3 .UE أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات. .PP إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: .MT kde-l10n-ar@kde.org .ME .