#!/bin/bash set -e DB="/home/filebrowser/filebrowser.db" BASE_DIR="/data/personal" FB_USER="filebrowser" MEDIA_GROUP="nasusers" DMN="filebrowser.service" DRY_RUN=false if [ -z "$1" ] || [ -z "$2" ]; then echo "Использование: $0 " exit 1 fi USERNAME="$1" PASSWORD="$2" USER_DIR="$BASE_DIR/$USERNAME" run() { if [ "$DRY_RUN" = true ]; then echo "[DRY-RUN] $*" else "$@" fi } echo ">>> Останавливаем демон" run systemctl stop $DMN echo ">>> Создаём пользователя в filebrowser" run filebrowser users add "$USERNAME" "$PASSWORD" \ --scope "$USERNAME" \ --perm.create \ --perm.modify \ --perm.delete \ --perm.rename \ --perm.download \ --perm.share \ -d "$DB" echo ">>> Создаём каталог и выставляем права" run mkdir -p "$USER_DIR" run chown root:"$MEDIA_GROUP" "$USER_DIR" run chmod 2770 "$USER_DIR" run setfacl -d -m g:"$MEDIA_GROUP":rwx "$USER_DIR" run setfacl -d -m o::0 "$USER_DIR" echo ">>> Запускаемся обратно" run systemctl start $DMN echo ">>> Готово! Пользователь $USERNAME создан, папка: $USER_DIR"