smb_utilities/add_smb_user.sh
2025-05-24 22:41:32 +00:00

50 lines
996 B
Bash
Executable File

#!/bin/bash
# Usage: ./create_samba_user.sh <username> <password>
# Check for root
if [[ $EUID -ne 0 ]]; then
echo "This script must be run as root."
exit 1
fi
# Input arguments or prompt
USERNAME="$1"
PASSWORD="$2"
if [[ -z "$USERNAME" ]]; then
read -p "Enter username: " USERNAME
fi
if [[ -z "$PASSWORD" ]]; then
read -s -p "Enter password: " PASSWORD
echo
fi
# Create system user without extra fields
if id "$USERNAME" &>/dev/null; then
echo "User $USERNAME already exists."
else
useradd --comment "" --shell /bin/bash --create-home "$USERNAME"
echo "$USERNAME:$PASSWORD" | chpasswd
echo "System user $USERNAME created."
fi
# Add to Samba
(echo "$PASSWORD"; echo "$PASSWORD") | smbpasswd -s -a "$USERNAME"
if [[ $? -eq 0 ]]; then
echo "Samba user $USERNAME added successfully."
else
echo "Failed to add Samba user."
fi
log_file="filebrowser/addusers.txt"
if [ -f "$log_file" ]; then
echo "$USERNAME:$PASSWORD" >> "$log_file"
fi
docker restart filebrowser