【运维】Ubuntu换硬盘扩容

背景

原本的ubuntu状态一张512GB的固态硬盘上,即/目录在该固态上,/opt目录挂在在一张2T固态上,现在希望将2T固态用作系统盘,且保持原有系统设置、安装软件、驱动。

约束

由于这里涉及到硬盘维护,数据无价,谨慎为上,能备份尽可能先对数据进行备份。这里我使用了一张20T的机械硬盘对/opt目录进行迁移。

实际操作

迁移前注意事项

由于ubuntu中很多设置会使用到/opt目录,如docker的containerd目录就在/opt目录下,调整期间还会涉及到重启电脑,所以该调整前,请关闭一些电脑上的服务。只保留该操作本身。

操作

停用docker服务

shell 复制代码
sudo systemctl disable docker

迁移opt数据

由于原本的/opt目录中数据约有1T,机械硬盘的写入速度只有240MB/s,这里需要等待很长时间

shell 复制代码
mv /opt /data/opt_bak

查看硬盘

shell 复制代码
sudo fdisk -l

可以看到如下信息(这里截取需要的部分),实际操作可能根这里有些不同,取决于你实际的硬盘配置,如有的是sata硬盘,显示的盘符为 /dev/sd* 。

txt 复制代码
Disk /dev/nvme1n1: 476.94 GiB, 512110190592 bytes, 1000215216 sectors
Disk model: HS-SSD-C2000Pro 512G
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 23E82A7D-256B-11EF-B2F5-D340623B9724

Disk /dev/nvme0n1: 1.86 TiB, 2048408248320 bytes, 4000797360 sectors
Disk model: Asgard AN4.0 2TNVMe-M.2/80
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 4846C0FB-FF82-4415-9D42-B3D0F97133D3

卸载挂载

这里因为我的2T盘挂载为/opt目录,所以执行操作前需要先卸载/opt

shell 复制代码
umount /opt

格式化新硬盘

shell 复制代码
sudo mkfs.ext4 /dev/nvme0n1

取消自动挂载

通过编辑 fstab 文件中的挂载项,来取消自动挂载(如果设置过,否则略过)

shell 复制代码
sudo vim /etc/fstab

写入原系统数据

shell 复制代码
sudo dd if=/dev/nvme1n1 of=/dev/nvme0n1 bs=16M status=progress

完成上述操作后,就可以重启电脑了,重启之后记得从新的引导中进入系统,但此时我们扩容还未完成,进入系统后,发现当前的硬盘还是之前大小。

使用gparted扩容分区

这个扩容工具很简单,这里只介绍安装

shell 复制代码
sudo apt update
sudo apt install gparted parted
lsblk

恢复opt目录

shell 复制代码
sudo mv /data/opt_bak /opt
相关推荐
IMPYLH2 分钟前
Linux 的 false 命令
linux·运维·服务器·bash
小江的记录本12 分钟前
【Linux】《Linux常用命令汇总表》
linux·运维·服务器·前端·windows·后端·macos
一匹电信狗21 分钟前
【Linux我做主】进程程序替换和exec函数族
linux·运维·服务器·c++·ubuntu·小程序·开源
济61725 分钟前
ARM Linux 驱动开发篇--- Linux 并发与竞争实验(原子操作)--- Ubuntu20.04
linux·嵌入式·嵌入式linux驱动开发
加农炮手Jinx25 分钟前
Flutter 三方库 cli_script 鸿蒙化极简命令行执行引擎适配探索:在多维沙盒终端环境注入异构 Shell 串联逻辑彻底拔高全自动化容器脚本运维及-适配鸿蒙 HarmonyOS ohos
运维·flutter·harmonyos
JoyCong199833 分钟前
纳睿雷达×ToDesk:突破时空限制,远程运维让“中国智造”雷达更高效
运维·科技·电脑·远程操作
RisunJan1 小时前
Linux命令-mysqlimport(为MySQL服务器用命令行方式导入数据)
linux·服务器·mysql
Saniffer_SH1 小时前
【每日一题】一台可编程的PCIe 6.0主机 + 一套自动化CTS验证平台 + 一个轻量级链路分析系统
运维·服务器·测试工具·fpga开发·自动化·计算机外设·硬件架构
吕司1 小时前
Linux线程的概念
linux·运维·服务器
河南博为智能科技有限公司2 小时前
智能变电站辅控系统解决方案!
运维·边缘计算