ライブラリなどが含まれた大量のファイル群ををscpやrsyncを使わずにsshとtarでアップロードする方法
ライブラリなどが含まれた大量のファイル群ををscpやrsyncを使わずにsshとtarでアップロードする方法
私は普段rsyncのscpを使っていましたが便利だったのでメモします。
~/some_file_folder に転送する場合
tar -cf - some_file_folder | ssh server 'tar -xf - '
/var/www/some_file_folder に転送する場合
tar -cf - some_file_folder | ssh server 'tar -xf - -C /var/www'
圧縮する場合
tar -czf - some_file_folder | ssh dest.server 'tar -xzf - -C /var/www'
CPU暗号を使う場合
tar -cf - some_file_folder | ssh -c arcfour dest.server 'tar -xf - '
大きなファイルを含む際にはパイプを使うのでメモリを使うかも知れません。 アップロードする前にディレクトリサイズを確認しておきましょう。
du -sh some_file_folder