How do I replace the root drive on Debian? What is a comprehensive set of steps starting from old drive with a new empty drive ready to go to the new drive with a fully bootable install with grub and everything?
closed as too broad by user34720, Jeff Schaller♦, mdpc, derobert, GAD3R Jan 18 '17 at 21:45
Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.
The following makes some assumptions:
- All commands ran as root when possible
- You want an ext4 files system
- You are loosely familiar on a basic level with all commands run
- You are NOT booting from a RAID device
So here we go.
- Physically install new disk into computer and connect to available port leaving old disk in existing position.
- Boot computer into old OS.
- Prepare and mount new disk; first identify new disk
- Partition new disk
Make partition primary partition with type "83" file system type.
- Create filesystem
- Mount new filesystem
mount /dev/(newpartition) /mnt/(newpartitionmountpoint)
- Copy disk:
/sbin/init 1 (drop to single user mode)
rsync -avxHAX / /mnt/(newpartitionmountpoint)
- Update FSTAB on newdisk
blkid (note UUID of new partition)
(editor of choice) /mnt/(newpartitionmountpoint)/etc/fstab
Replace existing UUID of / in FSTAB to new disk UUID
- Configure grub and install to new disk boot loader:
- Copy grub.cfg from old disk to new
cp -ax /boot/grub/grub.cfg /mnt/(newpartitionmountpoint)/boot/grub/grub.cfg
- Open grub.cfg on new disk and replace all UUIDs with new disk
(editor of choice) /mnt/(newpartitionmountpoint)/boot/grub/grub.cfg
Replace all old UUIDs with the UUID of the new disk
- Shut down computer
Physically move the new drive to the 1st drive location and remove old drive
14.Start computer and grub should present:
error: no such device: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
- Manually boot new OS from grub; first identify the drive and partition of the boot files
ls [to identify your drive and partition options]
ls (hdx,p)/ [to identify which partition has the /boot folder]
- Then, you can load the boot menu manually from the drive and partition you found above. Typically this would be (hd0,msdos1).
- Login to OS on new drive
- Configure grub again
fdisk -l (note dev of newdisk)
And that should be it!