長時間コピーがいつ終わるかわからない。
100GB を超えるストレージ・ダンプのコピーがいつ終わるか予想がつかない。
cp hdd.img /mnt/hdd.img
100GBとかいつ終わるの・・・ってなる
手軽な手段 rsync
rsync -av --progress source hdd.img /mnt/hdd.img
rsync が一番手軽な手段。ただし rsync に -z
をつけると圧縮転送だから注意。あとrsync は理由がわからないが遅い。
進捗を見ながらコピーしたい → dd
dd / ddrescue を使えばコピーの進捗を見ながらできるじゃん
ddrescue hdd.img /mnt/hdd.img dd if=hdd.img of=/mnt/hdd.img status=progress
pv で進捗をバー表示
sudo apt install pv
で pv をインストールしてあげれば、コピー状況がわかるじゃん
pv hdd.img | cat - > /mnt/hdd.img
プログレスバーが出てくる
59.3GiB 0:23:16 [38.1MiB/s] [=======> ] 32% ETA 0:47:23
pv なら圧縮転送できる
pv はファイルを読み込んで、流すだけなのでパイプ使えるじゃん
pv hdd.img | gzip - > /mnt/hdd.img
これなら進捗わかるじゃん。
gzip 圧縮が遅いのでpigz に変える
gzip を挟むと遅いので pigz
に変えてあげる。準備はsudo apt install pigz
で。
pv hdd.img | pigz - > /mnt/hdd.img.gz
圧縮をとにかく速く
圧縮率を調整してもうちょっと時間を稼げる。
pv hdd.img | pigz --fast - > /mnt/hdd.img.gz
圧縮と読込の両方の状況を表示
pv は cat として動作するので、書き込み速度の状況を表示できた
pv -c hdd.img | pigz --fast | pv -c > /mnt/hdd.img.gz
ただ、2つ表示すると、区別がつかないので名前をつけてあげる
pv -cN src-read hdd.img | pigz --fast | pv -cN gz-out - > /mnt/hdd.img.gz
-c
はそれぞれの進捗を見るためのオプション
-N
は名前を付けるオプション
オプションをつけたら進捗が手にとるようにわかって楽しい。