Skip to content

Commit 114caf8

Browse files
fix issues with script #7
- no arguments warning - forever loop fix - shift 2 - remove useradd from dependencies - add TODO notice
1 parent 6c8bc6b commit 114caf8

File tree

1 file changed

+8
-6
lines changed

1 file changed

+8
-6
lines changed

bash/adduser.sh

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,8 @@
55
# A useradd wrapper to add a new non-root user for proot linux container
66
# #############################################################################
77

8-
REQUIRED_DEPS="openssl useradd"
8+
REQUIRED_DEPS="openssl"
9+
NOPASSWD=false
910

1011
# sudo check
1112
[[ $EUID -ne 0 ]] && die "You need to be root to run this script"
@@ -18,7 +19,7 @@ for debs in $REQUIRED_DEPS; do
1819
done
1920

2021
# check for arguments
21-
if [[ $# -ne 1 ]]; then
22+
if [[ $# -le 1 ]]; then
2223
echo "Usage: $0 [ -u | --user | --username ] <username> [ -p | --passwd | --password ] <password> [options]"
2324
echo "options:"
2425
echo "--nopasswd -> do not set a password"
@@ -29,11 +30,11 @@ while [[ $# -gt 0 ]]; do
2930
case $1 in
3031
-u | --user | --username)
3132
USERNAME="$2"
32-
shift
33+
shift 2
3334
;;
3435
-p | --passwd | --password)
3536
PASSWORD="$2"
36-
shift
37+
shift 2
3738
;;
3839
--nopasswd) NOPASSWD=true ;;
3940
esac
@@ -46,15 +47,16 @@ fi
4647

4748
echo "creating user $USERNAME"
4849
if $NOPASSWD; then
49-
useraddd -m -G sudo -d /home/"$USERNAME" -k /etc/skel -s "$SHELL" "$USERNAME"
50+
useradd -m -G sudo -p "$(openssl passwd -1 "$PASSWORD")" -d /home/"$USERNAME" -k /etc/skel -s "$SHELL" "$USERNAME"
5051
echo "Adding user $USERNAME to sudoers "
5152
echo "$USERNAME" ALL=\(root\) ALL >/etc/sudoers.d/"$USERNAME"
5253
chmod 0440 /etc/sudoers.d/"$USERNAME"
5354
else
54-
useraddd -m -G sudo -p "$(openssl passwd -1 "$PASSWORD")" -d /home/"$USERNAME" -k /etc/skel -s "$SHELL" "$USERNAME"
55+
useradd -m -G sudo -p "$(openssl passwd -1 "$PASSWORD")" -d /home/"$USERNAME" -k /etc/skel -s "$SHELL" "$USERNAME"
5556
echo "Adding user $USERNAME to sudoers"
5657
echo "$USERNAME" ALL=\(root\) NOPASSWD: ALL >/etc/sudoers.d/"$USERNAME"
5758
chmod 0440 /etc/sudoers.d/"$USERNAME"
5859
fi
5960

61+
# TODO: copy user layout from root to new user
6062
echo "Done"

0 commit comments

Comments
 (0)