summaryrefslogtreecommitdiff
path: root/files/scripts/Debian/setmysqlpass.sh
diff options
context:
space:
mode:
Diffstat (limited to 'files/scripts/Debian/setmysqlpass.sh')
-rw-r--r--files/scripts/Debian/setmysqlpass.sh21
1 files changed, 21 insertions, 0 deletions
diff --git a/files/scripts/Debian/setmysqlpass.sh b/files/scripts/Debian/setmysqlpass.sh
index f7d5357..f4ebee6 100644
--- a/files/scripts/Debian/setmysqlpass.sh
+++ b/files/scripts/Debian/setmysqlpass.sh
@@ -2,6 +2,27 @@
test -f /root/.my.cnf || exit 1
+must_have ()
+{
+ # Here, using "which" would not be appropriate since it also depends on
+ # PATH being set correctly. The type builtin command is unaffected by the
+ # environment.
+ type $1 >/dev/null
+ if [ $? -ne 0 ]; then
+ echo "Command '$1' not found, did you correctly set PATH ? Its current value is: $PATH" >&2
+ exit 1
+ fi
+}
+
+# Since this script is doing something rather unsafe with the database, we want
+# to be really careful to have all the necessary tools before doing anything so
+# that we don't end up in an inconsistent state.
+must_have sleep
+must_have mysql
+must_have killall
+must_have ls
+must_have chown
+
rootpw=$(grep password /root/.my.cnf | sed -e 's/^[^=]*= *\(.*\) */\1/')
/etc/init.d/mysql stop