人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

rsyncのコマンドで同一ネットワークにあるマシンのファイルを転送したいのですが
どのようなコマンドにすればいいのでしょうか?
結論は、マシンAの/sbinのフォルダをマシンBに持ってきたい。
マシンA:
IP:192.168.1.201
対象ディレクトリ:/sbin

マシンB:
IP:192.168.1.202
対象ディレクトリ:/

該当のマシンAのディレクトリの権限などをそのまま
マシンBのrootディレクトリにsbinとして持ってきたいんです。

もちろんSSHのポートは開いてますが、公開鍵でしかログインは出来ません。


●質問者: hopefully
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:IP root rsync SSH コマンド
○ 状態 :終了
└ 回答数 : 6/6件

▽最新の回答へ

1 ● wdc
●19ポイント

Bがローカルマシンだとしますと、Bの/に移動して

rsync -auvz --numeric-ids --delete 192.168.1.201:/sbin ./

でいいかと思います。

そうでないなら

rsync -auvz --numeric-ids --delete 192.168.1.201:/sbin 192.168.1.202:/

かな。これはやったこと無いですが(^^ゞ

バックアップ元ディレクトリ最後に / をつけない場合、

バックアップ先にディレクトリを作った上でバックアップします。

ウェブのドキュメントではここがわかりやすいです。

http://www.infoscience.co.jp/technical/rsync/index.html

・マニュアル(オプションはここで確認してください)

http://www.infoscience.co.jp/technical/rsync/rsync.html

・使用例

http://www.infoscience.co.jp/technical/rsync/examples.html

◎質問者からの返答

マシンBでやったら以下のメッセージが出ました。

Permission denied (publickey,gssapi-with-mic).

rsync: connection unexpectedly closed (0 bytes received so far) [receiver]

rsync error: error in rsync protocol data stream (code 12) at io.c(463) [receiver=2.6.8]


2 ● paraizo
●19ポイント

rsync -azvv -e "ssh -p 22 -i keyfile" root@192.168.1.201:/sbin /

◎質問者からの返答

"ssh -p 22 -i keyfile"は自分で作成するんですか??


3 ● bayan
●18ポイント

自分だったらどうするかということで。。。

マシンBから (192.168.1.202) でやるとしたら

次のようにしますかね。

rsync -e ssh -avc hoge@192.168.1.201:/sbin /

ここで hoge はマシンAにログインできるユーザー名です。

それと、

rsync -n -e ssh -avc hoge@192.168.1.201:/sbin /

みたいに -n をつけて事前に何が起きるか確認した方がいいかもしれんです。

削除するオプションだったと思いますが、私は怖いので

使ったことないです。

◎質問者からの返答

ありがとうございますw


4 ● Pooh_san
●18ポイント

こんにちは。

リモートコマンドを使うときはrhostなどにアクセス権の設定が必要のはずです。

http://hp.vector.co.jp/authors/VA002739/ntcom/com_tcpip/rsh.htm

はずれていたらごめんなさい。

◎質問者からの返答

ありがとうございますw


5 ● wdc
●18ポイント

あの、もしかして /sbin を / にコピーするっていうのは例え話ではなくて、

本当にそうしたいんでしょうか?

だとすると、それはちょっとまずいように思います。

/sbin はシステムで利用する重要コマンド群ですから、他のマシンからコピーする状況というのは通常無いように思います。


なお、Permission denied はまさしく権限無しということです。

一般ユーザーは / に直接書き込みはできません。

通常リモートバックアップは、自分のディレクトリ以下に例えば ~/backup などのディレクトリを作っておいて、そこに必要なファイルをコピーしておくような感じで使うことが多いと思います。


あと、rsyncのオプション-eですが、現在はデフォルトでsshを利用しますので不要じゃないでしょうか(僕はFreeBSDですが他の環境では違うのかな)。

rhostへの登録も不要です。


ルートアカウントで作業するとするとparaizoさんの通りroot@が必要ですが、

sshのデフォルト設定ではrootのログインはできないはずですので、/etc/ssh/sshd_configの見直しが必要です。

◎質問者からの返答

そうなんですよ。

/sbin を消されてしまったので

戻したいんです。

もう1個同じマシンなので問題は

ないと思いますがどうでしょうか?


1-5件表示/6件
4.前の5件|次5件6.
関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ