Pindahkan Instalasi ke disk baru

10

Saat ini saya punya satu hd dengan partisi ini:

/dev/sdb1    /
/dev/sdb2    swap
/dev/sdb3    /home

Saya sedang berpikir tentang membeli ssd untuk /partisi saya .

Sekarang pertanyaan saya adalah: Apakah mungkin untuk memindahkan / mengubah konfigurasi saya saat ini ke yang baru (dua disk, / home tersisa)? Lebih disukai dari dalam sistem yang sedang berjalan?

Chris
sumber

Jawaban:

11

Saya merekomendasikan untuk tidak menggunakan dd. Itu hanya melakukan sektor bodoh dengan salinan sektor, yang berarti akan gagal jika partisi tujuan lebih kecil, dan membuang banyak waktu menyalin ruang kosong, dan jika partisi tujuan lebih besar, ruang tambahan tidak akan tersedia sampai Anda menjalankan resize2fsuntuk memperluas sistem file.

Cara terbaik untuk melakukan ini dari CD langsung karena jika Anda menyalin file saat sedang dimodifikasi, Anda akan berakhir dengan hasil yang korup.

Format ssd dan dapatkan partisi ssd baru dan partisi root asli terpasang, kemudian jalankan sudo cp -ax /media/old-partition/* /media/new-partition, di mana partisi-lama dan partisi-baru diganti dengan titik mount yang sebenarnya. Itu akan menyalin setiap file, menjaga kepemilikan, izin, dan cap waktu.

Kemudian jalankan sudo grub-install --root-directory=/media/new-partition /dev/SSD_DEVICE, setelah mengganti nilai yang benar untuk partisi baru dan SSD_DEVICE. Itu akan menginstal grub, membuat disk dapat di-boot.

Setelah Anda reboot (pastikan BIOS Anda dikonfigurasi untuk boot dari SSD bukan drive lama), pastikan bahwa Anda menjalankan dari SSD dan bukan dari drive lama dengan memeriksa output dfdan / atau mount, dan Anda harus bagus untuk menghilangkan partisi lama.

Oh, dan Anda ingin mengedit /etc/fstabfile pada partisi baru setelah menyalin dan memperbarui UUID dari partisi root agar sesuai dengan UUID dari partisi SSD baru, bukan yang lama. Anda dapat menemukan UUID itu dengan menjalankan sudo blkid.

Edit: ditambahkan / * dalam salinan di atas, tetapi perlu mengedit lebih dari 6 karakter. Sekarang 101 karakter!

psusi
sumber
1
Saya menganggap itu berhasil?
Martin Ueding
2
Saya punya masalah menginstal grub menggunakan metode di atas. Akhirnya saya melakukan apa yang disarankan utas ini: askubuntu.com/a/3409/8152 untuk mengatur dan menginstal grub ke disk lain. Sisa jawabannya bekerja dengan baik.
Mladen Jablanović
1

Perintah ini:

dd if=/dev/sdb1 of=DEVICE_PATH_OF_SSD_DRIVE

harus berfungsi untuk mengkloning /partisi ke drive SSD.

EDIT: ini hanya akan berfungsi jika partisi Anda berukuran sama dengan drive. Jika ukurannya tidak sama, Anda bisa menggunakan partimage :

partimage -z0 -d save /dev/sdb1 clone.partimg
partimage restore DEVICE_PATH_OF_SSD_DRIVE clone.partimg
rm clone.partimg

Peringatan untuk metode ini adalah bahwa Anda memerlukan ruang yang cukup pada drive Anda untuk gambar yang berisi semua konten /. Anda akan baik-baik saja jika Anda memiliki> 10GB gratis. Jika tidak, Anda dapat menggunakan -z1alih-alih -z0mengompres gambar. Untuk kompresi yang lebih besar, gunakan -z2. Juga, partimage tidak mendukung sistem file ext4 .

Setelah melakukannya, Anda harus memasang SSD dan memeriksa apakah data Anda telah disalin dengan benar:

$ mkdir /tmp/ssd
$ sudo mount -t ext4 DEVICE_PATH_OF_SSD_DRIVE /tmp/ssd
$ ls /tmp/ssd
bin    dev   initrd.img      lost+found  opt   sbin     sys  var
boot   etc   initrd.img.old  media       proc  selinux  tmp  vmlinuz
cdrom  home  lib             mnt         root  srv      usr  vmlinuz.old

Ganti ext4dengan sistem file yang telah Anda gunakan /.

Anda mungkin perlu menginstal bootloader GRUB di drive ini:

sudo grub-install DEVICE_PATH_OF_SSD_DRIVE

Anda kemudian perlu mengedit /etc/fstabfile Anda untuk mengganti /dev/sdb1dengan jalur perangkat drive SSD Anda di entri yang mount ke /. ( sudo $EDITOR /etc/fstab)

Harap tunggu hingga jawaban ini memiliki beberapa peningkatan sebelum mengikuti petunjuk ini. Saya bukan ahli dalam hal ini jadi saya mungkin melewatkan beberapa informasi penting. Siapa pun yang melihat ada kekurangan dalam hal ini, silakan tambahkan komentar yang menjelaskannya. Anda harus mengambil tindakan pencegahan seperti itu karena jika terjadi kesalahan, itu bisa membuat komputer Anda tidak bisa boot.

dv3500ea
sumber
(-1) Solusi ini lebih berbahaya . Apalagi jika ukuran perangkat tidak cocok.
Raphael Bossek
Ini juga akan menyalin UUID drive sumber jika Anda menggunakan dd.
Michael
0

Baca terlebih dahulu cara bermigrasi, Apakah ada cara mudah untuk mentransfer OS dari satu hard drive ke yang lain? .

Boot dari SSD Anda dan tambahkan baris berikut ke /etc/fstab(itu hanya mengikat):

/media/slowhd/home /home none rw,bind 0 0

Mulai mount -auntuk membuat perubahan aktif.

Tip : Jangan mount /dev/yourhd /homekarena Anda kehilangan fleksibilitas untuk memindahkan direktori lebih lanjut ke hd lama Anda .

Solusi yang lebih teknis adalah dengan menggunakan LVM (manajer volume logis) .

Raphael Bossek
sumber