Как настроить общую сетевую папку в Ubuntu с помощью Samba
Если вы когда-нибудь хотели легко обмениваться файлами в домашней сети в нескольких операционных системах, тогда вам не остается ничего другого, как Samba.
Это руководство покажет вам, как настроить общую сетевую папку в Ubuntu Linux с помощью Samba. С сервером Samba вы можете легко обмениваться файлами в своей сети, независимо от того, используете ли вы Windows, macOS или Linux.
Что такое самба?
Samba – это служба обмена файлами, в которой реализованы версии набора протоколов SMB с открытым исходным кодом, изначально разработанные Microsoft и IBM. Samba содержит программы, которые позволяют ей взаимодействовать с протоколами обмена файлами Microsoft Windows.
Samba также позволяет легко общаться с другими клиентами, используя стандартную сеть TCP / IP.
Шаг 1. Установка Samba
В этом руководстве будет использоваться Ubuntu Linux 20.04 LTS, но шаги должны работать, даже если вы используете Ubuntu 16.04 или новее. Начните с обновления информации об источнике вашего пакета.
sudo apt update
Затем установите Samba, используя следующую команду:
sudo apt install samba
Чтобы проверить, успешно ли установлена Samba, выполните следующую команду:
smbd --version
Результат должен быть аналогичен приведенному ниже.
Шаг 2: настройка Samba
Чтобы иметь возможность безопасно обмениваться файлами с другими сетевыми устройствами, вам необходимо настроить сервер Samba. Основной файл конфигурации Samba находится на вашем ПК по адресу /etc/samba/smb.conf . В этом руководстве для редактирования файла конфигурации Samba используется текстовый редактор Vim, но вы можете использовать любой другой текстовый редактор по вашему выбору.
Примечание. Для редактирования файла конфигурации у вас должны быть права администратора.
sudo vim /etc/samba/smb.conf
Добавьте следующие строки в конец файла конфигурации.
[sambashare]
comment= Network Shared Folder by Samba Server on Ubuntu
path = /home/your_username/sambashare
force user = smbuser
force group = smbgroup
create mask = 0664
force create mode = 0664
directory mask = 0775
force directory mode = 0775
public = yes
read only = no
Не забудьте обновить параметр пути, указав свое имя пользователя. Вы можете получить свое имя пользователя, выполнив следующую команду:
echo $USER
Чтобы выйти из редактора Vim после внесения изменений, просто введите : wq и нажмите клавишу Enter .
Понимание конфигураций
Вот краткое описание только что добавленных строк конфигурации.
- Раздел : новый раздел в файле конфигурации представлен квадратными скобками ( [] ). В данном случае это [самбашаре] .
- Комментарий : эта строка кода дает краткое описание того, чему посвящен этот раздел. Это особенно полезно, если у вас есть несколько разделов общего каталога в файле конфигурации.
- Путь : это путь к каталогу вашей назначенной общей сетевой папки.
- Принудительный пользователь : системный пользователь, которого сервер Samba будет использовать для обмена файлами.
- Force group : имя группы, к которой будет принадлежать системный пользователь Samba.
- Создать маску : этот параметр устанавливает разрешения для вновь созданных файлов в общей папке. В этом случае значение – 0664, что означает, что владелец файла и группа будут иметь разрешения на чтение и запись, в то время как другие пользователи будут иметь разрешения только на чтение.
- Принудительный режим создания : работает вместе с параметром маски создания для установки правильных прав доступа к файлам.
- Маска каталога : этот параметр определяет разрешения для папок в общей папке. Разрешения 0775 означает, что владелец и группа имеют разрешения на чтение, запись и выполнение, в то время как другие имеют разрешения только на чтение и выполнение.
- Принудительный режим каталога : этот параметр работает вместе с маской каталога, чтобы убедиться, что установлены правильные права доступа к каталогу.
- Public : этот параметр указывает, что это общедоступная папка в вашей сети и что другие устройства могут получить к ней доступ.
- Только для чтения : указывает разрешения на изменение файлов в общей папке.
Шаг 3: Создание ресурсов Samba
Настроив сервер Samba, теперь вам нужно создать необходимые ресурсы, такие как пользователь Samba и каталог для совместного использования. Эти ресурсы облегчат процесс совместного использования папки в сети.
1. Общая папка
Вам необходимо создать общую папку по пути, указанному в конфигурационном файле Samba выше. В этом руководстве используется общая папка sambashare, расположенная в вашем домашнем каталоге.
Перейдите в свой домашний каталог с помощью команды cd .
cd ~
Затем создайте общий каталог, используя команду ниже:
mkdir -p sambashare
2. Пользователь и группа Samba
Следующим шагом является создание пользователя системы Samba и группы, указанной в файле конфигурации.
Вы можете создать системную группу Samba, используя следующую команду:
sudo groupadd --system smbgroup
Затем создайте системного пользователя Samba с помощью useradd .
sudo useradd --system --no-create-home --group smbgroup -s /bin/false smbuser
Приведенная выше команда создает системного пользователя и добавляет его в группу Samba, созданную выше. Кроме того, поскольку это системный пользователь, домашний каталог не будет создан.
3. Смена владельца общей папки
После того, как пользователь и группа Samba созданы, вы можете изменить владельца общей папки на нового пользователя smbuser, а группу – на smbgroup . Вы можете добиться этого с помощью следующей команды:
sudo chown -R smbuser:smbgroup ~/sambashare
Наконец, введите команду ниже, чтобы предоставить группе доступ на запись к общей папке и содержимому внутри нее.
sudo chmod -R g+w ~/sambashare
Шаг 4: перезапуск службы Samba
Вам следует перезапустить службу Samba, чтобы изменения в файле конфигурации Samba вступили в силу.
sudo systemctl restart smbd
После перезапуска службы вы можете проверить ее статус с помощью следующей команды:
sudo systemctl status smbd
Примечание . Если у вас включен брандмауэр, вам также следует добавить Samba к активированным правилам с помощью команды ufw .
sudo ufw enable samba
Шаг 5: доступ к общей папке
Ваша общая папка теперь доступна для устройств в вашей сети.
В Windows
В Windows вы можете получить доступ к общей папке с помощью проводника Windows. Вы можете запустить проводник с помощью сочетания клавиш Windows + E.
В адресной строке введите ip_address_of_pc_with_shared_folder sambashare .
Не забудьте заменить на правильный IP-адрес и имя общей папки.
Система также попросит вас ввести имя пользователя и пароль пользователя на ПК с Linux.
На Ubuntu
В Ubuntu Linux откройте файловый менеджер по умолчанию и нажмите кнопку « Другие расположения» . Затем в поле « Подключиться к серверу» введите IP-адрес в следующем формате:
smb://ip_adresss_of_pc_with_shared_folder/sambashare
Вы можете подключиться как зарегистрированный пользователь или анонимно. Имейте в виду, что если вы выберете « Зарегистрированный пользователь» из раскрывающегося списка, вам придется указать учетные данные пользователя.
На macOS
Пользователи Mac также могут легко получить доступ к общей папке. В меню Finder щелкните вкладку « Сеть », и компьютер с общей общей папкой будет указан в списке. Выберите его, и вы сможете получить доступ к файлам.
Эффективный обмен файлами между несколькими устройствами
В этом руководстве было рассмотрено, как обмениваться файлами в сети с помощью Samba. С помощью Samba вы можете обмениваться файлами в сети независимо от операционной системы, установленной на устройствах.
Не только Linux, но вы также можете настроить общую сетевую папку на вашем компьютере с Windows.