CentOS7のsystemdをちょっとだけ…

yumでmysqlをインストールしたら/etc/init.d/に起動スクリプトが作成されなかったという話ですが、これはCentOS7になってから起動処理の仕組みがsystemdと言うものに変わったからとのことでした。

気付いたきっかけ

それはserviceコマンドを実行した時のことです。

service mysqld status
Redirecting to /bin/systemctl status  mysqld.service
mysqld.service - MySQL Community Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled)
   Active: inactive (dead)

Jul 29 16:37:53 localhost.localdomain systemd[1]: Starting MySQL Community Server...
Jul 29 16:37:54 localhost.localdomain mysqld_safe[2377]: 140729 16:37:54 mysqld_safe Logging to '/var/log/mysqld.log'.
Jul 29 16:37:54 localhost.localdomain mysqld_safe[2377]: 140729 16:37:54 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Jul 29 16:37:56 localhost.localdomain systemd[1]: Started MySQL Community Server.
Jul 29 16:41:07 localhost.localdomain systemd[1]: Stopping MySQL Community Server...
Jul 29 16:41:08 localhost.localdomain mysqld_safe[2377]: 140729 16:41:08 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
Jul 29 16:41:08 localhost.localdomain systemd[1]: Stopped MySQL Community Server.

serviceコマンドは/etc/init.dの中のスクリプトを実行するコマンドのはずなのに、存在しないスクリプトが動くのはおかしいな〜、変だな〜、怖いな〜(稲川淳二風)って思っていたら。

「Redirecting to /bin/systemctl status mysqld.service」っおっしゃってるではありませんか。

systemctl status  mysqld.service
mysqld.service - MySQL Community Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled)
   Active: inactive (dead)

Jul 29 16:37:53 localhost.localdomain systemd[1]: Starting MySQL Community Server...
Jul 29 16:37:54 localhost.localdomain mysqld_safe[2377]: 140729 16:37:54 mysqld_safe Logging to '/var/log/mysqld.log'.
Jul 29 16:37:54 localhost.localdomain mysqld_safe[2377]: 140729 16:37:54 mysqld_safe Starting mysqld daemon with databases from /var/lib/mysql
Jul 29 16:37:56 localhost.localdomain systemd[1]: Started MySQL Community Server.
Jul 29 16:41:07 localhost.localdomain systemd[1]: Stopping MySQL Community Server...
Jul 29 16:41:08 localhost.localdomain mysqld_safe[2377]: 140729 16:41:08 mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended
Jul 29 16:41:08 localhost.localdomain systemd[1]: Stopped MySQL Community Server.

でsystemctl何やねんって調べたら、CentOS7は起動処理の仕組みがsystemdになっていたというわけでした。

systemctlコマンドまとめ

CentOS7になってからMariaDBになっていたり、systemdになっていたり色々変わっていてびっくりです。systemctlの使い方を下記にまとめて起きます。

systemctl
systemctl list-units
systemctl list-unit-files --type=service
systemctl enable mysqld.service
systemctl disable mysqld.service

またsystemdについては詳しく調べてみる。

コメントを残す