Что стандарт иерархии файловых систем на самом деле означает «локальные данные»?

14

Из стандарта иерархии файловой системы / usr / local будет для «локальных данных, специфичных для этого хоста». Но я не совсем понимаю, так как вся файловая система обычно не является локальной для хоста? то есть / bin содержит двоичные файлы, и эти двоичные файлы будут использоваться, вообще говоря, только для вызова процессов на этом хосте. Второй хост будет иметь свою собственную копию двоичных файлов, хотя на самом деле они могут быть одинаковыми, если вы их рассмотрите.

Итак, вы можете объяснить значение «локальных данных»? В каком смысле это местный?

Стивен
источник
Например, на моем рабочем месте есть несколько /varпапок в виде сетевых дисков. Это позволяет делиться всем необходимым и упрощает процесс обеспечения того, чтобы у всех были одинаковые файлы. Кроме того, наличие личной папки на сетевом диске позволяет легко создавать резервные копии и работать с кластерами. Но сетевой диск работает медленнее, и локальные твердотельные накопители предпочтительнее для «регулярного» использования.
Kat
Я думаю, что описание просто неправильно. По моему опыту, это почти всегда означало нечто большее, чем «специфический для этой организации», а не конкретная машина.
Бармар

Ответы:

21

поскольку вся файловая система обычно не является локальной для хоста?

Нет, совместное использование частей, доступных только для чтения (например, всей /usrили даже всей /), в сети было довольно распространенным явлением.

Хотя я думаю, что это не главное. «Специфично для этого хоста» также может означать, что оно не предоставляется дистрибутивом - это программное обеспечение, которое вы создали и установили вручную, в отличие от остальной части / usr, содержащей универсальные упакованные файлы (которые действительно будут одинаковыми для многих хостов).

Например, многие системы сборки исходного кода используют в /usr/localкачестве места установки по умолчанию. Если вы просто запустите ./configure && make && make install, он будет выгружать все в / usr / local / bin и тому подобное.

user1686
источник
10

Расширяя ответ @grawity:

Термин «локальный» происходит от того времени, когда была только одна UNIX. В этом контексте все системы, работающие с одной и той же версией, будут иметь большой набор файлов, идентичных для всех хостов, и, соответственно, только меньшинство других файлов будет отличаться между хостами.

Эти Неуниверсальные файлы будут либо данные конфигурации в /etcили optitional файлы /optили «что - то другое, местный хост» - то есть */local.

В наше время, когда существуют (дико) разные члены семейства деревьев UNIX и требования к хранилищу для ОС, составляющие крошечную долю от общего объема хранилища, обычно доступного, многие приходят в разных вариантах (* BSD, дистрибутивы Linux), термин " местный "был разбавлен, может быть, даже в исторический реликт.

Евгений Рик
источник
Я думал, что к тому времени, когда они начали собирать двоичные файлы и прочее, конечно, было много разных Unixen/usr
user1686
5
(С другой стороны ... все системы, на которых установлена ​​одна и та же версия Debian, также имеют большой набор файлов, идентичных для всех хостов. Для этого не требуется "единственная UNIX".)
user1686
@grawity В том-то и дело: «все Debian» сегодня не то же самое, что «все ОС UNIX-y». Но в то время стандарт был задуман, это было очень близко к реальности.
Ойген Рик,