LoginSignup
6
4

More than 3 years have passed since last update.

CentOS8を毎日定時に再起動させたいんだよなあ

Last updated at Posted at 2020-12-31

何か調子悪いからとりあえず再起動

最近CentOSで実行してる日次のrsync(ファイルサーバーのバックアップ)が時々失敗してる…(´・ω・`)

原因はまだよく分かってないけど、ひとまず毎日再起動していみることにしました。

再起動のシェルスクリプト

これ。

shutdown -r now

-r が『再起動』のオプション。
-h は『電源切る』のオプションだから注意。
(電源切っちゃったらマシンの前まで行って、電源ボタンぽちってしないといけないよ)

定期実行をcronに登録

まずは下記コマンドでcron設定ファイルをviで編集。

crontab -e

下記内容を追記。

0 3 * * * /usr/sbin/shutdown -r now

分 時 日 月 曜日 コマンド

上記の場合は毎日3:00に『/usr/sbin/shutdown』を実行しなさいよ!オプションは『-r now』よ!な意味。

shutdownの前に/usr/sbin/を付けてるのは何で?

cronで『コマンドが見つかりません』の例外回避の為です。

コマンドによっては 端末では実行できるのにcronだとできない ことがあります。
(cronで実行する時にパスが通っていないのが理由)

なので、ただのコマンドではなく 絶対パスで指定したコマンド にする目的で /usr/sbin/を付けています 。

shutdownの絶対パスを知りたい時は下記コマンド。

which shutdown

ホントか~?ホントにお前再起動したんか~?

下記コマンドで簡易的に確認できるん。

last reboot

結果はこんな感じ。
image.png
金曜日、1月1日、4時51分に再起動、そこから現在まで動いてるよって意味。

3:00とか夜中に再起動することになるから、後から確認できる方法知っておこう。

必要なサービスは起動と同時に立ち上がるようにしておこう

例えば下記はSamba(ファイルサーバーのサービス)を起動と同時に立ち上げるコマンド。

systemctl enable smb

systemdで再起動の定期実行はダメ!

最初はコレ↓で定期実行しようとした。
CentOSで日付・曜日・時間を指定して定期実行したいんだよなあ

systemctl enable 再起動のサービス なんてことやっちゃったもんだから、

定時再起動 ⇒ CentOS起動と同時に再起動のサービス開始 ⇒ 再起動 ⇒ CentOS起動と同時に再起動のサービス開始 ⇒ 再起動 ⇒ ………

無限ルーーーーープになっちゃったよ☆(・ω<)

「諸君、〇分後に再起動を開始する」

shutdownのオプションで -k にすれば、接続してる端末再起動するぞいって通知 できる。
これ使用頻度低いけど便利。

ふーん、そういうこともできるのね、って感じで覚えておこうと思った。

蛇足

起動と同時にLineに通知するなり、メール飛ばすなりする仕組み作りたいなと思った!

再起動するとMac mini上のネットワークドライブがアンマウントされちゃう…(´・ω・`)
(tico = CentOS上にSambaで構築したファイルサーバー)
image.png
Mac側に定期実行のスクリプト設定するなり、アンマウントされないように設定するなり必要ありそう…。
うーん、これは残課題です。

参考サイトさん

https://eng-entrance.com/linux-command-shutdown
https://rainbow-engine.com/linux-scheduled-reboot-script/
https://teratail.com/questions/75302
https://gist.github.com/koudaiii/49ac3f8b7c207f0da31f
https://netacore.jp/restart-automatically-centos-server/

バージョン

CentOS Linux release 8.3.2011

6
4
2

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
6
4