6.6. إنشاء الملفات والروابط الأساسية
/ tools / bin / {bash، cat، chmod، dd، echo، ln، mkdir، pwd، rm، stty، touch} / bin
/ tools / bin / {bash، cat، chmod، dd، echo، ln، mkdir، pwd، rm، stty، touch} / bin
/ tools / bin / {env، install، perl، printf}
/tools/lib/libgcc_s.so{،.1}
/tools/lib/libstdc++.{a،so{،.6}}
/ tools / bin / {env، install، perl، printf}
/tools/lib/libgcc_s.so{،.1}
/tools/lib/libstdc++.{a،so{،.6}}
/ البيرة / بن
/ البيرة / ليب
/ البيرة / ليب
/ البيرة / بن
/ البيرة / ليب
/ البيرة / ليب
تستخدم بعض البرامج مسارات صلبة لبرامج غير موجودة بعد. من أجل تلبية هذه البرامج ، قم بإنشاء عدد من الروابط الرمزية التي سيتم استبدالها بملفات حقيقية خلال هذا الفصل بعد تثبيت البرنامج:
ln ln
ln
-sv
-sv
-sv
-sv
ln ln
ln
ln -sv bash / bin / sh
ln -sv bash / bin / sh
الغرض من كل رابط:
/ بن / باش
كثير سحق تحدد البرامج النصية / بن / باش.
/ بن / قطة
تم ترميز اسم المسار هذا في البرنامج النصي لتهيئة Glibc.
/ بن / ي
الطريق إلى dd سيتم ترميزها الثابت في / usr / bin / libtool خدمة.
/ بن / صدى
هذا لإرضاء أحد الاختبارات في مجموعة اختبار Glibc ، والتي تتوقعها / بن / صدى.
/ البيرة / بن / إنف
تم ترميز اسم المسار هذا في بعض إجراءات بناء الحزم.
/ البيرة / بن / تثبيت
الطريق إلى تثبيت سيتم ترميزها الثابت في /usr/lib/bash/Makefile.inc ملف.
/ بن / ln
الطريق إلى ln سيتم ترميزها الثابت في /usr/lib/perl5/5.30.0/ / Config_ heavy.pl ملف.
/ بن / pwd
بعض تكوين تحتوي البرامج النصية ، خاصةً Glibc ، على اسم المسار هذا مشفرًا.
/ بن / جمهورية مقدونيا
الطريق إلى rm سيتم ترميزها الثابت في /usr/lib/perl5/5.30.0/ / Config_ heavy.pl ملف.
/ بن / stty
تم ترميز اسم المسار هذا في Expect ، وبالتالي فهو ضروري لاجتياز مجموعات اختبار Binutils و GCC.
/ البيرة / بن / بيرل
العديد من سكربتات Perl تقوم بترميز هذا المسار إلى ملف بيرل برنامج.
/usr/lib/libgcc_s.so{،.1}
يحتاج Glibc إلى هذا لكي تعمل مكتبة pthreads.
/usr/lib/libstdc++{،.6}
هذا مطلوب من خلال العديد من الاختبارات في مجموعة اختبار Glibc ، بالإضافة إلى دعم C ++ في GMP.
/ بن / ش
العديد من البرامج النصية للقذيفة ذات التعليمات البرمجية الثابتة / بن / ش.
تاريخيًا ، يحتفظ Linux بقائمة أنظمة الملفات المركبة في الملف / الخ / mtab. تحتفظ النوى الحديثة بهذه القائمة داخليًا وتعرضها للمستخدم عبر ملف / إجراءات نظام الملفات. لإرضاء المرافق التي تتوقع وجود / الخ / mtab، قم بإنشاء الرابط الرمزي التالي:
ln -sv / proc / self / mounts / etc / mtab
ln -sv / proc / self / mounts / etc / mtab
من أجل المستخدم جذر لتتمكن من تسجيل الدخول وللتعرف على الاسم "root" ، يجب أن تكون هناك إدخالات ذات صلة في / الخ / باسود / etc / group الملفات.
إنشاء / الخ / باسود ملف عن طريق تشغيل الأمر التالي:
cat> / etc / passwd << "EOF" الجذر: x: 0: 0: root: / root: / bin / bash bin: x: 1: 1: bin: / dev / null: / bin / false daemon: x: 6: 6: Daemon User: / dev / خالية: / بن / خطأ
messagebus: x: 18: 18: D-Bus Message Daemon المستخدم: / var / run / dbus: / bin / false nobody: x: 99: 99: Unprivileged User: / dev / null: / bin / false
EOF
cat> / etc / passwd << "EOF" الجذر: x: 0: 0: root: / root: / bin / bash bin: x: 1: 1: bin: / dev / null: / bin / false daemon: x: 6: 6: Daemon User: / dev / خالية: / بن / خطأ
messagebus: x: 18: 18: D-Bus Message Daemon المستخدم: / var / run / dbus: / bin / false nobody: x: 99: 99: Unprivileged User: / dev / null: / bin / false
EOF
كلمة المرور الفعلية لـ جذر ("x" المستخدم هنا هو مجرد عنصر نائب) سيتم تعيينه لاحقًا. قم بإنشاء ملف / etc / group ملف عن طريق تشغيل الأمر التالي:
القط> / الخ / المجموعة الجذر: x: 0: bin: x: 1: daemon sys: x: 2:
كم: س: 3:
شريط: ×: 4:
tty: x: 5: daemon: x: 6: floppy: x: 7: disk: x: 8:
lp: x: 9: Dialout: x: 10: audio: x: 11: video: x: 12: utmp: x: 13: usb: x: 14: cdrom: x: 15: adm: x: 16: messagebus: x: 18: الإدخال: x: 24: البريد: x: 34: kvm: x: 61: wheel: x: 97: nogroup: x: 99: المستخدمين: x: 999:
EOF
<<
"EOF"
القط> / الخ / المجموعة الجذر: x: 0: bin: x: 1: daemon sys: x: 2:
كم: س: 3:
شريط: ×: 4:
tty: x: 5: daemon: x: 6: floppy: x: 7: disk: x: 8:
lp: x: 9: Dialout: x: 10: audio: x: 11: video: x: 12: utmp: x: 13: usb: x: 14: cdrom: x: 15: adm: x: 16: messagebus: x: 18: الإدخال: x: 24: البريد: x: 34: kvm: x: 61: wheel: x: 97: nogroup: x: 99: المستخدمين: x: 999:
EOF
المجموعات التي تم إنشاؤها ليست جزءًا من أي معيار - فهي مجموعات يتم تحديدها جزئيًا وفقًا لمتطلبات تكوين Udev في هذا الفصل ، وجزئيًا من خلال العرف المشترك الذي يستخدمه عدد من توزيعات Linux الحالية. بالإضافة إلى ذلك ، تعتمد بعض مجموعات الاختبار على مستخدمين أو مجموعات محددة. Linux Standard Base (LSB ، متاح على http: // www. linuxbase.org) توصي فقط بذلك ، إلى جانب المجموعة جذر مع معرف المجموعة (GID) من 0 ، مجموعة بن مع وجود GID من 1. يمكن اختيار جميع أسماء المجموعات ومعرفات GID الأخرى بحرية من قبل مسؤول النظام لأن البرامج جيدة الكتابة لا تعتمد على أرقام GID ، بل تستخدم اسم المجموعة.
لإزالة "ليس لدي اسم!" موجه ، ابدأ قشرة جديدة. منذ أن تم تثبيت Glibc الكامل في الفصل 5 و / etc / passwd / etc / group تم إنشاء الملفات ، سيعمل اسم المستخدم وتحليل اسم المجموعة الآن:
exec / tools / bin / bash - تسجيل الدخول + h
exec / tools / bin / bash - تسجيل الدخول + h
لاحظ استخدام +h التوجيه. هذا يقول سحق عدم استخدام تجزئة المسار الداخلي. بدون هذا التوجيه ، سحق سيتذكر مسارات الثنائيات التي نفذها. لضمان استخدام الثنائيات التي تم تجميعها حديثًا بمجرد تثبيتها ، يجب أن يكون ملف +h سيتم استخدام التوجيه طوال مدة هذا الفصل.
/ var / log / {btmp، lastlog، faillog، wtmp}
/ var / log / {btmp، lastlog، faillog، wtmp}
-v
-v
-v
-v
-v
-v
664 - برنامج تشغيل
600
664 - برنامج تشغيل
600
/ var / log / lastlog
/ var / log / lastlog
/ فار / سجل / btmp
/ var / log / lastlog
/ var / log / lastlog
/ فار / سجل / btmp
إنّ تسجيل الدخول, رقيقو الحرف الأول تستخدم البرامج (وغيرها) عددًا من ملفات السجل لتسجيل المعلومات مثل من قام بتسجيل الدخول إلى النظام ومتى. ومع ذلك ، لن تكتب هذه البرامج إلى ملفات السجل إذا لم تكن موجودة بالفعل. قم بتهيئة ملفات السجل ومنحها الأذونات المناسبة:
لمس chgrp chmod
شمود
لمس chgrp chmod
شمود
إنّ / فار / سجل / wtmp ملف يسجل جميع عمليات تسجيل الدخول والخروج. ال / var / log / lastlog يسجل الملف عندما قام كل مستخدم بتسجيل الدخول آخر مرة / var / log / faillog سجلات الملف محاولات تسجيل الدخول الفاشلة. ال / فار / سجل / btmp يسجل الملف محاولات تسجيل الدخول السيئة.
ملاحظات
إنّ / تشغيل / utmp يسجل الملف المستخدمين الذين تم تسجيل دخولهم حاليًا. يتم إنشاء هذا الملف ديناميكيًا في البرامج النصية التمهيدية.
ملاحظات
إنّ / تشغيل / utmp يسجل الملف المستخدمين الذين تم تسجيل دخولهم حاليًا. يتم إنشاء هذا الملف ديناميكيًا في البرامج النصية التمهيدية.