2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2026-09-12 12:36:23 +00:00

fix(sudoer): take the user name and password from options

The sudoer postscript created the xcat account with the fixed password
rootpw. Take the user name and the password from the -u and -p options.
This is the change from #6166, rebased onto master.

(cherry picked from commit 986052a638)

Co-authored-by: Casandra Qiu <cxhong@us.ibm.com>
This commit is contained in:
Vinícius Ferrão
2026-09-03 20:39:08 -03:00
parent 9f4e53e380
commit a631bc6fba
+23 -3
View File
@@ -7,6 +7,28 @@
#
#------------------------------------------------------------------------------
function usage() {
echo ""
echo "Usage: $0 -u username -p password"
echo -e "\t-u sudoer user name"
echo -e "\t-p sudoer password"
exit 1
}
while getopts "u:p:" opt;
do
case $opt in
u) SUDOER="$OPTARG";;
p) SUDOERPW="$OPTARG";;
esac
done
if [ -z "$SUDOER" ] || [ -z $SUDOERPW ]
then
usage;
fi
if [ -n "$LOGLABEL" ]; then
log_label=$LOGLABEL
else
@@ -19,14 +41,12 @@ if [ "$(uname -s|tr 'A-Z' 'a-z')" = "linux" ];then
fi
# Configuration for the sudoer
SUDOER="xcat"
SUDOERPW="rootpw"
PRIV="$SUDOER ALL=(ALL) NOPASSWD: ALL"
SEED=`date "+%s"`
ENCRYPT=`perl -e "print crypt($SUDOERPW, $SEED)"`
# Create sudoer
/usr/sbin/userdel $SUDOER
/usr/sbin/userdel $SUDOER &> /dev/null
/usr/sbin/useradd -p $ENCRYPT -m $SUDOER
echo "$PRIV" >> /etc/sudoers
if [ -e "/etc/redhat-release" ]; then