Страница 1 из 1

Настройке Samba-шары с автоочисткой, пользователем и монтированием диска

Добавлено: 27 апр 2025, 13:52
Admin
1. Подготовка и форматирование диска

Код: Выделить всё

Узнайте имя диска:
sudo lsblk

Отформатируйте диск (пример для ext4):
sudo mkfs.ext4 /dev/sdX1

Найдите UUID:
sudo blkid

Создайте точку монтирования и примонтируйте диск:
sudo mkdir -p /mnt/share_disk
sudo mount UUID=ВАШ_UUID /mnt/share_disk

Чтобы монтировался автоматически:
sudo nano /etc/fstab

Добавьте строку:
UUID=ВАШ_UUID /mnt/share_disk ext4 defaults 0 2
2. Настройка Samba-шары на весь диск

Код: Выделить всё

Установите Samba:
sudo apt install samba

Создайте директорию, если ещё нет:
sudo mkdir -p /mnt/share_disk

Назначьте владельца (пользователь user):
sudo chown user:user /mnt/share_disk
sudo chmod 775 /mnt/share_disk

Добавьте в /etc/samba/smb.conf:

[share_disk]
path = /mnt/share_disk
browseable = yes
writable = yes
guest ok = no
valid users = user

Создайте пользователя Samba (если ещё не создан):
sudo smbpasswd -a user

Перезапустите Samba:
sudo systemctl restart smbd
3. Настройка UFW (firewall)

Код: Выделить всё

Откройте порты:
sudo ufw allow 137,138/udp
sudo ufw allow 139,445/tcp

Проверьте:
sudo ufw status verbose

4. Автоочистка файлов старше 30 дней и пустых папок

Код: Выделить всё

Создайте скрипт /usr/local/bin/clear-recycle.sh:

#!/bin/bash
find /mnt/share_disk/.recycle -type f -mtime +30 -exec rm -f {} \;
find /mnt/share_disk/.recycle -type d -empty -delete

Сделайте его исполняемым:
sudo chmod +x /usr/local/bin/clear-recycle.sh

Добавьте в crontab от root:
sudo crontab -e

Строка для автозапуска:
0 3 * * * /usr/local/bin/clear-recycle.sh