rsync

「基本的な」使い方

  • local to remote

    $ rsync -avz -e ssh [source path] yot@[destination host address]:[destination path]
  • remote to local

    $ rsync -avz -e ssh yot@[source host address]:[source path] [destination path]

帯域制限

--bwlimit=[数字]

単位は kB/sec.

ex.

$ rsync -avz -e ssh --bwlimit=1024 yot@[source host address]:[source path] [destination path]

参考

root 権限での転送

  • 転送先の sudoers ファイルを編集.

    $ sudo visudo

    ファイルの最下部に以下を追加.

    yot    ALL=(ALL)       NOPASSWD: /usr/bin/rsync
  • コマンドに以下のオプションを追加.

    --rsync-path='sudo rsync'

    ex.

    $ rsync -avz -e ssh --rsync-path='sudo rsync' [source path] yot@[destination host address]:[destination path]

参考

一段飛び

hoge.hoge.jp 経由で hoge@private.host.jp の ~/copy を手元に転送.

$ rsync -avz -e 'ssh -o ProxyCommand="ssh hoge@hoge.hoge.jp -W %h:%p"' private.host.jp:~/copy .

hoge.hoge.jp 経由で private.host.jp に ssh.

$ ssh -tX hoge@hoge.hoge.jp "ssh -X private.host.jp"

参考