/ Etc / init / සහ /etc/init.d/ අතර වෙනස කුමක්ද?


Answers:


238

/etc/init.dSystem V init මෙවලම් (SysVinit) භාවිතා කරන ස්ක්‍රිප්ට් අඩංගු වේ. මෙය ලිනක්ස් සඳහා වන සාම්ප්‍රදායික සේවා කළමනාකරණ පැකේජය වන අතර, initවැඩසටහන (කර්නලය ආරම්භ කිරීම අවසන් වූ විට ක්‍රියාත්මක වන පළමු ක්‍රියාවලිය) මෙන්ම සේවාවන් ආරම්භ කිරීමට හා නැවැත්වීමට සහ ඒවා වින්‍යාස කිරීමට අවශ්‍ය යටිතල පහසුකම් ද ඇත. විශේෂයෙන්, ගොනු /etc/init.dකිරීමට ප්රතිචාර බව ෂෙල් අක්ෂර වේ start, stop, restart, සහ (සහාය විට) reloadයම් සේවා කළමනාකරණය කිරීමට අණ කරයි. මෙම ස්ක්‍රිප්ට් වෙනත් ප්‍රේරකයක් හරහා කෙලින්ම හෝ (බහුලවම) ආයාචනා කළ හැකිය (සාමාන්‍යයෙන් සංකේතාත්මක සබැඳියක් තිබීම /etc/rc?.d/).

/etc/initUpstart භාවිතා කරන වින්‍යාස ගොනු අඩංගු වේ. අප්ස්ටාර්ට් යනු උබුන්ටු විසින් මෙහෙයවනු ලබන තරුණ සේවා කළමනාකරණ පැකේජයකි. ගොනු /etc/initමත් වර්ජකයන්ගේ කියන්නේ කෙසේ ද, කවර මානකරන ගොනු start, stop, reload, මානකරන, හෝ විමසුම statusසේවාවක්. පැහැදිලිව පෙනෙන පරිදි, උබුන්ටු SysVinit සිට Upstart වෙත සංක්‍රමණය වෙමින් පවතී, එමඟින් Upstart වින්‍යාස ගොනු වඩාත් කැමති වුවද SysVinit ස්ක්‍රිප්ට් සමඟ බොහෝ සේවාවන් පැමිණෙන්නේ මන්දැයි පැහැදිලි කරයි. ඇත්ත වශයෙන්ම, SysVinit ස්ක්‍රිප්ට් සැකසෙන්නේ Upstart හි අනුකූලතා ස්ථරයක් මගිනි.

.dබහලුම නම් දී සාමාන්යයෙන් විශේෂිත අවස්ථාවක් සඳහා බොහෝ මානකරන ගොනු හෝ පිටපත් අඩංගු බහලුම පෙන්නුම් (උදා: /etc/apt/sources.list.dඅතථ්ය කිරීමට concatenated බව ගොනු අඩංගු වේ sources.list; /etc/network/if-up.dජාලයක් විට ක්රියාත්මක වන බව පිටපත් අඩංගු i nter ace සක්රිය කර ඇති). මෙම ව්‍යුහය සාමාන්‍යයෙන් භාවිතා කරනුයේ ඩිරෙක්ටරියේ සෑම ප්‍රවේශයක්ම වෙනත් ප්‍රභවයක් මඟින් සපයන විටය, එවිට සෑම පැකේජයකටම තමන්ගේම ප්ලග්-ඉන් එකක් තැන්පත් කළ හැකිය. මෙම අවස්ථාවෙහිදී, “init” යනු නාමාවලිය සඳහා තාර්කික නාමයක් වන අතර, SysVinit මුලින්ම පැමිණ භාවිතා කරන ලදි init.d, සහ Upstart සරල ලෙස භාවිතා කරයිinitසමාන අරමුණක් ඇති නාමාවලියක් සඳහා (එය වඩා “ප්‍රධාන ධාරාව” විය හැකි අතර, ඒ /etc/upstart.dවෙනුවට ඔවුන් භාවිතා කළේ නම් අඩු අහංකාරය ).

In ආරම්භක ගණනය නොකිරීම


29
එසෝටරික් note තිහාසික සටහන: .dසිස්ටම් වී සමඟ ඇතුළත් කළ නාමාවලි එය එවකට ප්‍රහේලිකාවක් වූ අතර අවසානයේ බොහෝ විට එක් පුද්ගලයෙකුගේ අදහස කේත කේන්ද්‍රයට ඇතුළු වී පිටව යා නොහැකි විය. නිදසුනක් ලෙස, catඑය ඉටු කරන කාර්යයට එය නරක නමක් යැයි ඔබ සිතන්නේ නම්, එය වෙනස් කිරීම සඳහා පද්ධතිය පුරා ගොනු කීයක් ස්පර්ශ කළ යුතුදැයි සිතා බලන්න.
msw

1
පද්ධති වල, නාමාවලි දෙකම ඇති, Upstart සහ SysVinit භාවිතා කරන්නේ කුමක්ද? පරීක්ෂා කිරීමට ක්‍රමයක් තිබේද?
asheeshr

5
නමින් පැකේජය තිබේද පරික්ෂා කරන්න @AsheeshR upstartහෝ sysvinit. මෑත සංස්කරණ වලදී, එය ද විය හැකිය systemd(මම මගේ පිළිතුර ලියන විට උබුන්ටු සඳහා එය නොතිබුණි). එය කුමන පැකේජයක් සපයනවාද /sbin/init( dpkg -S /sbin/init).
ගිලෙස්ගේ SO- නපුරු වීම නවත්වන්න '

මම භාවිතා කරන AWS උබුන්ටු උදාහරණයේ (බිට්නාමි වෙතින්), එය upstart/ sbin / init (ධාවනය dpkg -S /sbin/init) සපයන පැකේජයයි . නමුත් බිට්නාමි එහි පිටපත /etc/init.d නාමාවලියෙහි තබා ඇත. ඉහත @ අෂීෂ්ආර්ට ඔබේ පිළිතුර මෙය නොවේද? ඔබට ස්තුතියි.
සබුන්කු

AbSabuncu මෙය “SysVinit ස්ක්‍රිප්ට් සකසනු ලබන්නේ Upstart හි අනුකූලතා තට්ටුවක් මගිනි”.
ගිලෙස්ගේ SO- නපුරු වීම නවත්වන්න '

30

".D" සාමාන්‍යයෙන් ඩිරෙක්ටරි නාමයකට එකතු කරනුයේ එක් ස්ක්‍රිප්ට් එකක් හෝ තනි වින්‍යාස ගොනුවක් මගින් හසුරුවනු ලැබූ දේ (හෝ විය හැකි දේ) පහසුව තකා බහුවිධ ලිපිගොනු වලට බෙදා ඇති බව දැක්වීමට ය. එකට ඇතුළත් කළ යුතුය, නැතහොත් ක්‍රියාත්මක කළ යුතුය.

උදාහරණයක් ලෙස, /etc/apache/conf.d/හෝ/etc/apt/sources.d/

කුමන අනුපිළිවෙල ඇතුළත් කළ යුතුද / ක්‍රියාත්මක කළ යුතුද යන්න වැදගත් අවස්ථාවන්හිදී, මෙම නාමාවලිවල ඇති ගොනු සමහර විට "00-default" හෝ "80-user" වැනි අංකයකින් ආරම්භ වන අතර එමඟින් ඒවා නිසි පිළිවෙලට ක්‍රියාත්මක වේ.

එය සම්බන්ධයෙන් ගත් /etc/init.d/කල, "init.d" හි ඇති ස්ක්‍රිප්ට් සියල්ලම ක්‍රියාත්මක කළ යුතු බව දක්වයි. කෙසේ වෙතත් වර්තමානයේ නවීන මෙහෙයුම් පද්ධතිවල ආරම්භක පද්ධතිය ඊට වඩා මඳක් සම්බන්ධ වී ඇති නමුත් නාමාවලි නාමය තවමත් පවතී.


සමහර විට .dඑය සාමාන්‍යයෙන් ආරම්භක වේලාවේ ආරම්භ කරන 'ඩීමන්' ක්‍රියාවලියකට සම්බන්ධ වේ.

22
.d අනිවාර්යයෙන්ම ඩිරෙක්ටරි සඳහා මිස ඩීමන් සඳහා නොවේ.
මාටින්

13

ඔබ පෙන්වා දෙන පරිදි, ".d" නාමකරණය ප්‍රහේලිකාවක් හා අමුතු දෙයක් වන අතර කිසිදු නවීන පද්ධතියක ඇත්ත වශයෙන්ම ස්ථානයක් නොමැත - බොහෝ නවීන සේවාවන් එය අතහැර දැමීමට පෙළඹී ඇති බව ඔබට පෙනෙනු ඇත.

නාමාවලිය එසේ /etc/initනොවීමට /etc/upstartහේතුව අප්ස්ටාර්ට් යනු ව්‍යාපෘති නාමය වන නිසා, සත්‍ය වශයෙන්ම ස්ථාපනය කර ඇති ද්විමය තවමත් පවතින /sbin/initබැවින් එහි වින්‍යාසයට ද්විමය හා නොගැලපෙන නමක් තිබීම අර්ථවත් නොවේ.


7
මෙය වැරදියි, උදා: udev ගේ rules.d, Xorg හි සාපේක්ෂව මෑත xorg.conf.d, එතරම් පැරණි නොවේ /etc/profile.d.
රුස්ලාන්
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.