Program GUI untuk membuat gambar cadangan partisi tidak lebih besar dari file-nya?

8

Saya suka 'Disk' ( gnome-disk-utility) dan kemampuannya untuk membuat cadangan partisi sistem.

masukkan deskripsi gambar di sini

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?


sumber
3
CloneZilla, mungkin?
muru
1
Seperti yang saya lihat clonezilla dapat dijalankan hanya sebagai sesi langsung. Saya telah mengedit untuk menentukan bahwa saya sedang mencari program yang dapat diinstal dan dijalankan dari OS, saya menggunakan banyak ubuntus dan saya lebih suka solusi ini

Jawaban:

9

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:

  • gambar jarang ,
  • gambar terkompresi dari:
    • seluruh sistem,
    • seluruh drive
    • hanya partisi individual.

Keuntungan utama adalah:

  • dari mana ia boot:
  • hadir dengan OS sendiri (berbasis Ubuntu)
  • itu dapat membuat cadangan sistem dingin yang tepat yang mudah dipulihkan.

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.

Fabby
sumber
1
Saya telah mengedit untuk menentukan bahwa saya sedang mencari program GUI yang dapat diinstal dan dijalankan dari OS, saya menggunakan banyak ubuntus dan saya lebih suka solusi ini
cara menginstal pyclonezilla? tidak satu entri google untuk pertanyaan ini
1
Saya terlalu cepat untuk menunjukkan GUI: Tidak berfungsi. Hanya CLI! Saya akan menghapus jawaban saya setelah Anda meninggalkan pesan bahwa Anda sudah membaca ini.
Fabby
1
Karena tidak ada program, tampaknya, untuk memenuhi kedua kondisi: 1) Memiliki GUI seperti 'Disk'; 2) Buat disk-image sebesar ruang yang digunakan, tidak ada gunanya menghapus jawaban Anda. Jawaban CLI untuk pertanyaan GUI biasanya disajikan di sini dan sering diterima, dengan alasan yang bagus. Saya hanya berusaha untuk mendorong apa yang saya inginkan.
1
: DI akan mengambil cadangan dan kemudian menyusut ... ;-)
Fabby
4

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:

sudo apt-get install virt-manager qemu-utils 

Dan setelah instalasi, Anda dapat menggunakan:

qemu-img convert -f raw -O raw  /dev/sdX /home/<user>/Ubuntu.img

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 sfillatau zerofreeditemukan 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.

sudo cp --sparse=always /dev/sdX /home/<user>/Ubuntu.img

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.

pengguna283885
sumber
Saya telah mengedit untuk menentukan bahwa saya mencari program GUI yang dapat diinstal dan dijalankan dari OS, saya menggunakan banyak ubuntus dan saya lebih suka solusi ini
apa yang akan menjadi perintah untuk mengembalikan gambar?
Biasanya pada server farms kami tidak memiliki banyak opsi GUI dan membuat skrip di sekitar perintah tersebut. Inilah sebabnya mengapa baris perintah biasanya lebih lengkap / kuat di Unix. Mengonversi kembali semudah membalikkan parameter .. sudo cp /home/<user>/Ubuntu.img /dev/sdX, atau jika Anda mau sudo 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.
user283885
1
Saya mengerti maksud Anda dan saya minta maaf karena saya tidak mengetahui adanya alat GUI yang sesuai dengan kebutuhan Anda. Saya hanya berpikir bahwa setidaknya ada sesuatu yang kedua yang mungkin berguna bagi Anda.
user283885
1
Selamat datang di sisi pagar ini. Alasan saya menunjuk ke server farm adalah karena cara sebagian besar pengembangan dilakukan akhir-akhir ini. Sebagai contoh, qemu-img adalah utilitas dari proyek yang jauh lebih besar (openstack, dimulai oleh redhat, rackspace & nasa). Anda memiliki perusahaan-perusahaan besar yang membangun perangkat lunak yang sesuai dengan pusat data mereka dan kemudian Anda memiliki orang-orang seperti kami yang mendukung upaya itu. Tentu berhasil, tapi sederhana saja. Untuk saat ini, yang terbaik yang bisa saya lakukan adalah berbagi pengetahuan dengan orang lain.
user283885
4

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:


sumber
1
Karena saya baru saja menerima jawaban atas jawaban saya, membaca jika Anda pernah menemukan jawaban yang sempurna, dan ini sepertinya adalah jawabannya! Mengapa Anda tidak menerima yang ini?
Fabby
2

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:

  1. Pasang partisi target
  2. Lari dd if=/dev/zero of=<path_to_partition_volume>/file.dd && rm <path_to_partition_volume>/file.dd
  3. Lepas partisi target

Kemudian:


Anda dapat membaca seluruh blok partisi dengan blok dengan dddan output semuanya ke utilitas kompresi seperti gzip. 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=-1Sementara menetapkan variabel lingkungan GZIPuntuk -1mencapai tercepat / kompresi terendah)

Untuk mengembalikan cadangan:

gzip -d /path/to/backup.gz >/dev/sdX

kos
sumber
Apa pendapat Anda tentang menyusutkan partisi dengan gparted sebelum menggunakan Disk untuk mencadangkannya?
@cipricus Lebih baik menunggu orang lain untuk mengatakan sesuatu tentang ini, karena saya tidak yakin, bahkan sulit saya pikir itu baik-baik saja untuk melakukannya juga
kos
@kos Saya menemukan perintah ddrescue yang Anda berikan menghasilkan gambar dengan mudah tetapi tidak mengurangi ukuran file sama sekali. Saya sedang membayangkan partisi NTFS ke ext4, yang keduanya tampaknya berfungsi dengan file jarang tetapi ukuran file .img yang diperlihatkan dalam Nautilus sama persis dengan ukuran partisi yang berasal. Jadi sepertinya bermain-main dengan gParted mungkin masih diperlukan?
PhilJ
1

Bagaimana dengan menggunakan ddrescuedengan -Spilihan?

ddrescue -S /dev/sdXY /<path_to_backup>/backup.img

Ini akan mengkloning setiap blok tapi nol blok ditemukan di perangkat blok /dev/sdXYuntuk/<path_to_backup>/backup.img

kos
sumber
Kedengarannya bagus. Tetapi apa yang akan menjadi perintah untuk mengembalikan gambar?
@cipricus Saya menemukan bahwa ini sebenarnya sangat tergantung pada sistem, dan tidak akan berfungsi pada setiap distribusi, jadi saya menambahkan metode yang lebih sederhana namun mungkin hanya sedikit lebih lambat untuk menyelesaikannya tanpa mengunduh perangkat lunak tambahan, yang merupakan metode yang sebenarnya saya lakukan use
kos
0

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.

pengguna522843
sumber
0

Anda dapat menggunakannya rsyncuntuk mencadangkan hanya file di partisi ke partisi lain. Atau taruntuk membuat arsip terkompresi yang berisi semua file.

Keduanya mungkin memiliki (beberapa) GUI, tetapi saya sendiri belum pernah menggunakannya.

Pelle
sumber
0

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.

virt-sparsify /dev/your-block-device backup.img

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.

sourcejedi
sumber
Saya menemukan metode virt-sparsify memang mengurangi ukuran file .img tetapi membutuhkan direktori / tmp yang sangat besar, kira-kira sama dengan ukuran partisi yang dicitrakan. Itu memberi pesan peringatan tetapi ketika saya mencoba opsi --tmp yang ditunjukkan di atas (bervariasi untuk setup saya) itu memberi saya> opsi tidak diketahui `--tmp 'Saya tidak yakin sekarang bagaimana cara mengalihkan / tmp output di tempat lain dan saran apa pun tentang hal itu akan membantu saya dan bagi pembaca masa depan dari posting ini.
PhilJ
Tentukan virt-sparsify --version? Opsi ini didokumentasikan pada milikku ( man virt-sparsify) ... Aku tidak bisa bersumpah aku telah menggunakannya, tapi setidaknya saat /tmpini tmpfsku. Jika Anda dapat menggunakannya --in-place, sepertinya itu akan menghindari penyimpanan sementara. Akhirnya Anda sebaiknya mencoba TMPDIR=/var/tmp virt-sparsify .... Dokumen untuk versi saya mengatakan bahwa Anda harus mengatur dir tmp untuk versi sebelum 1.28.
sourcejedi