Anda tidak dapat melakukan ini dengan mudah menggunakan dd
karena perangkat blok hanyalah dump byte. Mungkin berisi data file yang lama dihapus di ruang yang tidak terisi. dd
tidak menyadarinya karena itu adalah pekerjaan filesystem. Anda memiliki beberapa opsi:
Tetap gunakan dd
... dan terima penggunaan ruang yang lebih besar. Alih-alih melakukan sesuatu seperti dd if=/dev/mmcblk1 of=NanoPi.img bs=64K conv=noerror,sync status=progress
. Ukuran blok yang lebih kecil memberi Anda sedikit lebih banyak keamanan jika terjadi kesalahan baca. Jika dd
gagal membaca setidaknya satu sektor - sisa blok tidak akan diproses. Ukuran blok adalah jumlah maksimum byte yang dapat Anda lepas untuk satu sektor yang buruk. conv=noerror
memastikan kloning berlanjut jika terjadi kesalahan. conv=sync
menggeser pointer dalam file tujuan maju jika terjadi kesalahan baca sehingga data tetap selaras dan dengan demikian valid.
Kamu bisa pipa dd
keluaran melalui gzip
untuk mengompres data dan menghemat ruang: dd if=/dev/mmcblk1 bs=64K conv=noerror,sync status=progress | gzip -c > NanoPi.img.gz
Untuk mendapatkan kembali gambar mentah lakukan gunzip -c ./NanoPi.img.gz > NanoPi.img
.
Gunakan rsync
... dan berurusan dengan file mentah. rsync -aAXv /path/to/mounted/mmcblk1 /path/to/destination/folder
. Ini mungkin atau mungkin tidak bekerja untuk Anda tergantung apakah sistem file Anda dipasang atau tidak.
dd