diff options
author | Arnout Vandecappelle <arnout@mind.be> | 2015-12-11 22:52:47 +0100 |
---|---|---|
committer | Thomas Petazzoni <thomas.petazzoni@free-electrons.com> | 2015-12-12 12:03:55 +0100 |
commit | 8ff54bb7a48dc6b0705a382b56159d86b2f1c7e5 (patch) | |
tree | acc16e8bad5f0a232d68e9e5abfc7d31f8c8461f /package/mysql/S97mysqld | |
parent | bada891fdb3117aab62e29c1680c28df0718168d (diff) | |
download | buildroot-8ff54bb7a48dc6b0705a382b56159d86b2f1c7e5.tar.gz buildroot-8ff54bb7a48dc6b0705a382b56159d86b2f1c7e5.zip |
mysql: fix start script for /run on separate tmpfs
Recently the default skeleton was changed to have /run as a separate
tmpfs instead of a symlink to /tmp. /run is not world-writable, but
mysqld tries to write its PID file as user mysql. Therefore, it fails
to start.
To fix, create /run/mysql and give it to user mysql.
While we're at it, change the paths to /run instead of /var/run.
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Diffstat (limited to 'package/mysql/S97mysqld')
-rw-r--r-- | package/mysql/S97mysqld | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/package/mysql/S97mysqld b/package/mysql/S97mysqld index dd7f57f13f..1d87e68d96 100644 --- a/package/mysql/S97mysqld +++ b/package/mysql/S97mysqld @@ -7,16 +7,20 @@ case "$1" in mysql_install_db --user=mysql --ldata=/var/mysql fi + # mysqld runs as user mysql, but /run is only writable by root + # so create a subdirectory for mysql. + install -d -o mysql -g root -m 0700 /run/mysql + # We don't use start-stop-daemon because mysqld has # its own wrapper script. printf "Starting mysql..." - /usr/bin/mysqld_safe --pid-file=/var/run/mysqld.pid & + /usr/bin/mysqld_safe --pid-file=/run/mysql/mysqld.pid & echo "done." ;; stop) printf "Stopping mysql..." - if test -f /var/run/mysqld.pid ; then - kill `cat /var/run/mysqld.pid` + if test -f /run/mysql/mysqld.pid ; then + kill `cat /run/mysql/mysqld.pid` fi echo "done." ;; |