- Как создать общую директорию для всех пользователей в Linux
- Как сделать общую сетевую папку в Linux (настройка SMB в Linux)
- Общие папки Linux
- Создание папки и группы
- Добавление пользователя в группу
- Флаги и аргументы, использованные в приведенной выше команде
- Настройка прав доступа
- Значение числа 2775 в команде chmod
- Создание пользователя и добавление в группу
- Создание подкаталогов для каждого пользователя
- Выводы
- Общие папки
- Содержание
- Настройка сервера [ править ]
- Добавление второй папки [ править ]
- Папка с паролем [ править ]
- Подключение [ править ]
- GUI [ править ]
- Монтирование как сетевого диска [ править ]
- Альтернативный вариант не через fstab [ править ]
- Общий каталог на Linux десктопе
- Необходимые инструменты
- Пример использования
Как создать общую директорию для всех пользователей в Linux
В общих папках – шарах, удобно хранить музыку, фотографии, доступные для каждого пользователя Linux на данном компьютере. Папки с общим доступом (shared) подходят для совместных проектов, обмена данными.
В этой инструкции будет показано, как в Linux создать папку, в которую каждый пользователь будет иметь возможность сохранить данные или прочитать их, т.е. все добавленные пользователи будут иметь права чтения/записи.
Настройка общей папки связана с настройкой надлежащих разрешений доступа. Самым эффективным и надёжным методом является добавление всех пользователей, которые должны иметь права на чтение и на запись, в общую группу, для которой на определённую папку (шару) будут даны права на запись и чтение.
Начнём с создания папки и общей группы, если они ещё не существуют. Это можно сделать следующим образом:
Обратите внимание, что создаётся папка share в корневом каталоге. Вы можете выбрать другое имя и другое расположение для общей папки. Также вы можете выбрать другое имя для группы.
Затем добавляем существующих пользователей, кто должен иметь права запуси в директорию /share, в группу share как показано ниже:
Используемые в команде выше флаги и аргументы означают:
- -a – добавление пользователя в дополнительную группу.
- -G – указывает имя группы.
- share – имя группы.
- mial – существующий пользователь.
После этого переходим к настройке должных разрешений на директорию, опция -R означает рекурсивные операции в поддиректориях:
Объяснение разрешения 2775 в вышеприведённой команде chmod:
- 2 – включает бит setGID, подразумевая, что вновь созданные подфайлы наследуют ту же группу, что и каталог, и вновь созданные подкаталоги наследуют установленный бит GID родительского каталога.
- 7 – даёт разрешения rwx для владельца.
- 7 – даёт разрешения rwx для группы.
- 5 – даёт разрешения rx для других.
Вы можете создать больше системных пользователей и добавить их в группу директории следующим образом:
Теперь вы можете создавать файлы/папки и делиться ими с другими пользователями в той же группе.
Как видим, у обычного пользователя имеются права на редактирование содержимого новой общей папки:
Может потребоваться перезапуск системы (повторный вход пользователя), чтобы сделанные изменения вступили в силу.
Источник
Как сделать общую сетевую папку в Linux (настройка SMB в Linux)
Начните с установки пакетов samba и smbclient.
В Debian, Linux Mint, Ubuntu, Kali Linux и их производных для установки samba выполните команду:
В Arch Linux, BlackArch и их производных выполните команду:
Следующая команда не сработает, если отсутствует файл /etc/samba/smb.conf. Если у вас тоже нет этого файла, то создаёте его заглушку — к настройке самого файла smb.conf мы вернёмся позже:
Теперь нужно добавить пароль для пользователя Samba. Действует следующее правило: имя пользователя должно быть таким же, как у вашего текущего пользователя, а пароль можно установить иной, отличный от вашего системного пароля.
Для установки пароля Samba, выполните следующую команду:
Если вы хотите, чтобы у пользователя не было пароля, то укажите опцию -n.
Создайте папку, которая станет совместно используемой:
Узнаем абсолютный путь до папки
Откройте для редактирования файл /etc/samba/smb.conf:
Добавьте туда строки вида:
Обратите внимание, что все пробелы в строках выше являются обязательными.
Для моих данных это строки:
Теперь запустим службу SMB:
Для добавления службы в автозагрузку выполните:
Для подключения к этой общей сетевой папке на Linux нужно использовать IP адреса компьютера Linux.
Создадим файл, чтобы сетевая папка не была пустой:
Посмотрите локальный IP адрес компьютера, на котором запущена Linux:
У меня этим IP является 192.168.0.89, а папку, как мы помним, я создал с именем linuxshare, тогда в Windows я перехожу в проводнике во вкладку «Сеть» и подключаюсь к этой папке следующим образом:
Вводим учётные данные (которые мы установили командой smbpasswd):
Видим содержимое совместно используемой папки, размещённой на Linux с помощью SMB:
Для подключения к сетевой папке из консоли Linux, запустите команду вида:
Для моего примера это:
После ввода пароля нам становится доступным содержимое сетевой папки.
Источник
Общие папки Linux
Будучи системным администратором, у вас может быть каталог, к которому вы захотите дать доступ на чтение и запись данных для каждого пользователя на Linux сервере.
В этой статье будет рассмотрено создание общей папки Linux, группы, добавление пользователя в группу, настройка прав доступа, значение числа 2775 в команде chmod и создание подкаталога для каждого пользователя.
Создание папки и группы
Создание общих папок Linux требует установки соответствующих прав доступа общей группы для всех пользователей, которые совместно используют или имеют доступ к определенному каталогу. Но для начала нужно создать директорию и общую группу, если она отсутствует:
Добавление пользователя в группу
После того, как общая папка Linux и группа создана, нужно добавить в группу существующего пользователя, который будет иметь право на запись в каталог /var/www/reports/:
Флаги и аргументы, использованные в приведенной выше команде
Настройка прав доступа
Теперь нужно настроить права доступа к каталогу. Опция -R в приведенной ниже команде разрешает проведение рекурсивных операций в подкаталоги:
Значение числа 2775 в команде chmod
Создание пользователя и добавление в группу
Создание подкаталогов для каждого пользователя
Выводы
Теперь вы научились создавать общие папки Linux и можете обмениваться файлами с другими пользователями из вашей группы. Пожалуйста, оцените статью и напишите свое мнение в комментариях.
Источник
Общие папки
Содержание
Настройка сервера [ править ]
2.Создаем папку, которая будет общей; назначаем ей права
3.Делаем бэкап конфигурационного файла самбы
4.Прописываем в smb.conf следующие параметры (без //комментариев)
Вводим команду, вставляем текст, нажимаем Enter и, затем, Ctrl+D.
Перезапускаем сервис SMB:
Добавление второй папки [ править ]
Делаем так же как и в первом шаге, только добавляем раздел с описанием второго ресурса ниже первого.
В первом примере у нас Public и папка docstore. Во втором будет Share и files.
2.Прописываем в smb.conf следующие параметры (без //комментариев)
Вводим команду, вставляем текст, нажимаем Enter и, затем, Ctrl+D.
3.Перезапускаем сервис SMB:
Папка с паролем [ править ]
Создадим пользователя в системе, имя пользователя share, его пароль 1q@W3e, при создании сделаем каталог пользователя (ключ -m) и зададим пароль (ключ -p).
Назначим нового владельца, пользователя share, и несколько изменим разрешения:
Добавляем пользователя в Samba (вводим пароль 1q@W3e):
Добавим в samba.cfg следущее:
Папка будет доступна пользователю share с паролем 1q@W3e.
Перезапускаем сервис SMB:
Подключение [ править ]
GUI [ править ]
Введите в адресной строке адрес хранилища:
Введите, если нужно, пароль.
Примечание: при подключении с паролем автоматически прописывается рабочая группа WORKGROUP. Проверьте на сервере рабочую группу в файле /etc/samba/smb.conf.
Монтирование как сетевого диска [ править ]
Альтернативный вариант не через fstab [ править ]
Так как вариант с fstab не работает, есть альтернатива в виде завертывания команды через консоль в скрипт и запуск при автозагрузке.
Нажимаем ввод, затем ^D (Ctrl+D) и делаем файл исполняемым.
Источник
Общий каталог на Linux десктопе
Представим ситуацию, на домашнем компьютере установлен Linux. Данным компьютером пользуетесь Вы и Ваша жена. Для этого в системе создано два пользователя, у каждого свои настройки почтовика, свои закладки, свой WM и наконец свои обои. Вроде бы все хорошо и все всех устраивает, но вот есть некий контент, свойственный для десктопа, для которого необходимо организовать общий и главное полный доступ для обоих пользователей. Что тут можно сделать? В голову сразу приходят несколько решений:
1. Установить для общего каталога соответствующий umask;
2. Установить соответствующий default acl;
3. Установить бит SGID.
Хорошо, применили одно из решений, или все сразу. Вроде все работает. Оба пользователя имеют полный доступ ко всему содержимому общего каталога, новый файлы в этом каталоге наследуют его права, но вот Вы скинули в этот каталог фотографии с фотоаппарата. В систему под своим пользователем заходит Ваша жена и решает немного изменить эти фотографии, только вот при сохранении появляется сообщение о недостаточных правах. Оказывается скопированные Вами файлы не наследовали права общего каталога. Почему? Да потому, что утилите cp пофигу на Ваши umask’и и acl’ы. Она копирует файлы с сохранением исходных прав, либо права уменьшаются, все зависит от прав на каталог, куда копируем.
В этой статье я предложу свой способ решения данной проблемы. Нет, способ не красивый и не изящный, потому, вместе с описанием способа, предлагаю Хабрасообществу обсудить этот вопрос и предложить свои решения для организации общего каталога на Linux десктопе.
Необходимые инструменты
Этих инструментов всего два:
1) fam или gamin — сервис мониторинга файловой системы. Что использовать, выбирать Вам, но я рекомендую gamin, потому как fam сам по себе устарел, да и gamin работает стабильней.
2) fileschanged — маленькая консольная утилита, которая по сути является клиентской программой fam или gamin.
Пример использования
/Фото. Все действия будем проводить с ним.
Для начала нам нужно создать скрипт/usr/local/bin/script следующего содержания
#!/bin/bash
if [ -d «$2» ]; then
chmod 774 «$2»
elif [ -f «$2» ]; then
chmod 664 «$2»
fi
Этот скрипт будет изменять права на все новые элементы в каталоге
/Фото. Для файлов rw-rw-r—, для каталогов rwxrwxr-x. Если используете fam, не забудьте запустить fam daemon
Теперь при помощи fileschanged нужно этот скрипт выполнить.
fileschanged -cCfr -x /usr/local/bin/script
Вот собственно и все. Теперь fileschsnged будет слушать что говорит fam (gamin) по поводу изменений в каталоге
/Фото и ко всему новому применять скрипт/usr/local/bin/script.
А как Вы организуете общий каталог?
Написано по мотивам статьи из моего блога
UPD: Еще одно решение подсказал khim. Суть заключается в следующем:
1. Оба пользователя должны быть в разных первичных группах. Так вроде сделано у RedHat. При создании нового пользователя создается одноименная группа.
2. Создаем для обоих пользователей группу family (например).
3. Владельцем общего каталога делаем группу family и устанавливаем права на него 2775.
4. Для gnome, запускаем gconf-editor и в разделе /system/storage/default_options/vfat устанавливаем umask 002. Это значит, что на всех монтируемых устройствах с ФС fat права на файлы будут 664. Как это сделать в kde пока не могу сказать, нет его под рукой.
5. Теперь смело копируем контент в общий каталог. Владельцем этого контента станет группа family (унаследует от каталога), а права останутся 664.
PS. Первый пункт для того, чтобы скопированные файлы с носителя fat в личный каталог были доступны только Вам.
PSS. Все это хорошо, но как быть с CD. Там файлы только для чтнения и umask установить не получиться.
Источник