Для получения дополнительных сведений о компоновке файловых систем Linux см. Стандарт иерархии файловых систем (теперь версия 2.3, с [beta 3.0](http: / /www.linuxbase.org/betaspecs/fhs/fhs.txt) версия, развернутая на самых последних дистрибутивах). Это объясняет, откуда пришли имена:
- /bin - Бинарники (Binaries).
- /boot - Файлы, необходимые для booting.
- /dev - Файлы устройств (Device).
- /etc - Et cetera. Имя унаследовано от самых ранних Unix, то есть когда оно стало местом для размещения конфигурационных файлов.
- /home - Где хранятся домашние каталоги.
- /lib - Где хранятся библиотеки кода (libraries).
- /media - Более современный каталог, но где монтируется съемный носитель. (media)
- /mnt - Где смонтированы временные файловые системы. (mounted.)
- /opt - Где установлено дополнительное программное обеспечение. Это отдельно от
/usr/local/
по причинам, о которых я расскажу позже. (optional) - /run - Где хранятся данные переменных во время выполнения. (runtime)
- /sbin - Где хранятся супер-бинарники. Они, как правило, работают только с root. (super-binaries)
- /srv - Стенды для «подачи». Этот каталог предназначен для статических файлов, которые раздаются.
/srv/http
будет для статических сайтов,/srv/ftp
для FTP-сервера. (serve) - /tmp - Где временные файлы могут быть сохранены. (temporary)
- /usr - Еще один каталог, унаследованный от старых Unix, он обозначает «Системные ресурсы UNIX». Это не означает «пользователь» (см. Вики Debian). Этот каталог должен быть общим для хостов и может безопасно подключаться по NFS к нескольким хостам. Он может быть смонтирован только для чтения.(UNIX System Resources)
- /var - Еще один каталог, унаследованный от Unixes из старых, он обозначает «переменная». Здесь могут храниться системные данные, которые различаются. Здесь можно найти такие каталоги, как спул и кеш. Если программе необходимо записать данные в локальную файловую систему, и она не передает эти данные кому-то напрямую, это будет происходить здесь. (variable)
Эмпирическое правило, которое я видел, лучше всего описать так:
Используйте
/usr/local
для вещей, которые обычно входят в/usr
, или переопределяют вещи, которые уже находятся в/usr
. Используйте/opt
для вещей, которые устанавливают все в один каталог или являются специальными.