windows 和 Linux 系统 从硬盘迁移到SSD
实验室这次搞了几块三星的ssd,型号是:三星(SAMSUNG) 850 EVO 250G SATA3 固态硬盘
三星有个sangsung magician 的软件,可以直接支持系统拷贝,这次就不细说
详见如下链接:
http://ssd.zol.com.cn/418/4186614.html
时隔半年,老板有钱了,又搞了一批,但是似乎软件不能用了,尴尬。
大家装系统一般都会做一个u盘镜像之类的东西吧,简单一说 安装镜像 *.iso ,用镜像工具ultra ISO,写入U盘,那么我们就做成了一个liveCD。
以下工作我们就是在 liveCD中做的。
首先获得liveCD的root 权限
sudo su
中间出了个小插曲,浪费了大好时间
之前写的太粗略了,今天详细写:
2.1 ubuntu分区工具 gparted
一般ubuntu 或者都会自带 gparted 分区工具,gparted 是一个图形化界面工具,
其实跟windows磁盘管理或者disk genius 有些类似,我们可以很灵活的进行分区划分。
划分后会有自己的新的uuid 号,或者称为磁盘号。
我们可以通过命令
sudo blkid #查看分区表
2.2 磁盘文件拷贝
两条路择其一。
2.2.1 操作系统 层 cp命令
我们可以先挂载需要拷贝的磁盘,然后进行拷贝
#新建两个文件夹,名字根据自己习惯命名
sudo mkdir /mnt/sdamnt
sudo mkdir /mnt/sdbmnt
#将需要的磁盘 挂载的临时新建的文件夹
sudo mount /dev/sda1 /mnt/sdamnt
sudo mount /dev/sdb1 /mnt/sdbmnt
#cp 将 文件数据 拷贝到目标文件。
sudo cp -ax /mnt/sdamnt/* /mnt/sdbmnt/*
#需要等待。。。
#-ax 表示所有的文件类型都保持原来的类型不变。
如果多个分区,比如有 / ,/boot, /home 两种思路,
2.2.2 磁盘层 dd
一条命令很简单
#sdb1 源磁盘
#sda1 目标磁盘
dd if=/dev/sdb1 of=/dev/sda1
拷贝时查看速度
watch -n 5 killall -USR1 dd
备注:
注意dd命令也会拷贝uuid过去,意味着,/dev/sda1的uuid和/dev/sdb1的uuid是一样的。
uuid是一个唯一的标识符,因为类似/dev/sda这样的映射点,在新设备加入的时候,可能会生成新的映射点,比如原来系统里是/dev/sda现在变成了/dev/sdb等等,所以一般情况下,在/etc/fstab里写自己规则的时候,都是用uuid而非映射点。
可以不修改新硬盘分区的uuid,也就省去了修改/etc/fstab或者/boot/grub/grub.conf的麻烦。
由于拷贝的原因,之前分区的uuid 也变成现在的uuid 了。不管那种我们的grub 都需要修复
3.grub修复
拷贝的过程简单,但是耗时间很长,一般分区没有什么错误是没问题的,那么经常的大坑一般都在grub这。
如果重启之后无法进入系统,那么我们需要修复grub。
3.1 手动修复/etc/fstab 和 boot/grub/grub.cfg
这种方式适合老手,新手略过,但是作为我来讲有时也不一定能成功。
http://blog.csdn.net/dark5669/article/details/52551583
3.2 使用grub-repair 工具
安装 boot-repair
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt-get update
sudo apt-get install -y boot-repair
同样是图形化界面,但是小坑不少
如果你在命令行中,成功看到grub更新完成,那么这就表示成功了!
重启,bios 设置一下磁盘启动顺序,然后应该就可以进入系统了。
参考文档
1.划好对应分区
https://www.zhihu.com/question/42115108
2.cp 磁盘文件
http://blog.csdn.net/lixiang201101/article/details/36531557
3.Linux系统硬盘迁移
https://www.findhao.net/easycoding/2070