2014年2月21日金曜日

sedでファイルの特定行の文字を置き換える

同じような環境をいくつも作ると、手順化、sh化することが出てきます。

そんななか、各種インストールの後に行うconfの設定作業は
手作業の中でも間違うと危険な分類のため、できるだけ自動化したいところです。


今回、zabbixのAgent構築で使った使用例を纏めておきます。

※confの形はバージョン依存でもあるので、頻繁にconfが変わるアプリを使う場合にはご注意ください。

実施例

#ディレクトリ移動
cd /etc/zabbix/

#念のためバックアップ
cp zabbix_agentd.conf zabbix_agentd.conf.default

#ServerNameを、指定したサーバーへ置き換える
sed -i -e 's/Server=127.0.0.1/Server=zabbix-server.domainname.com/' zabbix-agentd.conf

#ServerActiveを置き換える
sed -i -e 's/# ServerActive=/# ServerActive=\nServerActive=zabbix-server.domainname.com/' zabbix-agentd.conf



#自分を宣言する #$HOSTNAMEはサブドメインが入っている変数

sed -i -e 's/Hostname=Zabbix server/Hostname='$HOSTNAME'.domainname.com/' zabbix-agentd.conf




変更点を目視で確認

diff zabbix_agentd.conf zabbix_agentd.conf.default


0 件のコメント: