Linuxの自動起動スクリプトについての質問です。
AWSのEC2で、サーバーAを起動(再起動)した時に、サーバーBから特定のフォルダをrsyncするという仕組みを構築しています。
以下のように、[/etc/rc.d/rc.local]に以下のように追加しました。
touch /home/ec2-user/test_local.log /usr/bin/rsync -avczK -progress -e "ssh -i /home/ec2-user/.ssh/***.pem" ec2-user@10.0.0.1:/home/sample/ /home/sample/ > /home/ec2-user/rsync.log 2> /home/ec2-user/rsync-error.log touch /home/ec2-user/test_local2.log
再起動したところ、以下のような状態です。
$ ll 合計 0 -rw-rw-r-- 1 ec2-user ec2-user 0 7月 22 12:07 rsync.log -rw-r--r-- 1 root root 0 7月 22 12:07 test_local.log -rw-r--r-- 1 root root 0 7月 22 12:07 test_local2.log
シェルにした上で、実行したのですが同様でした。
もちろん、手動でコマンド実行すれば、期待した動作は実行されているのが確認できています。
rc.localでrsyncの実行はできないのでしょうか?また、他に方法はありますでしょうか?
よろしくお願いいたします。
[追加情報]
使用AMI : Amazon Linux AMI 2017.03.1 (HVM), SSD Volume Type - ami-3bd3c45c
# cat /etc/issue Amazon Linux AMI release 2017.03
実行内容変更しました。 標準エラー出力をファイル保存しました。
以下が、出力内容となっています。
Host key verification failed. rsync: connection unexpectedly closed (0 bytes received so far) [receiver] rsync error: error in rsync protocol data stream (code 12) at io.c(600) [receiver=3.0.6]
回答1件
あなたの回答
tips
プレビュー