Linux磁盘扩容并设置挂载点

背景

使用pve创建了一个虚拟机,各种环境配置都安装好了之后发现分配的磁盘空间太小了,默认的就30多个G,这还没咋玩呢就满了,像扩容却找遍了这个pve都没找到扩容按钮,并且我这个磁盘不是lvm结构的,所以好像无法直接扩容根目录。
不信邪的我搜了好多教程方案就像一劳永逸把根目录给直接扩容,在尝试了好几种方法还毁坏了好几个备份的系统清空下还是放弃了,奈何我这半吊子水平搞不了专业运维,磁盘操作风险太大了,并且扩容根目录本来就很麻烦,很容易破坏系统,于是决定改变策略,添加数据盘,创建新的分区,挂载新/路径

前提

系统:Ubuntu 20.04
命令:lsblk 以树状结构展示系统中的块设备信息

从下方输出可以看出,我已经把sda硬盘从128G扩容到了192G,但是多出来的64G是属于空闲空间,并没有利用起来,所以下面想做的就是创建一个新的分区sda3,并且挂载到/var目录下。

ma@cw:~$ 
ma@cw:~$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0    46M  1 loop /snap/snap-store/638
loop1    7:1    0 346.3M  1 loop /snap/gnome-3-38-2004/119
loop2    7:2    0  63.3M  1 loop /snap/core20/1828
loop3    7:3    0     4K  1 loop /snap/bare/5
loop4    7:4    0  91.7M  1 loop /snap/gtk-common-themes/1535
loop5    7:5    0  49.9M  1 loop /snap/snapd/18357
sda      8:0    0   192G  0 disk 
├─sda1   8:1    0   512M  0 part /boot/efi
├─sda2   8:2    0     1K  0 part 
└─sda5   8:5    0 127.5G  0 part /
sr0     11:0    1   4.1G  0 rom  /media/ma/Ubuntu 20.04.6 LTS amd64
ma@cw:~$ 
ma@cw:~$ df -hT
文件系统       类型      容量  已用  可用 已用% 挂载点
udev           devtmpfs  7.8G     0  7.8G    0% /dev
tmpfs          tmpfs     1.6G  1.3M  1.6G    1% /run
/dev/sda5      ext4      125G   10G  109G    9% /
tmpfs          tmpfs     7.9G     0  7.9G    0% /dev/shm
tmpfs          tmpfs     5.0M     0  5.0M    0% /run/lock
tmpfs          tmpfs     7.9G     0  7.9G    0% /sys/fs/cgroup
/dev/loop0     squashfs   46M   46M     0  100% /snap/snap-store/638
/dev/loop1     squashfs  347M  347M     0  100% /snap/gnome-3-38-2004/119
/dev/loop3     squashfs  128K  128K     0  100% /snap/bare/5
/dev/loop2     squashfs   64M   64M     0  100% /snap/core20/1828
/dev/loop4     squashfs   92M   92M     0  100% /snap/gtk-common-themes/1535
/dev/loop5     squashfs   50M   50M     0  100% /snap/snapd/18357
/dev/sda1      vfat      511M  4.0K  511M    1% /boot/efi
tmpfs          tmpfs     1.6G   20K  1.6G    1% /run/user/1000
/dev/sr0       iso9660   4.1G  4.1G     0  100% /media/ma/Ubuntu 20.04.6 LTS amd64
ma@cw:~$ 

详细步骤

让我们一步步进行:

  1. 首先,我们需要创建一个新的分区。我们可以使用 fdisk 命令来完成这项任务。
(base) root@ma:/# fdisk /dev/sda

这将打开一个新的交互式界面,你可以按照提示进行操作。

  1. 在 fdisk 中,按下 n 键来创建一个新分区。
Welcome to fdisk (util-linux 2.36.1).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.Command (m for help): n
  1. 选择分区类型。因为我们想要创建一个 Linux 分区,所以按下 p
Partition typep   primary (0 primary, 0 extended, 4 free)e   extended (container for logical partitions)
Select (default p): p
  1. 选择分区编号。由于 sda1 和 sda5 已经存在,我们需要选择 sda3。
Partition number (1-4, default 1): 3
  1. 接下来,我们需要选择分区的起始和结束位置。按照提示,你可以选择默认的起始和结束位置。
First sector (1050624-167772159, default 1050624): [按回车键]
Last sector, +/-sectors or +/-size{K,M,G,T,P} (1050624-167772159, default 167772159): +32G

这里我们选择了一个 32GB 大小的分区。确保输入后按回车键。

  1. 现在分区已经创建了,我们需要将其格式化为 ext4 文件系统。
Command (m for help): t
Selected partition 3
Hex code (type L to list all codes): 83

这里我们选择了 83 作为分区的文件系统类型,它对应着 Linux ext4 文件系统。

  1. 现在,我们需要将分区标记为已经格式化。
Command (m for help): w
The partition table has been altered.
Syncing disks.

以上7个步骤操作如图所示:
在这里插入图片描述

  1. 分区创建完成。现在我们需要格式化这个新分区。

root@cw:/home/ma# mkfs.ext4 /dev/sda3
mke2fs 1.45.5 (07-Jan-2020)
丢弃设备块: 完成                            
创建含有 8388608 个块(每块 4k)和 2097152 个 inode 的文件系统
文件系统 UUID:b08ae70a-e723-443f-a2ed-e2d961faa56e
超级块的备份存储于下列块: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624正在分配组表: 完成                            
正在写入 inode表: 完成                            
创建日志(65536 个块): 完成
写入超级块和文件系统账户统计信息: 已完成 
  1. 创建一个临时挂载点,用于将原 /var 目录挂载进去。
root@cw:/#  mkdir /mnt/tempvar

将原 /var 目录挂载到临时挂载点上。
为确保安全,我们还是多做一个备份,再挂载

root@cw:/home/ma#  mkdir /var_backup
# 将 /var 目录下的所有内容备份到新创建的临时目录中。
root@cw:/# cp -r /var/* /var_backup/
# 然后再挂载
root@cw:/#  mount --bind /var /mnt/tempvar

现在可以将其挂载到 /var 目录下。

(base) root@ma:/# mount /dev/sda3 /var
  1. 现在,我们可以确认新分区是否已经成功挂载到 /var 目录下。
(base) root@ma:/# df -h

这个命令将列出当前系统中所有的文件系统及其挂载点,你应该能够在输出中看到 /dev/sda3 已经挂载到 /var

  1. 最后,将之前备份的 /var 目录的内容复制回新的挂载点。
(base) root@ma:/# cp -r /var_backup/* /var/
  1. 确认复制是否成功,并删除备份目录。
(base) root@ma:/# ls /var
(base) root@ma:/# rm -r /var_backup

完成!你已经成功地创建了一个 32GB 的分区并将其挂载到 /var 目录下,并且将原来的 /var 目录下的内容迁移到了新的挂载点上。

结果验证

此时在使用df -hT输出验证一下:

root@cw:/mnt/tempvar# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
loop0    7:0    0    46M  1 loop /snap/snap-store/638
loop1    7:1    0 346.3M  1 loop /snap/gnome-3-38-2004/119
loop2    7:2    0  63.3M  1 loop /snap/core20/1828
loop3    7:3    0     4K  1 loop /snap/bare/5
loop4    7:4    0  91.7M  1 loop /snap/gtk-common-themes/1535
loop5    7:5    0  49.9M  1 loop /snap/snapd/18357
sda      8:0    0   192G  0 disk 
├─sda1   8:1    0   512M  0 part /boot/efi
├─sda2   8:2    0     1K  0 part 
├─sda3   8:3    0    32G  0 part /mnt/tempvar
└─sda5   8:5    0 127.5G  0 part /
sr0     11:0    1   4.1G  0 rom  /media/ma/Ubuntu 20.04.6 LTS amd64
root@cw:/mnt/tempvar# 
root@cw:/mnt/tempvar# 
root@cw:/mnt/tempvar# df -hT
文件系统       类型      容量  已用  可用 已用% 挂载点
udev           devtmpfs  7.8G     0  7.8G    0% /dev
tmpfs          tmpfs     1.6G  1.3M  1.6G    1% /run
/dev/sda5      ext4      125G   13G  107G   11% /
tmpfs          tmpfs     7.9G     0  7.9G    0% /dev/shm
tmpfs          tmpfs     5.0M     0  5.0M    0% /run/lock
tmpfs          tmpfs     7.9G     0  7.9G    0% /sys/fs/cgroup
/dev/loop0     squashfs   46M   46M     0  100% /snap/snap-store/638
/dev/loop1     squashfs  347M  347M     0  100% /snap/gnome-3-38-2004/119
/dev/loop3     squashfs  128K  128K     0  100% /snap/bare/5
/dev/loop2     squashfs   64M   64M     0  100% /snap/core20/1828
/dev/loop4     squashfs   92M   92M     0  100% /snap/gtk-common-themes/1535
/dev/loop5     squashfs   50M   50M     0  100% /snap/snapd/18357
/dev/sda1      vfat      511M  4.0K  511M    1% /boot/efi
tmpfs          tmpfs     1.6G   24K  1.6G    1% /run/user/1000
/dev/sr0       iso9660   4.1G  4.1G     0  100% /media/ma/Ubuntu 20.04.6 LTS amd64
/dev/sda3      ext4       32G  2.4G   28G    9% /var
root@cw:/mnt/tempvar# 

可以看到输出/dev/sda3 ext4 32G 2.4G 28G 9% /var,说明/var目录已经变为了32GB,操作成功了。

最后

硬盘操作一定要核准每个步骤什么意思再执行,重要操作前一定要记得做好备份,很容易误操作造成系统崩溃。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/810273.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

工业网络互联互通问题的探讨——青创智通

工业物联网解决方案-工业IOT-青创智通 随着科技的不断发展,工业网络已经成为现代工业生产中不可或缺的一部分。工业网络能够将各个生产设备、传感器、执行器等连接在一起,实现信息的共享和协同工作,从而提高生产效率、降低能耗、提升产品质量…

局域网内部使用的视频会议系统推荐

随着远程办公的普及和全球化的发展趋势,企业需要一个高效、灵活、安全的音视频会议解决方案,以支持远程办公的协同工作、跨地域沟通等需要。私有化音视频会议就是一个适合企业自身部署的解决方案。它不仅能够满足企业信息管理和保密的需求,而…

广告电商模式:购物得积分 看广告还能赚钱!

互联网时代的浪潮中,电子商务与广告行业日新月异,不断碰撞出全新的火花。在这种背景下,广告电商模式作为一种创新的商业模式崭露头角,它以广告与电商的深度融合为核心,通过精准化的营销手段与用户的积极参与&#xff0…

基于SpringBoot+Vue的咖啡商城(带文档)

项目介绍: 基于SpringBootVue的咖啡商城(带文档) 网上咖啡商城系统,咖啡商城系统 前后端分离,Java开发,Vue框架,Redis分布式缓存,MyBatis 运行环境:JDK1.8MySQLMavenRedisNode.js 项…

【灵境矩阵】零代码创建AI智能体之行业词句助手

欢迎来到《小5讲堂》 这是《灵境矩阵》系列文章,每篇文章将以博主理解的角度展开讲解。 温馨提示:博主能力有限,理解水平有限,若有不对之处望指正! 目录 创建智能体选择创建方式零代码 基础配置头像名称简介指令开场白…

鸿蒙内核源码分析 (物理内存篇) | 怎么管理物理内存

如何初始化物理内存? 鸿蒙内核物理内存采用了段页式管理,先看两个主要结构体。结构体的每个成员变量的含义都已经注解出来,请结合源码理解. #define VM_LIST_ORDER_MAX 9 //伙伴算法分组数量,从 2^0,2^1&#…

【vue】ref 和 reactive 对比

ref&#xff1a;存储单个数据&#xff0c;如数值&#xff0c;字符串reactive&#xff1a;存储复杂数据&#xff0c;如对象&#xff0c;数组 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"vie…

创建vue3项目遇到的部分问题及解决方式

export default defineConfig({server: {// https: true,// 启用https协议&#xff0c;默认是HTTP协议host: true, // 监听所有地址port: 1314,// 前端项目启动的端口号open: true,// 开启代理cors: false, // 为开发服务器配置 CORSproxy: {^/api: {target: ,// 服务器地址cha…

(Java)数据结构——图(第七节)Folyd实现多源最短路径

前言 本博客是博主用于复习数据结构以及算法的博客&#xff0c;如果疏忽出现错误&#xff0c;还望各位指正。 Folyd实现原理 中心点的概念 感觉像是充当一个桥梁的作用 还是这个图 我们常在一些讲解视频中看到&#xff0c;就比如dist&#xff08;-1&#xff09;&#xff0…

WooCommerce的使用方式和特点

WooCommerce是一款基于WordPress的开源电子商务插件&#xff0c;它允许用户在WordPress网站上创建和管理在线商店。以下是WooCommerce的一些使用方式和特点。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 1.产品管理&#xff1a;Woo…

bugku-web-file_get_contents

<?php extract($_GET); if (!empty($ac)){$f trim(file_get_contents($fn));if ($ac $f){echo "<p>This is flag:" ." $flag</p>";}else{echo "<p>sorry!</p>";} } ?> 这里涉及到几个不常用的函数 这里直接构…

2024年 Mathorcup高校数学建模竞赛(B题)| 甲骨文识别 | 特征提取,图像分割解析,小鹿学长带队指引全代码文章与思路

我是鹿鹿学长&#xff0c;就读于上海交通大学&#xff0c;截至目前已经帮200人完成了建模与思路的构建的处理了&#xff5e; 本篇文章是鹿鹿学长经过深度思考&#xff0c;独辟蹊径&#xff0c;通过神经网络解决甲骨文识别问题。结合特征提取&#xff0c;图像分割等多元算法&…

关于Ansible的模块 ⑦

转载说明&#xff1a;如果您喜欢这篇文章并打算转载它&#xff0c;请私信作者取得授权。感谢您喜爱本文&#xff0c;请文明转载&#xff0c;谢谢。 在继《关于Ansible的模块 ①》、《关于Ansible的模块 ②》、《关于Ansible的模块 ③》与《关于Ansible的模块 ④》、《关于ansib…

python基础——python包【创建和导入,下载第三方包】

&#x1f4dd;前言&#xff1a; 在上一篇文章python基础——模块中&#xff0c;我们讲解了有关python模块的相关知识&#xff0c;这篇文章我们进一步讲解用于储存多个模块文件的python包&#xff1a; 1&#xff0c;什么是python包 2&#xff0c;如何创建和导入python包 3&#…

选择排序解读

在计算机科学中&#xff0c;排序算法是一种将数据元素按照某种顺序排列的算法。今天&#xff0c;我们要探讨的是选择排序&#xff08;Selection Sort&#xff09;&#xff0c;这是一种简单直观的排序方法&#xff0c;通过不断选择剩余元素中的最小&#xff08;或最大&#xff0…

SpringBoot + Dobbo + nacos

SpringBoot Dobbo nacos 一、nacos https://nacos.io/zh-cn/docs/quick-start.html 1、下载安装包 https://github.com/alibaba/nacos/releases/下载后在主目录下&#xff0c;创建一个logs的文件夹&#xff1a;用来存日志 2、启动nacos 在bin目录下打开cmd运行启动命令&a…

2024年DeFi的四大主导趋势:Restaking、Layer3、AI和DePin

DeFi&#xff08;去中心化金融&#xff09;行业在2024年将继续呈现快速增长的势头&#xff0c;驱动这一增长的主要因素将是四大主导趋势&#xff1a;Restaking、Layer3、AI和DePin。这些趋势将推动DeFi生态系统的发展&#xff0c;为用户提供更多的机会和创新。 趋势1&#xff…

ERA拓展之旅:2024香港Web3峰会聚焦全球Web3发展

2024年香港Web3大型峰会是一次令人难忘的体验。这次峰会吸引了来自世界各地的Web3爱好者和从业者齐聚一堂&#xff0c;共同探讨着Web3的未来发展方向与机遇。在这个热情洋溢的氛围中&#xff0c;展现了对Web3的热情&#xff0c;分享彼此的见解和理念&#xff0c;探讨了未来的行…

性能优化-01

当看到性能指标时&#xff0c;你会首先想到什么呢&#xff1f;我相信 “高并发” 和 “响应快” 一定是最先出现在你脑海里的两个词&#xff0c;而它们也正对应着性能优化的两个核心指标—— “吞吐” 和 “延时” 。这两个指标是从应用负载的视角来考察性能&#xff0c;直接影…

Chatgpt掘金之旅—有爱AI商业实战篇|SEO 咨询业务|(十七)

演示站点&#xff1a; https://ai.uaai.cn 对话模块 官方论坛&#xff1a; www.jingyuai.com 京娱AI 一、AI技术创业在SEO 咨询业务有哪些机会&#xff1f; 人工智能&#xff08;AI&#xff09;技术作为当今科技创新的前沿领域&#xff0c;为创业者提供了广阔的机会和挑战。随…