自作NAS (ubuntu 19.04) を平日の日中のみサスペンドさせる
経緯
自作のファイルサーバがあるのだが、平日の日中は当然使われていない。
にもかかわらずつけっぱなしなのもどうかと思うので、そのあいだサスペンドするようにする
調べたところ、 時間を指定してサスペンド、一定時間後の復帰をさせる rtcwake
と
定期的にコマンドを実行させるcrontab
を使えば行けそうなので設定してみる。
使うコマンド
crontab
以下のコマンドで設定ファイルを開く
$ crontab -e
定期的に繰り返したいコマンドを下記のフォーマットでファイルに追記していく
分 時 日 月 曜日 コマンド
曜日は月曜=1から始まり日曜=7といった感じになっている。
今回は自分が出勤したあとの平日の午前7:30にスリープをさせたいので、以下のようになる。
30 7 * * 1-5 実行したいコマンド
rtcwake
指定した時間サスペンドやシャットダウンをし、その後復帰をさせるというコマンド
-m mem
でサスペンド、-s
で秒数を指定する。
試しに10秒サスペンドしてみる
$ sudo rtcwake -m mem -s 10
rtcwake: RTC が UTC を使用しているものと仮定します ...
rtcwake: Sat Jul 20 02:23:09 2019
にある /dev/rtc0 を利用して、 "mem" から復帰します
無事復帰できた。
今回は出勤中の10時間=36000秒スリープさせたいので、以下のようにする。
$ rtcwake -m mem -s 36000
実際の手順
$ sudo crontab -e
rtcwakeはsuperuserから実行する必要があるため、superuserのcrontabに設定をする
以下を追記する
30 7 * * 1-5 rtcwake -m mem -s 36000
結果
様子見中
と言うか平日の出勤中にちゃんとスリープしているか確認する方法を探す必要があるという。