Ще одна думка про різницю між bin, sbin, usr/bin, usr/sbin

Нещодавно я виявив таку статтю: Різниця між bin, sbin, usr/bin, usr/sbin. Хотілося б поділитись своїм поглядом на стандарт.

/ bin

Містить команди, які можуть використовуватися як системним адміністратором, так і користувачами, але які необхідні, коли не змонтовано жодні інші файлові системи (наприклад, в режимі одного користувача). Він може містити команди, які побічно використовуються скриптами.

Там очікується присутність таких команд:

як, chgrp, CHMOD, Чаун, cp, дата, dd, df, dmesg, нудьгувати, false, ім'я хоста, вбивати, ln, Логін, ls, mkdir, mknod, більше, монтувати, mv, ps, pwd, rm, rmdir, sed, sh, stty, su, синхронізувати, правда, umount, Uname.

Можна зробити симлінки на /usr, але хоча в часи systemd /usr на окремому пристрої не зустрічається, його ще можна зустріти на системі, світлофорі, кавомолці і PDP-11, що обслуговує важливий прилад в одній з лабораторій Академії Наук.

/ sbin

Утиліти, які використовуються для системного адміністрування (та інші команди тільки для root), /sbin містить двійкові файли, необхідні для завантаження, відновлення, відновлення та/або відновлення системи на додаток до двійкових файлів /bin. Програми, що виконуються після того, як /usr монтується (коли проблем немає), зазвичай розміщуються в /usr/sbin. Локально встановлені програми системного адміністрування мають бути розміщені в /usr/local/sbin.

Очікуються:

fastboot, fasthalt, fdisk, fsck, getty, halt, ifconfig, init, mkfs, mkswap, reboot, route, swapon, swapoff, update.

Один із способів захисту системи від пустотливих рук користувачів - це заборона запуску цих утиліт будь-кому, встановленням атрибуту x.
До того ж, заміна /bin та /sbin на копії з архіву (однакового для всіх однотипних систем) є швидким способом ремонту систем без пакетного менеджера.

/ usr / bin

Тут все просто. Однотипні команди, однакові всім серверів/кавомолок компанії. І сам /usr може розгортатися однаковим для різних ОС (для /bin та /sbin таке зазвичай не працює), це архітектурно незалежні програми. Може містити лінки на інтерпретатори perl або python, які лежать в /opt або десь у мережі.

/ usr / sbin

Теж саме, що /usr/bin, але для використання лише адмінами.

/usr/local/bin та /usr/local/sbin

Одна з найважливіших локацій. На відміну від решти /usr не може бути однаковою для всієї організації. Тут знаходяться ОС-залежні, hardware-залежні та просто програми, які не на всіх пристроях потрібні. При синхронізації /usr на машинах /usr/local потрібно виключати.

/home/$USER/bin

Тут випадок подібний до /usr/local, тільки лежать програми специфічні для конкретного користувача. Можна переносити (або синхронізувати) на іншу машину під час переїзду користувача. Те, що не можна переносити, складається в /home/$USER/.local/bin. Можна використовувати локальні місця без точки. /home/$USER/sbin зі зрозумілих міркувань відсутня.

Буду радий виправленням та доповненням.

Джерело: habr.com

Додати коментар або відгук