Memindahkan seluruh instalasi Linux ke drive lain

55

Saya memiliki Ubuntu 14,04 dengan banyak paket dan hal-hal terkait pekerjaan yang saya sangat senang dengannya. Itu diinstal pada drive SSD utama saya yang merupakan 120GB (saya telah memilih "/" ketika saya menginstal ubuntu, jadi saya percaya semuanya harus ada di drive ini). Itu muncul sebagai / dev / sda

Sekarang saya telah menambahkan SSD lain ke komputer saya yang merupakan 240Gb. Saya tidak memiliki media penyimpanan lain saat ini (mis. Hard drive eksternal).

Karena drive 240GB baru jelas memiliki kapasitas lebih besar dan lebih cepat (generasi yang lebih baru daripada 120GB saya), saya ingin memindahkan Linux saya ke drive baru ini. Drive baru ini muncul sebagai / dev / sdb dan saat ini belum diformat atau apa pun (saya benar-benar membuka paket dan memasukkannya ke PC saya sekarang: P)

Bagaimana saya bisa memindahkan instalasi linux saya dengan aman ke drive baru?

Saya dapat mengubah kabel SATA sehingga drive baru ditampilkan sebagai / dev / sda jika perlu.

Ini adalah output dari "fdisk -l" jika itu membantu:

Disk /dev/sda: 120.0 GB, 120034123776 bytes
255 heads, 63 sectors/track, 14593 cylinders, total 234441648 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00076d7a

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048   226064383   113031168   83  Linux
/dev/sda2       226066430   234440703     4187137    5  Extended
Partition 2 does not start on physical sector boundary.
/dev/sda5       226066432   234440703     4187136   82  Linux swap / Solaris

Disk /dev/sdb: 240.1 GB, 240057409536 bytes
255 heads, 63 sectors/track, 29185 cylinders, total 468862128 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000

Disk /dev/sdb doesn't contain a valid partition table
Saeid87
sumber
4
Sepertinya Anda berencana untuk menggunakan keduanya sekarang. Jika demikian, Anda harus mempertimbangkan hanya menggunakan yang lebih baru, lebih besar /homedaripada seluruh sistem. Ini harus menjadi perubahan yang lebih mudah (cukup pindahkan semuanya dan tambahkan satu baris ke / etcs / fstab), dan sebagian besar file besar kemungkinan masuk ke direktori home Anda (dan seterusnya ke disk yang lebih besar).
Kevin
Kemungkinan rangkap dari Bagaimana memindahkan Ubuntu ke SSD
David Foerster

Jawaban:

35

Anda dapat menggunakan CLONEZILLA untuk tujuan ini.

Clonezilla adalah alat partisi dan disk imaging / kloning gratis yang dapat digunakan untuk mencadangkan semua data Anda (seluruh disk atau partisi) dengan cara yang sangat terkompresi dan kemudian mengklonnya kembali ke hard disk Anda untuk membuatnya dalam kondisi yang sama persis. Ini lebih cepat daripada menginstal OS sebagian besar kali.

masukkan deskripsi gambar di sini

Dalam kasus Anda, Anda dapat menggunakan opsi "perangkat-perangkat" juga, tetapi saya tidak terbiasa dengannya.

Anda dapat menemukan panduan terperinci tentang Clonezilla di sini: http://clonezilla.org

Severus Tux
sumber
1
Saya sarankan Anda menonton dua video tutorial ini sebelumnya: youtube.com/watch?v=41tTudaQb0I dan youtube.com/watch?v=LS6VhLDw-io
Severus Tux
1
Ini juga pilihan yang bagus. Tapi saya terlalu malas untuk membuat tongkat
clonezilla
Saya menemukan clonezilla tidak menyalin lebih dari mbr sehingga seluruh gambar disk dan sedikit bekerja dengan gparted harus melakukan trik
adampski
1
Wow! senang mendengar ini ;-), Waktu boot, Ini karena perubahan UUID, yaitu, UUID baru dan yang lama dari partisi penting Anda (rumah, Swap) telah ditutup. Untuk memperbaikinya, silakan ikuti instruksi yang diberikan di sini dengan perubahan yang sesuai : askubuntu.com/a/737340/497359 Jika Anda menemukan masalah, silakan komentar itu.
Severus Tux
1
@adampski: Ini sepertinya bug di Clonezilla 2.4.5. Sebagai solusinya, Anda dapat menggunakan Clonezilla 2.4.2 atau Clonezilla 2.4.2 Server Edition (DRBL) hingga diperbaiki. :)
cl-netbox
41

Itu bisa dilakukan dengan beberapa cara. Tetapi yang termudah adalah hanya menyalin semua file dari drive lama ke yang baru.

  1. Buat partisi ext4 dan partisi swap pada drive baru.

  2. Boot dari LiveUSB.

  3. Pasang partisi Ubuntu lama ke beberapa direktori, pasang yang baru ke beberapa direktori lain.

  4. Salin semua file dari yang lama ke yang baru menggunakan cp -aperintah.

  5. Instal grub ke drive baru .

  6. Perbarui /etc/fstabdengan UUID baru.

Jika ada sesuatu yang tidak jelas, saya dapat menambahkan beberapa penjelasan.

Pilot6
sumber
1
+1 - Anda juga dapat menghindari boot dari LiveUSB dan melakukan segalanya saat boot dari drive asli, lakukan semua perubahan, reboot, voila.
Sergey
1
@ Étienne: Jangan menyalin direktori-direktori itu (juga /dev), cukup buat direktori kosong pada drive tujuan dan tetapkan pemilik / izin yang sama seperti pada drive sumber.
Sergey
10
Saya akhirnya menggunakan: sudo rsync -a / /mnt/linux/ --exclude sys --exclude proc --exclude dev --exclude tmp --exclude media --exclude mnt --exclude run then sudo mkdir sys proc dev tmp media mnt run
Étienne
1
@ Étienne bisakah Anda mengedit --exclude-comment Anda? Jika Anda melakukannya seperti yang Anda tulis, / var / tmp dikecualikan juga (menurut saya), setelah klon ini dilewatkan oleh systemd-resolved.service yang mengakibatkan resolusi nama tidak berfungsi ... Saya pikir seharusnya menjadi --exclude / tmp --exclude / proc dll. Terima kasih
swe
1
@saya tidak boleh menyimpan komentar, lebih baik usulkan edit ke jawaban aslinya.
Étienne
21

Jika Anda punya waktu dan ingin aman:

$ dd if=/dev/sda of=/dev/sdb bs=64K conv=noerror,sync

Penjelasan perintah:

  • ifadalah input, oftujuan
  • bsmengatur ukuran blok. Ini ukuran potongan yang akan dibaca dan dituliskan. Ukuran chunk yang lebih tinggi biasanya berarti kinerja yang lebih tinggi tetapi juga lebih banyak korupsi data jika disk input memiliki kesalahan, lihat di sini: archwiki pada dd
  • noerror terus dalam r / w-kesalahan.
  • sync menyinkronkan offset jika terjadi kesalahan.

Ini pada dasarnya akan membuat gambar sda disk Anda dan menuliskannya ke sdb (tata letak partisi yang sama, dll.) Tentu saja ini akan menulis seluruh 120GB seperti file agnostik. Jadi sangat aman, tetapi bukan yang tercepat, jika Anda hanya menggunakan sebagian kecil dari disk. Namun jika disk input agak penuh bahkan mungkin lebih cepat.

TAPI:

  • Setelah itu, Anda mungkin ingin mengubah ukuran partisi karena jika tidak, Anda tidak dapat memanfaatkan ruang ekstra.
  • Bagaimanapun, mungkin diperlukan untuk mengedit file / etc / fstab.
    Ini adalah kasus jika Hardware-ID digunakan untuk mengenali disk.
Larkey
sumber
2
ddPerintah Anda akan berjalan selamanya. Pertimbangkan bs=1Muntuk menambahkannya
Dmitry Grigoryev
Afaik blocksize tidak perlu 1M pada SSD, tetapi saya akan melihat ini dan memperbarui
larkey
Batasannya bukan pada teknologi SSD, tetapi dalam bsnilai standar yaitu 512 byte.
Dmitry Grigoryev
1
jawaban diperpanjang dengan bs, terima kasih untuk kepala
larkey
1
Terima kasih atas jawaban terinci ... Saya belajar beberapa hal! tapi saya memutuskan untuk pergi dengan clonezilla dan mengubah ukuran partisi setelahnya.
Saeid87
5

Cara saya melakukannya ketika saya beralih ke HDD baru adalah:

  • buat tata letak partisi yang saya inginkan di drive baru
  • boot dari Live CD / USB atau instal, selamatkan dll.
  • pasang partisi hard disk lama yang akan disalin ke, katakanlah, /mnt/a
  • pasang partisi hard disk baru untuk menerima file, misalnya /mnt/b
  • cp -aatau gunakan tar untuk menyalin file dari /mnt/ake/mnt/b
  • instal boot loader (lilo atau grub) pada disk baru ¹
  • perbarui /etc/fstab(Anda mungkin ingin menggunakan blkiduntuk mengidentifikasi UUID baru)
  • reboot dan uji apakah semuanya baik-baik saja

Catatan¹:

Periksa semua Hard disk dan Partisi menggunakan perintah berikut:

sudo fdisk -l 

Sekarang catat partisi tersebut, tempat Ubuntu diinstal yang akan terlihat seperti: /dev/sda1

Pasang partisi tempat Anda perlu menginstal GRUB 2 (Partisi hard disk) dan sistem file muncul di Nautilus. Sekarang kita harus memasang partisi Hard disk yang benar untuk membuat perubahan ke MBR Hard Disk yang sebenarnya. Untuk itu kita perlu:

sudo mount /dev/sda1 /mnt
mount

Sekarang pasang partisi ke lokasi alternatif

sudo mount /dev/sda1 /mnt/boot

Buat tautan yang tidak bisa dipecahkan dari /devfolder pada gambar langsung yang Anda boot dari ke /devfolder di partisi yang Anda mount/mnt

sudo mount --bind /dev /mnt/dev/

Sekarang kita harus mengubah root dari live CD root (/) ke root partisi yang dipasang

sudo chroot /mnt

Sekarang Anda berada di shell root baru, di mana partisi yang dipasang adalah root baru. Anda dapat memverifikasi pengetikan ini ls. Karena kita berada di partisi yang terpasang sekarang, kita dapat melanjutkan dan menginstal GRUB 2:

sudo grub-install /dev/sda 

Instalasi harus selesai sekarang, tanpa kesalahan

Keluar dari shell CHROOT Anda, dengan mengetik exitatau menekan Ctrl+ D yang membawa Anda kembali ke Live CD / USB Shell

Lepas partisi yang telah kita pasang sebelumnya untuk melakukan reboot bersih:

sudo umount /mnt/dev
sudo umount /mnt/boot
sudo umount /mnt

dan reboot setelah menghapus Live CD atau USB Stick untuk boot dari Hard Disk:

sudo reboot

Sumber

delt
sumber
@ baobab33: Anda boleh menyalin petunjuk tempel ke sini ke situs ini dan kemudian atribut. Anda tidak diizinkan untuk hanya menautkan ke sumber eksternal. Harap perbarui sumber dengan koreksi di atas.
Fabby
4

Tidak seperti jawaban lain, ini memungkinkan Anda untuk mengkloning instalasi Linux dan menambahkannya ke menu Grub dengan instalasi Anda saat ini utuh. Selain itu secara otomatis memodifikasi /etc/fstabuntuk Anda dan memperbarui grubmenu boot.

Menu disediakan untuk membantu Anda memilih partisi yang tepat untuk dikloning. Klon dari partisi adalah partisi yang Anda boot saat ini.

rsyncdigunakan untuk kecepatan optimal jika Anda memilih untuk menutup kembali partisi. Ini bermanfaat jika pemutakhiran gagal, Anda menunggu untuk perbaikan bug dan ingin menjalankan pemutakhiran lagi. Demikian pula Anda mungkin telah memilih opsi yang salah selama peningkatan dan ingin melakukannya lagi.

Skrip lengkap dapat ditemukan di sini: Skrip Bash untuk mengkloning Ubuntu ke partisi baru untuk menguji peningkatan 18,04 LTS dan seperti inilah tampilan layarnya:

clone-ubuntu.png

WinEunuuchs2Unix
sumber
0

Saya memutuskan untuk melakukan percobaan terkait posting ini.

Saya membeli Lenovo ThinkCentre. Itu memiliki 256 GB SSD dan 1 TB HDD (tipe pemintal - cepat, tetapi tidak secepat SSD).

Ketika saya menginstal Linux Mint 19.2 (LM19.2), itu menginstalnya pada drive 1 TB. SSD akhirnya tidak dapat dipulihkan, dan saya membeli SSD Kingston 240 GB yang baru.

Saya hendak menginstal LM19.2 ke SSD baru, tetapi tampaknya harus ada cara untuk mentransfer gambar LM19.2 saya yang berkembang dengan baik dari drive 1 TB ke SSD baru.

Saya menemukan posting ini, dan sementara ada beberapa saran yang kuat di atas, saya berada dalam mode untuk bereksperimen. Di bawah ini adalah laporan tentang apa yang saya lakukan, dan itu SANGAT berhasil.

  1. Saya menggunakan GParted untuk membuat tabel partisi dan partisi pada SSD yang jenisnya sama dengan yang ada di HDD 1 TB.
  2. Saya melakukan snapshot TimeShift (alat baru di Ubuntu / Linux Mint) dari SEMUA yang ada pada HDD LM19.2 1 TB.
  3. Saya mengembalikan snapshot itu ke SSD.
  4. Setelah langkah-langkah di atas selesai (Anda bahkan dapat melakukan 1 secara paralel dengan 2 dan 3), saya reboot, memastikan bahwa ia akan memilih SSD.
  5. Satu-satunya hal yang aneh selama reboot adalah layar grub INITIAL bertanya apakah saya ingin boot ke Ubuntu. Saya berasumsi ini khusus untuk pemulihan TimeShift, dan memang begitu.
  6. Startup selanjutnya boot seperti LM19.2 biasanya.
  7. Saya akan mengedit jawaban ini setelah saya memverifikasi bahwa saya dapat melakukan ini dengan drive baru yang menggantung PC secara eksternal (dan tampaknya ini akan berhasil), karena ini berarti saya dapat dengan cepat mereplikasi salah satu mesin LM saya ke perangkat keras baru.

Kecepatan booting sendiri membuat langkah-langkah sederhana ini sepadan dengan usaha. Bahkan Dropbox ditransfer dengan baik - itu hanya ingin saya login lagi, dan butuh waktu penuh untuk mengindeks file, tetapi itu bekerja dengan baik.

Thom Ives
sumber