Все об Arch Linux

Arch Linux будет тем, что вы из него сделаете!

Автоматическая настройка Samba в Arch Linux

Samba Setup Настройка сетевого обмена файлами между Linux и Windows — задача, с которой сталкивается каждый пользователь, имеющий несколько устройств в домашней сети. Samba — проверенное временем решение, но её ручная настройка может занять время. Этот скрипт автоматизирует весь процесс.

Что делает скрипт

Скрипт setup-samba.sh полностью настраивает Samba для создания защищённой сетевой шары:

  • Устанавливает Samba и необходимые пакеты
  • Создаёт конфигурацию с парольной защитой (без гостевого доступа)
  • Настраивает firewall для локальной сети
  • Создаёт папку Public для обмена файлами
  • Создаёт Samba-пользователя
  • Запускает службы smb и nmb
  • Создаёт ярлык на рабочем столе для быстрого доступа

Быстрый старт

# Скачайте скрипт
curl -O https://github.com/ordanax/setup-samba/blob/main/setup-samba.sh

# Сделайте исполняемым
chmod +x setup-samba.sh

# Запустите
./setup-samba.sh

Пошаговая настройка

1. Запуск скрипта

При запуске скрипт запросит имя пользователя для доступа к шаре. Это может быть существующий пользователь системы или новый.

Введите имя пользователя для шары: username

2. Установка пароля

После установки пакетов скрипт создаст Samba-пользователя и попросит ввести пароль:

Введите пароль для доступа к шаре (обязательно):

3. Проверка статуса

В конце скрипт покажет:

  • IP-адрес сервера
  • Имя ПК (NetBIOS)
  • Статус служб Samba

4. Создание ярлыка

Скрипт предложит создать ярлык на рабочем столе. Можно указать имя ПК вручную или использовать автоматически определённое.

Подключение к шаре

С другого Linux ПК

Через файловый менеджер:

smb://IP_АДРЕС/Public
# или по имени ПК (работает даже при смене IP):
smb://ARCHLINUX/Public

Через терминал:

smbclient //192.168.0.100/Public -U username

С Windows

Откройте проводник и введите в адресной строке:

\\192.168.0.100\Public
# или
\\ARCHLINUX\Public

При первом подключении Windows запросит логин и пароль. Можно сохранить учётные данные для автоматического подключения в будущем.

С Android

Используйте файловые менеджеры с поддержкой SMB:

  • Solid Explorer — платный, но очень удобный
  • CX File Explorer — бесплатный
  • VLC — для просмотра видео с шары

Почему имя ПК вместо IP

IP-адрес может меняться при перезагрузке, если используется DHCP. Имя ПК работает через NetBIOS (служба nmb) и остаётся постоянным.

# Узнать имя текущего ПК
uname -n

# Найти все SMB-серверы в сети
nmblookup -S WORKGROUP

Управление Samba

# Перезапуск служб
sudo systemctl restart smb nmb

# Проверка статуса
sudo systemctl status smb nmb

# Просмотр активных подключений
smbstatus

# Смена пароля пользователя
sudo smbpasswd username

# Добавление нового пользователя
sudo smbpasswd -a newuser

# Остановка Samba
sudo systemctl stop smb nmb
sudo systemctl disable smb nmb

Конфигурация

Конфигурационный файл: /etc/samba/smb.conf

Основные параметры шары [Public]:

[Public]
   path = /home/username/Public
   browseable = Yes
   writable = Yes
   guest ok = No
   valid users = username
  • path — путь к общей папке
  • valid users — список пользователей с доступом
  • writable = Yes — разрешена запись
  • guest ok = No — гостевой доступ запрещён

Безопасность

  • Гостевой доступ отключён — требуется пароль
  • Доступ только для указанного пользователя
  • Firewall открыт только для локальной сети
  • Пароль хранится в зашифрованном виде

Устранение неполадок

Не подключается по имени ПК

Проверьте работу службы nmb:

sudo systemctl status nmb

Шара не видна в сети

Проверьте firewall:

sudo ufw status

Должно быть правило allow from 192.168.x.0/24 (или ваша подсеть).

Ошибка “В соединении отказано”

Проверьте, что Samba слушает на нужном порту:

sudo ss -tlnp | grep smbd

Перезапустите службы:

sudo systemctl restart smb nmb

Нет прав на запись

Проверьте владельца папки:

ls -la /home/username/Public

Должно быть username username. Если нет:

sudo chown username:username /home/username/Public
sudo chmod 755 /home/username/Public

Требования

  • Arch Linux, Manjaro, EndeavourOS или другие производные
  • Права sudo
  • Подключение к интернету (для установки пакетов)
  • Локальная сеть (Wi-Fi или Ethernet)

GitHub

Исходный код и документация: https://github.com/username/samba-setup


Автор: ordanax.github.io
Telegram: @linux4at
MAX: Присоединиться



Комментарии

Загрузка…

Откроется GitHub: создайте новый issue с вашим комментарием (кнопка «Submit new issue»). После отправки обновите эту страницу — комментарий появится ниже.