Linux 存储管理实战 收藏关注不迷路!

lsblk-查看磁盘及分支信息

lsblk

df-查看磁盘容量及挂载信息

df -Th

fdisk-磁盘管理工具

fdisk -l   #查看磁盘信息

管理磁盘流程三部曲
分区(MBR或者GPT) ---->格式化/文件系统 Filesystem ----> 挂载mount
就好比:
毛坯——>装修——>搬入新家

[root@localhost ~]# lsblk   #查看磁盘信息
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  2.6G  0 rom  
nvme0n1       259:0    0   20G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   19G  0 part 
  ├─cslo-root 253:0    0   17G  0 lvm  /
  └─cslo-swap 253:1    0    2G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
[root@localhost ~]# fdisk /dev/nvme0n2  #启动分区工具  
命令(输入 m 获取帮助):n
分区类型
   p   主分区 (0 primary, 0 extended, 4 free)
   e   扩展分区 (逻辑分区容器)
选择 (默认 p):p
分区号 (1-4, 默认  1): 1
第一个扇区 (2048-41943039, 默认 2048): 
最后一个扇区,+/-sectors 或 +size{K,M,G,T,P} (2048-41943039, 默认 41943039): +5G

创建了一个新分区 1,类型为“Linux”,大小为 5 GiB。

命令(输入 m 获取帮助):w
分区表已调整。
将调用 ioctl() 来重新读分区表。
正在同步磁盘。

[root@localhost ~]# partprobe /dev/nvme0n2p1
[root@localhost ~]# fdisk -l    #查看分区结果,lsblk也可
[root@localhost ~]# mkfs.ext4 /dev/nvme0n2p1
[root@localhost ~]# mkdir -p /mount/nvme0n2p1
[root@localhost ~]# mount -t ext4 /dev/nvme0n2p1 /mount/nvme0n2p1
[root@localhost ~]# df -Th  #查看挂载信息,方法1
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs  1.8G     0  1.8G    0% /dev
tmpfs                 tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                 tmpfs     741M  9.2M  732M    2% /run
tmpfs                 tmpfs     4.0M     0  4.0M    0% /sys/fs/cgroup
/dev/mapper/cslo-root xfs        17G  2.5G   15G   15% /
tmpfs                 tmpfs     1.9G     0  1.9G    0% /tmp
/dev/nvme0n1p1        xfs      1014M  204M  811M   21% /boot
/dev/nvme0n2p1        ext4      4.9G   24K  4.6G    1% /mnt/nvme0n2p1
[root@localhost ~]# cd /mnt/nvme0n2p1/
[root@localhost nvme0n2p1]# dd if=/dev/zero of=1.txt bs=200M count=1  #写入测试
[root@localhost nvme0n2p1]# df -Th   #查看变化
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs  1.8G     0  1.8G    0% /dev
tmpfs                 tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                 tmpfs     741M  9.2M  732M    2% /run
tmpfs                 tmpfs     4.0M     0  4.0M    0% /sys/fs/cgroup
/dev/mapper/cslo-root xfs        17G  2.5G   15G   15% /
tmpfs                 tmpfs     1.9G     0  1.9G    0% /tmp
/dev/nvme0n1p1        xfs      1014M  204M  811M   21% /boot
/dev/nvme0n2p1        ext4      4.9G  201M  4.4G    5% /mnt/nvme0n2p1
[root@localhost ~]# mount   #查看挂载信息,方法2
#自动挂载,方法1
vim /etc/fstab
#自动挂载,方法2
vim ~/.bashrc

LVM-逻辑卷

[root@localhost ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  2.6G  0 rom  
nvme0n1       259:0    0   20G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   19G  0 part 
  ├─cslo-root 253:0    0   17G  0 lvm  /
  └─cslo-swap 253:1    0    2G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
[root@localhost ~]# pvcreate /dev/nvme0n2
WARNING: dos signature detected on /dev/nvme0n2 at offset 510. Wipe it? [y/n]: y
  Wiping dos signature on /dev/nvme0n2.
  Physical volume "/dev/nvme0n2" successfully created.
[root@localhost ~]# vgcreate vg1 /dev/nvme0n2
  Volume group "vg1" successfully created
[root@localhost ~]# vgs
  VG   #PV #LV #SN Attr   VSize   VFree  
  vg1    1   0   0 wz--n- <20.00g <20.00g
  cslo   1   2   0 wz--n- <19.00g      0 
[root@localhost ~]# lvcreate -L 200M -n lv1 vg1
WARNING: dos signature detected on /dev/vg1/lv1 at offset 510. Wipe it? [y/n]: y
  Wiping dos signature on /dev/vg1/lv1.
  Logical volume "lv1" created.
[root@localhost ~]# lvscan
  ACTIVE            '/dev/vg1/lv1' [200.00 MiB] inherit
  ACTIVE            '/dev/cslo/swap' [2.00 GiB] inherit
  ACTIVE            '/dev/cslo/root' [<17.00 GiB] inherit
[root@localhost ~]# mkfs.ext4 /dev/vg1/lv1
mke2fs 1.46.0 (29-Jan-2020)
创建含有 204800 个块(每块 1k)和 51200 个inode的文件系统
文件系统UUID:17df7738-e8eb-4e73-9704-70b59aff17d8
超级块的备份存储于下列块: 
	8193, 24577, 40961, 57345, 73729

正在分配组表: 完成                            
正在写入inode表: 完成                            
创建日志(4096 个块)完成
写入超级块和文件系统账户统计信息: 已完成

[root@localhost ~]# mkdir -p /mnt/lv1
[root@localhost ~]# mount /dev/vg1/lv1 /mnt/lv1
[root@localhost ~]# df -Th
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs  1.8G     0  1.8G    0% /dev
tmpfs                 tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                 tmpfs     741M  9.2M  732M    2% /run
tmpfs                 tmpfs     4.0M     0  4.0M    0% /sys/fs/cgroup
/dev/mapper/cslo-root xfs        17G  2.5G   15G   15% /
tmpfs                 tmpfs     1.9G     0  1.9G    0% /tmp
/dev/nvme0n1p1        xfs      1014M  204M  811M   21% /boot
/dev/mapper/vg1-lv1   ext4      189M   14K  175M    1% /mnt/lv1
[root@localhost ~]# dd if=/dev/zero of=1.txt bs=150M count=1   #测试
记录了1+0 的读入
记录了1+0 的写出
157286400 bytes (157 MB, 150 MiB) copied, 0.63304 s, 248 MB/s
[root@localhost ~]# df -Th
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs  1.8G     0  1.8G    0% /dev
tmpfs                 tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                 tmpfs     741M  9.2M  732M    2% /run
tmpfs                 tmpfs     4.0M     0  4.0M    0% /sys/fs/cgroup
/dev/mapper/cslo-root xfs        17G  2.5G   15G   15% /
tmpfs                 tmpfs     1.9G     0  1.9G    0% /tmp
/dev/nvme0n1p1        xfs      1014M  204M  811M   21% /boot
/dev/mapper/vg1-lv1   ext4      189M  151M   25M   87% /mnt/lv1

LVM-在线扩容

[root@localhost ~]# vgs  #先查看是否有空闲空间
  VG   #PV #LV #SN Attr   VSize   VFree 
  vg1    1   1   0 wz--n- <20.00g 19.80g
  cslo   1   2   0 wz--n- <19.00g     0 
[root@localhost ~]# lvetend -L +200M /dev/vg1/lv1
  Size of logical volume vg1/lv1 changed from 200.00 MiB (50 extents) to 400.00 MiB (100 extents).
  Logical volume vg1/lv1 successfully resized.
[root@localhost ~]# resize2fs /dev/vg1/lv1   #与上次磁盘空间比较
resize2fs 1.46.0 (29-Jan-2020)
/dev/vg1/lv1 上的文件系统已被挂载于 /mnt/lv1;需要进行在线调整大小
old_desc_blocks = 2, new_desc_blocks = 4
/dev/vg1/lv1 上的文件系统现在为 409600 个块(每块 1k)。
[root@localhost ~]# df -Th   #查看变化
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs  1.8G     0  1.8G    0% /dev
tmpfs                 tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                 tmpfs     741M  9.2M  732M    2% /run
tmpfs                 tmpfs     4.0M     0  4.0M    0% /sys/fs/cgroup
/dev/mapper/cslo-root xfs        17G  2.5G   15G   15% /
tmpfs                 tmpfs     1.9G     0  1.9G    0% /tmp
/dev/nvme0n1p1        xfs      1014M  204M  811M   21% /boot
/dev/mapper/vg1-lv1   ext4      384M  153M  210M   43% /mnt/lv1

LVM-在线减容

[root@localhost ~]# lvs		//查询LVM容量
  LV      VG      Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home    centos  -wi-ao---- <39.00g                                                    
  root    centos  -wi-ao----  50.00g                                                    
  swap    centos  -wi-ao----  10.00g                                                    
  data_lv data_vg -wi-ao----   4.99t 
[root@localhost ~]# umount /data	//卸载LVM
[root@localhost ~]# e2fsck -f /dev/data_vg/data_lv  //强制检查文件系统正确性
e2fsck 1.42.9 (28-Dec-2013)
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
/dev/data_vg/data_lv: 21/167444480 files (0.0% non-contiguous), 289491332/1339552768 blocks
[root@localhost ~]# resize2fs  /dev/data_vg/data_lv 4t  //重整文件系统大小至4t,此大小必须小于原LVM容量,大于现有数据容量
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/data_vg/data_lv to 1073741824 (4k) blocks.
The filesystem on /dev/data_vg/data_lv is now 1073741824 blocks long.
 
[root@localhost ~]# lvreduce -L 4t /dev/data_vg/data_lv //lvm减容至4t
  WARNING: Reducing active logical volume to 4.00 TiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce data_vg/data_lv? [y/n]: y
  Size of logical volume data_vg/data_lv changed from 4.99 TiB (1308157 extents) to 4.00 TiB (1048576 extents).
  Logical volume data_vg/data_lv successfully resized.
[root@localhost ~]# lvs 		//查询LVM容量
  LV      VG      Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  home    centos  -wi-ao---- <39.00g                                                    
  root    centos  -wi-ao----  50.00g                                                    
  swap    centos  -wi-ao----  10.00g                                                    
  data_lv data_vg -wi-a-----   4.00t                                                                                                        
[root@localhost ~]# e2fsck -f /dev/data_vg/data_lv		//强制检查文件系统正确性
e2fsck 1.42.9 (28-Dec-2013)
/dev/data_vg/data_lv is mounted.
e2fsck: Cannot continue, aborting.
[root@localhost ~]# vgreduce data_vg /dev/vdd1		//VG减容PV盘(可选)
  Removed "/dev/vdd1" from volume group "data_vg"
[root@localhost ~]# pvremove /dev/vdd1		//删除PV盘(可选)
  Labels on physical volume "/dev/vdd1" successfully wiped.
[root@localhost ~]# mount /dev/data_vg/data_lv /data/			//重新挂载LVM卷

VG-添加整块盘扩容

[root@localhost ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINTS
sr0            11:0    1  2.6G  0 rom  
nvme0n1       259:0    0   20G  0 disk 
├─nvme0n1p1   259:1    0    1G  0 part /boot
└─nvme0n1p2   259:2    0   19G  0 part 
  ├─cslo-root 253:0    0   17G  0 lvm  /
  └─cslo-swap 253:1    0    2G  0 lvm  [SWAP]
nvme0n2       259:3    0   20G  0 disk 
└─vg1-lv1     253:2    0  400M  0 lvm  /mnt/lv1
nvme0n3       259:4    0   10G  0 disk            #这块磁盘是新增的数据盘
[root@localhost ~]# pvcreate /dev/nvme0n3
  Physical volume "/dev/nvme0n3" successfully created.
[root@localhost ~]# vgextend vg1 /dev/nvme0n3
  Volume group "vg1" successfully extended
[root@localhost ~]# vgs
  VG   #PV #LV #SN Attr   VSize   VFree 
  vg1    2   1   0 wz--n-  29.99g 29.60g
  cslo   1   2   0 wz--n- <19.00g     0 
[root@localhost ~]# lvextend -L +28G /dev/vg1/lv1 
  Size of logical volume vg1/lv1 changed from 400.00 MiB (100 extents) to 28.39 GiB (7268 extents).
  Logical volume vg1/lv1 successfully resized.
[root@localhost ~]# resize2fs /dev/vg1/lv1    #和上次的对比,功能类似于刷新df列表
resize2fs 1.46.0 (29-Jan-2020)
/dev/vg1/lv1 上的文件系统已被挂载于 /mnt/lv1;需要进行在线调整大小

old_desc_blocks = 4, new_desc_blocks = 228
/dev/vg1/lv1 上的文件系统现在为 29769728 个块(每块 1k)。
[root@localhost ~]# df -Th   #查看
文件系统              类型      容量  已用  可用 已用% 挂载点
devtmpfs              devtmpfs  1.8G     0  1.8G    0% /dev
tmpfs                 tmpfs     1.9G     0  1.9G    0% /dev/shm
tmpfs                 tmpfs     741M  9.2M  732M    2% /run
tmpfs                 tmpfs     4.0M     0  4.0M    0% /sys/fs/cgroup
/dev/mapper/cslo-root xfs        17G  2.5G   15G   15% /
tmpfs                 tmpfs     1.9G     0  1.9G    0% /tmp
/dev/nvme0n1p1        xfs      1014M  204M  811M   21% /boot
/dev/mapper/vg1-lv1   ext4       28G  151M   27G    1% /mnt/lv1

命令汇总

在这里插入图片描述

交换分区管理Swap

作用: ‘提升’ 内存的容量,防止OOM(Out Of Memory)
swap大小设置:

推荐:设置交换分区大小为内存的2倍
生产环境下:
大于 4GB 而小于 16GB 内存的系统,最小需要 4GB 交换空间;
大于 16GB 而小于 64GB 内存的系统,最小需要 8GB 交换空间;
大于 64GB 而小于 256GB 内存的系统,最小需要 16GB 交换空间。

free -h				 #查看swap空间大小
					 #这里假设/dev/sde是新加入的磁盘设备
fdisk /dev/sde		 #过程略,给出一个主分区并分配空间即可
partprobe /dev/sde	 #刷新分区
mkswap /dev/sde1	 #格式化
swapon /dev/sde1     #挂载
free -h   			 #验证

#永久禁用swap,删除或注释掉/etc/fstab里的swap设备的挂载命令即可
swapoff -a    		 #关闭swap分区
vi /etc/fstab
#/dev/mapper/centos-swap swap                    swap    defaults        0 0
  • 6
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值