Migrating your system disk to an SSD

Hardware

The mode of the SATA controller in the BIOS should be set to AHCI, not IDE; otherwise, Windows will use the wrong driver and you will have to go to the registry to fix the problem.

Also, your system should use a SATA III controller. Its predecessor, SATA II, handles only 300MBps, which is too slow for your SSD. Unfortunately, you might have to live with that speed if you have an on-board controller in a laptop.

The next step is partitioning. The best tool for partitioning is good old fdisk and a pocket calculator, because you will need to specify size and boundaries of the partitions in terms of sector numbers. Table 1 shows an example partition table.

Table 1

Partitioning an SSD

Device

Boot

Start

End

Blocks

ID

System

/dev/sda1

*

4096

3074047

1536000

7

HPFS/NTFS/exFAT

/dev/sda2

 

3076096

212789247

104857600

7

HPFS/NTFS/exFAT

/dev/sda3

 

213098496

240361471

13631488

7

HPFS/NTFS/exFAT

/dev/sda4

 

240361472

781422767

270530648

5

Extended

/dev/sda5

 

240365568

252948479

6291456

82

Linux Swap/Solaris

/dev/sda6

 

252948480

781422767

264236120

83

Linux

Partitioning

The start sector for each partition should be divisible by 4,096 without a remainder  – for instance: 3,076,096/4,096  = 751. Note that if your partitions are organized in 4KB blocks and the start sectors fall at 4KB boundaries, you will end up with a small (4095-byte) gap between the end of one partition and the start of the next one. This gap is not a problem.

Copying

The next step is to copy the original disk. It is better to start by copying to an external disk, rather than copying directly to the SSD. If you copy to an external disk, any problems you have later will only affect the backup copy and won't trash the original source disk. The tool of choice is rsync. Rsync needs a lot of command-line switches to preserve the access rights, time stamps, and other settings. Table 2 lists all the necessary options.

Table 2

Rsync Parameters

Option

Meaning

d

Transfer directories

g

Preserve group

l

Copy symlinks as symlinks

o

Preserve owner

p

Preserve permissions

r

Recurse into directories

s

No space-splitting

t

Preserve modification times

v

Verbose

A

Preserve ACLs

H

Preserve hard links

X

Preserve extended attributes

It is a good idea to boot from a rescue CD or USB stick before you start the copy process; otherwise, you have to exclude the mountpoint of the target disk (or you will end up in an endless loop). Furthermore, you need to exclude /proc, or virtual files like /proc/kcore will turn into giant physical files. The command

$ rsync -rvlpogdstHEAX /original /copy

initiates the copy process.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

  • Clonezilla

    Clonezilla Live backs up and clones complete partitions or hard disks. The popular live system comes with an easy-to-use interface.

  • Disk Partitioning

    Partitioning prepares your disk to receive an operating system. We help you navigate this unfamiliar landscape safely.

  • Mondo and Mindi

    Mondo shows that backups don’t need to be time consuming or difficult. This amazingly simple tool backs up complete hard disks or individual directories.

  • Data Rescue

    Armed with just standard Linux tools, users can recover files, resurrect partitions, and rescue damaged media.

  • Professor Knopper's Lab – Hybrid Image Mode

    As DVD drives disappear from modern notebook computers, Knoppix offers a hybrid image mode that works for both DVDs and flash drives.

comments powered by Disqus
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters

Support Our Work

Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.

Learn More

News