Recent am descoperit un articol ca acesta: . Aș dori să îmi împărtășesc perspectiva asupra standardului.
/bin
Conține comenzi care pot fi utilizate atât de către administratori de sistem, cât și de utilizatori, dar care sunt necesare atunci când nu sunt montate alte sisteme de fișiere (de exemplu, în modul mono-utilizator). De asemenea, poate conține comenzi care sunt utilizate indirect de scripturi.
Aici se așteaptă prezența unor astfel de comenzi:
cat, chgrp, chmod, chown, cp, date, dd, df, dmesg, echo, false, nume gazdă, kill, ln, login, ls, mkdir, mknod, more, mount, mv, ps, pwd, rm, rmdir, sed, sh, stty, su, sync, true, umount, uname.
Se pot crea linkuri simbolice pe /usr, dar deși în perioada systemd /usr pe un dispozitiv separat nu este întâlnit, încă mai poate fi întâlnit pe un sistem încorporat, semafor, râșniță de cafea și PDP-11 care deservesc un instrument important într-unul din laboratoarele Academiei de Științe.
/sbin
Utilitarele utilizate pentru administrarea sistemului (și alte comenzi doar pentru root), /sbin conține fișiere binare necesare pentru încărcarea, recuperarea și/sau restaurarea sistemului, în plus față de fișierele binare din /bin. Programele care sunt executate după ce /usr este montat (când nu sunt probleme) sunt de obicei plasate în /usr/sbin. Programele instalate local pentru administrarea sistemului ar trebui să fie plasate în /usr/local/sbin.
Se așteaptă:
fastboot, fasthalt, fdisk, fsck, getty, halt, ifconfig, init, mkfs, mkswap, reboot, route, swapon, swapoff, update.
Una dintre modalitățile de a proteja sistemul de mâinile curioase ale utilizatorilor este restricționarea executării acestor utilitare de către oricine, prin setarea atributului x.
În plus, înlocuirea /bin și /sbin cu copii din arhivă (identice pentru toate sistemele similare) este o modalitate rapidă de a repara sistemele fără un manager de pachete.
/usr/bin
Aici totul este simplu. Comenzile similare, identice pentru toate serverele/râșnițele de cafea ale companiei. Și în sine, /usr poate fi desfășurat identic pentru diferite sisteme de operare (pentru /bin și /sbin de obicei nu funcționează așa), sunt programe independente de arhitectură. Poate conține linkuri către interpretoare perl sau python, care se află în /opt sau în altă parte în rețea.
/usr/sbin
Același lucru ca și /usr/bin, dar destinat doar administratorilor.
/usr/local/bin и /usr/local/sbin
Una dintre cele mai importante locații. Spre deosebire de restul, /usr nu poate fi identic pentru întreaga organizație. Aici se află programe dependente de sistemul de operare, dependente de hardware și pur și simplu programe care nu sunt necesare pe toate dispozitivele. La sincronizarea /usr pe mașini, /usr/local trebuie exclus.
/home/$USER/bin
Aici situația este similară cu /usr/local, doar că aici se află programe specifice pentru un anumit utilizator. Acestea pot fi transferate (sau sincronizate) pe o altă mașină atunci când utilizatorul se mută. Ceea ce nu poate fi transferat se află în /home/$USER/.local/bin. Se poate folosi local fără punct. /home/$USER/sbin lipsește din motive evidente.
Aș fi bucuros pentru corecturi și completări.
Sursa: habr.com
