rsyncがうまく動かない
サーバ間でファイルを同期する必要があり、rsyncを使うことにしました。サーバAからサーバBへファイルを定期的に送りつけます。サーバAは他サーバ間ですでにrsyncの動作実績があります。サーバBにrsyncをインストールして動かすとエラーになりました。
bash-2.05$ /usr/local/bin/rsync -auvz -e /usr/local/bin/ssh --delete --rsync-path=/usr/local/bin/rsync /export/hoge/files/* hoge@mail:/usr/local/files ld.so.1: /usr/local/bin/rsync: fatal: libiconv.so.2: open failed: No such file or directory rsync: connection unexpectedly closed (0 bytes received so far) [sender] rsync error: error in rsync protocol data stream (code 12) at io.c(359)
サーバB側で動作したrsyncがlibiconv.so.2という共有ライブラリが見えないようです。sshで動作させるときに環境変数を設定する必要があるようです。いくつか設定方法はあるようですが、今回は.ssh/environmentファイルを使用する方法を使いました。
sshd_configの設定
サーバBで動作しているsshdが環境変数の設定を許すように設定を変更します。/usr/local/etc/sshd_config(デフォルトでは)のPermitUserEnvironmentをyesにします。
PermitUserEnvironment yes
この変更をした上でsshdを再起動。
.ssh/environment
サーバBのsshが動くユーザ(上記の例だとhoge)の.ssh/environmentで環境変数が設定できます。こんなかんじに書きます。
LD_LIBRARY_PATH=/usr/local/lib:/usr/local/ssl/lib:/usr/local/pgsql/lib
libiconv.so.2は/usr/local/libにあるので、それだけで充分です。あとはおまけ。
これでちゃんと動作するようになりました。
参考書はこちら。
- 作者: Daniel J. Barrett,Richard E. Silverman,Robert G. Byrnes,小島肇,坂井順行,鹿田幸治,園田道夫,高橋基信,根津研介,宮本久仁男
- 出版社/メーカー: オライリー・ジャパン
- 発売日: 2006/11/22
- メディア: 大型本
- 購入: 2人 クリック: 79回
- この商品を含むブログ (48件) を見る
87/100
- 作者: ニール・F.カミンズ,竹内均,Neil F. Comins,増田まもる
- 出版社/メーカー: 東京書籍
- 発売日: 1999/07/01
- メディア: 単行本
- 購入: 6人 クリック: 29回
- この商品を含むブログ (24件) を見る
月がなかったら、月がもっと近かったら、太陽がもっと大きかったらなどなど10の「もし」をあげてその場合の地球環境や生物に与える影響などを書いています。
最近50光年の位置に地球型惑星が見つかったって言うニュースがありましたがこれとか、広い宇宙に地球人しか見当たらない50の理由―フェルミのパラドックスなんかを読むと知的生命体が存在する可能性はあまりないように思えてきます。