- unstable 4.31.0-1
| SYSTEMD.LINK(5) | systemd.link | SYSTEMD.LINK(5) |
الاسم¶
systemd.link - ضبط أجهزة الشبكة
موجز¶
link.link
الوصف¶
ملف نصي بسيط بنمط ini يرمّز إعدادات مطابقة أجهزة الشبكة، يُستخدم بواسطة systemd-udevd(8) وبشكل خاص الملحق المدمج net_setup_link فيه. طالع systemd.syntax(7) للحصول على وصف عام للصيغة.
لاحظ أن بعض التوزيعات قد تدمج ملفات .link في مرافق الإقلاع المبكر لديها (مثلًا، عبر تضمين نسخ من ملفات .link في initramfs). ولذا، قد يلزم اتخاذ خطوات يدوية لضمان توافق أي تغييرات محلية مع مرافق تخزين الإقلاع المبكر. ينبغي مراجعة التوثيق ذي الصلة الخاص بالتوزيعة.
تُقرأ ملفات .link من الملفات الموجودة في دليل شبكة النظام /usr/lib/systemd/network و /usr/local/lib/systemd/network [1]، ودليل شبكة وقت التشغيل المتطاير /run/systemd/network، ودليل إدارة الشبكة المحلي /etc/systemd/network. تُفرز جميع ملفات الإعدادات وتُعالج مجتمعة بترتيب أبجدي رقمي، بغض النظر عن الأدلة التي تقطن فيها. ومع ذلك، فإن الملفات ذات أسماء الملفات المتطابقة تستبدل بعضها بعضًا. يُوصى بأن يُسبق كل اسم ملف برقم أصغر من "70" (مثلًا، 10-eth0.link). وإلا، فقد تكون لملفات .link المبدئية أو تلك المُولّدة بواسطة systemd-network-generator.service(8) الأولوية على الملفات التي أعدّها المستخدم. للملفات في /etc/ الأولوية القصوى، وللملفات في /run/ الأولوية على الملفات التي تحمل الاسم نفسه في /usr/lib/. يمكن استخدام هذا لتجاوز ملف ارتباط مُزوّد من النظام بملف محلي إذا لزم الأمر. كحالة خاصة، يُعطّل ملف فارغ (بحجم 0) أو رابط رمزي بالاسم نفسه يشير إلى /dev/null ملف الإعدادات تمامًا (يُصبح "محجوبًا").
جنبًا إلى جنب مع ملف الارتباط foo.link، قد يوجد دليل "إضافة" foo.link.d/. ستُدمج جميع الملفات ذات اللاحقة ".conf" من هذا الدليل بالترتيب الأبجدي الرقمي وتُحلل بعد تحليل الملف الرئيس نفسه. هذا مفيد لتعديل أو إضافة إعدادات التكوين دون الحاجة إلى تعديل ملف التكوين الرئيس. يجب أن يحتوي كل ملف إضافة على ترويسات أقسام مناسبة.
بالإضافة إلى /etc/systemd/network، يمكن وضع أدلة "إضافة" ".d" في أدلة /usr/lib/systemd/network أو /run/systemd/network. لملفات الإضافة في /etc/ الأولوية على تلك الموجودة في /run/ والتي بدورها لها الأولوية على تلك الموجودة في /usr/lib/. لملفات الإضافة تحت أي من هذه الأدلة الأولوية على ملف الارتباط الرئيس أينما وُجد.
يحتوي ملف الارتباط على قسم [Match]، الذي يحدد ما إذا كان يمكن تطبيق ملف ارتباط معين على جهاز معين، بالإضافة إلى قسم [Link] يحدد كيفية ضبط الجهاز. يُطبّق الملف الأول (بالترتيب المعجمي) من ملفات الارتباط التي تطابق جهازًا معينًا. لاحظ أن النظام يورّد ملفًا مبدئيًا هو 99-default.link. لذا ينبغي لأي ملف .link يقدّمه المستخدم أن يحمل اسمًا أسبق معجميًا ليؤخذ بعين الاعتبار على الإطلاق.
طالع udevadm(8) لتشخيص المشكلات المتعلقة بملفات .link.
خيارات قسم [MATCH]¶
يُقال إن ملف الارتباط يطابق واجهة ما إذا كانت جميع المطابقات المحددة بواسطة قسم [Match] مُستوفاة. عندما لا يحتوي ملف الارتباط على إعدادات صالحة في قسم [Match]، فإن الملف سيطابق جميع الواجهات ويحذر systemd-udevd من ذلك. تلميح: لتجنب التحذير ولتوضيح أنه ستتم مطابقة جميع الواجهات، أضف ما يلي:
OriginalName=*
يُطبّق الملف الأول (بالترتيب الأبجدي الرقمي) من ملفات الارتباط التي تطابق واجهة معينة، وتُتجاهل جميع الملفات اللاحقة، حتى لو كانت تطابق أيضًا. المفاتيح التالية مقبولة:
MACAddress=
colon-delimited hexadecimal
أُضيف في الإصدار 250.
ست عشري مفصول بواصلات
أُضيف في الإصدار 250.
dot-delimited hexadecimal
أُضيف في الإصدار 250.
تنسيق عناوين IPv4
أُضيف في الإصدار 250.
تنسيق عناوين IPv6
أُضيف في الإصدار 250.
يجب أن يكون الطول الإجمالي لكل عنوان MAC هو 4 (لنفق IPv4)، أو 6 (للإيثرنت)، أو 16 (لنفق IPv6)، أو 20 (لإنفيني باند). قد يظهر هذا الخيار أكثر من مرة، وفي هذه الحالة تدمج القوائم. إذا أُسندت سلسلة فارغة لهذا الخيار، فستُصفر قائمة عناوين الأجهزة المحددة قبل ذلك. القيمة المبدئية هي غير محدد.
أُضيف في الإصدارة 211.
PermanentMACAddress=
أُضيف في الإصدار 245.
Path=
أُضيف في الإصدارة 211.
Driver=
أُضيف في الإصدارة 211.
Type=
أُضيف في الإصدارة 211.
Kind=
أُضيف في الإصدار 251.
Property=
مثال: إذا كان ملف .link يحتوي على ما يلي:
Property=ID_MODEL_ID=9999 "ID_VENDOR_FROM_DATABASE=vendor name" "KEY=with \"quotation\""
ثم، يطابق ملف .link فقط عندما تملك الواجهة جميع الخصائص الثلاث أعلاه.
أُضيف في الإصدار 243.
OriginalName=
أُضيف في الإصدارة 218.
Host=
أُضيف في الإصدارة 211.
Virtualization=
أُضيف في الإصدارة 211.
KernelCommandLine=
أُضيف في الإصدارة 211.
KernelVersion=
أُضيف في الإصدارة 237.
Version=
أُضيف في الإصدار 258.
Credential=
أُضيف في الإصدار 252.
Architecture=
أُضيف في الإصدارة 211.
Firmware=
أُضيف في الإصدار 249.
خيارات قسم [LINK]¶
يقبل قسم [Link] المفاتيح التالية:
Description=
أُضيف في الإصدارة 211.
Property=
Property=HOGE=foo BAR=baz
يدعم هذا الخيار توسيع المحددات البسيط، طالع قسم المحددات أدناه. يمكن تحديد هذا الخيار مرات متعددة. إذا أُسندت سلسلة نصية فارغة، فستُمسح جميع الإسنادات السابقة.
هذا الإعداد مفيد لضبط خاصية "ID_NET_MANAGED_BY=" التي تعلن عن خدمة إدارة الشبكة التي ستُدير الواجهة، والتي تحترمها systemd-networkd(8) وغيرها. استخدم
Property=ID_NET_MANAGED_BY=io.systemd.Network
للإعلان صراحةً أن systemd-networkd ستدير الواجهة، أو اضبط الخاصية على شيء آخر للإعلان صراحةً أنها لن تفعل ذلك. طالع systemd.network(5) للحصول على تفاصيل حول كيفية استخدام هذه الخاصية لمطابقة أسماء الواجهات.
أُضيف في الإصدار 256.
ImportProperty=
ImportProperty=HOGE BAR
يدعم هذا الخيار توسيع المحددات البسيط، طالع قسم المحددات أدناه. يمكن تحديد هذا الخيار مرات متعددة. إذا أُسندت سلسلة نصية فارغة، فستُمسح جميع الإسنادات السابقة.
إذا ضُبطت الخاصية نفسها أيضًا في Property= أعلاه، فستُتجاوز قيمة الخاصية المستوردة بالقيمة المحددة في Property=.
أُضيف في الإصدار 256.
UnsetProperty=
UnsetProperty=HOGE BAR
يدعم هذا الخيار توسيع المحددات البسيط، طالع قسم المحددات أدناه. يمكن تحديد هذا الخيار مرات متعددة. إذا أُسندت سلسلة نصية فارغة، فستُمسح جميع الإسنادات السابقة.
يُطبق هذا الإعداد بعد تطبيق ImportProperty= و Property=. ومن ثم، إذا حُددت الخاصية نفسها في ImportProperty= أو Property=، فستُتجاهل قيمة الخاصية المستوردة أو المحددة، وسيُلغى ضبط الخاصية.
أُضيف في الإصدار 256.
Alias=
أُضيف في الإصدارة 211.
MACAddressPolicy=
persistent
أُضيف في الإصدارة 211.
random
أُضيف في الإصدارة 211.
none
أُضيف في الإصدارة 227.
إسناد سلسلة نصية فارغة يعادل الضبط على "none".
أُضيف في الإصدارة 211.
MACAddress=
أُضيف في الإصدارة 211.
NamePolicy=
kernel
أُضيف في الإصدارة 216.
database
أُضيف في الإصدارة 211.
onboard
أُضيف في الإصدارة 211.
slot
أُضيف في الإصدارة 211.
المسار
أُضيف في الإصدارة 211.
mac
أُضيف في الإصدارة 211.
keep
أُضيف في الإصدارة 241.
أُضيف في الإصدارة 211.
Name=
لاحظ أن تحديد اسم قد تستخدمه النواة لواجهة أخرى (على سبيل المثال "eth0") أمر خطير لأن تعيين الاسم الذي يقوم به udev سيتسابق مع التعيين الذي تقوم به النواة، ولا يمكن إلا لواجهة واحدة استخدام الاسم. اعتماداً على ترتيب العمليات، سيفوز إما udev أو النواة، مما يجعل التسمية غير متوقعة. من الأفضل استخدام بادئة مختلفة، على سبيل المثال "internal0"/"external0" أو "lan0"/"lan1"/"lan3".
يجب أن يتراوح طول أسماء الواجهات بين 1 كحد أدنى و 15 حرفاً كحد أقصى، ويمكن أن تحتوي على أي حرف من أحرف ASCII بـ 7 بت، باستثناء أحرف التحكم، و":"، و"/"، و"%". على الرغم من أن "." حرف مسموح به، يوصى بتجنبه عند تسمية الواجهات حيث تستخدمه أدوات متنوعة (مثل resolvconf(1)) كحرف فاصل. أيضًا، أسماء الواجهات الرقمية بالكامل غير مسموح بها (لتجنب الغموض مع تحديد الواجهة بواسطة المؤشرات الرقمية)، وكذلك السلاسل الخاصة "."، و".."، و"all"، و"default" غير مسموح بها.
أُضيف في الإصدارة 211.
AlternativeNamesPolicy=
أُضيف في الإصدار 245.
AlternativeName=
يمكن استخدام أسماء الواجهات البديلة لتعريف الواجهات في أدوات متنوعة. على عكس الاسم الرئيسي (كما هو مكوَّن باستخدام Name= أعلاه)، قد تكون هناك أسماء بديلة متعددة تشير إلى نفس الواجهة. يمكن أن يكون للأسماء البديلة طول أقصى يبلغ 127 حرفاً، على عكس الـ 15 حرفاً المسموح بها لاسم الواجهة الرئيسي، ولكنها بخلاف ذلك تخضع لنفس قيود التسمية.
أُضيف في الإصدار 245.
TransmitQueues=
أُضيف في الإصدار 248.
ReceiveQueues=
أُضيف في الإصدار 248.
TransmitQueueLength=
أُضيف في الإصدار 248.
MTUBytes=
أُضيف في الإصدارة 211.
BitsPerSecond=
أُضيف في الإصدارة 211.
Duplex=
أُضيف في الإصدارة 211.
AutoNegotiation=
لاحظ أنه إذا مُكّنت المفاوضة الآلية، فإن إعدادات السرعة والازدواج تكون للقراءة فقط. إذا عُطّلت المفاوضة الآلية، تكون إعدادات السرعة والازدواج قابلة للكتابة إذا كان البرنامج التشغيلي يدعم أنماط ربط متعددة.
أُضيف في الإصدار 233.
WakeOnLan=
phy
أُضيف في الإصدارة 211.
unicast
أُضيف في الإصدارة 235.
multicast
أُضيف في الإصدارة 235.
broadcast
أُضيف في الإصدارة 235.
arp
أُضيف في الإصدارة 235.
magic
أُضيف في الإصدارة 211.
secureon
أُضيف في الإصدارة 235.
القيمة المبدئية هي غير مضبوط، وسيُستخدم الإعداد المبدئي للجهاز. يمكن تحديد هذا الإعداد عدة مرات. إذا أُسندت سلسلة نصية فارغة، فستُمسح جميع الإسنادات السابقة.
أُضيف في الإصدارة 211.
WakeOnLanPassword=
أُضيف في الإصدار 250.
Port=
tp
أُضيف في الإصدارة 234.
aui
أُضيف في الإصدارة 234.
bnc
أُضيف في الإصدارة 234.
mii
أُضيف في الإصدارة 234.
fibre
أُضيف في الإصدارة 234.
أُضيف في الإصدارة 234.
Advertise=
جدول 1. قيم
الإعلان
المدعومة
| الإعلان | السرعة (ميجابت/ثانية) | نمط الازدواج |
| 10baset-full | 10 | full |
| 10baset1brr-full | 10 | full |
| 10baset1l-full | 10 | full |
| 10baset1s-full | 10 | full |
| 10baset-half | 10 | half |
| 10baset1s-half | 10 | half |
| 10baset1s-p2mp-half | 10 | half |
| 100basefx-full | 100 | full |
| 100baset-full | 100 | full |
| 100baset1-full | 100 | full |
| 100basefx-half | 100 | half |
| 100baset-half | 100 | half |
| 1000basekx-full | 1000 | full |
| 1000baset-full | 1000 | full |
| 1000baset1-full | 1000 | full |
| 1000basex-full | 1000 | full |
| 1000baset-half | 1000 | half |
| 2500baset-full | 2500 | full |
| 2500basex-full | 2500 | full |
| 5000baset-full | 5000 | full |
| 10000baser-fec | 10000 | |
| 10000basecr-full | 10000 | full |
| 10000baseer-full | 10000 | full |
| 10000basekr-full | 10000 | full |
| 10000basekx4-full | 10000 | full |
| 10000baselr-full | 10000 | full |
| 10000baselrm-full | 10000 | full |
| 10000basesr-full | 10000 | full |
| 10000baset-full | 10000 | full |
| 20000basekr2-full | 20000 | full |
| 20000basemld2-full | 20000 | full |
| 25000basecr-full | 25000 | full |
| 25000basekr-full | 25000 | full |
| 25000basesr-full | 25000 | full |
| 40000basecr4-full | 40000 | full |
| 40000basekr4-full | 40000 | full |
| 40000baselr4-full | 40000 | full |
| 40000basesr4-full | 40000 | full |
| 50000basecr-full | 50000 | full |
| 50000basecr2-full | 50000 | full |
| 50000basedr-full | 50000 | full |
| 50000basekr-full | 50000 | full |
| 50000basekr2-full | 50000 | full |
| 50000baselr-er-fr-full | 50000 | full |
| 50000basesr-full | 50000 | full |
| 50000basesr2-full | 50000 | full |
| 56000basecr4-full | 56000 | full |
| 56000basekr4-full | 56000 | full |
| 56000baselr4-full | 56000 | full |
| 56000basesr4-full | 56000 | full |
| 100000basecr-full | 100000 | full |
| 100000basecr2-full | 100000 | full |
| 100000basecr4-full | 100000 | full |
| 100000basedr-full | 100000 | full |
| 100000basedr2-full | 100000 | full |
| 100000basekr-full | 100000 | full |
| 100000basekr2-full | 100000 | full |
| 100000basekr4-full | 100000 | full |
| 100000baselr-er-fr-full | 100000 | full |
| 100000baselr2-er2-fr2-full | 100000 | full |
| 100000baselr4-er4-full | 100000 | full |
| 100000basesr-full | 100000 | full |
| 100000basesr2-full | 100000 | full |
| 100000basesr4-full | 100000 | full |
| 200000basecr-full | 200000 | full |
| 200000basecr2-full | 200000 | full |
| 200000basecr4-full | 200000 | full |
| 200000basedr-2-full | 200000 | full |
| 200000basedr-full | 200000 | full |
| 200000basedr2-full | 200000 | full |
| 200000basedr4-full | 200000 | full |
| 200000basekr-full | 200000 | full |
| 200000basekr2-full | 200000 | full |
| 200000basekr4-full | 200000 | full |
| 200000baselr2-er2-fr2-full | 200000 | full |
| 200000baselr4-er4-fr4-full | 200000 | full |
| 200000basesr-full | 200000 | full |
| 200000basesr2-full | 200000 | full |
| 200000basesr4-full | 200000 | full |
| 200000basevr-full | 200000 | full |
| 400000basecr2-full | 400000 | full |
| 400000basecr4-full | 400000 | full |
| 400000basecr8-full | 400000 | full |
| 400000basedr2-2-full | 400000 | full |
| 400000basedr2-full | 400000 | full |
| 400000basedr4-full | 400000 | full |
| 400000basedr8-full | 400000 | full |
| 400000basekr2-full | 400000 | full |
| 400000basekr4-full | 400000 | full |
| 400000basekr8-full | 400000 | full |
| 400000baselr4-er4-fr4-full | 400000 | full |
| 400000baselr8-er8-fr8-full | 400000 | full |
| 400000basesr2-full | 400000 | full |
| 400000basesr4-full | 400000 | full |
| 400000basesr8-full | 400000 | full |
| 400000basevr2-full | 400000 | full |
| 800000basecr4-full | 800000 | full |
| 800000basecr8-full | 800000 | full |
| 800000basedr4-2-full | 800000 | full |
| 800000basedr4-full | 800000 | full |
| 800000basedr8-2-full | 800000 | full |
| 800000basedr8-full | 800000 | full |
| 800000basekr4-full | 800000 | full |
| 800000basekr8-full | 800000 | full |
| 800000basesr4-full | 800000 | full |
| 800000basesr8-full | 800000 | full |
| 800000basevr4-full | 800000 | full |
| 800000basevr8-full | 800000 | full |
| 1600000basecr8-full | 1600000 | full |
| 1600000basedr8-2-full | 1600000 | full |
| 1600000basedr8-full | 1600000 | full |
| 1600000basekr8-full | 1600000 | full |
| asym-pause | ||
| aui | ||
| autonegotiation | ||
| backplane | ||
| bnc | ||
| fec-baser | ||
| fec-llrs | ||
| fec-none | ||
| fec-rs | ||
| fibre | ||
| mii | ||
| pause | ||
| tp |
مبدئيًا، هذا الخيار غير مضبوط، أي سيُعلن عن جميع الأنماط الممكنة. قد يُحدد هذا الخيار أكثر من مرة، وفي هذه الحالة يُعلن عن جميع السرعات والأنماط المحددة. إذا أُسندت سلسلة نصية فارغة إلى هذا الخيار، تُصفّر القائمة، ولا يكون لجميع الإسنادات السابقة أي أثر.
أُضيف في الإصدار 240.
ReceiveChecksumOffload=
أُضيف في الإصدار 245.
TransmitChecksumOffload=
أُضيف في الإصدار 245.
ScatterGather=
أُضيف في الإصدار 260.
ScatterGatherFragmentList=
أُضيف في الإصدار 260.
TCPSegmentationOffload=
أُضيف في الإصدار 232.
TCPECNSegmentationOffload=
أُضيف في الإصدار 260.
TCPMangleIdSegmentationOffload=
أُضيف في الإصدار 260.
TCP6SegmentationOffload=
أُضيف في الإصدارة 235.
GenericSegmentationOffload=
أُضيف في الإصدار 232.
PartialGenericSegmentationOffload=
أُضيف في الإصدار 258.
GenericReceiveOffload=
أُضيف في الإصدار 232.
GenericReceiveOffloadHardware=
أُضيف في الإصدار 250.
GenericReceiveOffloadList=
أُضيف في الإصدار 260.
GenericReceiveOffloadUDPForwarding=
أُضيف في الإصدار 260.
LargeReceiveOffload=
أُضيف في الإصدار 232.
ReceivePacketSteeringCPUMask=
أُضيف في الإصدار 256.
IRQAffinityPolicy=
ينطبق هذا الخيار فقط على الأجهزة ذات مقاطعات MSI/MSI-X القابلة للاكتشاف عبر /sys/class/net/iface/device/msi_irqs/. تُتجاوز الأجهزة الافتراضية (veth, tap) والأجهزة القديمة INTx مع تسجيل إشعار.
لاحظ أنه إذا كانت برامج خدمة irqbalance(1) أو برامج خدمة إدارة IRQ مماثلة قيد التشغيل، فقد تتجاوز التقارب المُهيأ. فكر في تعطيل هذه البرامج الخدمية أو تهيئتها لاستبعاد الواجهات المُدارة.
أُضيف في الإصدار 260.
IRQAffinity=
أُضيف في الإصدار 260.
IRQAffinityNUMA=
عندما يُحدد كل من IRQAffinity= و IRQAffinityNUMA=، يُستخدم تقاطعهما. إذا نتج عن التقاطع مجموعة فارغة، يُسجل خطأ ولا يُطبق أي تقارب. ليس له تأثير إذا لم يُضبط IRQAffinityPolicy=.
أُضيف في الإصدار 260.
ReceiveVLANCTAGHardwareAcceleration=
أُضيف في الإصدار 250.
TransmitVLANCTAGHardwareAcceleration=
أُضيف في الإصدار 250.
ReceiveVLANCTAGFilter=
أُضيف في الإصدار 250.
TransmitVLANSTAGHardwareAcceleration=
أُضيف في الإصدار 250.
NTupleFilter=
أُضيف في الإصدار 250.
ReceiveFCS=
أُضيف في الإصدار 258.
ReceiveAll=
أُضيف في الإصدار 258.
RxChannels=, TxChannels=, OtherChannels=, CombinedChannels=
أُضيف في الإصدار 239.
RxBufferSize=, RxMiniBufferSize=, RxJumboBufferSize=, TxBufferSize=
أُضيف في الإصدارة 244.
RxFlowControl=
أُضيف في الإصدار 246.
TxFlowControl=
أُضيف في الإصدار 246.
AutoNegotiationFlowControl=
أُضيف في الإصدار 246.
GenericSegmentOffloadMaxBytes=
أُضيف في الإصدار 248.
GenericSegmentOffloadMaxSegments=
أُضيف في الإصدار 248.
UseAdaptiveRxCoalesce=, UseAdaptiveTxCoalesce=
أُضيف في الإصدار 250.
RxCoalesceSec=, RxCoalesceIrqSec=, RxCoalesceLowSec=, RxCoalesceHighSec=, TxCoalesceSec=, TxCoalesceIrqSec=, TxCoalesceLowSec=, TxCoalesceHighSec=
أُضيف في الإصدار 250.
RxMaxCoalescedFrames=, RxMaxCoalescedIrqFrames=, RxMaxCoalescedLowFrames=, RxMaxCoalescedHighFrames=, TxMaxCoalescedFrames=, TxMaxCoalescedIrqFrames=, TxMaxCoalescedLowFrames=, TxMaxCoalescedHighFrames=
أُضيف في الإصدار 250.
CoalescePacketRateLow=, CoalescePacketRateHigh=
أُضيف في الإصدار 250.
CoalescePacketRateSampleIntervalSec=
أُضيف في الإصدار 250.
StatisticsBlockCoalesceSec=
أُضيف في الإصدار 250.
MDI=
أُضيف في الإصدار 251.
SR-IOVVirtualFunctions=
أُضيف في الإصدار 251.
خيارات قسم [SR-IOV]¶
يوفر SR-IOV القدرة على تقسيم مورد PCI فيزيائي واحد إلى وظائف PCI افتراضية يمكن، على سبيل المثال، حقنها في آلة افتراضية (VM). في حالة وظائف الشبكة الافتراضية (VFs)، يقلل SR-IOV من زمن التأخير واستهلاك المعالج لحركة مرور الشبكة من نوع (north-south) (أي حركة المرور ذات النهايات الطرفية خارج الجهاز المضيف)، وذلك بالسماح لحركة المرور بتجاوز مكدس شبكة الجهاز المضيف.
وجود قسم [SR-IOV] في ملف .link سيؤدي إلى إنشاء وضبط الوظيفة الافتراضية المحددة. داخل ملف .network، ستُضبط الوظيفة الافتراضية المحددة، ولكن يجب أن تكون موجودة بالفعل. حدد عدة أقسام [SR-IOV] لضبط عدة SR-IOVs.
يقبل قسم [SR-IOV] المفاتيح التالية.
VirtualFunction=
أُضيف في الإصدار 251.
VLANId=
أُضيف في الإصدار 251.
QualityOfService=
أُضيف في الإصدار 251.
VLANProtocol=
أُضيف في الإصدار 251.
MACSpoofCheck=
أُضيف في الإصدار 251.
QueryReceiveSideScaling=
أُضيف في الإصدار 251.
Trust=
أُضيف في الإصدار 251.
LinkState=
أُضيف في الإصدار 251.
MACAddress=
أُضيف في الإصدار 251.
خيارات القسم [ENERGYEFFICIENTETHERNET]¶
يتحكم القسم [EnergyEfficientEthernet] في ميزة الإيثرنت الموفر للطاقة (EEE) للواجهة، ويقبل المفاتيح التالية.
Enable=
أُضيف في الإصدار 258.
TxLowPowerIdle=
أُضيف في الإصدار 258.
TxLowPowerIdleSec=
أُضيف في الإصدار 258.
LinkMode=
أُضيف في الإصدار 258.
المحددات¶
تحل بعض الإعدادات مُحددات يمكن استخدامها لكتابة ملفات وحدات عامة تشير إلى بارامترات وقت التشغيل أو الوحدة التي تُستبدل عند تحميل ملفات الوحدات. يجب أن تكون المُحددات معروفة وقابلة للحل ليكون الإعداد صالحاً. المُحددات التالية مفهومة:
جدول 2. المُحددات
المتاحة في
ملفات
الوحدات
| المحدد | المعنى | التفاصيل |
| "%a" | المعمارية | سلسلة نصية قصيرة تحدد معمارية النظام المحلي. سلسلة مثل x86 أو x86-64 أو arm64. انظر المعماريات المحددة لـ ConditionArchitecture= في systemd.unit(5) للحصول على قائمة كاملة. |
| "%A" | إصدار صورة نظام التشغيل | معرف إصدار صورة نظام التشغيل للنظام المشغل، كما يُقرأ من حقل IMAGE_VERSION= في /etc/os-release. إذا لم يُضبط، يُحل إلى سلسلة فارغة. انظر os-release(5) لمزيد من المعلومات. |
| "%b" | معرف الإقلاع | معرف الإقلاع للنظام المشغل، منسق كسلسلة نصية. انظر random(4) لمزيد من المعلومات. |
| "%B" | معرف بناء نظام التشغيل | معرف بناء نظام التشغيل للنظام المشغل، كما يُقرأ من حقل BUILD_ID= في /etc/os-release. إذا لم يُضبط، يُحل إلى سلسلة فارغة. انظر os-release(5) لمزيد من المعلومات. |
| "%H" | اسم المضيف | اسم مضيف النظام المشغل. |
| "%l" | اسم المضيف القصير | اسم مضيف النظام المشغل، مقتطعًا عند النقطة الأولى لإزالة أي مكون نطاق. |
| "%m" | معرف الآلة | معرف الجهاز للنظام المشغل، منسق كسلسلة نصية. انظر machine-id(5) لمزيد من المعلومات. |
| "%M" | معرف صورة نظام التشغيل | معرف صورة نظام التشغيل للنظام المشغل، كما يُقرأ من حقل IMAGE_ID= في /etc/os-release. إذا لم يُضبط، يُحل إلى سلسلة فارغة. انظر os-release(5) لمزيد من المعلومات. |
| "%o" | معرف نظام التشغيل | معرف نظام التشغيل للنظام المشغل، كما يُقرأ من حقل ID= في /etc/os-release. انظر os-release(5) لمزيد من المعلومات. |
| "%q" | اسم المضيف الجميل | اسم المضيف الجميل للنظام المشغل، كما يُقرأ من حقل PRETTY_HOSTNAME= في /etc/machine-info. إذا لم يُضبط، يُحل إلى اسم المضيف القصير. انظر machine-info(5) لمزيد من المعلومات. |
| "%T" | مجلد للملفات المؤقتة | هذا إما /tmp أو المسار الذي ضُبطت إليه "$TMPDIR" أو "$TEMP" أو "$TMP". (لاحظ أن الدليل قد يُحدد بدون شرطة مائلة لاحقة.) |
| "%v" | إصدار النواة | مطابق لمخرجات uname -r. |
| "%V" | مجلد للملفات المؤقتة الأكبر حجمًا والمستمرة | هذا إما /var/tmp أو المسار الذي ضُبطت إليه "$TMPDIR" أو "$TEMP" أو "$TMP". (لاحظ أن الدليل قد يُحدد بدون شرطة مائلة لاحقة.) |
| "%w" | معرف إصدار نظام التشغيل | معرف إصدار نظام التشغيل للنظام المشغل، كما يُقرأ من حقل VERSION_ID= في /etc/os-release. إذا لم يُضبط، يُحل إلى سلسلة فارغة. انظر os-release(5) لمزيد من المعلومات. |
| "%W" | معرف نوع نظام التشغيل | معرف تنويعة نظام التشغيل للنظام المشغل، كما يُقرأ من حقل VARIANT_ID= في /etc/os-release. إذا لم يُضبط، يُحل إلى سلسلة فارغة. انظر os-release(5) لمزيد من المعلومات. |
أمثلة¶
مثال 1. /usr/lib/systemd/network/99-default.link
يحدد ملف الربط 99-default.link المُرفق مع systemd السياسات المبدئية لاسم الواجهة، والأسماء البديلة، وعنوان MAC للروابط.
[Match] OriginalName=* [Link] NamePolicy=keep kernel database onboard slot path AlternativeNamesPolicy=database onboard slot path MACAddressPolicy=persistent
مثال 2. /etc/systemd/network/10-dmz.link
يعين هذا المثال الاسم الثابت "dmz0" للواجهة ذات عنوان MAC 00:a0:de:63:7a:e6:
[Match] MACAddress=00:a0:de:63:7a:e6 [Link] Name=dmz0
NamePolicy= غير مضبوط، لذا يسري مفعول Name=. نستخدم البادئة "10-" لترتيب هذا الملف مبكراً في القائمة. لاحظ أنه يجب أن يكون قبل 99-default.link، أي يجب أن يكون له بادئة رقمية، ليكون له أي تأثير.
مثال 3. (إعادة) تطبيق ملف .link على واجهة
بعد إنشاء ملف .link جديد، أو تعديل ملف .link موجود، يمكن تطبيق الإعدادات الجديدة على الواجهة المطابقة بالأوامر التالية:
$ sudo udevadm control --reload $ sudo ip link set eth0 down $ sudo udevadm trigger --verbose --settle --action add /sys/class/net/eth0
قد تحتاج أيضًا إلى إيقاف الخدمة التي تدير واجهة الشبكة، على سبيل المثال: systemd-networkd.service(8) أو NetworkManager.service قبل العملية أعلاه، ثم إعادة تشغيل الخدمة بعد ذلك. لمزيد من التفاصيل حول أمر udevadm، انظر udevadm(8).
مثال 4. تنقيح تعيينات NamePolicy=
$ sudo SYSTEMD_LOG_LEVEL=debug udevadm test-builtin net_setup_link /sys/class/net/hub0 ... حُلل ملف الضبط /usr/lib/systemd/network/99-default.link حُلل ملف الضبط /etc/systemd/network/10-eth0.link ID_NET_DRIVER=cdc_ether ملف الضبط /etc/systemd/network/10-eth0.link ينطبق على الجهاز hub0 link_config: التفاوض الآلي غير مضبوط أو مُمكَّن، السرعة والازدواج غير قابلين للكتابة. hub0: الجهاز لديه name_assign_type=4 استخدام مخطط تسمية الواجهة المبدئي 'v240'. hub0: السياسات لم تنتج اسماً، استخدام الاسم المحدد Name=hub0. ID_NET_LINK_FILE=/etc/systemd/network/10-eth0.link ID_NET_NAME=hub0 ...
ضبط Name= الصريح هو الذي يسود في هذه الحالة.
sudo SYSTEMD_LOG_LEVEL=debug udevadm test-builtin net_setup_link /sys/class/net/enp0s31f6 ... حُلل ملف الضبط /usr/lib/systemd/network/99-default.link حُلل ملف الضبط /etc/systemd/network/10-eth0.link أُنشئ سياق ضبط الربط. ID_NET_DRIVER=e1000e ملف الضبط /usr/lib/systemd/network/99-default.link ينطبق على الجهاز enp0s31f6 link_config: التفاوض الآلي غير مضبوط أو مُمكَّن، السرعة والازدواج غير قابلين للكتابة. enp0s31f6: الجهاز لديه name_assign_type=4 استخدام مخطط تسمية الواجهة المبدئي 'v240'. enp0s31f6: السياسة *keep*: الحفاظ على اسم فضاء المستخدم الموجود enp0s31f6: الجهاز لديه addr_assign_type=0 enp0s31f6: MAC الموجود على الجهاز يطابق بالفعل السياسة *persistent* ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link ...
في هذه الحالة، أُعيد تسمية الواجهة بالفعل، لذا فإن سياسة keep المحددة كخيار أول في 99-default.link تعني الحفاظ على الاسم الموجود. إذا أُزيلت keep، أو إذا كنا في مرحلة الإقلاع قبل حدوث إعادة التسمية، فقد نحصل على ما يلي بدلاً من ذلك:
enp0s31f6: Policy *path* yields "enp0s31f6". enp0s31f6: Device has addr_assign_type=0 enp0s31f6: MAC on the device already matches policy *persistent* ID_NET_LINK_FILE=/usr/lib/systemd/network/99-default.link ID_NET_NAME=enp0s31f6 ...
يُرجى ملاحظة أن تفاصيل المخرجات قابلة للتغيير.
مثال 5. /etc/systemd/network/10-internet.link
يعين هذا المثال الاسم الثابت "internet0" للواجهة ذات مسار الجهاز "pci-0000:00:1a.0-*":
[Match] Path=pci-0000:00:1a.0-* [Link] Name=internet0
مثال 6. /etc/systemd/network/25-wireless.link
إليك مثال معقد للغاية يوضح استخدام عدد كبير من إعدادات [Match] و[Link].
[Match] MACAddress=12:34:56:78:9a:bc Driver=brcmsmac Path=pci-0000:02:00.0-* Type=wlan Virtualization=no Host=my-laptop Architecture=x86-64 [Link] Name=wireless0 MTUBytes=1450 BitsPerSecond=10M WakeOnLan=magic MACAddress=cb:a9:87:65:43:21
انظر أيضًا¶
systemd-udevd.service(8), udevadm(8), systemd.netdev(5), systemd.network(5), systemd-network-generator.service(8)
ملاحظات¶
- 1.
- 💣💥🧨💥💥💣 يرجى ملاحظة أن ملفات الضبط تلك يجب أن تكون متوفرة في جميع الأوقات. إذا كان /usr/local/ قسماً منفصلاً، فقد لا يكون متوفراً أثناء بدء التشغيل المبكر، ويجب عدم استخدامه للضبط.
- 2.
- بيانات اعتماد النظام والخدمة
- 3.
- إفراغ تجزئة عام جزئي
ترجمة¶
تُرجمت هذه الصفحة من الدليل بواسطة زايد السعيدي <zayed.alsaidi@gmail.com>
هذه الترجمة هي وثيقة مجانية؛ راجع رخصة جنو العامة الإصدار 3 أو ما بعده للاطلاع على شروط حقوق النشر. لا توجد أي ضمانات.
إذا وجدت أي أخطاء في ترجمة صفحة الدليل هذه، يرجى إرسال بريد إلكتروني إلى قائمة بريد المترجمين: kde-l10n-ar@kde.org.
| systemd 261~rc3 |