Bagaimana cara mengkloning ke harddisk yang lebih kecil?


42

Cara mengkloning harddisk ke yang berukuran lebih kecil.

  1. Clonezilla memang hebat tetapi tidak mendukung fungsi seperti itu.
  2. Juga dddan PartImage tidak mendukung permintaan ini.
  3. rsync tidak akan menyalin MBR karena MBR bukan file.

Saya perlu mengkloning HDD untuk tidak mengambil cadangan, jadi rsyncbukan jawaban yang dapat diterima.

Ada saran?


2
Hanya satu pertanyaan, mengapa harus kloning? Jika ini untuk UUID, apakah Anda keberatan menyusutkan sistem file sebelum melakukan copy dd? Jika Anda tidak keberatan menyusut, maka jalankan resize2fs untuk menurunkan filesystem ke tempat yang lebih kecil dari disk target, dan kemudian salin. Di sisi lain jalankan resize2fs lagi untuk membuka dan mengisi disk baru.
darkdragn

Jawaban:


36

Anda jelas tidak dapat mengkloning partisi yang lebih besar ke partisi yang lebih kecil (menggunakan dddan sejenisnya) karena tidak ada cukup ruang.

Namun, jika file yang ada di partisi yang lebih besar juga cocok dengan partisi yang lebih kecil, Anda bisa menggunakannya rsyncuntuk menyalin file-file itu. Opsi yang tepat untuk digunakan tergantung pada kasus penggunaan khusus Anda, tetapi untuk hanya menyalin semua file berikut ini harus dilakukan:

rsync -av /mount/point/of/large/partition/ /mount/point/of/small/partition

Sunting: Sekali lagi: Anda tidak dapat mengkloning partisi yang lebih besar ke partisi yang lebih kecil . (Tapi baca terus, masalah Anda belum bisa diselesaikan.)

Alasannya sederhana: partisi sumber Anda lebih besar dari partisi target Anda. Apa yang kamu harapkan? Haruskah beberapa blok dijatuhkan? Yang mana Dan bagaimana seharusnya ddtahu? Tentu saja, Anda bisa menggunakan dd's bs=dan count=pilihan untuk hanya menyalin pertama begitu-dan-begitu-banyak blok dari partisi sumber Anda sehingga cocok ke partisi target Anda, tetapi Anda akan berakhir dengan partisi rusak. Itu tentu bukan yang Anda inginkan.

Jadi, karena Anda tidak dapat mengkloning partisi yang lebih besar ke partisi yang lebih kecil, satu-satunya hal yang dapat Anda lakukan adalah pertama - tama mengurangi ukuran partisi sumber Anda ke ukuran yang lebih kecil atau sama dengan partisi target Anda dengan sesuatu seperti gpartedyang menyadari spesifik filesystem, sehingga Anda tidak kehilangan data. Dan hanya itu yang bisa Anda gunakan dduntuk mengkloning partisi. Idealnya, ukuran baru partisi sumber Anda harus sama dengan ukuran partisi target Anda (dan tidak hanya lebih kecil atau sama ), atau Anda akan berakhir dengan ruang yang tidak terisi pada partisi target Anda setelah kloning.

Harap perhatikan juga bahwa Anda tidak boleh hanya menyalin MBR drive yang lebih besar ke MBR drive yang lebih kecil (atau sebaliknya, dalam hal ini). MBR, yang memiliki ukuran 512 byte dan merupakan bagian pertama dari hard drive Anda, berisi informasi tentang tata letak harddisk:

  • 446 byte - Bootstrap.
  • 64 bytes - Tabel partisi.
  • 2 byte - Tanda tangan.

(Catat itu 446+64+2=512.)

Jika Anda bersikeras untuk mengkloning MBR, maka hanya mengklon 446 byte pertama seperti:

dd if=/dev/source of=/tmp/mbr.bak bs=512 count=1
dd if=/tmp/mbr.bak of=/dev/target bs=446 count=1

... mengganti /dev/sourcedan /dev/targetdengan nama-nama perangkat dari sumber dan target harddrives, misalnya, /dev/sdadan /dev/sdbmasing-masing. ( Informasi lebih lanjut tersedia di sini. )

Namun, cara yang tepat untuk melakukannya adalah dengan melakukan instal ulang Grub yang bersih (atau apa pun yang Anda miliki di MBR Anda) pada harddisk baru.

Ringkasnya, jika Anda ingin mengkloning drive yang lebih besar ke drive yang lebih kecil, lanjutkan sebagai berikut:

  1. Letakkan tabel partisi pada drive target dengan sebanyak mungkin partisi pada drive sumber. Seharusnya ada korespondensi satu-ke-satu antara partisi pada drive sumber Anda dan partisi pada drive target Anda, kecuali bahwa (beberapa) partisi pada drive target bisa lebih kecil daripada partisi yang sesuai pada drive sumber. Gunakan alat seperti fdiskatau cfdiskuntuk itu.

  2. Untuk setiap partisi pada drive target yang lebih kecil dari partisi yang sesuai pada drive sumber, kurangi ukuran partisi yang sesuai pada drive sumber agar sesuai dengan ukuran partisi pada drive target. Gunakan alat seperti itu gparteduntuk itu.

  3. Untuk setiap partisi di drive sumber, jalankan perintah

    dd if=/dev/sdaX of=/dev/sdbY
    

    ... untuk mengkloning partisi /dev/sdaXdari drive sumber ke partisi yang sesuai /dev/sdbYpada drive target (tentu saja ganti nama perangkat dengan tepat.)

  4. Jika Anda bersikeras juga kloning MBR, gunakan dua ddperintah yang ditulis lebih jauh di atas dalam posting ini (yang dengan /tmp/mbr.bakbarang - barang). Namun, perlu diingat bahwa menginstal ulang Grub yang bersih akan lebih baik.


2
rsync tidak akan menyalin MBR karena MBR bukan file sehingga rsync bukan untuk kloning. Saya perlu mengkloning harddisk, bukan membuat cadangan;)
Maythux

2
Ya, rsyncmemang bukan untuk kloning. Itulah tepatnya yang saya katakan - baca posting saya dengan seksama. ;) Saya mengedit posting saya untuk menjelaskan bagaimana Anda dapat mengkloning semua partisi, serta MBR. Semoga ini lebih dekat dengan yang Anda inginkan.
Malte Skoruppa

1
Bagaimana seseorang melakukan instalasi Grub yang bersih?
Ken Sharp

1
@KenSharp Lihat di sini, misalnya: help.ubuntu.com/community/Grub2/Instaling
Malte Skoruppa

1
@gerrit Menggunakan parted/ gparteduntuk langkah 1 baik-baik saja. Seperti yang sering terjadi, ada banyak cara untuk mencapai tujuan. fdiskSaya cfdisklebih banyak alat "dasar", dan dalam uraian di atas saya hanya mencoba merujuk ke alat paling dasar yang akan melakukan pekerjaan.
Malte Skoruppa

14

Kloning yang tepat tidak dimungkinkan karena Malte Skoruppa sudah diposting. Namun clonezilla dapat melakukan tugas ini selama disk yang lebih besar tidak penuh (Malte sudah menyebutkan ini).

Pada dasarnya Anda perlu mengaktifkan opsi lanjutan dan "mengabaikan" pesan peringatan tentang disk yang lebih kecil. Lihat dokumen Clonezilla untuk detail dengan tangkapan layar. Saya memiliki masalah yang sama ketika mengembalikan cadangan HDD 160GB ke SSD 64GB. Bagi saya ini bekerja dengan baik.

Solusi lain yang seharusnya hasil yang Anda inginkan adalah mengembalikan ke disk ukuran yang sama dan partisi ulang agar sesuai dengan skema partisi baru ke disk yang lebih kecil. Lihat jsm-techblog.blogspot.de untuk detail bagaimana melakukan ini.


@DennisNolte Opsi lanjutan mana yang harus diaktifkan di Clonezilla? Membaca dokumen saya kira -k1yang akan membuat tabel partisi secara proporsional di disk target dan mengaktifkan opsi -runtuk mengubah ukuran sistem file file di partisi secara otomatis. Apakah ini benar?
Pro Backup

Saya tidak 100% yakin lagi, tetapi itu akan menjadi opsi yang akan saya coba jika melakukan hal yang sama lagi, ya. Namun saya memang perlu 2 atau 3 mencoba sampai bekerja dengan benar, dan sayangnya saya tidak ingat langkah mana yang saya ambil, selain menggunakan opsi advance.
Dennis Nolte

Saya tidak bisa mendapatkan ini berfungsi menggunakan k1opsi namun -icdsopsi bekerja untuk saya. Saya akan mengirim jawaban dengan lebih detail.
bbodenmiller

Saya telah menambahkan detail tentang bagaimana saya membuatnya bekerja di askubuntu.com/a/504778/310789 .
bbodenmiller

Clonezilla dapat melakukan ini melalui disk ke salinan disk, tetapi hanya dalam mode Pakar (parameter -icds). @ProBackup sadar menggunakan -k1, dalam kasus saya ini menghasilkan segfault (Clonezilla Live 20160627). Sebagai gantinya, gunakan Gparted sebelum (dan setelah) klon untuk meninggalkan (dan merebut kembali) ruang yang tidak terisi sebanyak yang diperlukan dan kemudian klon melewatkan pemeriksaan ruang disk (-icd). Saya mendaftarkan langkah - langkah untuk melakukan klon ke disk yang lebih kecil di sini (lewati bagian Win7 tentang MBR jika Anda hanya memiliki Linux).
chirale

7

Gparted harus melakukan pekerjaan itu

  1. Setelah mengubah ukuran dengan gparted, boot dari drive untuk memberikan OS kesempatan untuk memperbaiki kesalahan sebelum pencitraan dengan Clonezilla.

  2. Kemudian jalankan Clonezilla dan buat salinan partisi hard disk yang dibutuhkan

Opsi lain yang saya temukan bagus untuk saya: MondoRescure

Mondo Rescue adalah solusi pemulihan bencana GPL.

Ini mendukung kaset, disk, jaringan dan CD / DVD sebagai media cadangan, beberapa sistem file, LVM, perangkat lunak dan perangkat keras Raid.

Panduan sederhana dapat ditemukan di sini

Saya akan memposting beberapa tangkapan layar:

LANGKAH 1 CADANGAN (SCREENSHOT PARTISI)

1. Pilih dari daftar jenis media cadangan yang didukung.

masukkan deskripsi gambar di sini

2.Jika Anda mencadangkan ke CD / DVD- + R [W] maka Mondo akan menanyakan apakah pembakar CD Anda memiliki teknologi BurnProof, ada di dalam laptop, atau eksentrik. Jika Anda mencadangkan ke pita streamer maka Anda tidak akan melihat pesan ini

3. Berapa banyak kompresi yang Anda inginkan? Tidak ada, jika pita streamer Anda memiliki kompresi perangkat keras bawaan. Maksimal, jika CPU Anda sangat cepat. Rata-rata seharusnya baik-baik saja untuk sebagian besar situasi.

masukkan deskripsi gambar di sini

4.Jika Anda ingin membuat cadangan seluruh komputer (tidak termasuk / sys, / run dan / proc, secara alami dan / tmp) maka biarkan ini sebagai / yang merupakan default. Jika tidak, tentukan himpunan bagian, (misalnya / usr / local | / home) yang memastikan untuk memasang pipa di antara setiap jalur.

masukkan deskripsi gambar di sini

5.Jika Anda membuat cadangan seluruh komputer Anda, maka Anda mungkin ingin mengecualikan direktori tertentu, misalnya / shared / MP3. Silakan tentukan di kotak dialog 'kecualikan direktori'. Silakan letakkan pipa di antara setiap jalur, misalnya / shared / private | / scratch | / nfs | / windows

masukkan deskripsi gambar di sini

6. Apakah kernel waras Anda waras? Pengguna Red Hat, Mandrake, SuSE, Debian dan Slackware secara umum harus mengatakan 'ya' karena vendor ini pandai memproduksi kernel yang andal. Jika Anda menggunakan Gentoo atau LFS maka kernel Anda mungkin tidak standar, dalam hal ini katakan 'tidak' untuk menggunakan kernel Mondo yang gagal (disediakan secara terpisah).

masukkan deskripsi gambar di sini

7.Jika Anda ingin memverifikasi arsip setelah menulisnya ke media, katakan 'ya' di sini. Jika Anda memiliki keyakinan mutlak pada perangkat keras dan distribusi Linux Anda, katakan 'tidak' ... dan sedikit doa.

masukkan deskripsi gambar di sini

8.Jika Anda yakin ingin melanjutkan, katakan 'ya' dan cari hal lain untuk dilakukan saat Mondo mencadangkan komputer Anda. Jika Anda mengatakan 'tidak' maka Anda akan langsung dibuang di shell prompt. :-)

masukkan deskripsi gambar di sini

9. Proses pencadangan sekarang akan dimulai. Ada beberapa tugas pra-pencadangan yang harus dilakukan terlebih dahulu tetapi pencadangan pada dasarnya sedang berlangsung. Untuk menyederhanakan proses pencadangan, Anda ditanya serangkaian pertanyaan. Lain kali, jika Anda suka, Anda bisa memanggil mondoarchive dengan berbagai saklar baris perintah untuk mengontrol perilakunya, alih-alih menjawab serangkaian pertanyaan. Lihat halaman manual untuk detailnya.

masukkan deskripsi gambar di sini

10.Mondo akan membuat katalog semua file yang akan didukung. Ini bisa memakan waktu hingga lima menit. Daftar file akan dibagi menjadi set, sekitar 4 MB (sebelum kompresi) file per set. Ini biasanya memakan waktu satu menit.

masukkan deskripsi gambar di sini

11.Mondo memanggil Mindi. Mindi menghasilkan citra media yang dapat di-boot dan citra disk data tambahan yang didasarkan pada distribusi Linux Anda dan sistem file. Dengan begitu, Anda dapat yakin bahwa alat-alat Mondo akan kompatibel dengan sistem file dan binari yang ada: Alat-alat Mondo adalah alat Anda. Mindi membutuhkan waktu hingga lima menit untuk berlari.

masukkan deskripsi gambar di sini

12. Akhirnya, Mondo mulai mencadangkan komputer Anda. Proses ini mungkin memakan waktu beberapa menit atau beberapa jam, tergantung pada seberapa banyak data yang Anda arsipkan, seberapa cepat CPU Anda, berapa banyak RAM yang Anda miliki, dan sebagainya. Ini akan membuat cadangan file biasa Anda dan kemudian file besar Anda (file lebih besar dari sekitar 32MB). Jika Anda telah memilih untuk memverifikasi cadangan Anda, Mondo akan melakukannya juga.

masukkan deskripsi gambar di sini

LANGKAH 2 KEMBALIKAN (CLONE PARTISI)

1. Pilih jenis media cadangan Anda. Proses pemulihan langsung sangat mirip dengan apa yang akan Anda alami jika Anda mengetik mondorestore tanpa parameter setelah boot dari media Mondo.

masukkan deskripsi gambar di sini

2.Tekan 'OK' ketika Anda memasukkan kaset / CD. Jika Anda menghasilkan cadangan tape, rekaman itu sendiri harus cukup. Jika Anda membuat cadangan CD, CD pertama harus cukup. Jika tidak, Anda mungkin memerlukan media boot.

masukkan deskripsi gambar di sini

3. Tandai file dan direktori yang ingin Anda pulihkan. Gunakan tombol 'Lainnya' dan 'Kurang' untuk membuka dan menutup subdirektori.

masukkan deskripsi gambar di sini

4. Tentukan lokasi untuk mengembalikan file. Secara umum, '/' sesuai. Jika Anda tidak ingin menimpa versi lebih baru dari file yang Anda pulihkan kemudian tentukan / tmp / BKP atau serupa dengan jalur pemulihan.

masukkan deskripsi gambar di sini

5.Mondorestore akan mengambil informasi konfigurasi dari media. (Layar sampel untuk pengguna kaset. Pengguna CD akan melihat sesuatu yang berbeda.)

masukkan deskripsi gambar di sini

6. Data akan dikembalikan ke hard disk - pertama file biasa, lalu semua file besar (32MB atau lebih besar) dalam set pemulihan.

masukkan deskripsi gambar di sini


Tampaknya menarik. Saya akan mencoba maka saya akan memberi Anda kembali dengan hasil
Maythux

Umpan balik @ Maythux dengan hasil?
Highmastdon

Anda harus membakar semuanya ke disk terlebih dahulu?
Ken Sharp

Bagi mereka yang suka melompat dan mencoba berbagai hal agar mondo dapat bekerja, Anda harus mengunduh dan menginstal versi terbaru lib-projectbuilder-perl, libmondorescue-perl, mindi-busybox, mindi dan mondo dari MondoRescue tautan di atas dan instal dengan urutan itu untuk menghindari ketergantungan yang tidak terpenuhi. Ada paket deb. Jadi Anda tidak perlu mengkompilasi semuanya dari sumber jika Anda lebih suka tidak.
Penatua Geek

Versi saat ini tampaknya tidak memiliki UI versi (1.5) yang tercantum di sini dan tes mindy gagal untuk boot untuk saya.
Penatua Geek

4

"Pseudo-kloning" dari hard drive yang lebih besar ke yang lebih kecil dapat dilakukan dengan menggunakan Clonezilla. Secara efektif Anda dapat menyimpan dan mengembalikan partisi disk. Langkah-langkah berikut (dikembangkan untuk transfer HDD ke SSD) akan membantu Anda di sana:

  1. Trik pertama adalah menggunakan Gparted untuk mengubah ukuran partisi pada hard drive, menyusutkan setiap partisi untuk mengurangi jumlah ruang yang tidak digunakan di dalamnya. Jelas, partisi harus berukuran sedemikian rupa sehingga ruang total yang diperlukan untuk semua partisi kurang dari kapasitas SSD.

  2. Satu kemudian menjalankan Clonezilla dan membuat salinan dari masing-masing partisi hard disk (menggunakan opsi saveparts), menyimpannya sementara di drive USB eksternal. Perhatikan bahwa perlu untuk menyimpan partisi (saveparts) daripada membuat gambar seluruh disk (salinisk).

  3. Dengan SSD terpasang di mesin target, trik kedua adalah menggunakan manajer partisi sekali lagi untuk membuat struktur partisi yang diinginkan pada SSD.
  4. Clonezilla kemudian digunakan untuk mengembalikan partisi yang disimpan (menggunakan restorepart) ke SSD.

Lihat: "Kloning" hard drive ke SSD yang lebih kecil untuk diskusi lebih lanjut tentang proses dan sejumlah tautan untuk sumber referensi.


3

Karena sebagian besar contoh di atas tampaknya menyarankan untuk benar-benar mengubah ukuran drive asli Anda. Ada risiko data Anda dengan memodifikasi sebelum benar-benar membuat salinan jika itu.

Ada cara lain yang kurang beresiko meski sangat manual yang saya gunakan. Karena ia membiarkan drive sumber tidak tersentuh jika Anda ingin kembali karena sesuatu gagal.

Juga dengan mengkloning / mengubah ukuran Anda tidak dapat beralih ke sistem file yang lebih baru saat pindah ke drive baru saat Anda melakukan swap disk. Dengan prosedur di bawah ini, Anda hanya perlu membuat sistem file pilihan Anda di drive tujuan.

Instal drive tujuan baru di sepanjang drive asli samping ke komputer Anda.

  • boot komputer dari live cd ubuntu.
  • Di drive tujuan. gunakan gparted create: ext4 (atau sistem file cepat baru yang Anda putuskan untuk beralih) (volume, dan volume swap dan swap - filesystem
  • Di gparted atur bootflag pada volume baru

Dalam contoh saya, sumber (drive asli) adalah / dev / sda dan tujuan (drive baru yang lebih kecil) adalah / dev / sdb. Dalam pengaturan Anda mungkin berbeda

mount src sebagai read only di bawah / mnt / source

  • mkdir / mnt / sumber; mount -o ro / dev / sda / mnt / souce

pasang drive tujuan di bawah / mnt / tujuan

  • mount / dev / sdb1 / mnt / tujuan /

salin sistem file src ke sistem file tujuan dengan:

  • rsync -log /mnt/destination/rsync-copy.log --progress -avr --exclude = / mnt / source / dev / -A -H -X --numeric-id / mnt / source / * / mnt / tujuan /

ubuntu menggunakan uuid alih-alih nama perangkat untuk menemukan dan memasang drive karena kami memiliki disk baru, kami ingin mengubah fstab tujuan untuk menggunakan uuid drive baru untuk memasang disk

  • ls -la / dev / disk / by-uuid

    sekarang ganti uuid untuk / dan swap di / mnt / tujuan / etc / fstab. jangan lupa untuk mengubah sistem file untuk titik pemasangan, jika Anda memutuskan untuk mengubahnya ke sesuatu yang berbeda dari drive asli

jika penting bahwa grub adalah versi yang sama, boot kembali disk asli dan jalankan dan jalankan perintah di bawah ini untuk menginstal grub ke drive baru

  • grub-install / dev / dev / sdb

Sekarang hapus drive sumber dari komputer Anda dan boot drive tujuan. grub akan gagal menjalankan boot sepenuhnya dan keluar ke shell pemulihan di shell pemulihan grub:

untuk memuat beberapa modul grub yang diperlukan - insmod ext2 - insmod linux mencantumkan perangkat disk Anda - ls

pilih perangkat yang tepat (dalam contoh saya ini adalah hd0, msdos1)

  • set root = (hd0, msdos1)

temukan nama persis vmlinuz-xxx dan initrd-xxx untuk mengonfigurasi grub untuk digunakan

  • ls / boot /

    lihat dan gunakan nama yang tepat untuk vmlinuz dan initrd yang Anda dapatkan dari ls di atas dan gunakan sebagai ganti versi contoh yang saya gunakan di sini di bawah ini

  • linux /boot/vmlinuz-2.6.32-5-amd64 root = / dev / sda single

    jika / dev / sda adalah perangkat drive akan menjadi disk rootfs lain kali Anda me-reboot mesin> dengan hanya disk dst

  • initrd /boot/initd.img-2.6.32-5-amd64

  • boot

ini seharusnya berhasil mem-boot mesin Akhirnya untuk memperbarui grub untuk menggunakan disk uuid baru sehingga Anda tidak perlu mengulangi prosedur manual ini setiap kali:

  • perbarui-grub

3

Anda dapat mentransfer data ke drive yang lebih kecil menggunakan Clonezilla dan GParted .

Menggunakan CD Live GParted mengecilkan partisi Anda sehingga mereka akan muat di drive baru. Pindahkan partisi Anda sehingga ruang kosong (abu-abu) berada di ujung / kanan drive Anda. Jika sudah ada ruang kosong sebelum partisi pertama Anda biarkan ruang itu karena mungkin berisi boot atau informasi tersembunyi lainnya.

Menggunakan Clonezilla lakukan device-deviceklon. Pilih opsi lanjutan dan aktifkan -icdsopsi untuk melewati pemeriksaan ukuran disk. Lanjutkan dengan klon, lepaskan drive lama, dan coba boot dari drive baru. Jika Anda mendapatkan kesalahan coba -fsck-src-partopsi yang membantu Anda memperbaiki kesalahan pada disk sumber.

Dari dokumen Clonezilla :

Jika Anda yakin semua data dari gambar dapat cocok dengan disk yang lebih kecil, yaitu tidak akan ditulis ke ruang disk yang salah, Anda dapat memeriksa opsi "-icds" .Peringatan! Untuk memilih opsi ini, Anda harus tahu apa yang Anda lakukan !.

Satu FAQ yang saya baca menyarankan untuk menggunakan opsi -icdsdan -k1dengan Clonezilla namun itu tidak berhasil untuk saya. Yang lain telah menyebutkan bahwa Anda dapat menyalin partisi menggunakan GParted namun tidak dapat menyalin semua tipe partisi dan saya tidak bisa membuat mesin saya untuk boot setelah menggunakan metode itu, kemungkinan karena beberapa informasi tersembunyi antara partisi tidak disalin.


1

Mungkin bukan jawaban yang benar untuk pertanyaan itu, tetapi saya tiba di halaman ini mencoba menyelesaikan masalah yang sama:

Saya ingin mengkloning kartu flash kompak 256 MB menjadi kartu 32 MB yang rusak, kartu flash berisi alat Linux kecil yang memproduksi gulungan pegas kecil.

Dipecahkan dengan cara ini:

(Tentu saja, ruang efektif yang digunakan dalam 256Mb adalah <32Mb, jadi sangat cocok)

  1. buat gambar kartu flash 256Mb dengan 'dd' (dengan asumsi kartu terpasang di / dev / sdb):

    dd if=/dev/sdb of=image256.iso
  2. Gunakan unetbootin untuk membaca ISO 'image256.iso' (opsi Diskimage).

  3. Pilih drive USB di mana kartu 32Mb berada dan lanjutkan untuk membuang gambar ke kartu 32Mb.

Itu saja, kartu 32MB berhasil menghidupkan mesin saya lagi.

HTH


0

Anda bisa mencoba membuatnya dalam dua langkah, pertama membuat klon Sistem menjadi Gambar-Jarang (Gambar semakin besar dengan menambahkan lebih banyak barang ke sana) Sekarang kembalikan dari Gambar ini ke disk yang lebih kecil kedua.


0

itu bisa dilakukan .. Dengan live cd tinggal menyusutkan filesystem (resize2fs), daripada lvm (jika ada) dari partisi terakhir (seperti / dev / sdc3) dari disk besar sehingga bisa muat di disk kecil.

Dengan fdisk, hapus dan buat kembali dengan sektor yang lebih kecil, partisi terakhir (/ dev / sda3), sehingga sektor terakhir dari disk besar memiliki nilai yang sama dengan sektor terakhir dari disk kecil.

Daripada melakukan # dd Anda jika = besar = kecil bs = 10 juta sampai kehabisan ruang.

Perhatian ekstra saat menyusut karena satu nilai buruk akan menyebabkan dataloss.


0

Setelah menyusutkan sistem file dalam disk yang lebih besar menggunakan GParted, saya menempatkan dua disk dalam kasus RAID dalam mode mirroring, di mana disk yang lebih besar adalah sumber dan disk yang lebih kecil adalah target. Saya hanya perlu mengklik tombol reset di dalam case (tidak mengubah mode, yaitu Raid 1 ke Raid 0) untuk memulai kloning. Bekerja dengan sempurna! :) Saya menggunakan case RW GW3.5AX2-SU3 / MB.


0

saya memposting pengalaman saya menyusutkan disk boot dengan 250GB (sda) ke disk 120GB (sdc)

sda berisi 2 partisi:

  • sda1 -> / boot (ext3)
  • sda2 -> lvm2: / (245gb) dan swap (5gb)

jadi saya lakukan:

  • dd sda mbr ke sdc
  • fdisk sdc dan tulis perubahannya, sehingga menciptakan struktur dalam sdc
  • dd sda1 ke sdc1

maka karena gparted saya TIDAK bekerja dengan lm:

dari disk penyelamat:

  • umount VG / LV00 pertama
  • e2fsck VG / LV00
  • resize2fs / VG / LV00 xxxxxxxxK (saya memberikan 1GB lebih dari ruang yang digunakan)
  • lvreduce -L xxxxxxxxxK VG / LV00 (saya memberikan 1GB lebih banyak dari ruang fs)
  • pvresize / dev / sda2 --setphysicalvolumesize xxxxxxxxxxxxK (saya memberikan 1 GB lebih dari thre ruang LV) (saya punya KESALAHAN di sini ... jadi:

    • pvs -v --segments / dev / sda2 (untuk melihat segmen)
      • pvmove --alloc di mana saja / dev / sda2: segment_min-segment_max (dari segmen saya melihat "di sebelah kanan" dari disk)

Tapi tetap saja partisi itu besar, karena saya hanya mengecilkan FS-LV-VG, jadi:

saya membuat ulang partisi dengan fdisk:

fdisk /dev/sda 
d --> 2
n --> p --> 2 --> default --> (new reduced
size!!!)
 w

kemudian system prompt bahwa tabel partisi lama digunakan sampai reboot berikutnya. Tetapi saya lupa untuk me-reboot dan melakukan gambar:

dd if = / dev / sda2 dari = / dev / sdc2 bs = 4096 (saat ini saya pikir ada sesuatu yang salah dan saya tidak bisa boot dengan sdc karena tabel partisi tidak mencerminkan akhir dari sda2 baru)

TETAPI semua baik-baik saja dan setelah reboot, dan bahkan sistem memilih partisi sdc untuk boot (ia mengeluh tentang duplikat PV, LV dan / boot)

Saya tidak tahu apakah saya beruntung atau jika saya melakukan langkah-langkah yang tidak perlu ... komentar apa pun akan dihargai.


Apakah ini jawaban atau pertanyaan?
Seth

kedua hal yang saya kira ...
oso_togari

0

Penafian: Saya adalah penulis asli WereSync

Ini dimungkinkan menggunakan WereSync . WereSync mengikuti proses umum jawaban Malte tetapi hanya membutuhkan satu perintah daripada beberapa. Selain itu, jika Anda menggunakan klon Anda sebagai cadangan, itu dapat secara bertahap memperbarui cadangan itu, karena mempekerjakan rsync di backend.

Untuk menginstal WereSync gunakan pip:

pip install weresync

Dari sana Anda cukup menggunakan perintah WereSync

 weresync -C -g 2 -E 1 /dev/sda /dev/sdb

Perintah di atas menyalin data dari / dev / sda ke / dev / sdb. The -Ctanda bendera yang WereSync harus memeriksa apakah partisi pada dua drive yang setara, dan jika mereka tidak WereSync harus menyalin partisi dari / dev / sda ke / dev / sdb dan mengubah ukuran mereka sehingga mereka cocok. UUID partisi baru akan berbeda. Sistem yang digunakan untuk menguji apakah partisi-partisi itu valid bisa jadi rumit, jadi setelah cadangan pertama Anda, saya sarankan menghilangkan tanda ini.

The -gdan -Eperintah dapat dihilangkan, tetapi instalasi boot loader hampir pasti akan gagal dalam kasus itu.

-g merujuk ke "partisi grub", atau partisi grub harus diinstal. Umumnya ini adalah partisi yang dipasang di /. Jadi jika Anda telah menginstal / dev / sda2 di /, Anda meneruskan -g 2ke WereSync, seperti dalam contoh di atas. Jika ini dihilangkan, WereSync akan mencoba dan menemukan partisi yang tepat sendiri, tetapi ini rawan kesalahan. Saya sarankan hanya melewati bendera.

-Emerujuk ke partisi EFI. Jika partisi EFI Anda di / dev / sda1, berikan -E 1ke WereSync seperti pada perintah di atas.

Jika Anda memiliki partisi terpisah untuk folder / boot, Anda perlu memberi tahu WereSync juga. Jika Anda memilikinya di / dev / sda3, maka -B 3kirimkan ke WereSync.

Informasi yang lebih terperinci tentang kemungkinan flag untuk perintah ini dapat ditemukan pada Dokumentasi Perintah WereSync .


Bisakah Anda menambahkan livecd?
Tal

0

Saya sampai pada masalah ini karena Win 10 pembaruan ke 1607 akan rusak setelah reboot, yang disebabkan oleh NVMe (Samsung 950 Pro) saya tidak dikenali, jadi saya mengkloning NVMe ke drive internal lain (yang lebih besar) (dalam kasus saya "Toshiba") , memperbarui Win 10 dan mengembalikan sistem ke NVMe.

Berikut adalah langkah-langkah yang perlu saya lakukan untuk mencapainya (karena restorepart dengan -icdstidak bekerja).

Alat:

  • Windows 10 1607 DVD (kedalaman bit dan bahasa tergantung pada OS Anda saat ini)
  • Clonezilla Live DVD ( 2.4.5 + )
  • atau Clonezilla Live DVD ( 20160203-xenial + ), karena dapat boot dengan UEFI yang diatur dalam BIOS
  • (opsional) DVD Langsung GParted ( 0.27.0-1 )

Persiapan:

  1. bakar semua alat di CD / DVD
  2. jalankan Clonezilla dan clone (drive ke gambar) NVMe ke gambar (pada drive eksternal misalnya)

catatan:

Jika Anda menggunakan Clonzila dari cabang stabil, Anda harus beralih ke mode boot lama di BIOS untuk dapat boot dari CD. Kalau tidak, jika Anda menggunakan unduhan dari cabang alternatif, itu harus mendukung boot UEFI.

Penolakan:

Ikuti panduan ini dengan tanggung jawab Anda sendiri. Langkah-langkah dan perintah di sini diperiksa dan diperiksa dua kali, tetapi kesalahan ketik dapat menyebabkan Anda kehilangan data atau kegagalan perangkat keras, jadi pertama-tama pelajari apa yang Anda lakukan dan ambil langkah-langkah ini sebagai petunjuk ke arah yang benar.

Prosedur:

  1. jalankan Clonezilla dan clone (drive to drive) NVMe ke Toshiba (dalam kasus saya, drive internal lainnya, yang telah saya bersihkan / cadangkan sebelumnya)
  2. pertama kali sekitar saya pikir saya memiliki beberapa konflik di Windows dengan NVMe masih memiliki info boot Win, jadi kali ini saya segera setelah kloning awal ke Toshiba (jadi, sebelum beralih ke UEFI boot) menghapus semua partisi pada drive NVMe

    ~ menghapus dengan mudah dilakukan di shell Clonezilla dengan:

    sudo su
    dd if=/dev/zero of=/dev/nvme0n1 bs=512 count=1
    

    ~ Atau, boot ke GParted dan lakukan secara visual di sana

  3. (beralih ke boot UEFI di BIOS)

  4. boot (Toshiba akan digunakan)
  5. jalankan Win 10 1607 install DVD dan pilih Install, periksa unduh pembaruan dan pilih Keep apps and data. Itu harus meningkatkan Toshiba ke versi terbaru dari Win 10.
  6. (beralih ke boot Legacy di BIOS) untuk berjaga-jaga, cadangkan Toshiba ke gambar (melalui Clonezilla)
  7. karena menyalin MBR tidak melakukan apa pun untuk saya, GPT penting dalam cerita ini, jadi masukkan shell (Clonezilla) dan salin GPT dari Toshiba ke NVMe dengan

    sudo su
    sgdisk /dev/sda -R /dev/nvme0n1
    sgdisk -G /dev/nvme0n1`
    

    ( penjelasan )

  8. karena Clonezila (bahkan dengan Expert switch -icds) menolak untuk mengembalikan partisi, masukkan lagi shell dan lakukan:

    partprobe #forces kernel to reload partition infos
    fdisk -l #shows all disks info
    dd if=/dev/sda1 of=/dev/nvme0n1p1 bs=64K status=progress
    dd if=/dev/sda2 of=/dev/nvme0n1p2 bs=64K status=progress
    dd if=/dev/sda3 of=/dev/nvme0n1p3 bs=64K status=progress
    ...
    

    ( info lebih lanjut )

  9. Cadangkan Tosiba MBR dan GPT:

    sgdisk --backup=sda.gpt /dev/sda
    
  10. salin cadangan ke tempat yang aman (sehingga kami dapat memulihkannya dan bukan keseluruhan gambar drive yang kami lakukan di langkah 6)

    mkdir /mnt/usb
    (put in usb flash or similar)
    mount /dev/sdb /mnt/usb
    cp sda.gpt /mnt/usb
    umount /dev/sdb`
    
  11. hapus info partisi Toshiba sehingga tidak menyebabkan konflik dengan Windows

    dd if=/dev/zero of=/dev/sda bs=512 count=1
    
  12. (beralih ke boot UEFI di BIOS) boot dari DVD Windows 10 (1607), pilih Perbaikan> Pemecahan Masalah> Command prompt dan jalankan semua ini:

    bootrec /fixboot
    bootrec /scanos
    bootrec /fixmbr
    bootrec /rebuildbcd
    exit
    

    ( info lebih lanjut )

  13. reboot ke Windows 1607 pada disk NVMe Anda

  14. Menang!
  15. (inisialisasi ulang Toshiba dalam Manajemen Disk)
  16. (opsional) cadangkan disk NVMe yang diperbarui (clone to image with Clonezilla)
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.