summaryrefslogblamecommitdiffstats
path: root/satellit_installer/includes/10-handle_users.inc
blob: c273713327bf54be24483e8115ed05e7a0f9622c (plain) (tree)
1
2
3
4
5
6
7
8
9
10


                                                                                    
                   





                                                                                
                   

 





                                                                                      



                                                                                               
                   












                                                                             
add_group() {
	echo -n "# Adding group: $1, gid $2..."
	groupadd -g "$2" "$1" 2>/dev/null || echo "Could not add group $1 / gid $2!"
	echo " ok."
}

add_user() {
	echo -n "# Adding user: $1, uid $2, to gid $3..."
	useradd -u "$2" -m -d /home/"$1" -s /bin/bash -g "$3" "$1" 2>/dev/null \
		|| echo "Could not add user ${1}/${2} / gid $3!"
	echo " ok."
}

add_user_nohome() {
	echo -n "# Adding homeless user: $1, uid $2, to gid $3..."
	useradd -u "$2" --no-create-home --shell /bin/false -g "$3" "$1" 2>/dev/null \
		|| echo "Could not add homeless user ${1}/${2} / gid $3!"
	echo " ok."
}

kill_user() {
	echo -n "# Terminating user account id $1, leaving user home/files as they were: "
	userdel $(getent passwd "$1" | cut -f 1 -d ":") || echo "# could not kill userid ${1}!"
	echo " ok."
}

check_users() {
	echo "#"
	echo "# Checking for users to kill with id>=1000: "
	for userid in $(cat /etc/passwd|cut -f 3 -d ":"|sort -n); do
		case $userid in
			65534)	echo "# Ignoring user 65534/sync."	;;
			*)	[ "$userid" -ge 1000 ] && kill_user "$userid"
		esac
	done
}