6.6. आवश्यक फ़ाइलें और सिम्लिंक बनाना
/टूल्स/बिन/{बैश,कैट,चामोद,डीडी,इको,एलएन,एमकेडीआईआर,पीडब्ल्यूडी,आरएम,एसटीटी,टच} /बिन
/टूल्स/बिन/{बैश,कैट,चामोद,डीडी,इको,एलएन,एमकेडीआईआर,पीडब्ल्यूडी,आरएम,एसटीटी,टच} /बिन
/टूल्स/बिन/{env,इंस्टॉल,पर्ल,प्रिंटफ}
/tools/lib/libgcc_s.so{,.1}
/tools/lib/libstdc++.{a,so{,.6}}
/टूल्स/बिन/{env,इंस्टॉल,पर्ल,प्रिंटफ}
/tools/lib/libgcc_s.so{,.1}
/tools/lib/libstdc++.{a,so{,.6}}
/ Usr / bin
/ Usr / lib
/ Usr / lib
/ Usr / bin
/ Usr / lib
/ Usr / lib
कुछ प्रोग्राम उन प्रोग्रामों के लिए हार्ड-वायर्ड पथों का उपयोग करते हैं जो अभी तक मौजूद नहीं हैं। इन कार्यक्रमों को संतुष्ट करने के लिए, कई प्रतीकात्मक लिंक बनाएं जिन्हें सॉफ़्टवेयर स्थापित होने के बाद इस अध्याय के दौरान वास्तविक फ़ाइलों से बदल दिया जाएगा:
एलएन एलएन एलएन
ln
-एसवी
-एसवी
-एसवी
-एसवी
एलएन एलएन एलएन
ln
एलएन -एसवी बैश /बिन/श
एलएन -एसवी बैश /बिन/श
प्रत्येक लिंक का उद्देश्य:
/ बिन / बैश
बहुत खूब जोर से पीटना स्क्रिप्ट निर्दिष्ट करती हैं / बिन / बैश.
/बिन/बिल्ली
यह पथनाम Glibc की कॉन्फिगर स्क्रिप्ट में हार्ड-कोड किया गया है।
/बिन/डीडी
के लिए पथ dd में हार्ड-कोड किया जाएगा /usr/bin/libtool उपयोगिता।
/बिन/गूंज
यह Glibc के परीक्षण सूट में से एक परीक्षण को संतुष्ट करने के लिए है, जो अपेक्षा करता है /बिन/गूंज.
/usr/बिन/env
यह पथनाम कुछ पैकेज निर्माण प्रक्रियाओं में हार्ड-कोडित है।
/usr/bin/इंस्टॉल करें
के लिए पथ स्थापित में हार्ड-कोड किया जाएगा /usr/lib/bash/Makefile.inc फ़ाइल.
/बिन/एलएन
के लिए पथ ln में हार्ड-कोड किया जाएगा /usr/lib/perl5/5.30.0/ /कॉन्फिग_ हेवी.पीएल फ़ाइल.
/बिन/पीडब्ल्यूडी
कुछ कॉन्फ़िगर स्क्रिप्ट, विशेष रूप से Glibc, में यह पथनाम हार्ड-कोडित होता है।
/बिन/आरएम
के लिए पथ rm में हार्ड-कोड किया जाएगा /usr/lib/perl5/5.30.0/ /कॉन्फिग_ हेवी.पीएल फ़ाइल.
/ Bin / stty
इस पथनाम को एक्सपेक्ट में हार्ड-कोड किया गया है, इसलिए बिनुटिल्स और जीसीसी टेस्ट सूट को पास करने के लिए इसकी आवश्यकता है।
/usr/bin/perl
कई पर्ल स्क्रिप्ट इस पथ को हार्ड-कोड करते हैं पर्ल कार्यक्रम.
/usr/lib/libgcc_s.so{,.1}
Pthreads लाइब्रेरी के काम करने के लिए Glibc को इसकी आवश्यकता होती है।
/usr/lib/libstdc++{,.6}
Glibc के परीक्षण सूट में कई परीक्षणों के साथ-साथ GMP में C++ समर्थन के लिए इसकी आवश्यकता है।
/ बिन / श
कई शेल स्क्रिप्ट हार्ड-कोड हैं / बिन / श.
ऐतिहासिक रूप से, लिनक्स फ़ाइल में माउंटेड फ़ाइल सिस्टम की एक सूची रखता है / etc / mtab. आधुनिक कर्नेल इस सूची को आंतरिक रूप से बनाए रखते हैं और इसे उपयोगकर्ता के सामने उजागर करते हैं / proc फाइल सिस्टम। उन उपयोगिताओं को संतुष्ट करने के लिए जिनकी उपस्थिति की अपेक्षा है /etc/mtab, निम्नलिखित प्रतीकात्मक लिंक बनाएं:
ln -sv /proc/self/mounts /etc/mtab
ln -sv /proc/self/mounts /etc/mtab
उपयोगकर्ता के लिए जड़ लॉगिन करने में सक्षम होने के लिए और "रूट" नाम को पहचानने के लिए, इसमें प्रासंगिक प्रविष्टियाँ होनी चाहिए / Etc / पासवर्ड और / आदि / समूह फाइलें.
बनाएं / Etc / पासवर्ड निम्न आदेश चलाकर फ़ाइल करें:
बिल्ली > /etc/passwd << "ईओएफ" रूट: शून्य:/बिन/गलत
संदेशबस:x:18:18:डी-बस संदेश डेमॉन उपयोगकर्ता:/var/run/dbus:/bin/false कोई नहीं:x:99:99:अनविशेषाधिकार प्राप्त उपयोगकर्ता:/dev/null:/bin/false
EOF
बिल्ली > /etc/passwd << "ईओएफ" रूट: शून्य:/बिन/गलत
संदेशबस:x:18:18:डी-बस संदेश डेमॉन उपयोगकर्ता:/var/run/dbus:/bin/false कोई नहीं:x:99:99:अनविशेषाधिकार प्राप्त उपयोगकर्ता:/dev/null:/bin/false
EOF
के लिए वास्तविक पासवर्ड जड़ (यहां प्रयुक्त "x" केवल एक प्लेसहोल्डर है) बाद में सेट किया जाएगा। बनाएं / आदि / समूह निम्न आदेश चलाकर फ़ाइल करें:
बिल्ली > /etc/group रूट:x:0: बिन:x:1:डेमॉन sys:x:2:
किमीईएम:एक्स:3:
टेप:x:4:
tty:x:5: डेमॉन:x:6: फ़्लॉपी:x:7: डिस्क:x:8:
एलपी:x:9: डायलआउट:x:10: ऑडियो:x:11: वीडियो:x:12: utmp:x:13: USB:x:14: cdrom:x:15: adm:x:16: messagebus: x:18: इनपुट:x:24: मेल:x:34: kvm:x:61: व्हील:x:97: नोग्रुप:x:99: उपयोगकर्ता:x:999:
EOF
<<
"ईओएफ"
बिल्ली > /etc/group रूट:x:0: बिन:x:1:डेमॉन sys:x:2:
किमीईएम:एक्स:3:
टेप:x:4:
tty:x:5: डेमॉन:x:6: फ़्लॉपी:x:7: डिस्क:x:8:
एलपी:x:9: डायलआउट:x:10: ऑडियो:x:11: वीडियो:x:12: utmp:x:13: USB:x:14: cdrom:x:15: adm:x:16: messagebus: x:18: इनपुट:x:24: मेल:x:34: kvm:x:61: व्हील:x:97: नोग्रुप:x:99: उपयोगकर्ता:x:999:
EOF
बनाए गए समूह किसी भी मानक का हिस्सा नहीं हैं - वे इस अध्याय में Udev कॉन्फ़िगरेशन की आवश्यकताओं के आधार पर और कई मौजूदा लिनक्स वितरणों द्वारा नियोजित सामान्य सम्मेलन द्वारा तय किए गए समूह हैं। इसके अलावा, कुछ परीक्षण सूट विशिष्ट उपयोगकर्ताओं या समूहों पर निर्भर करते हैं। लिनक्स स्टैंडर्ड बेस (एलएसबी, http://www पर उपलब्ध है। linuxbase.org) समूह के अलावा केवल उसी की अनुशंसा करता है जड़ 0 की समूह आईडी (जीआईडी) के साथ, एक समूह बिन 1 की GID के साथ उपस्थित रहें। अन्य सभी समूह नाम और जीआईडी को सिस्टम प्रशासक द्वारा स्वतंत्र रूप से चुना जा सकता है क्योंकि अच्छी तरह से लिखे गए प्रोग्राम जीआईडी नंबरों पर निर्भर नहीं होते हैं, बल्कि समूह के नाम का उपयोग करते हैं।
"मेरा कोई नाम नहीं है!" को हटाने के लिए शीघ्र, एक नया शेल प्रारंभ करें। चूँकि अध्याय 5 और में एक पूर्ण Glibc स्थापित किया गया था /etc/passwd और / आदि / समूह फ़ाइलें बनाई गई हैं, उपयोगकर्ता नाम और समूह नाम रिज़ॉल्यूशन अब काम करेगा:
कार्यकारी / उपकरण / बिन / बैश - लॉगिन + एच
कार्यकारी / उपकरण / बिन / बैश - लॉगिन + एच
के उपयोग पर ध्यान दें +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/loadlog
/var/log/loadlog
/var/log/btmp
/var/log/loadlog
/var/log/loadlog
/var/log/btmp
RSI लॉग इन, एगेटी, तथा init प्रोग्राम (और अन्य) जानकारी रिकॉर्ड करने के लिए कई लॉग फ़ाइलों का उपयोग करते हैं जैसे कि सिस्टम में कौन लॉग इन हुआ था और कब। हालाँकि, ये प्रोग्राम लॉग फ़ाइलों पर नहीं लिखेंगे यदि वे पहले से मौजूद नहीं हैं। लॉग फ़ाइलों को प्रारंभ करें और उन्हें उचित अनुमतियाँ दें:
सीएचजीआरपी चामोद को स्पर्श करें
परिवर्तन विद्या
सीएचजीआरपी चामोद को स्पर्श करें
परिवर्तन विद्या
RSI /var/log/wtmp फ़ाइल सभी लॉगिन और लॉगआउट रिकॉर्ड करती है। /var/log/loadlog प्रत्येक उपयोगकर्ता द्वारा अंतिम बार लॉग इन करने पर फ़ाइल रिकॉर्ड /वर/लॉग/फेललॉग फ़ाइल रिकॉर्ड विफल लॉगिन प्रयास। /var/log/btmp फ़ाइल ख़राब लॉगिन प्रयासों को रिकॉर्ड करती है।
नोट
RSI /रन/यूटीएमपी फ़ाइल उन उपयोगकर्ताओं को रिकॉर्ड करती है जो वर्तमान में लॉग इन हैं। यह फ़ाइल बूट स्क्रिप्ट में गतिशील रूप से बनाई गई है।
नोट
RSI /रन/यूटीएमपी फ़ाइल उन उपयोगकर्ताओं को रिकॉर्ड करती है जो वर्तमान में लॉग इन हैं। यह फ़ाइल बूट स्क्रिप्ट में गतिशील रूप से बनाई गई है।