• 【运维】Ubuntu换硬盘扩容


    背景

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

    约束

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

    实际操作

    迁移前注意事项

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

    操作

    停用docker服务

    sudo systemctl disable docker
    

    迁移opt数据

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

    mv /opt /data/opt_bak
    

    查看硬盘

    sudo fdisk -l
    

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

    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

    umount /opt
    

    格式化新硬盘

    sudo mkfs.ext4 /dev/nvme0n1
    

    取消自动挂载

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

    sudo vim /etc/fstab
    

    写入原系统数据

    sudo dd if=/dev/nvme1n1 of=/dev/nvme0n1 bs=16M status=progress
    

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

    使用gparted扩容分区

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

    sudo apt update
    sudo apt install gparted parted
    lsblk
    

    恢复opt目录

    sudo mv /data/opt_bak /opt
    
  • 相关阅读:
    1.log4j2 文件名使用不当导致的日志覆盖问题
    如何在 C# 中以编程的方式将 CSV 转为 Excel XLSX 文件
    邮件群发工具哪个好
    Azido-PEG11-amine,1800414-71-4,叠氮-十一聚乙二醇-胺
    在Mac M1笔记本上跑大语言模型llama3的4个步骤?(install、pull、run、ask)
    Java core——注解详解
    一个小型公司人工费用核算winform查询开发(1)
    MySQL的MHA高可用群集
    利用AI快速跨过新手区:用DevChat编写Python程序-CSV导入TDengine
    OpenCV项目开发实战--主成分分析(PCA)的特征脸应用(附C++/Python实现源码)
  • 原文地址:https://blog.csdn.net/qq_20623849/article/details/139610970