トップページへ

 セットアップ
Debian化
カーネル再構築
Debian化仕上げ
HDDの初期化
フローチャート

 サーバ構築
ルータの設定
無料ドメイン収得
Webサーバ
メールサーバ
FTPサーバ
ファイルサーバ
プリンタサーバ
DNSサーバ
データベースサーバ

 運 用
基本的なコマンド
テキストエディタ
シェルスクリプト
運用に必要な物
ファイアウォール
ログの管理
バックアップ
データ復旧
VMware

 監 視
Webアクセス解析
システム監視
ログ解析
不正アクセス監視

 その他
リンク

sponsored link

【 更新履歴 】


2009年7月25日
 サイトデザインを一新

2009年3月31日
 Debian化仕上のページを更新

2008年09月15日
 新サイト開設



シェルスクリプト



 サーバーの管理をする上でシェルスクリプトの知識は必要です。 自動で何かを処理したい場合にシェルスクリプトを作成し、cronで時間指定して実行させる等便利な機能です。

例1:定時にデータのバックアップを行いたい場合

1.スクリプトファイルを作成する

ファイル編集:スクリプト作成

シェルスクリプトを記述するファイルを作成

# vi /root/シェルスクリプト名

下記の内容を記入する

#!/bin/sh  ←決まり文句
 PATH=/bin:/usr/bin:/sbin:/usr/sbin  ←決まり文句、コマンドのパスを通す

 tar -zvcf /home/backup/backup-`date +%y%m%d` /var/www/myweb/  ←この行以下に実際のコマンドを入力する

※上記のコマンドを実行させると、/var/www/myweb/フォルダ下のデータを/home/backup/フォルダ内にbackup[-バックアップした時間]の名前で圧縮保存されます。


2.スクリプトファイルが実行できるように権限を与えます

コマンド:権限変更

シェルスクリプトファイルに実行権を与える

# chmod a+x /root/シェルスクリプト名

3.指定した時間に実行させるためcronに登録します

ファイル編集:/etc/crontab

指定した時間に上記で作成したファイルを実行させるために登録します

# vi /etc/crontab

下記の内容を入力する。状況に応じて実行したい時間を設定します

cron動作時に記載したアドレスに確認メールが届く(送りたくない場合はMAILTO=""にする)

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




例2:サーバの再起動時に自動で実行させたいコマンドがあればシステムに登録します

1.スクリプトファイルを作成する

ファイル編集:スクリプト作成

シェルスクリプトを記述するファイルを作成。このディレクトリに作成し、以下の手順を行います

# vi /etc/init.d/シェルスクリプト名

下記の内容を記入する

#!/bin/sh  ←決まり文句
 PATH=/bin:/usr/bin:/sbin:/usr/sbin  ←決まり文句、コマンドのパスを通す

 iptables-restore /etc/iptables_save  ←この行以下に実際のコマンドを入力する

※上記のコマンドを実行させると、ファイアウォールの設定を読み込みます。


2.スクリプトファイルが実行できるように権限を与えます

コマンド:権限変更

シェルスクリプトファイルに実行権を与える

# chmod a+x /etc/init.d/作成したシェルスクリプト名

3.システムに登録します

コマンド:権限変更

サーバ起動時に作動させる設定(debian特有コマンド)

# update-rc.d 作成したシェルスクリプト名 defaults

上記で登録した設定を解除(debian特有コマンド)

# update-rc.d 作成したシェルスクリプト名 remove