Linux如何给根目录扩容内存
第一种:LVM分区格式,就是用系统默认的自动分区格式
1.添加一块20G大小的nvme硬盘

2.启动后,查看硬盘是否已经被系统识别

3.对/dev/nvme0n2进行分区,并设置分区属性
fdisk /dev/nvme0n2
# 然后输入
n
p
enter
enter
enter
t
L
8e
w
# t:修改分区文件系统id,选择8e,与原有分区属性一致(lvm)
# L:列举出所有Hex代码



3.让系统识别新增分区,然后创建物理卷
# 输入partprobe让系统识别新增的分区
partprobe
# 创建物理卷
pvcreate /dev/vdc1
# 如果没有上述命令就需要安装这个软件包
dnf -y install lvm2
# 查看
pvdisplay


4.扩展卷组,扩展根分区
如果不知道系统自动给你分配的卷组的名称是什么,可以通过以下命令查看
vgdisplay | grep -w "VG Name" | awk '{print $3}'
# vgdisplay命令,会列出系统中存在的所有卷组的详细信息,grep -w "VG Name"是在输出信息中过滤出名为 “VG Name” 的行,awk '{print $3}'则是只打印该行的第三个单词,即卷组的名称。
vgextend rl /dev/nvme0n2p1
# 这个命令的作用是将一个物理卷(Physical Volume,PV)/dev/nvme0n2p1扩展到一个名为rl的卷组(Volume Group,VG)中
lvresize -L +19.90G /dev/rl/root
# 这个命令的作用是将名为/dev/rl/root的逻辑卷的大小增加 19.90 GB。该命令会把逻辑卷的大小调整为原来的大小加上指定的大小,因此这个卷会变得更大。
# 此命令通过 -L 参数指定要增加的大小,+19.90G 表示要增加的大小为 19.90 GB。如果要缩小逻辑卷的大小,可以省略 + 号,例如 -L 10G 表示将逻辑卷调整为 10 GB。
# /dev/rl/root指的是名为 rl 的卷组中的逻辑卷 root 指定这个逻辑卷是因为系统中可能有多个逻辑卷,我们需要指定要调整哪一个, root 这个逻辑卷通常是操作系统根目录(/)所在的逻辑卷,所以就给根目录扩容了20G
xfs_growfs /dev/rl/root
# 这个命令的作用是将文件系统大小扩展到逻辑卷 /dev/rl/root 的大小。
# 在 Linux 系统中,逻辑卷是通过管理物理卷来分配的。逻辑卷中的文件系统可以在线扩容,即在不影响正在运行的系统的情况下增加文件系统的大小。逻辑卷的大小被扩展后,文件系统并没有跟着扩展,需要使用 xfs_growfs 命令单独对文件系统进行扩展。
# xfs_growfs 命令用于扩展 XFS 文件系统的大小到逻辑卷的大小,即文件系统和逻辑卷大小保持一致。执行这个命令时,需要保证文件系统是挂载的状态,否则命令会执行失败。在这个命令中,/dev/rl/root 指定了要操作的逻辑卷的名称。

5.查看硬盘大小

第二种,标准分区格式,及自定义的分区
标准分区(Standard Partition)是硬盘分区的一种类型,也称作基本分区(Primary Partition)。

1.添加一块40G大小的nvme硬盘

2.确认硬盘被识别,调整分区大小,初始化
# 该命令比lsblk查看到的硬盘信息更详细
fdisk -l
fdisk /dev/nvme0n2
# 然后输入
n
p
enter
enter
enter
w
mkfs.ext4 /dev/nvme0n2p1



3.确认创建完毕后,新建挂载点,并使用 blkid 命令找到新创建分区的 UUID。
# 创建一个名为新分区的目录作为挂载点
mkdir /mnt/new_partition
# 查找创建的分区的UUID
blkid /dev/nvme0n2p1

4.将分区挂载到挂载点,使用rsync 命令将原本的根目录下的所有数据复制到新的分区下。
mount /dev/nvme0n2p1 /mnt/new_partition
dnf -y install rsync
rsync -avx / /mnt/new_partition
# 上述命令中,-a 参数表示以递归方式同步文件夹,并保留完整的文件属性。-v 参数表示通过标准输出显示执行过程中的详细信息,-x 表示排除挂载点 /mnt/new_partition 的同步
5.复制完成后,需要在根目录下创建一个old文件夹(名字自定义),并将原来的根(/)目录挂载到old文件夹
mkdir /old
mount --bind / /old
6.将/mnt/new_partition挂载到根目录下
mount --bind /mnt/new_partition/ /
7.最后在/etc/fstab文件中写入内容,开机自动挂载
vim /etc/fstab
/dev/nvme0n2p1 /mnt/new_partition ext4 defaults 0 0
这种方法只能帮你在你根目录容量不够的情况下,迁移到一块大一点的硬盘上,虽然也能起到扩容的作用,但是还是建议使用LVM,方便快捷,而且,生产环境中也不会让你所有东西都放在根目录下,你只要加上一块硬盘,格式化后,随便挂载一个目录就能使用了,到时,要存的东西扔在挂载目录下就行。


Linux如何给根目录扩容内存的更多相关文章
- Linux磁盘LVM根目录扩容
LVM 的基本概念 物理卷 Physical Volume (PV):可以在上面建立卷组的媒介,可以是硬盘分区,也可以是硬盘本身或者回环文件(loopback file).物理卷包括一个特殊的 hea ...
- Centos7 LVM管理的逻辑卷根目录扩容和/var目录扩容
Centos7 LVM管理的逻辑卷根目录扩容 fdisk /dev/sdb #对新加磁盘进行分区操作pvcreate /dev/sdb1 #创建一个物理卷vgs #查看现有的卷组vgextend ce ...
- linux下对进程按照内存使用情况进行排序
linux下对进程按照内存使用情况进行排序的命令为:ps aux --sort -rss 详细解说参见 http://alvinalexander.com/linux/unix-linux-proce ...
- 浅析Linux下进程间通信:共享内存
浅析Linux下进程间通信:共享内存 共享内存允许两个或多个进程共享一给定的存储区.因为数据不需要在客户进程和服务器进程之间复制,所以它是最快的一种IPC.使用共享内存要注意的是,多个进程之间对一给定 ...
- 在 linux x86-32 模式下分析内存映射流程
前言 虚拟内存机制已经成为了现代操作系统所不可缺少的一部分, 不仅可以为每个程序提供独立的地址空间保证安全性,更可以通过和磁盘的内存交换来提高内存的使用效率.虚拟内存管理作为linux 上的重要组成部 ...
- Linux Kernel 释放后重用内存损坏漏洞
漏洞名称: Linux Kernel 释放后重用内存损坏漏洞 CNNVD编号: CNNVD-201307-305 发布时间: 2013-07-18 更新时间: 2013-07-18 危害等级: ...
- 编程获取linux的CPU使用的内存使用情况
Linux可用下top.ps命令检查当前的cpu.mem用法.下面简单的例子: 一.采用ps查看资源消耗的过程 ps -aux 当您查看进程信息,第三列是CPU入住. [root@localhost ...
- Linux 上 C 程序的内存布局
在仔细研究这个问题之前,我认为 C 程序在内存中只有代码段,堆和栈三部分构成.前几天面试被问到了这个问题,才发现自己的印象是不完全的. 在本文中通过解析析一个 C 程序中变量和函数的地址来分析 C 程 ...
- Ubuntu系统分配存储空间的建议以及给Ubuntu系统根目录扩容方法(从20GB追加100GB)
当初准备装双系统时,也思考了很久分配多少空间给Ubuntu16.04系统,查了许多资料,大多意思是‘/’目录总共给20GB,其他的给/home.网上资料推荐的大多跟这篇文章一样:https://blo ...
- linux下的CPU、内存、IO、网络的压力测试
linux下的CPU.内存.IO.网络的压力测试 要远程测试其实很简单了,把结果放到一个微服务里直接在web里查看就可以了,或者同步到其他服务器上 一.对CPU进行简单测试: 1.通过bc命令计算特 ...
随机推荐
- python之基本类型
1 *********************************pyhton基本数据类型***************** 2 数字 int 3 ******************* 4 - ...
- [AGC030C] Coloring Torus
非常巧妙的一道构造题,发现对于所构造的 \(n\) 有上限,那么对于 \(K<=500\) 的情况,很好构造,每行全是一个数就行了,对于 \(K>500\) 的情况,显然每行都是 \(1, ...
- 在win10上安装MTK驱动(附驱动下载链接)
参考:https://www.cnblogs.com/keepgoing707/p/4926171.html 背景 在调试MTK平台MT67XX的时候,发现安装preloader驱动装不上. 第三方i ...
- AT_joisc2019_j 题解
先考虑这个式子: \[\sum_{j=1}^{M} |C_{k_{j}} - C_{k_{j+1}}| \] 一定是在 \(C\) 有序时取到,具体证明很简单各位读者自己证明. 那么现在式子变成: \ ...
- manage.py“Couldn't import Django”报错的问题解决
问题分析: 在pyharm中项目可以正常运行但是在终端 终端输入python manage.py runserver首次测试项目时,出现了无法引用Django的错误. Traceback (most ...
- 2. 标签上 title 与 alt 属性的区别是什么?
1. alt 是给搜索引擎识别,在图像无法显示时的替代文本2. title 是关于元素的注释信息,主要是给用户解读.3.当鼠标放到文字或是图片上时有 title 文字显示.(因为 IE 不标准)在 I ...
- 1. 简述一下你对 HTML 语义化的理解?
用正确的标签做正确的事情.1.HTML 语义化让页面的内容结构化,结构更清晰,便于对浏览器.搜索引擎解析; 2.即使在没有样式 CSS 的情况下也能以一种文档格式显示,并且是容易阅读的; 3.搜索引擎 ...
- Python代码学习
1.生成四位数字字母验证码,大小写字母随机 import random if __name__ =="__main__": #四位数字字母验证码的生成 checkcode=&quo ...
- [oeasy]python0089_大型机的衰落_Dec小型机崛起_PDP_VAX网络
编码进化 回忆上次内容 上次 回顾了 计算机存储单位的演变 最小的读写单位 是 bit 8-bit 固定下来 成为了字节(Byte) 位数 容量 8-bit 1Byte 1024Byte 1 KB 1 ...
- PHP 程序员为什么依然是外包公司的香饽饽?
大家好,我是码农先森. PHP 唯一的爽点就是开发起来「哇真快」这刚好和外包公司的需求相契合,在 Web 领域的芒荒年代 PHP 以王者姿态傲视群雄.如果 PHP 敢说第二,就没有哪门子语言敢称第一, ...