Ubuntu-迁移22.04从机械盘到固态盘

使用dd迁移22.04到新硬盘

  • 一、概述
  • 二、详细过程
    • [1. 拷贝数据](#1. 拷贝数据)
    • [2. 更新硬盘信息](#2. 更新硬盘信息)
    • [3. 修改Grub 引导](#3. 修改Grub 引导)
    • [4. 参考链接](#4. 参考链接)

一、概述

Ubuntu:22.04

记录一下把机械硬盘中的Ubuntu移动到新的固态硬盘中,原机械硬盘大小是1T,目标固态硬盘为1T。

之前的Ubuntu安装的是全盘安装模式。

二、详细过程

Linux 一切皆文件, 所以拷贝系统其实就是拷贝文件!

机械盘: /dev/sda

固态盘:/dev/sdb

1. 拷贝数据

我使用dd 命令来进行字节级别的迁移,我的原根目录所在的分区是 /dev/sda,新固态盘是 /dev/sdb。

命令如下

bash 复制代码
dd if=/dev/sda of=/dev/sdb

因为dd命令没有展示中间过程,因此在另外一个终端,使用另一条命令来输出当前进度:

具体想了解下面命令含义的,可以参考 Linux-查看dd命令进度

bash 复制代码
sudo watch -n 5 pkill -USR1 ^dd$

看机械盘的性能,我的1T基本上拷贝了 9 小时,速度从 60/Mb/s 掉到了 30 Mb/s 。还是比较慢

2. 更新硬盘信息

  1. 先卸载挂载
bash 复制代码
umount /dev/sdb1 
  1. 修复磁盘
    e2fsck命令用于检查使用 Linux ext2 档案系统的 partition 是否正常工作
bash 复制代码
e2fsck -f /dev/sdb1
  1. 调整ext2\ext3\ext4文件系统的大小
bash 复制代码
resize2fs /dev/sdb1

3. 修改Grub 引导

先安装 boot-repair 工具

bash 复制代码
sudo add-apt-repository ppa:yannubuntu/boot-repair
sudo apt install boot-repair

启动工具

bash 复制代码
boot-repair

在高级选项中,手动指定新的引导盘,然后按提示修复引导即可,

因为此时我只用固态盘,所以这个Grub其实可以不用改也能用,dd 复制的引导数据和原来的机械盘数据一致,可以无缝使用。

到这里,因为我以后只会在固态盘上开发,所以我就移除掉了机械硬盘,重启之后会和源系统一模一样了。

4. 参考链接

我参考了以下的博客,在我自己电脑上更换盘成功了。

https://juejin.cn/post/6952523655838433311
https://blog.csdn.net/faker1234546/article/details/129821343

相关推荐
哈哈浩丶6 分钟前
存储相关知识②—eMMC协议
linux·驱动开发·emmc
geshifei7 分钟前
Sched_ext 回调深度解析(一):init_task —— 每个任务走进调度器的第一道门(6.18.26)
linux·ebpf
没文化的阿浩20 分钟前
【Linux系统】Ext系列文件系统
linux·运维·电脑
红茶要加冰25 分钟前
九、文本处理三剑客——sed
linux·运维·服务器·正则表达式·shell
落羽的落羽30 分钟前
【项目】C++从零实现JsonRpc框架——项目引入
linux·服务器·开发语言·c++·人工智能·算法·机器学习
菜_小_白40 分钟前
tcpdump
linux·网络·测试工具·http·tcpdump
zzzsde1 小时前
【Linux】线程概念与控制(3):线程ID&&C++封装线程
linux·运维·服务器·开发语言·算法
yqcoder1 小时前
TypeScript 进阶:如何精准获取对象的所有 Key?
javascript·ubuntu·typescript
消失的旧时光-19431 小时前
C 语言如何实现“面向对象”?—— 从 struct + 函数指针,到 Linux 内核设计思想
linux·c语言·开发语言
不做无法实现的梦~1 小时前
Linux 新手到日常运维操作指南
linux·运维·服务器