サーバーの管理をする上でシェルスクリプトの知識は必要です。 自動で何かを処理したい場合にシェルスクリプトを作成し、cronで時間指定して実行させる等便利な機能です。
1.先ずはバックアップをとるためのスクリプトファイルを作成します。
# vi /root/シェルスクリプト名
#!/bin/sh ←決まり文句
PATH=/bin:/usr/bin:/sbin:/usr/sbin ←決まり文句、コマンドのパスを通す
tar -zvcf /home/backup/backup-`date +%y%m%d` /var/www/myweb/ ←この行から実際のコマンドを入力する
2.上記のスクリプトファイルが実行できるように権限を与えます。
3.指定した時間に自動で実行させるため、cronに登録します。
下記の内容を入力する。状況に応じて実行したい時間を設定します。
MAILTO=メールアドレス
(分 時 日 月 曜日 user_name command の順に記述していく)
例1、5分おきに実行
*/5 * * * * root /root/シェルスクリプト名1
例2、0時,8時,12時,16時,20時のそれぞれの5分に実行
5 0,8,12,16,20 * * * root /root/シェルスクリプト名2
例3、12時00分に実行
0 12 * * * root /root/シェルスクリプト名3>
実行権限を与えられたシェルスクリプトを手動で実行させるには、スクリプトファイルを記述してそのまま実行します。
#シェルスクリプトファイル.sh
もしくは
#sh シェルスクリプトファイル.sh
サーバの起動時に自動で実行させたいコマンドがあればシステムに登録します。例えば、ファイアウォールの設定をしたとしても、再起動するともう一度設定をやり直さないといけません。であれば、起動時に毎回設定をしてくれるスクリプトを作成すれば煩わしくありませんし、設定し忘れることもありませんね。
1.スクリプトファイルを作成する
下記の例では、ファイアウォールであるiptablesのシェルスクリプトを自動実行させています。
PATH=/bin:/usr/bin:/sbin:/usr/sbin ←決まり文句、コマンドのパスを通す
iptables-restore /etc/iptables_save ←この行以下に実際のコマンドを入力する
※上記のコマンドを実行させると、ファイアウォールの設定を読み込みます。
2.スクリプトファイルが実行できるように権限を与えます
3.システムに登録します
サーバ起動時に作動させる設定(debian特有コマンド)
逆に、登録した設定を解除する場合(debian特有コマンド)
![]() | 玄箱で遊ぼう!!―玄箱/玄箱HG対応 鈴木 哲哉 ![]() ![]() ![]() ![]() ![]() by G-Tools |