LoginSignup
11
11

More than 5 years have passed since last update.

CentOS7の自動起動設定でエラーが出た時の対処法

Last updated at Posted at 2017-02-21

環境

・CentOS 7.3
・MySQL 5.7

前提

CentOS7に標準のMariaDBが入ってて、最初はそれを使う予定だったんですが、途中で変更になってMriaDBを削除、MySQL5.7を入れました。

で、自動起動設定をしようと思い、自動起動設定コマンド叩くとなぜか怒られました。

# systemctl enable mysqld.service
Failed to execute operation: Too many levels of symbolic links

サービスの自動起動設定の一覧見てみても、

# systemctl list-unit-files -t service|grep mysql
mysql.service      bad
mysqld.service     bad

だいぶ残念なことになってる。何ですか、badって。

解決策

なんか余分なシンボリックリンクが残っていたようです。
サービスが登録してあるディレクトリを見ると、

# pwd
# /etc/systemd/system
# ls -la
...
mariadb.service.d
multi-user.target.wants
mysql.service -> /usr/lib/systemd/system/mariadb.service
mysqld.service -> /usr/lib/systemd/system/mariadb.service
...

あ、なんかシンボリックリンクが………。
mysql.serviceとかがmariadbを見てる。

ってことで、シンボリックリンクを削除。

unlink mysql.service
unlink mysqld.service

これで、無事にmysqldの自動起動設定が出来るようになりました。

# systemctl enable mysqld.service
Created symlink from /etc/systemd/system/multi-user.target.wants/mysqld.service to /usr/lib/systemd/system/mysqld.service.

# systemctl is-enabled mysqld.service
enabled

CentOS7はいろいろと変更が多くて、いろんな所で地味に時間を取られそうです。

参考

11
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
11