Что входит и что должно входить /opt/
и во что /usr/
? Я понимаю, что /usr/
раньше это было для домашних каталогов пользователей, но поскольку они существуют в /Users/
- какова цель сейчас?
Существует ли руководство или руководство по использованию всех встроенных каталогов? Как то /home/
, что есть , или /net/
?
macos
folders
filesystem
unix
DilithiumMatrix
источник
источник
Ответы:
Существует ли руководство или руководство по использованию всех встроенных каталогов? Как то, что / home / или / net /?
Взгляните на Руководство по программированию файловой системы для получения самой
man hier
последней информации и в терминале, который предоставляет «исторический очерк» иерархии файловой системы (он включен в конце этого ответа для справки).В комментарии к вашему вопросу упоминается стандарт иерархии файловой системы . Вы, вероятно , пришли к выводу, после просматривал System File Руководства по программированию и
man hier
, что MacOS не следует FHS , что больше похоже на Linux вещи. Конечно, есть сходство между FHS и макетом файловой системы в macOS из-за общего происхождения UNIX, но различия поразительны. macOS не использует ничего из этого:/boot
папка ->/System/Library/Kernels
вместо этого используется macOS (в старых версиях macOS папка, содержащая ядро, была/
)/home
папка -> MacOS использует/Users
вместо/root
папка -> MacOS использует/var/root
вместои
/opt
не упоминается ни разу ни в одном документе (подробнее/opt
ниже)Еще один distiction между MacOS и OS FHS-совместимой с является использование
/private
, например ,/etc
является символической ссылкой на/private/etc
.О
/net
: Это карта автомонтирования (указана в/etc/auto_master
), см. Википедию для получения дополнительной информации.Что входит и должно идти в / opt /, а что должно / входит в / usr /? Насколько я понимаю, что / usr / использовался для домашних каталогов пользователей, но поскольку он существует в / Users / - какова цель сейчас?
Хотя
/usr
раньше он использовался для размещения домашних каталогов пользователей , это уже не так.В настоящее время
/usr
содержит пользовательские команды (например,/usr/bin
для обычных пользователей и/usr/sbin
администраторовroot
), общие библиотеки (/usr/lib
), справочные страницы (/usr/share/man
), исполняемые файлы, которые не должны запускаться непосредственно пользователями (/usr/libexec
), и другие материалы.Он также предлагает подкаталог
/usr/local
для размещения программ, библиотек и других файлов, которые не поставляются с базовой ОС./opt
имеет очень похожую роль,/usr/local
и они кажутся взаимозаменяемыми. Тем не менее, из моего опыта работы с другими сисадминов Linux / UNIX, там , кажется, предпочтение для/usr/local
в BSD UNIX на основе операционных систем.Так что это мое мнение: macOS основан на BSD и, следовательно, я бы использовал
/usr/local
. Обратите внимание, что вы можете создать программный каталог, а затем команды symlink для/usr/local/bin
и т. Д., Например:Это также было обычной практикой в Linux и UNIX, но FHS явно запрещает это: если вы хотите устанавливать сторонние пакеты в их собственной иерархии каталогов, вы должны использовать
/opt/<package>
вместо этого. Обратите внимание, что FHS-соответствие требует помещения файлов конфигурации/etc/opt/<package>
и переменных файлов в/var/opt/<package>
.Итак, в macOS я бы порекомендовал вам придерживаться,
/usr/local
как описано выше.Я знаю о дополнительном программном обеспечении, таком как Cisco VPN и XQuartz, которое устанавливается в систему
/opt
, поэтому вышеуказанные различия начинают стираться.man hier
Как уже упоминалось выше, это
man hier
:источник
/usr/X11/
не рекомендуется?man hier
): страница руководстваКогда я читаю о
/opt
(часто связанном с/opt/local
MacPorts ) и о «стандартном» использовании путей, я имею в виду и Fink, который существует примерно с 2001 года . Финк популяризировал использование следующего пути:/sw
Пример небрежного использования нестандартной части иерархии файловой системы в Mac OS X
2003-02-06
Virex 7.2, бесплатный для всех членов .Mac, позорно переписал библиотеки Fink :
Другие обсуждения инцидента, включая уважение к лицензированию, включали:
2003-04-16
Финк новости пункт:
2003-05
В примечаниях к выпуску McAfee Virex версии 7.2.1 не упоминаются проблемы, возникающие у пользователей Fink.
Как примечание стороны ...
2004-08-31
Наблюдения, что Virex 7.5 больше не был доступен для членов .Mac .
BSD, связанные с
Это все еще верно для операционных систем, таких как FreeBSD и PC-BSD.
Хотя
/usr/home/
это не является явным в https://www.freebsd.org/cgi/man.cgi?query=hier&sektion=7&manpath=FreeBSD+10.2-RELEASE, путь иллюстрируется в таких документах, как:источник