Saya suka 'Disk' ( gnome-disk-utility
) dan kemampuannya untuk membuat cadangan partisi sistem.
Tetapi pada beberapa titik saya membaca di internet tentang program yang akan membuat gambar seperti itu tidak sebesar keseluruhan partisi, tetapi hanya sebesar file di dalamnya. Sekarang saya tidak dapat menemukannya lagi.
Apakah ada utilitas seperti itu?
Jawaban:
Jawaban berikut menggunakan TUI , bukan solusi GUI :
Bergantung pada case-use Anda (saya menggunakannya untuk membuat back-up sistem) Anda dapat menggunakan CloneZilla Live . Itu dapat membuat:
Keuntungan utama adalah:
Di atas semua barang ini, ia dapat menyalin MBR juga.
Jika cadangan sistem dingin bukan yang Anda cari, Anda masih bisa menggunakan teknologi yang menjadi dasar CloneZilla dan itu
partclone
.sumber
Mencapai gambar disk yang lebih kecil biasanya dilakukan dengan cara tidak menyalin blok keluar nol dari sistem file awal dalam gambar. Konsep ini disebut sparse space dalam file atau lubang puching pada file, dan sistem file host Anda harus mendukungnya. sedikit baris perintah tetapi coba ini:
Dan setelah instalasi, Anda dapat menggunakan:
Ini akan membuat citra disk Anda jarang (nol dalam file tidak tertulis). di mana -f = format, -O format output. sdX disk (dapat menggunakan partisi juga). Program ini memiliki fitur-fitur canggih seperti snapshots dan berbagai format output (vdi, vmdk, dll). Anda tempat di mana Anda menyimpan gambar harus mendukung file jarang , atau ukuran akan sama besar, karena angka nol di partisi akan ditulis ke disk. Dan untuk memaksimalkannya, jalankan program seperti
sfill
atauzerofree
ditemukan di apt pada partisi, karena ruang kosong tidak selalu berarti ruang nol, dan Anda ingin memaksimalkan jumlah ruang kosong pada sistem file.Poin bonus ninja. Karena linux menganggap disk sebagai "file", maka Anda juga dapat menggunakan plain cp, dengan syarat partisi keluaran tempat Anda memarkir file mengetahui file yang jarang.
Yang akan membuat salinan mentah melalui cp ..
Contoh filesystem yang mendukung sparse: ext4, btrfs, xfs, ntfs (ntfs-3g namun tidak memungkinkan penulisan jarang).
Contoh sistem file yang tidak: fat32.
sumber
sudo cp /home/<user>/Ubuntu.img /dev/sdX
, atau jika Anda mausudo dd if=/home/<user>/Ubuntu.img of=/dev/sdX
,. Hal yang sama dengan qemu-img convert .. Jika Anda mengatakan, ingin menanam mesin virtual pada perangkat keras nyata. Ketika ia menulis kembali, ia akan menulis nol ke disk, sehingga Anda tidak tersebar , karena perlu untuk mengatasi geometri partisi dengan benar.Karena sepertinya tidak ada program apa pun yang dengan sendirinya akan memenuhi dua syarat:
1) Memiliki GUI 'Disks' seperti;
2) Buat disk-image sebesar ruang yang digunakan,
Saya sedang memikirkan solusi yang agak sederhana, tetapi yang melibatkan dua program GUI, sangat umum di Ubuntu:
Yang satu akan menjadi 'Disk' yang sama (gnome-disk-utility) , digunakan untuk membuat gambar cadangan dari partisi yang diberikan, dan yang kedua adalah Gparted, untuk mengecilkan partisi sebanyak mungkin sebelum membuat gambar cadangannya, dan untuk mengubah ukurannya kembali ke aslinya setelah itu .
Saya melihat ada ketidaknyamanan dalam operasi seperti itu: menyusutkan partisi ke minimum hanya akan memakan waktu beberapa menit (sekitar satu menit untuk 10GB) dan akan membuat ruang kosong di sebelah kanan. Setelah membuat gambar cadangan disk dengan 'Disk', menggunakan Gparted partisi dapat diubah ukurannya kembali ke kanan ke ruang kosong hingga ke kondisi awal, dan itu hanya akan memakan waktu beberapa detik.
Diuji pada partisi dengan instalasi Ubuntu:
kecilkan partisi dengan Gparted sebanyak mungkin
gambar cadangan partisi itu dengan Disk
pulihkan gambar dengan Disk ke partisi yang lebih besar dari gambar; partisi itu harus di-un-mount terlebih dahulu: Cara mengembalikan partisi sistem (gambar iso) dengan benar dengan 'Disk' .
sumber
Sunting : Ini tidak akan berfungsi dengan baik jika file yang dihapus dari sistem file masih ada di partisi, jadi pertama-tama perlu untuk menghapus ruang kosong di partisi target:
dd if=/dev/zero of=<path_to_partition_volume>/file.dd && rm <path_to_partition_volume>/file.dd
Kemudian:
Anda dapat membaca seluruh blok partisi dengan blok dengan
dd
dan output semuanya ke utilitas kompresi sepertigzip
. Kemungkinan besar alat kompresi apa pun, bahkan menggunakan pengaturan kompresi tercepat / terendah, akan memampatkan semua ruang kosong selama proses.Dengan
gzip
:sudo dd if=/dev/sdX | GZIP=-1 gzip >/path/to/backup.gz
(
GZIP=-1
Sementara menetapkan variabel lingkunganGZIP
untuk-1
mencapai tercepat / kompresi terendah)Untuk mengembalikan cadangan:
gzip -d /path/to/backup.gz >/dev/sdX
sumber
Bagaimana dengan menggunakan
ddrescue
dengan-S
pilihan?Ini akan mengkloning setiap blok tapi nol blok ditemukan di perangkat blok
/dev/sdXY
untuk/<path_to_backup>/backup.img
sumber
Itu tidak dapat digunakan untuk membuat salinan ke drive yang lebih kecil. Ketika saya memiliki drive 64 Gb itu hanya 10% diisi dengan data. Saya ingin dapat menyalinnya ke imagefile 6 Gb, yang dapat saya salin pada gilirannya ke drive 16Gb dan kemudian memperluasnya ke 16 gb
Satu-satunya kemungkinan yang saya tahu sekarang adalah menggunakan GParted untuk mengecilkan yang asli, daripada menyalinnya dan kemudian mengubah ukuran keduanya. Operasi yang sangat berisiko, karena Anda harus mengecilkan dan mengubah ukuran aslinya.
sumber
Anda dapat menggunakannya
rsync
untuk mencadangkan hanya file di partisi ke partisi lain. Atautar
untuk membuat arsip terkompresi yang berisi semua file.Keduanya mungkin memiliki (beberapa) GUI, tetapi saya sendiri belum pernah menggunakannya.
sumber
Clonezilla sebenarnya bisa sangat ramah. Live CD tidak memerlukan penggunaan baris perintah - Saya akan senang menyebutnya GUI walaupun tidak menggunakan mouse - dan saya pikir defaultnya OK untuk banyak kasus. Masalahnya adalah sesuatu yang tidak Anda panggil secara eksplisit: tampaknya tidak dirancang sebagai sesuatu yang dapat Anda instal pada sistem linux sewenang-wenang. Dikemas khusus untuk Debian / Ubuntu, dan Live CD adalah cara termudah untuk menjalankannya.
Clonezilla / partclone menggunakan kloning sadar filesystem dan menggunakan format gambar terkompresi mereka sendiri.
Ada kemungkinan non-GUI lain untuk menghasilkan file sederhana (yang dapat di-mount), yang tidak bergantung pada pendeteksian sektor nol.
Jika / tmp adalah ramdisk, ia akan memperingatkan bahwa berpotensi membutuhkan lebih banyak ruang untuk file sementara. Jadi, Anda mungkin perlu menambahkan opsi
--tmp /var/tmp
.sumber
virt-sparsify --version
? Opsi ini didokumentasikan pada milikku (man virt-sparsify
) ... Aku tidak bisa bersumpah aku telah menggunakannya, tapi setidaknya saat/tmp
ini tmpfsku. Jika Anda dapat menggunakannya--in-place
, sepertinya itu akan menghindari penyimpanan sementara. Akhirnya Anda sebaiknya mencobaTMPDIR=/var/tmp virt-sparsify ...
. Dokumen untuk versi saya mengatakan bahwa Anda harus mengatur dir tmp untuk versi sebelum 1.28.