bin، sbin، usr/bin، usr/sbin جي وچ ۾ فرق

نومبر 30، 2010 تي، ڊيوڊ ڪولر لکيو:

مون ڏٺو ته busybox ۾ لنڪس ورهايل آهن انهن چئن ڊائريڪٽرن ۾.
ڇا اهو طئي ڪرڻ لاءِ ڪو سادو قاعدو آهي ته ڪهڙي ڊاريڪٽري ۾ ڪهڙن لنڪن کي ڪوڙو هجڻ گهرجي۔۔۔
مثال طور، kill is in /bin، ۽ killall is in /usr/bin... مون کي ھن ڀاڱي ۾ ڪو منطق نظر نٿو اچي.

توھان شايد ڄاڻو ٿا ته ڪين ٿامپسن ۽ ڊينس رچي يونڪس ٺاھيو PDP-7 تي 1969 ۾. تنهن ڪري، 1971 جي ڀرسان، انهن کي هڪ PDP-11 ۾ وڌايو ويو RK05 ڊسڪ جي هڪ جوڙي سان (هر هڪ 1,5 ميگا بائيٽ).

جڏهن آپريٽنگ سسٽم وڌيو ۽ هاڻي پهرين ڊسڪ تي مناسب نه رهيو (جنهن تي روٽ FS واقع هو)، اهي حصو ٻئي ڏانهن منتقل ڪيا ويا، جتي هوم ڊاريڪٽريون واقع هيون (تنهن ڪري، ماؤنٽ پوائنٽ سڏيو ويندو هو /usr - لفظ مان. استعمال ڪندڙ). انهن سڀني ضروري او ايس ڊاريڪٽريز کي اتي نقل ڪيو (/bin، /sbin، /lib، /tmp ...) ۽ فائلن کي نئين ڊسڪ تي رکيو، ڇاڪاڻ ته پراڻي هڪ خلا کان ٻاهر ڀڄي ويو. پوءِ انهن وٽ ٽين ڊسڪ هئي، انهن ان کي /home ڊاريڪٽري ۾ لڳايو ۽ استعمال ڪندڙن جي گهر ڊاريڪٽري کي اتي منتقل ڪيو ته جيئن او ايس ٻن ڊسڪ تي باقي بچيل سموري جاءِ وٺي سگهي، ۽ اهي هئا. ٽي ميگا بائيٽ (واهه!).

يقينن، انهن کي هڪ قاعدو ٺاهڻو هو ته "جڏهن آپريٽنگ سسٽم بوٽ ڪري، اهو لازمي طور تي /usr ۾ هڪ سيڪنڊ ڊسڪ کي نصب ڪرڻ جي قابل هوندو، تنهنڪري پروگرام نه رکون جهڙوڪ /usr ۾ سيڪنڊ ڊسڪ تي ماؤنٽ ڪريو يا توهان وٽ هوندو. ڪڪڙ ۽ انڊي جو مسئلو. اهو سادو آهي. ۽ اهو يونڪس V6 ۾ 35 سال اڳ هو.

/bin ۽ /usr/bin (۽ اهڙيون سڀئي ڊائريڪٽريون) جي تقسيم انهن واقعن جو هڪ ورثو آهي، 70 جي ڏهاڪي کان هڪ عمل درآمد جو تفصيل جيڪو هاڻي ڏهاڪن تائين بيوروڪريٽس پاران نقل ڪيو ويو آهي. هنن ڪڏهن به سوال نه ڪيو ڇوانهن صرف ڪيو. ھن ڊويزن کي لينڪس ٺاھڻ کان اڳ ئي احساس ڪرڻ بند ٿي ويو، ڪيترن ئي سببن لاء:

  1. جڏهن بوٽنگ، هڪ initrd يا initramfs استعمال ڪيو ويندو آهي، جيڪو مسئلن جو خيال رکندو آهي جهڙوڪ "اسان کي هن فائل کان پهريان هن فائل جي ضرورت آهي." اهڙيء طرح، اسان وٽ آهي اڳ ۾ ئي آهي عارضي فائل سسٽم جيڪو هر شي کي لوڊ ڪرڻ لاء استعمال ڪيو ويندو آهي.
  2. شيئر ٿيل لائبريريون (جنهن کي يونڪس ۾ شامل ڪيو ويو هو برڪلي جي ماڻهن) توهان کي /lib ۽ /usr/lib جي مواد کي آزاديءَ سان تبديل ڪرڻ جي اجازت نه ڏيندا آهن. اهي ٻه حصا ملن ٿا يا اهي ڪم نه ڪندا. اهو 1974 ۾ نه ٿيو، ڇاڪاڻ ته انهن کي ڪجهه آزادي حاصل هئي ان وقت جامد ڳنڍڻ جي ڪري.
  3. سستا هارڊ ڊرائيو 100 جي ڀرسان 1990 ميگا بائيٽ جي رڪاوٽ کي ٽوڙي ڇڏيو، ۽ ساڳئي وقت، ورهاڱي کي تبديل ڪرڻ وارو سافٽ ويئر ظاهر ٿيو (پارٽيشن جادو 3.0 1997 ۾ آيو).

يقينن، جتان هڪ ڊويزن آهي، ڪجهه ماڻهو قاعدن سان گڏ آيا آهن جيڪي ان کي درست ڪن ٿا. جهڙوڪ، روٽ ورهاڱي جي ضرورت آهي سڀني قسمن جي عام OS خاصيتن لاء، ۽ توهان کي توهان جي مقامي فائلن کي / usr ۾ رکڻ جي ضرورت آهي. يا داخل ڪريو / ڇا AT&T تقسيم ڪري ٿو، ۽ /usr ۾ جيڪو توهان جي تقسيم، IBM AIX، يا Dec Ultrix، يا SGI Irix شامل ڪيو ويو آهي، ۽ /usr/local توهان جي سسٽم لاءِ مخصوص فائلن تي مشتمل آهي. ۽ پوءِ ڪنهن فيصلو ڪيو /usr/local نئين سافٽ ويئر کي انسٽال ڪرڻ لاءِ صحيح جاءِ نه هئي، سو اچو ته شامل ڪريون/opt! مون کي حيرت نه ٿيندي جيڪڏهن /opt/local پڻ ظاهر ٿئي ...

يقينن، 30 سالن جي دوران، هن علحدگيء جي ڪري، سڀني قسمن جا دلچسپ تقسيم مخصوص ضابطا آيا ۽ ويا آهن. مثال طور، "/tmp ريبوٽ تي صاف ڪيو ويو آهي، پر /usr/tmp ناهي." (۽ Ubuntu ۾ اصول ۾ ڪو به /usr/tmp ناهي، ۽ Gentoo ۾ /usr/tmp /var/tmp جو هڪ علامتي لنڪ آهي، جيڪو هاڻي ان قاعدي جي تابع آهي، ۽ اهو ريبوٽ تي صاف ناهي. ها، هي سڀ کان پهريان اهو به ٿئي ٿو ته روٽ FS صرف پڙهڻ لاءِ آهي، ۽ پوءِ توهان کي /usr ڏانهن ڪجهه به لکڻ جي ضرورت ناهي، پر توهان کي /var ڏانهن لکڻ جي ضرورت آهي. گهڻو ڪري نه ٿو لکي سگھجي سواءِ /etc ۾، جنهن کي ڪڏهن ڪڏهن /var ڏانهن منتقل ڪرڻ جي ڪوشش ڪئي وئي هئي ...)

بيوروڪريٽس جهڙوڪ لينڪس فائونڊيشن (جنهن سال اڳ پنهنجي توسيع دوران مفت معيار گروپ کي نگلايو) انهن قاعدن کي دستاويز ڪرڻ ۽ پيچيدگي ڪرڻ ۾ خوش آهن ڪڏهن به اهو ڄاڻڻ جي ڪوشش ڪرڻ جي بغير ته اهي اتي ڇو هئا. ڇا انهن کي اهو احساس نه آهي ته ڪين ۽ ڊينس صرف OS جو حصو پنهنجي گهر ڊاريڪٽري ڏانهن منتقل ڪيو ڇاڪاڻ ته RK05 ڊسڪ PDP-11 تي تمام ننڍڙو هو.

مون کي پڪ آهي ته busybox صرف فائلن کي ساڳئي طرح رکي ٿو جيئن اهو تاريخي طور تي ترقي ڪئي وئي آهي. هينئر تائين ائين ڪرڻ جو ڪو به حقيقي سبب ناهي. ذاتي طور تي، مان صرف /bin، /sbin ۽ /lib کي /usr ۾ ساڳي ڊائريڪٽرن سان ڳنڍيندو آهيان. آخرڪار، جيڪي ماڻهو ايمبيڊڊ سافٽ ويئر سان ڪم ڪن ٿا، انهن کي سمجهڻ ۽ آسان ڪرڻ جي ڪوشش ڪريو ...

جو ذريعو: www.habr.com

تبصرو شامل ڪريو