ZaLinux.ru

Как создать общую директорию для всех пользователей в Linux

В общих папках – шарах, удобно хранить музыку, фотографии, доступные для каждого пользователя Linux на данном компьютере. Папки с общим доступом (shared) подходят для совместных проектов, обмена данными.

В этой инструкции будет показано, как в Linux создать папку, в которую каждый пользователь будет иметь возможность сохранить данные или прочитать их, т.е. все добавленные пользователи будут иметь права чтения/записи.

Настройка общей папки связана с настройкой надлежащих разрешений доступа. Самым эффективным и надёжным методом является добавление всех пользователей, которые должны иметь права на чтение и на запись, в общую группу, для которой на определённую папку (шару) будут даны права на запись и чтение.

Начнём с создания папки и общей группы, если они ещё не существуют. Это можно сделать следующим образом:

sudo mkdir -p /share
sudo groupadd share

Обратите внимание, что создаётся папка share в корневом каталоге. Вы можете выбрать другое имя и другое расположение для общей папки. Также вы можете выбрать другое имя для группы.

Затем добавляем существующих пользователей, кто должен иметь права запуси в директорию /share, в группу share как показано ниже:

sudo usermod -a -G share mial

Используемые в команде выше флаги и аргументы означают:

  • -a – добавление пользователя в дополнительную группу.
  • -G – указывает имя группы.
  • share – имя группы.
  • mial – существующий пользователь.

После этого переходим к настройке должных разрешений на директорию, опция -R означает рекурсивные операции в поддиректориях:

sudo chgrp -R share /share
sudo chmod -R 2775 /share

Объяснение разрешения 2775 в вышеприведённой команде chmod:

  • 2 – включает бит setGID, подразумевая, что вновь созданные подфайлы наследуют ту же группу, что и каталог, и вновь созданные подкаталоги наследуют установленный бит GID родительского каталога.
  • 7 – даёт разрешения rwx для владельца.
  • 7 – даёт разрешения rwx для группы.
  • 5 – даёт разрешения rx для других.

Вы можете создать больше системных пользователей и добавить их в группу директории следующим образом:

sudo useradd -m -c "Aaron Kili" -s/bin/bash -G share aaronkilik
sudo useradd -m -c "John Doo" -s/bin/bash -G share john
sudo useradd -m -c "Ravi Saive" -s/bin/bash -G share ravi

Теперь вы можете создавать файлы/папки и делиться ими с другими пользователями в той же группе.

Как видим, у обычного пользователя имеются права на редактирование содержимого новой общей папки:

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

Рекомендуемые статьи:

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *