Files
scripts/lib/samba.sh
2026-01-17 13:12:11 +07:00

53 lines
1.1 KiB
Bash

create_or_use_directory() {
read -p "Путь к папке: " DIR
if [ -d "$DIR" ]; then
log "Используем $DIR"
else
read -p "Создать $DIR ? (y/N): " Y
[[ "$Y" != "y" ]] && return 1
mkdir -p "$DIR"
chmod 770 "$DIR"
fi
echo "$DIR"
}
setup_samba() {
$PKG install -y samba
CONF="/etc/samba/smb.conf"
SNAP=$(backup_create samba "$CONF")
cat > "$CONF" <<EOF
[global]
workgroup = WORKGROUP
security = user
map to guest = bad user
EOF
while true; do
read -p "Имя шары (Enter=выход): " NAME
[ -z "$NAME" ] && break
PATH=$(create_or_use_directory) || continue
read -p "Пользователи (guest или user1,user2): " USERS
if [[ "$USERS" == "guest" ]]; then
GUEST="yes"; VALID=""
else
GUEST="no"; VALID="valid users = $USERS"
fi
cat >> "$CONF" <<EOF
[$NAME]
path = $PATH
guest ok = $GUEST
writable = yes
$VALID
EOF
done
testparm || { cp "$SNAP/smb.conf" "$CONF"; }
systemctl restart smbd
pause
}