Merge pull request #425 from veblush/sudo

Better sudo script
This commit is contained in:
Matt McCormick 2020-07-06 21:44:03 -04:00 committed by GitHub
commit 63ca38ebc2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -13,13 +13,44 @@ gosu nobody true
# To ensure that our custom sudo wrapper is not # To ensure that our custom sudo wrapper is not
# overwritten by a future re-install of sudo, it # overwritten by a future re-install of sudo, it
# is created in /usr/loca/bin # is created in /usr/local/bin
cat << EOF >> /usr/local/bin/sudo cat << EOF >> /usr/local/bin/sudo
#!/bin/sh #!/bin/sh
# Emulate the sudo command # Emulate the sudo command
exec gosu root:root "\$@" SUDO_USER=root
SUDO_GROUP=root
while (( "\$#" )); do
case "\$1" in
# user option
-u)
SUDO_USER=\$2
shift 2
;;
# group option
-g)
SUDO_GROUP=\$2
shift 2
;;
# skipping arguments without values
-A|-b|-E|-e|-H|-h|-K|-n|-P|-S|-V|-v)
shift 1
;;
# skipping arguments with values
-a|-C|-c|-D|-i|-k|-l|-ll|-p|-r|-s|-t|-U)
shift 2
;;
# stop processing command line arguments
--)
shift 1
break
;;
*)
break
;;
esac
done
exec gosu \$SUDO_USER:\$SUDO_GROUP "\$@"
EOF EOF
chmod +x /usr/local/bin/sudo chmod +x /usr/local/bin/sudo