小白成长之路-Linux磁盘管理(二)
文章目录
- 一、非交互式创建分区
- 1.vim fdisk.txt
- 2.fdisk /dev/sdb < fdisk.txt
- 二、parted 命令
- 1.parted 磁盘路径
- 2.mklabel gpt
- 3.mkpart name
- 4.start 1 end 磁盘大小
- 5.print 查看磁盘情况
- 6.检查lsblk /dev/sdc
- 7.格式化
- 8.查看
- 8.挂载
- 三、挂载虚拟空间
- 四、LV吗逻辑卷
- 1.概述
- 1.1运行原理
- 1.2LVM相关概念
- 1.3挂载流程
- 2、命令管理
- 3.配置案例
- 3.1 构建LVM逻辑卷
- 3.2扩容LVM逻辑卷
- 总结
一、非交互式创建分区
1.vim fdisk.txt
2.fdisk /dev/sdb < fdisk.txt
<:重定向输入
[root@c2407 ~]# vim fdisk.txt
n
p
**、、创建拓展分区有一个回车,创建主分区有两个回车**
+5G
w##################以上为文件内容######
fdisk /dev/sdb < fdisk.txt
[root@c2407 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 200G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 199G 0 part ├─centos-root 253:0 0 50G 0 lvm /├─centos-swap 253:1 0 2G 0 lvm [SWAP]└─centos-home 253:2 0 147G 0 lvm /home
sdb 8:16 0 20G 0 disk
├─sdb1 8:17 0 5G 0 part
├─sdb2 8:18 0 5G 0 part
├─sdb3 8:19 0 5G 0 part
└─sdb4 8:20 0 5G 0 part
sr0 11:0 1 1024M 0 rom
二、parted 命令
前提条件也是得向虚拟机添加一块新的磁盘
1.parted 磁盘路径
2.mklabel gpt
创建标签,gpt是常用的
3.mkpart name
为新的分区起个名字
4.start 1 end 磁盘大小
5.print 查看磁盘情况
File system 没有显示是因为还没有格式化
6.检查lsblk /dev/sdc
发现分区创建好了
7.格式化
8.查看
8.挂载
创建挂载点—空目录在使用mount挂载,最后用df -Th查看
三、挂载虚拟空间
swapon
swapoff是卸载虚拟空间
四、LV吗逻辑卷
1.概述
LVM 是 Logical Volume Manager(逻辑卷管理)的简写,它是 Linux 环境下对磁盘分区进行管理的⼀种机制; 安装 Linux 操作系统时遇到的⼀个常见的难以决定的问题就是如何正确地评估各分区大小,以分配合适的硬盘空 间; 普通的磁盘分区管理方式在逻辑分区划分好之后就无法改变其大小; 随着 Linux 的逻辑卷管理功能的出现,这些问题都迎刃而解,用户在无需停机的情况下可以方便地调整各个分区大小,即动态调整磁盘容量,从而提高磁盘管理的灵活性。
1.1运行原理
1.2LVM相关概念
1.PV(Physical Volume):物理卷
处于 LVM 最底层,可以是物理硬盘或者分区,整个硬盘,或使用fdisk 等⼯具建⽴的普通分区,包许多默认 4MB 大小的 PE(Physical Extent,基本单元)。
2.PE(Physical Extend):物理区域
PV 中可以用于分配的最小存储单元,可以在创建 PV 的时候制定(默认为 4MB),如 1M, 2M, 4M, 8M, 32M, 64M… 组成同⼀VG 中所有 PV 的 PE大小应该相同。
3.VG(Volume Group):卷组
建立在 PV 之上,可以含有一个到多个 PV,一个或多个物理卷组合而成的整体。
4.LV(Logical Volume):逻辑卷
建立在 VG 之上,相当于原来分区的概念,不过大小可以动态改变。从卷组中分割出的一块空间,用于建立文件 系统。
1.3挂载流程
2、命令管理
3.配置案例
3.1 构建LVM逻辑卷
#创建分区
fdisk /dev/sdb
#创建物理卷
pvcreate /dev/sdb1 /dev/sdb2 /dev/sdb3
#创建卷组
vgcreate testvg /dev/sdb1 /dev/sdb2 /dev/sdb3
#创建逻辑卷
lvcreate -n tstlv testvg -L 2G
[root@c2407 mapper]# mkfs.xfs /dev/mapper/testvg-testlv
meta-data=/dev/mapper/testvg-testlv isize=512 agcount=4, agsize=131072 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=524288, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@c2407 mapper]# mkdir /testlv
[root@c2407 mapper]# mount /dev/mapper/testvg-testlv /testlv/
[root@c2407 mapper]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 50G 8.8G 42G 18% /
tmpfs tmpfs 182M 12K 182M 1% /run/user/42
/dev/sda1 xfs 1014M 185M 830M 19% /boot
/dev/mapper/centos-home xfs 147G 38M 147G 1% /home
/dev/mapper/testvg-testlv xfs 2.0G 33M 2.0G 2% /testlv
3.2扩容LVM逻辑卷
#基于XFS文件系统的lv扩容
[root@c2407 ~]# lvextend /dev/testvg/testlv -L +2G
Size of logical volume testvg/testlv changed from 2.00 GiB (512 extents) to 4.00 GiB (1024 extents).
Logical volume testvg/testlv successfully resized.
[root@c2407 ~]# xfs_growfs /dev/testvg/testlv
meta-data=/dev/mapper/testvg-testlv isize=512 agcount=4, agsize=131072 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0 spinodes=0
data = bsize=4096 blocks=524288, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
data blocks changed from 524288 to 1048576
[root@c2407 ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 50G 8.8G 42G 18% /
tmpfs tmpfs 182M 12K 182M 1% /run/user/42
/dev/sda1 xfs 1014M 185M 830M 19% /boot
/dev/mapper/centos-home xfs 147G 38M 147G 1% /home
/dev/mapper/testvg-testlv xfs 4.0G 33M 4.0G 1% /testlv##基于EXT文件系统的lv扩容
[root@c2407 ~]# lvextend /dev/testvg2/testlv2 -L +2G
[root@c2407 ~]# e2fsck -f /dev/testvg2/testlv2
e2fsck 1.42.9 (28-Dec-2013)
/dev/testvg2/testlv2 is mounted.
e2fsck: 无法继续, 中止.
[root@c2407 ~]# umount /testlv2
[root@c2407 ~]# e2fsck -f /dev/testvg2/testlv2
e2fsck 1.42.9 (28-Dec-2013)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
Pass 4: Checking reference counts
第5步: 检查簇概要信息
/dev/testvg2/testlv2: 11/131072 files (0.0% non-contiguous), 26156/524288 blocks
[root@c2407 ~]# res
rescan-scsi-bus.sh resize2fs resizepart
reset resizecons restorecon
[root@c2407 ~]# resize2fs /dev/testvg2/testlv2
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/testvg2/testlv2 to 1048576 (4k) blocks.
The filesystem on /dev/testvg2/testlv2 is now 1048576 blocks long.
[root@c2407 ~]# mount /dev/testvg2/testlv2 /testlv2/
[root@c2407 ~]# df -Th
文件系统 类型 容量 已用 可用 已用% 挂载点
devtmpfs devtmpfs 894M 0 894M 0% /dev
tmpfs tmpfs 910M 11M 900M 2% /run
tmpfs tmpfs 910M 0 910M 0% /sys/fs/cgroup
/dev/mapper/centos-root xfs 50G 8.8G 42G 18% /
tmpfs tmpfs 182M 12K 182M 1% /run/user/42
/dev/sda1 xfs 1014M 185M 830M 19% /boot
/dev/mapper/centos-home xfs 147G 38M 147G 1% /home
/dev/mapper/testvg-testlv xfs 4.0G 33M 4.0G 1% /testlv
/dev/mapper/testvg2-testlv2 ext4 3.9G 8.0M 3.7G 1% /testlv2
总结
今天主要是卷的扩展,希望能帮到小伙伴们