【openeuler 21.3】Linux硬盘分区、更改/home目录挂载空间及root目录扩容
简介: 公司使用的服务器的硬盘用的是RAID阵列,装openeuler系统时总共划分了两个阵列组。因为系统目前只使用了一个硬盘阵列,现在打算将一个阵列用作系统盘,将系统默认分配给home目录的空间分配给/目录提升/目录空间,另一个阵列全数用作数据盘。操作涉及:硬盘空间划分、文件系统挂载、磁盘扩容以及过程问题解决方案
一、硬盘空间管理
fdisk 磁盘分区相关操作
df 系统分区挂载信息
mount 挂载分区
umount 卸载分区
1.通过命令:lsblk ,查看硬盘和分区
我是将第二个盘作为系统盘,所以需要将系统的/home挂载到第一个硬盘下。(这里是已经挂载好的截图)
2.硬盘进行分区
硬盘分区可以通过命令fdisk和parted,但fdisk不能分区超过2t.
原硬盘分区情况:一个硬盘sda(4.4T),一个硬盘sdb(450G)
fdisk命令创建分区(一)
[root@localhost /]# fdisk /dev/sda欢迎使用 fdisk (util-linux 2.36.1)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。该磁盘的大小为 4.4 TiB (4799827279872 字节)。DOS 分区表不能用于卷容量大于 2199023255040 字节、512 字节扇区的驱动器。请使用 GUID 分区表格式(GPT)。命令(输入 m 获取帮助):pDisk /dev/sda:4.37 TiB,4799827279872 字节,9374662656 个扇区
磁盘型号:MR9460-8i
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 4096 字节
I/O 大小(最小/最佳):262144 字节 / 524288 字节
磁盘标签类型:dos
磁盘标识符:0x68e60bcf命令(输入 m 获取帮助):n
分区类型p 主分区 (0 primary, 0 extended, 4 free)e 扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (1-4, 默认 1): 1
第一个扇区 (2048-4294967295, 默认 2048):
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (2048-4294967295, 默认 4294967295): +3T
值超出范围。
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (2048-4294967295, 默认 4294967295): +1T创建了一个新分区 1,类型为“Linux”,大小为 1 TiB。
分区 #1 包含一个 ext4 签名。您想移除该签名吗?是[Y]/否[N]:N命令(输入 m 获取帮助):pDisk /dev/sda:4.37 TiB,4799827279872 字节,9374662656 个扇区
磁盘型号:MR9460-8i
单元:扇区 / 1 * 512 = 512 字节
扇区大小(逻辑/物理):512 字节 / 4096 字节
I/O 大小(最小/最佳):262144 字节 / 524288 字节
磁盘标签类型:dos
磁盘标识符:0x68e60bcf设备 启动 起点 末尾 扇区 大小 Id 类型
/dev/sda1 2048 2147485695 2147483648 1T 83 Linux命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。
fdisk命令使用介绍:fdisk挂载硬盘,创建新分区,删除分区
parted命令创建分区 (二)
[root@localhost /]# parted /dev/sda
GNU Parted 3.3
使用 /dev/sda
欢迎使用 GNU Parted!输入 'help' 来查看命令列表。
(parted) help align-check TYPE N check partition N for TYPE(min|opt) alignmenthelp [COMMAND] 打印通用求助信息,或 COMMAND 的帮助mklabel,mktable LABEL-TYPE 创建新的磁盘卷标 (分区表)mkpart 分区类型 [文件系统类型] 起始点 结束点 创建一个分区name 编号 名称 将指定“编号”的分区命名为“名称”print [devices|free|list,all|数字] 显示分区表、可用设备、剩余空间、所有分区或特殊分区quit 退出程序rescue 起始点 终止点 挽救临近“起始点”、“终止点”的遗失的分区resizepart NUMBER END 改变 NUMBER 的大小rm NUMBER 删除编号为 NUMBER 的分区select 设备 选择要编辑的设备disk_set 旗标 状态 变更已选设备上的旗标disk_toggle [旗标] 切换已选设备上的旗标状态set 编号 旗标 状态 改变指定“编号”分区的旗标toggle [编号 [旗标]] 切换“编号”分区上的“旗标”状态unit 单位 设置缺省的“单位”version 显示目前 GNU Parted 的版本与版权信息
(parted) print
型号:AVAGO MR9460-8i (scsi)
磁盘 /dev/sda:4800GB
扇区大小 (逻辑/物理):512B/4096B
分区表:msdos
磁盘标志:编号 起始点 结束点 大小 类型 文件系统 标志(parted) mklabel gpt
警告: 现有 /dev/sda 上的磁盘卷标将被销毁,而所有在这个磁盘上的数据将会丢失。您要继续吗?
是/Yes/否/No? yes
(parted) mkpart sda1
文件系统类型? [ext2]? ext3
起始点? 1
结束点? 4T
(parted) print
型号:AVAGO MR9460-8i (scsi)
磁盘 /dev/sda:4800GB
扇区大小 (逻辑/物理):512B/4096B
分区表:gpt
磁盘标志:编号 起始点 结束点 大小 文件系统 名称 标志1 1049kB 4000GB 4000GB ext3 sda1
parted命令使用介绍:parted的详解及常用分区使用方法
3.lvm管理操作硬盘空间
lvm 磁盘管理:(高容量服务器推荐)openeuler 12.3 : 使用LVM管理硬盘__lucky_fd的博客-CSDN博客_lvm查看硬盘
1. 创建物理卷
[root@localhost /]# pvcreate /dev/sda1
WARNING: ext4 signature detected on /dev/sda1 at offset 1080. Wipe it? [y/n]: yWiping ext4 signature on /dev/sda1.Physical volume "/dev/sda1" successfully created.
[root@localhost /]# pvdisplay --- Physical volume ---PV Name /dev/sdb3VG Name openeulerPV Size <445.04 GiB / not usable 2.00 MiBAllocatable yes PE Size 4.00 MiBTotal PE 113929Free PE 10505Allocated PE 103424PV UUID htBru7-C2tV-Amma-fmUG-F90v-i29b-72IlQh"/dev/sda1" is a new physical volume of "<3.64 TiB"--- NEW Physical volume ---PV Name /dev/sda1VG Name PV Size <3.64 TiBAllocatable NOPE Size 0 Total PE 0Free PE 0Allocated PE 0PV UUID KiKrPu-Ebih-VBNY-ClLa-ALEi-ElbZ-WvVm6z
2. 创建卷组
[root@localhost /]# vgcreate data /dev/sda1Volume group "data" successfully created
[root@localhost /]# vgdisplay --- Volume group ---VG Name openeulerSystem ID Format lvm2Metadata Areas 1Metadata Sequence No 7VG Access read/writeVG Status resizableMAX LV 0Cur LV 2Open LV 2Max PV 0Cur PV 1Act PV 1VG Size <445.04 GiBPE Size 4.00 MiBTotal PE 113929Alloc PE / Size 103424 / 404.00 GiBFree PE / Size 10505 / <41.04 GiBVG UUID t7IM2T-Uzl8-ZrX6-c6s9-yZfZ-EmKb-XnLVKr--- Volume group ---VG Name dataSystem ID Format lvm2Metadata Areas 1Metadata Sequence No 1VG Access read/writeVG Status resizableMAX LV 0Cur LV 0Open LV 0Max PV 0Cur PV 1Act PV 1VG Size <3.64 TiBPE Size 4.00 MiBTotal PE 953673Alloc PE / Size 0 / 0 Free PE / Size 953673 / <3.64 TiBVG UUID 0wn2DD-pdpK-X0U1-mN71-x33w-7lk9-2X9OxW
3. 创建逻辑卷
[root@localhost /]# lvcreate -L 3.5T -n home data Logical volume "home" created.
[root@localhost /]# lvdisplay --- Logical volume ---LV Path /dev/openeuler/rootLV Name rootVG Name openeulerLV UUID fpgxmI-PZbf-jlrx-0oqD-V6Ol-0Zhh-ffcU9DLV Write Access read/writeLV Creation host, time localhost, 2022-07-18 10:06:26 +0800LV Status available# open 1LV Size 400.00 GiBCurrent LE 102400Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:0--- Logical volume ---LV Path /dev/openeuler/swapLV Name swapVG Name openeulerLV UUID U1vleL-4RBm-cGvW-zXL3-Hdx1-SNDE-wuRjWyLV Write Access read/writeLV Creation host, time localhost, 2022-07-18 10:06:31 +0800LV Status available# open 2LV Size 4.00 GiBCurrent LE 1024Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:1--- Logical volume ---LV Path /dev/data/homeLV Name homeVG Name dataLV UUID XXHn2z-lyGo-V18H-uD3k-JiMK-Z3hb-5uTUZKLV Write Access read/writeLV Creation host, time localhost.localdomain, 2022-08-03 11:14:17 +0800LV Status available# open 0LV Size 3.50 TiBCurrent LE 917504Segments 1Allocation inheritRead ahead sectors auto- currently set to 8192Block device 253:2
4. 挂载文件系统
[root@localhost /]# mkfs -t ext4 /dev/data/home
mke2fs 1.45.6 (20-Mar-2020)
创建含有 939524096 个块(每块 4k)和 234881024 个inode的文件系统
文件系统UUID:5d18cc10-1fc5-4feb-a18b-e62e2b91802a
超级块的备份存储于下列块: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968, 102400000, 214990848, 512000000, 550731776, 644972544正在分配组表: 完成
正在写入inode表: 完成
创建日志(262144 个块)完成
写入超级块和文件系统账户统计信息: 已完成
5. 查看硬盘分区:lsblk 或fdisk -l
[root@localhost /]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 4.4T 0 disk
└─sda1 8:1 0 3.6T 0 part └─data-home 253:2 0 3.5T 0 lvm
sdb 8:16 0 446.6G 0 disk
├─sdb1 8:17 0 600M 0 part /boot/efi
├─sdb2 8:18 0 1G 0 part /boot
└─sdb3 8:19 0 445G 0 part ├─openeuler-root 253:0 0 400G 0 lvm /└─openeuler-swap 253:1 0 4G 0 lvm [SWAP]
4. 硬盘分区挂载到目录
(一)手动挂载(重启失效)
# mount /dev/data/home /home
(二)开机自动挂载
1. 执行blkid命令查询逻辑卷的信息
[root@localhost ~]# blkid /dev/data/home
/dev/data/home: UUID="5d18cc10-1fc5-4feb-a18b-e62e2b91802a" BLOCK_SIZE="4096" TYPE="ext4"
2. vi /etc/fstab命令编辑fstab文件
[root@localhost ~]# vim /etc/fstab
3. 在文件最后添加以下内容
/dev/data/home /home ext4 defaults 1 2
内容说明如下:
第一列:逻辑卷的UUID或逻辑卷路径。
第二列:文件系统的挂载目录 。
第三列:文件系统的文件格式,此处填写1查询的 ext4 。
第四列:挂载选项,此处以“defaults”为例;
第五列:备份选项,设置为“1”时,系统自动对该文件系统进行备份;设置为“0”时,不进行备份。此处以“0”为例;
第六列:扫描选项,设置为“1”时,系统在启动时自动对该文件系统进行扫描;设置为“0”时,不进行扫描。此处以“0”为例。参考链接: /etc/fstab详解
4. 验证挂载功能
- 执行如下命令,将/etc/fstab文件所有内容重新加载。
# mount -a
2. 执行命令lsblk,查看硬盘挂载情况
[root@localhost ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 446.6G 0 disk
├─sda1 8:1 0 600M 0 part /boot/efi
├─sda2 8:2 0 1G 0 part /boot
└─sda3 8:3 0 445G 0 part ├─openeuler-root 253:0 0 400G 0 lvm /└─openeuler-swap 253:1 0 4G 0 lvm [SWAP]
sdb 8:16 0 4.4T 0 disk
└─sdb1 8:17 0 3.6T 0 part └─data-home 253:2 0 3.5T 0 lvm /home
显示分区/dev/data/home已挂载到/home目录 ,说明成功
二、home目录重新挂载到其他硬盘空间
通过上面的知识,相信我们大概明白了系统是如何操作硬盘的。现在要把home目录挂载到其他硬盘就很简单了,只需要将原来的home目录先解除挂载,在重新挂载到新的硬盘分区上就行了。下面说一下详细步骤
实际操作时为了保留原home目录的数据,我们需要稍微绕一下多走几步。
1.新建目录,作为跳板目录
[fd@localhost ~]$ sudo mkdir /newhome
2. 将分区挂载到新建目录
$ mount /dev/data/home /newhome
3. 将原要挂载的目录中所有文件复制到新目录,存储到/dev/data/home空间
# cp -r /home/* /newhome/
4. 强制删除原目录下所有文件,并解除挂载(为root目录扩容做准备)
# rm -rf /home/*
# umount /home
5. 将/dev/data/home硬盘分区挂载到/home目录
$ umount /newhome
$ mount /dev/data/home /home
这里你会发现之前的/newhome目录文件已经全部转移过来了,这是因为数据是存在硬盘上的,硬盘挂载到其他目录,会自动将硬盘上数据一起指向挂载的目录。
6. 强制删除已经失去作用的跳板目录
# rm -rf /newhome
7. /etc/fstab文件:设置开机自动挂载配置文件(参考第一条第四点)
三、root目录扩容
思路:我们首先要明白实际使用的内存空间都是逻辑卷,逻辑卷再格式化成不同的文件系统,通过挂载就可以使用,操作内存就是操作逻辑卷组的大小。前面我们的home目录是直接挂载到其他硬盘上的,所以这里可以把原home的逻辑卷空间全部分配给root目录;如果只是从home目录分一部分到root目录,就需要先备份home数据,删除/home文件系统所在的逻辑卷,增大/文件系统所在的逻辑卷,增大/文件系统大小,最后再新建 /home文件系统所在的逻辑卷 。
这里展示后面一种情况的操作流程:
1.备份home数据
2. 终止home目录所有进程,注意操作目录不要在home目录下
$ fuser -km /home
3. 取消挂载
# umount /home
4. 删除/home所在的逻辑卷lv:/dev/openeuler/home是逻辑卷路径
[root@localhost /]# lvremove /dev/openeuler/home
5. lsblk查看磁盘空间情况
这里可以看到磁盘分区sda3的空间为445G,root逻辑卷被分配了400G。还剩40G的空间没有使用
6. 扩大逻辑卷大小
$ lvextend -L +400G /dev/openeuler/root
- -L:指定逻辑卷的大小,单位为“kKmMgGtT”字节。
7. 扩大/文件系统
根据版本使用命令,7以上使用xfs_growfs,7以下使用resize2fs
$ resize2fs /dev/openeuler/root
8.df -h查看扩容后的情况
[root@localhost /]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 63G 0 63G 0% /dev
tmpfs 64G 1.1M 64G 1% /dev/shm
tmpfs 26G 73M 26G 1% /run
tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup
/dev/mapper/openeuler-root 394G 43G 334G 12% /
tmpfs 64G 9.1M 64G 1% /tmp
/dev/sda2 976M 73M 836M 9% /boot
/dev/sda1 599M 6.4M 593M 2% /boot/efi
/dev/mapper/data-home 3.5T 12G 3.3T 1% /home
tmpfs 13G 1.2M 13G 1% /run/user/980
tmpfs 13G 1.2M 13G 1% /run/user/1001
tmpfs 13G 1.2M 13G 1% /run/user/0
9. 重建/home文件系统所需要的逻辑卷
这里只提供了一个思路和大致过程,中间遇到的问题还是需要自己去解决。欢迎沟通交流
过程遇到问题的解决方案 :
【openeuler 21.3】格式化磁盘提示被系统占用__lucky_fd的博客-CSDN博客
mount: /n_home: 未知的文件系统类型“LVM2_member”. 问题解决__lucky_fd的博客-CSDN博客
mount: /n_home: 文件系统类型错误、选项错误、/dev/mapper/openeuler-home 上有坏超级块、缺少代码页或帮助程序或其他错误.问题解决__lucky_fd的博客-CSDN博客
fstab自动挂载_挂载错误导致系统无法启动的解决方法
【openeuler 21.3】Linux硬盘分区、更改/home目录挂载空间及root目录扩容相关推荐
- Linux 硬盘分区、格式化、挂载
Linux 硬盘分区.格式化.挂载 1,切换硬盘 [root@ecs-299b-0001 ~]# fdisk /dev/vdb 2,根据提示进行操作 [root@bigboy tmp]# fdisk ...
- linux+系统的硬盘分区格式化,linux硬盘分区、格式化、挂载超详细步骤
在linux中增加一块或者多块硬盘来实现扩容或者备份数据,分区.格式化.挂载是不可避免的三个步骤.下面用超详细的步骤介绍如何对一块新的硬盘进行分区.格式化.挂载的操作. 分区→格式化→挂载→使用 [分 ...
- 服务器自动挂载硬盘,Linux硬盘分区及开机自动挂载
本文以CentOS 6.4为例,查看当前linux服务器分区:df -h 查看当前linux服务器硬盘: fdisk -l /dev/sda 第一块硬盘 /dev/sdb 第二块硬盘 依此类推 以/d ...
- linux分区不格式化能挂栽吗,linux硬盘分区、格式化与挂载
给手上的一台 Windows 安装 CentOS 后,发现 1T 的硬盘没有利用上.所以这一篇介绍怎么将它配置好. 主要用到一下知识点: 对磁盘进行分区,以创建可用的分区: 对分区进行格式化 (for ...
- Linux学习笔记之——Linux硬盘分区知识
搭建Linux环境之前,有必要对Linux的硬盘分区知识有所了解.本文总结Linux的硬盘分区知识. 一.关于硬盘种类.物理几何结构及硬盘容量.分区大小计算 首先了解一下硬盘本身的一些信息 ...
- LinuX 硬盘分区细节详谈 【 整理至 LinuxSir BY FreeXploiT 】
系统引导过程及硬盘分区结构论述 作者: zhy2111314 来自: LinuxSir.Org ouc.edu.cn 摘要: 本文是理论性文档,主要讲述系统引导过程以及硬盘的物理结构: +++++++ ...
- LinuX 硬盘分区细节
系统引导过程及硬盘分区结构论述 作者: zhy2111314 来自: LinuxSir.Org ouc.edu.cn 摘要: 本文是理论性文档,主要讲述系统引导过程以及硬盘的物理结构: +++++++ ...
- LinuX 硬盘分区细节详谈
系统引导过程及硬盘分区结构论述 作者: zhy2111314 来自: LinuxSir.Org ouc.edu.cn 摘要: 本文是理论性文档,主要讲述系统引导过程以及硬盘的物理结构: +++++++ ...
- Linux Reader单文件版,Linux Reader(查看Linux硬盘分区)
Linux Reader(查看Linux硬盘分区)正式版 Linux Reader(查看Linux硬盘分区)正式版是款针对Windows环境下打造的Linux分区文件工具.Linux硬盘分区查看可以直 ...
- linux磁盘写保护怎么修改_用\RAID 0.0999\ 写保护 Linux 硬盘分区-me09-ChinaUnix博客...
用"RAID 0.0999" 写保护 Linux 硬盘分区 计 算机科学家 David Wheeler 有一句名言:"计算机科学中的任何问题,都可以通过加上一层逻辑层来解 ...
最新文章
- 谷歌排名第一的编程语言,死磕它这两点,小白也能学的会!不信你看!
- 波士顿动力的机器狗上班了!巡逻、检测不在话下,挪威公司为其编发工号
- Oracle 数据库sql语句查看字符集,PG数据库查询字符集方法
- 星际战争2服务器维护,星际战争2初次反击虚空技能洗练技巧
- python3 for_Python3: for 表达式
- .NET Core开发实战(第16课:选项数据热更新:让服务感知配置的变化)--学习笔记...
- ios中解决图片渲染问题
- java 什么是类的继承_Java基础,类的继承,粗略的理解希望对大家有所帮助!
- 2021人工智能竞赛白皮书:1000场竞赛的深度分析
- 【深度学习】使用预训练模型
- HDU 4389——X mod f(x)(数位DP)
- APP一键登录测试点
- Javascript-放大镜实现原理分析
- react实现markdown编辑器
- python 关于sys.argv[1]语句报错IndexError: list index out of range的解决
- 【xinput1_3.dll下载】xinput1_3.dll丢失怎么修复win10
- schedule问题
- JavaScript实现页面加载成功后刷新一遍当前页面(一)
- 卷积神经网络评估模型讲解
- apche和nginx分别与php的连接方式区别