ディレクトリバックアップ
tar コマンドでディレクトリのしたを1つにまとめ
圧縮保存する
~/以下のファイルを
/home/
に
日付_home.tar.gz
で保存する
1 | sudo tar zcvf /home/20150724 . tar .gz ~/ |
/home に保存するには
sudo でやらないと権限の関係でできない
ちなみに、元のファイルはそのままなので心配ない
オプションの意味は
zで gzip圧縮
cで圧縮
vでログ表示
fでファイルにバックアップを作成
という意味
アーカイブはバックアップとも言える
圧縮するときには
tar zcvf バックアップファイル名 対象パス
と覚えておく
さらに圧縮率をあげるなら
jオプションをつかう
これは圧縮方法の違いで
zは gzip
jだと bzip2
になる
この場合
保存するときのファイル拡張子を
bz2 にする
圧縮のときには
tar jcvf バックアップファイル名 対象パス
となる
tar コマンドについては
【 tar 】 ファイルを書庫化・展開する(拡張子.tarなど)
にオプションの意味なども載っているので
参考に
そして時間の違いを実験するため
time コマンドで実行時間を表示します
time コマンドについての詳細は
【 time 】 指定したコマンドの実行時間を表示する
を参考に
結果ですが
1 2 3 4 5 6 7 8 | time sudo tar zcvf /home/20150724 . tar .gz ~/ でzオプションによる gzip 圧縮の場合 real 0m20.856s user 0m8.941s sys 0m7.542s |
となり
1 | time sudo tar jcvf /home/20150724 . tar .bz2 ~/ |
で j オプションによる bzip2 圧縮だと
1 2 3 | real 0m44.561s user 0m32.664s sys 0m6.771s |
そして、実際にサイズを ls コマンドで
測ってみます
ls コマンドの詳細は
【 ls 】 ファイルやディレクトリの情報を表示する
を参考に
今回つかうオプションは
a すべてのファイルを対象
h 単位を読みやすくする
l 詳細表示
t タイムスタンプ順にして並べる
r 逆順にして並べる
これらをつかって比較結果を表示します
1 | ls -ahltr /home/20150724 . tar .* |
結果は
1 2 | -rw-r--r--. 1 root root 83M 7月 24 07:34 2015 /home/20150724 . tar .gz -rw-r--r--. 1 root root 73M 7月 24 07:36 2015 /home/20150724 . tar .bz2 |
となります
これにより
bzip2 圧縮のほうが73MBとなり
サイズが小さいということがわかります