Где в файловой системе Linux кто-то должен размещать носители, которые должны быть доступны для всех учетных записей пользователей?

Если у меня есть фотографии, mp3, книги и другие разные материалы, к которым я хочу предоставить доступ всем пользователям из общего каталога, где в файловой системе Linux я должен поместить этот каталог? В /usr/share, или просто в /usr, или вместо этого создать новый каталог верхнего уровня?

3 ответа

Я обычно кладу это в /home/mediaЯ создаю media группа unix, которой принадлежит бит setgid.

В качестве пользователя root или с помощью sudo:

groupadd media
mkdir -p /home/media
chown -R root.media /home/media 
chmod g+s /home/media

Затем я помещаю каждого пользователя, которому требуется доступ к этим данным, в media группа.

Вы также можете использовать ACL для управления правами каждого пользователя на каталог.

Вы также можете использовать /srv/media если вы предпочитаете, но я люблю дома для общих документов. Что-нибудь в /usr следует избегать этого, если вы не говорите о статических файлах.

Я использую /av - это красиво и коротко, поэтому его легко набирать.

Соблюдение FHS не является проблемой. FHS является стандартом для вашего дистрибутива и приложений для подражания. Дистрибутив или приложение никогда не должны создавать каталог верхнего уровня, но, как пользователь и системный администратор, пространство имен файловой системы вы можете использовать по своему усмотрению.

Положить его в /home это плохая идея, так как этот каталог предназначен для домашних каталогов. Ваш общий медиа-каталог не является домашним каталогом. Учтите, что если вы используете /home/media и позже необходимо создать пользователя с именем "СМИ".

Точно так же избегайте каталогов, которые управляются вашим дистрибутивом. /usr/share/media это плохая идея, так как пакет в вашем дистрибутиве вполне может использовать этот путь.

/usr/local, /opt а также /srv определены места, где вы можете контролировать пространство имен внизу, но /opt обычно для каталогов приложений и /srv для данных, которые обслуживает хост. /usr/local/share может быть уместно, но это слишком длинный путь для меня.

Прежде всего, помните, что это ваша файловая система, так что нет ничего плохого в создании нового каталога верхнего уровня.

<Режим = педант>
Согласно стандарту иерархии файловой системы, /usr для "общих, доступных только для чтения данных"; /usr/share предназначен для "файлов данных, независимых от архитектуры только для чтения. ... например, сайт с платформами i386, Alpha и PPC может поддерживать один каталог /usr/share, который монтируется централизованно"

Так что да, подкаталог /usr/share кажется подходящим выбором.

<Режим = прагматист>

Менее педантично, /home (как предлагает raphink) кажется хорошим выбором. Вероятно, у вас есть / home в своем собственном разделе, так что вы можете легко уничтожить остальную часть ОС, не затрагивая пользовательские данные (например, при обновлении или переустановке), а также для простоты резервного копирования (как и все, что вы хотите сделать для резервного копирования). хранится в / home), и по причинам управления пространством (в большинстве домашних ящиков раздел с / home заканчивается тем, что сначала не хватает места).

Другие вопросы по тегам