朋友送了一个固态硬盘给我,因此将原机械硬盘上的系统迁移到固态硬盘上。

原机械硬盘(dev/sdb)装有win10和ubuntu双系统。分区情况如下:

sda1:ESP分区

sda2:资料

sda3:资料

sda4:swap分区,被我干掉了,内存8g,基本上用不上。也可以使用swap文件代替swap分区。

sda5:ubuntu的/分区

sda6:ubunt的/home分区

【记录下删除swap分区的过程】
.先查看swap分区
swapon -s
.停用swap分区
#确保swap分区没有使用
free -m
#停用swap分区
sudo swapoff /dev/sdb4 (第1步显示的名称)
#检查停用成功
free -m
.删除swap分区文件
sudo rm -rf /dev/sdb4
这样就成功删除了swap分区。
.在/etc/fstab中删除或注释swap行 #我把swap分区删除后,空间合并到了/分区。
因为操作的是/分区,需要在u盘启动盘下执行,使用Gparted工具resize即可。

然后需要对ssd固态硬盘(dev/sda)分区,分区情况如下。记得ssd分区时要4k对齐,选择2048还是4096可以参考这篇文章:固态硬盘分区4k对齐是2048还是4096?该选哪个有区别吗?

sda1:ESP分区

sda2:用于win10系统

sda3:win10自动创建的恢复分区(以前没有的,可能是使用易升升级时自动创建的),无需手动创建。

sda4:用于ubuntu的/分区

sda5:用于ubunt的/home分区

然后,win10直接用ghost备份恢复,再进pe修复下引导就搞定了。记录手动恢复引导的命令:

# 用DG等工具先将ESP分区装载为K盘,从系统盘C:\Windows目录中复制UEFI格式的启动文件到ESP分区中,修复系统。
bcdboot c:\windows /s k: /l zh-cn /f uefi

ubuntu的备份恢复花费了大量时间,主要是刷教程做准备工作。网上的方法差不多两种,一种是使用dd命令直接拷贝分区,另一种是使用tar命令压缩备份系统文件。我使用的是后者,需要在live usb环境下进行,也就是使用u盘ubuntu启动盘。主要参考了这篇教程:Ubuntu系统备份

备份前准备

1.备份前先清理系统,减小备份文件的大小(可选)

首先进行系统的清理

# 清理旧版本的软件缓存
sudo apt-get autoclean # 清理所有软件缓存
sudo apt-get clean # 删除系统不再使用的孤立软件
sudo apt-get autoremove

删除老旧的系统内核

可以参考这篇文章:如何删除 Ubuntu 上不再使用的旧内核。删除完后,记得使用sudo update-grub更新一下。

2.插入u盘启动,进入Live USB界面,点击试用ubuntu,进入桌面后,获取root权限

sudo su

备份

3.备份/分区和/home分区

cd /
#挂载/分区
sudo mkdir src-root
sudo mount /dev/sdb5 /src-root #挂载/home分区
sudo mkdir src-home
sudo mount /dev/sdb6 /src-home #挂载放/文件的分区(ssd的/分区)
sudo mkdir des-root
sudo mount dev/sda4 /des-root #挂载放/home文件的分区(ssd的/home分区)
sudo mkdir des-home
sudo mount dev/sda5 /des-home #备份/分区文件。 注意:因为是live USB环境,直接用/表示USB ubuntu的/,所以不能直接用/。由于已经cd到了要备份的ubuntu的/目录下了,所以直接用./
sudo su
cd /src-root
tar cvpzf /des-root/backup.tgz --exclude=./proc --exclude=./lost+found --exclude=./mnt --exclude=./media --exclude=./sys --exclude=./run --exclude=./tmp --exclude=./home ./ #备份/home分区文件
sudo su
cd /src-home
tar cvpzf /des-home/home_backup.tgz ./

-c: 新建一个备份文档
-v: 显示详细信息
-p: 保存权限,并应用到所有文件
-z: 用gzip压缩备份文档,减小空间
-f: 指定压缩包名称(带路径),只能做最后一个参数

--exclude: 排除指定目录,不进行备份
  --exclude=/proc          一个虚拟文件系统,系统运行的每一个进程都会自动在这个目录下面创建一个进程目录。既然是系统自动创建,也就没必要备份。
  --exclude=/lost+found      系统发生错误时(比如非法关机),可以在这里找回一些丢失文件。
  --exclude=/mnt
  --exclude=/media     多媒体挂载点,如u盘、移动硬盘、windons分区等都会自动挂载到这个目录下。
  --exclude=/sys
  --exclude=/run    系统从启动以来产生的一些信息文件。
  --exclude=/tmp   临时文件目录 
  --exclude=/home

另外要注意的是:我是划分了/和/home的,所以备份/时会排除掉/home,之后单独备份/home。如果没有划分单独的/home,则不要排除/home。

还原

4.进行还原操作

# 解压/备份文件
cd /des-root
tar -xvpzf backup.tgz
# 解压/home备份文件
cd /des-home
tar -xvpzf home_backup.tgz # 创建前面备份时忽略的文件夹
cd /src-rootmkdir proc
mkdir media
mkdir mnt
mkdir tmp
mkdir sys
mkdir run

5.修复引导。我是直接重建引导。

参考EFI+GPT模式下修复GRUB2双系统引导-修订版,一种是用efibootmgr,另一种是grub-install,我用的后一种方法。

sudo su
mount /dev/sda4 /mnt (/dev/sda4:为/ 分区)
mount /dev/sda1 /mnt/boot/efi (/dev/sda1:为/efi分区)
mount -t proc proc /mnt/proc
mount -t sysfs sys /mnt/sys
mount -o bind /dev /mnt/dev
mount -t devpts pts /mnt/dev/pts/
chroot /mnt
grub-install /dev/sda1
update-grub2

6.重启,然后修改/etc/fstab文件,主要修改UUID。

7.最后,记得删除备份文件,减少磁盘空间占用。

将ubuntu系统迁移到ssd固态的更多相关文章

  1. 如何把win10系统迁移到SSD固态硬盘

    https://jingyan.baidu.com/article/5d368d1ec59ac43f60c05733.html 我之前将两个盘都已经固定在笔记本内,迁移完之后无论怎么改还是从原来的机械 ...

  2. 【转】如何使用分区助手完美迁移系统到SSD固态硬盘?

    自从SSD固态硬盘出世以来,一直都被持续关注着,SSD的性能优势让无数用户起了将操作系统迁移到SSD的心思,直接后果就是让无数机械硬盘为止黯然退场,很多软件都可以做到系统迁移,然而,被完美迁移的系统却 ...

  3. 戴尔笔记本Inspiron 7560(灵越) 加装固态硬盘从选购固态硬盘到系统迁移到设置SSD为第一启动(受不了了,网上的教程就没有完整的)

    菜鸡我的笔记本为戴尔灵越Inpsiron 7560,其实Inspiron 15 7560 和Inspiron 7560是同一个型号. 电脑拆了安过内存条,换过电池,现在又加了一块固态硬盘. 因为不想安 ...

  4. 光驱SSD安装Win7+ubuntu系统双系统

    准备条件: U盘,32GB,三星品牌 SSD,120GB,三星品牌 win7旗舰版,Ghost系统(安装简单嘛),Ylmf_Ghost_Win7_SP1_x64_2016_1011.iso ubunt ...

  5. 联想拯救者15-isk安装固态硬盘与系统迁移教程

    一.固态选择 首先知道拯救者15-ISK是m.2接口2280尺寸,支持PCIE协议NVMe接口标准.我加装的固态是HP EX900系列250G M.2 NVMe固态硬盘. 二.开盖安装 1.拯救者15 ...

  6. 基于SSD固态硬盘的数据库性能优化

    基于SSD固态硬盘的数据库性能优化 2010-11-08 00:0051cto佚名   关键字:固态硬盘 数据库管理 SSD 企业软件热点文章 Java内存结构与模型结构分析 Oracle触发器的语法 ...

  7. SSD固态硬盘使用注意事项

    SSD固态硬盘的结构和运行方式不同于传统硬盘,在购买以后强烈建议进行一些设置以达到最优的运行效能,延长SSD的使用寿命.以下第一部分是一些可以在网上找到的关于SSD硬盘相关的注意事项,已经介绍很多,这 ...

  8. 笔记本光驱位置装SSD固态硬盘(亲自试验)

    我的笔记本买的早了,2010年的联想Z460,速度有点慢,本来想换台电脑,想想还是算了,没有太大必要.固态硬盘便宜了,于是在原来的光驱位置装了一个256G的SSD固态硬盘,现在的性能能达到刚买来时的1 ...

  9. SSD 固态硬盘,Trim指令 ,查看状态、开启、关闭

    一说到SSD 固态硬盘,经常会看到Trim指令这个名词,那什么是Trim?   Trim是什么? 为了解决硬盘降速的问题,微软联合各大SSD厂商开发了一个新技术——Trim.Trim指令也叫disab ...

随机推荐

  1. 转载:mybatis中<![CDATA[]]>的作用

    作者:QH_JAVA 来源:CSDN 原文:https://blog.csdn.net/qh_java/article/details/50755655?utm_source=copy 在使用myba ...

  2. SpringBoot系列:五、SpringBoot使用Actuator

    Actuator为springboot提供了运行状态监控的功能 通过集成它我们可以试试获取到应用程序的运行信息 首先,在pom.xml中引入起步依赖 <dependency> <gr ...

  3. 再谈 COW、ROW 快照技术

    目录 目录 前言 快照与备份的区别 快照技术 增量快照之 COW 增量快照之 row 前言 在经过了一段时间的实践之后,再次回顾 COW/ROW 快照技术的实现原理,温故而知新. 快照与备份的区别 传 ...

  4. python nginx+uwsgi+WSGI 处理请求详解

    https://blog.csdn.net/a519640026/article/details/76157976 请求从 Nginx 到 uwsgi 到 django 交互概览 作为python w ...

  5. 20191105 《Spring5高级编程》笔记-第12章

    第12章 使用Spring远程处理 12.4 在Spring中使用JMS 使用面向消息的中间件(通常成为MQ服务器)是另一种支持应用程序间通信的流行方法.消息队列(MQ)服务器的主要优点在于为应用程序 ...

  6. Ubuntu操作系统的总结操作

    一.Ubuntu系统环境变量 Ubuntu Linux系统环境变量配置文件分为两种:系统级文件和用户级文件 1.系统级文件: /etc/profile:在登录时,操作系统定制用户环境时使用的第一个文件 ...

  7. static定义属性

    static关键字在Java程序开发过程中主要进行属性和方法的定义. static 定义属性: 类中的最主要的组成就是属性和方法,那么在说static之前,先看看一下问题: 范例:定义一个描述球的信息 ...

  8. oracle--高级使用(merge)(递归START WITH)分析函数over

    1.俩种表复制语句 SELECT INTO和INSERT INTO SELECT两种表复制语句 CT: create table <new table> as select * from ...

  9. 多线程02-Join

        ; i < ; i++)             {                 Console.WriteLine(i);             }             Co ...

  10. Java-第N篇推荐的一些学习书籍

    1.推荐的一些学习书籍或者需要掌握的基本知识 book | |---ant | |---maven | |---git(菜鸟教程) | |---Dos shell | |---linux常用的命令.l ...