云计算Linux运维——Linux系统管理——磁盘管理

这篇具有很好参考价值的文章主要介绍了云计算Linux运维——Linux系统管理——磁盘管理。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

点关注不迷路

目录

1磁盘分区管理

一、硬盘基础知识

1、硬盘的表示方法

2、查看块设备

3、硬盘分区的表示方法

4、创建文件系统/格式化

5、操作磁盘的流程

二、管理磁盘分区工具 fdisk

1、使用格式

2、查看磁盘分区

三、磁盘分区案例

1、规划

2、创建分区

3、让内核识别硬盘上的分区变化

4、创建文件系统/格式化

5、挂载使用

四、设置开机自动挂载  etc/fstab

1、文件格式

2、实现开机自动挂载

五、查看磁盘容量使用情况

六、inode —— i节点

2、inode

2GPT磁盘管理

一、文件系统结构介绍

1、dd工具

二、GPT格式磁盘分区

1、分区表的类型

2、parted工具的使用

3RAID 磁盘阵列

一、RAID介绍

1、RAID 0 条带卷

2、RAID 1 镜像卷

3、RAID 5 奇偶校验卷

4、RAID 6

5、RAID 10

三、RAID实现方式

四、模拟RAID 5的操作

1、创建RAID 5

3、热备盘 Hot Spare

4LVM逻辑卷管理

一、逻辑卷简介

二、逻辑卷相关管理命令

 1、PV相关命令

2)创建PV

2、VG相关命令

3、逻辑卷LV相关命令

三、案例——创建逻辑卷

1、创建PV

2、创建VG

3、创建LV

4、创建文件系统,挂载使用

四、逻辑卷扩容

1、扩容流程

2、扩展/dev/db/mysql的容量到35G

3、将/dev/db/mysql扩容到45GB

4、将/dev/db/redis扩容到1000M

五、逻辑卷缩容

1、注意事项

2、将逻辑卷/dev/db/mysql缩减到10G

五、删除逻辑卷

1、删除逻辑卷

2、删除卷组

3、删除物理卷

5链接文件

一、类型

2、软连接/符号链接【常用】

3、硬链接、软连接的区别


1磁盘分区管理

一、硬盘基础知识

  • 数据持久化存储

1、硬盘的表示方法

  • /dev/sda
    • sd:SATA,SAS接口
      • SATA:6G/s
      • SAS:6G/s
      • a 第1块硬盘
[root@localhost ~]# ls -l /dev/sda
brw-rw----. 1 root disk 8, 0 7月  14 08:41 /dev/sda
  • b  block 块设备文件

硬盘存储数据的基础结构:

  • 数据块 block
    • 随机
    • 每个数据块只能存一个文件的数据
[root@localhost ~]# du -h /opt/file01
4.0K	/opt/file01

2、查看块设备

命令:lsblk

[root@localhost ~]# lsblk 
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0  800M  0 part /boot
└─sda2            8:2    0 19.2G  0 part 
  ├─centos-root 253:0    0 17.2G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sdb               8:16   0    5G  0 disk 
sdc               8:32   0    5G  0 disk 
sr0              11:0    1  9.5G  0 rom  /run/media/root/CentOS 7 x86_6

3、硬盘分区的表示方法

1)分区类型

  • 主分区
  • 扩展分区
    • 主分区 + 扩展分区 <=  4
    • 扩展分区最多只能有一个
  • 逻辑分区

2)分区的表示方法

  • 1---4
    • 表示主分区、扩展分区
  • 5以后
    • 表示逻辑分区

4、创建文件系统/格式化

  • windows
    • NTFS,FAT32
  • Linux
    • ext4,xfs

查看分区的文件系统

[root@localhost ~]# blkid /dev/sda1
/dev/sda1: UUID="2aa0a971-7181-4084-8f15-9cb3e1e753cf" TYPE="xfs" 

5、操作磁盘的流程

  • 准备磁盘
  • 规划创建分区
  • 创建文件系统/格式化
  • 挂载
    • 将硬盘/分区和某个目录关联在一起

二、管理磁盘分区工具 fdisk

1、使用格式

命令:fdisk 硬盘名称 

  • n 新建分区
  • d 删除分区
  • p 查看分区
  • w 保存退出
  • q 强制退出

2、查看磁盘分区

[root@localhost ~]# fdisk -l /dev/sda

磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x000dfd05

   设备 Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     1640447      819200   83  Linux
/dev/sda2         1640448    41943039    20151296   8e  Linux LVM

三、磁盘分区案例

1、规划

主分区 500M ext4 /web/httpd

逻辑分区 500M ext4 /web/nginx

逻辑分区 500M xfs /web/tomcat

2、创建分区

[root@localhost ~]# fdisk /dev/sdb  
欢迎使用 fdisk (util-linux 2.23.2)。

更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。

Device does not contain a recognized partition table
使用磁盘标识符 0x56994c62 创建新的 DOS 磁盘标签。

命令(输入 m 获取帮助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-10485759,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-10485759,默认为 10485759):+500M
分区 1 已设置为 Linux 类型,大小设为 500 MiB

命令(输入 m 获取帮助):n
Partition type:
   p   primary (1 primary, 0 extended, 3 free)
   e   extended
Select (default p): e
分区号 (2-4,默认 2):2
起始 扇区 (1026048-10485759,默认为 1026048):
将使用默认值 1026048
Last 扇区, +扇区 or +size{K,M,G} (1026048-10485759,默认为 10485759):
将使用默认值 10485759
分区 2 已设置为 Extended 类型,大小设为 4.5 GiB

命令(输入 m 获取帮助):n
Partition type:
   p   primary (1 primary, 1 extended, 2 free)
   l   logical (numbered from 5)
Select (default p): l
添加逻辑分区 5
起始 扇区 (1028096-10485759,默认为 1028096):
将使用默认值 1028096
Last 扇区, +扇区 or +size{K,M,G} (1028096-10485759,默认为 10485759):+500M
分区 5 已设置为 Linux 类型,大小设为 500 MiB

命令(输入 m 获取帮助):n
Partition type:
   p   primary (1 primary, 1 extended, 2 free)
   l   logical (numbered from 5)
Select (default p): l
添加逻辑分区 6
起始 扇区 (2054144-10485759,默认为 2054144):
将使用默认值 2054144
Last 扇区, +扇区 or +size{K,M,G} (2054144-10485759,默认为 10485759):+500M
分区 6 已设置为 Linux 类型,大小设为 500 MiB

命令(输入 m 获取帮助):p

磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x56994c62

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     1026047      512000   83  Linux
/dev/sdb2         1026048    10485759     4729856    5  Extended
/dev/sdb5         1028096     2052095      512000   83  Linux
/dev/sdb6         2054144     3078143      512000   83  Linux

命令(输入 m 获取帮助):
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):
命令(输入 m 获取帮助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盘。

3、让内核识别硬盘上的分区变化

命令:partprobe /dev/sdb

[root@localhost ~]# lsblk | grep "sdb"
sdb               8:16   0    5G  0 disk 
├─sdb1            8:17   0  500M  0 part 
├─sdb2            8:18   0    1K  0 part 
├─sdb5            8:21   0  500M  0 part 
└─sdb6            8:22   0  500M  0 part 

4、创建文件系统/格式化

命令:mkfs -t 文件系统 设备名称

命令:mkfs.文件系统 设备名称

[root@localhost ~]# mkfs -t ext4 /dev/sdb6
[root@localhost ~]# mkfs -t ext4 /dev/sdb5
[root@localhost ~]# mkfs -t xfs /dev/sdb6

5、挂载使用

命令:mount 设备文件 挂载点目录

[root@localhost ~]# mount /dev/sdb1  /web/httpd
[root@localhost ~]# mount /dev/sdb5 /web/nginx
[root@localhost ~]# mount /dev/sdb6 /web/tomcat

查看挂载

命令:mount | grep -i "磁盘名"

[root@localhost ~]# mount | grep -i "sdb" 
/dev/sdb1 on /web/httpd type ext4 (rw,relatime,seclabel,data=ordered)
/dev/sdb5 on /web/nginx type ext4 (rw,relatime,seclabel,data=ordered)
/dev/sdb6 on /web/tomcat type xfs (rw,relatime,seclabel,attr2,inode64,noquota)

使用磁盘存储数据

[root@localhost ~]# touch /web/httpd/{1..10}.html
[root@localhost ~]# ls /web/httpd/
10.html  1.html  2.html  3.html  4.html  5.html  6.html  7.html  8.html  9.html  lost+found

卸载磁盘

[root@localhost ~]# umount /dev/sdb1

[root@localhost ~]# mount | grep "httpd"

四、设置开机自动挂载  etc/fstab

1、文件格式

设备文件/UUID	挂载点目录	文件系统		挂载参数(defaults)	0 0
      
      第1个数字: 系统是否自动备份		0	1
      第2个数字: 系统启动时是否检测磁盘	0	1	2

2、实现开机自动挂载

[root@localhost ~]# vim /etc/fstab 
/dev/sdb1	/web/httpd	ext4	defaults	0 0
/dev/sdb5	/web/nginx	ext4	defaults	0 0
UUID=7d9f65e6-deca-4ae0-81ee-d804bd848cca	/web/tomcat	xfs	defaults	0 0

[root@localhost ~]# mount -a 

[root@localhost ~]# lsblk | grep -i "sdb"
sdb               8:16   0    5G  0 disk 
├─sdb1            8:17   0  500M  0 part /web/httpd
├─sdb2            8:18   0    1K  0 part 
├─sdb5            8:21   0  500M  0 part /web/nginx
└─sdb6            8:22   0  500M  0 part /web/tomcat

五、查看磁盘容量使用情况

命令:df - hT

[root@localhost ~]# df -hT 
文件系统                类型      容量  已用  可用 已用% 挂载点
devtmpfs                devtmpfs  470M     0  470M    0% /dev
tmpfs                   tmpfs     487M     0  487M    0% /dev/shm
tmpfs                   tmpfs     487M  8.4M  478M    2% /run
tmpfs                   tmpfs     487M     0  487M    0% /sys/fs/cgroup
/dev/mapper/centos-root xfs        18G  6.3G   11G   37% /
/dev/sdb6               xfs       497M   26M  472M    6% /web/tomcat
/dev/sdb5               ext4      477M  2.3M  445M    1% /web/nginx
/dev/sdb1               ext4      477M  2.3M  445M    1% /web/httpd
/dev/sda1               xfs       797M  172M  626M   22% /boot
tmpfs                   tmpfs      98M   12K   98M    1% /run/user/42
tmpfs                   tmpfs      98M     0   98M    0% /run/user/0

六、inode —— i节点

  • 容量
  • inode :文件数量

1)查看磁盘容量

[root@localhost ~]# df -hT /dev/sdb1
文件系统       类型  容量  已用  可用 已用% 挂载点
/dev/sdb1      ext4  477M  2.3M  445M    1% /web/httpd

2)查看磁盘inode

[root@localhost ~]# df -i /dev/sdb1
文件系统        Inode 已用(I) 可用(I) 已用(I)% 挂载点
/dev/sdb1      128016      21  127995       1% /web/httpd
  • 建文件的脚本
[root@localhost ~]# for i in $(seq 127995)
> do
> touch /web/httpd/b$i
> done

2、inode

  • 存储文件的元数据metadata信息
    • 文件的存储
      • 真实的数据
        • 数据块
      • 元数据信息
        • inode
  • 查看文件的元数据
[root@localhost ~]# stat /etc/fstab 
  文件:"/etc/fstab"
  大小:615       	块:8          IO 块:4096   普通文件
设备:fd00h/64768d	Inode:18354730    硬链接:1
权限:(0644/-rw-r--r--)  Uid:(    0/    root)   Gid:(    0/    root)
环境:system_u:object_r:etc_t:s0
最近访问:2022-07-14 15:14:58.014971698 +0800
最近更改:2022-07-14 15:14:57.906971702 +0800
最近改动:2022-07-14 15:14:57.906971702 +0800
创建时间:-

2GPT磁盘管理

一、文件系统结构介绍

linux云计算运维,云计算Linux运维,linux,网络,运维开发,运维,系统架构

  •  Data Blocks :数据块
    • 存储实体数据
  • inode
    • 存储元数据(大小、类型、权限、时间)
  • inode Bitmap inode位图
    • 标识block的占用情况
  • GDT 全局描述表
    • 每个块组所包含的数据块信息
  • Super Block 超级块
    • block,inode的总量
    • block,inode的使用情况
    • 文件系统挂载情况

linux云计算运维,云计算Linux运维,linux,网络,运维开发,运维,系统架构

  • 前446字节
    • 操作系统的引导信息
  • 64字节
    • 分区表
      • 记录主分区、扩展分区的信息
      • 每个分区固定占16B
  • 2字节
    • 结束位

1、dd工具

  • 拷贝数据

1)创建测试文件

[root@localhost ~]# dd if=/dev/zero of=/opt/a.txt bs=1M count=800
记录了800+0 的读入
记录了800+0 的写出
838860800字节(839 MB)已复制,1.56682 秒,535 MB/秒

[root@localhost ~]# du -h /opt/a.txt 
800M	/opt/a.txt
  • if=源文件
  • of=目的文件
  • bs=每次导出的数据量
  • count=次数

2)清除引导信息

dd if=/dev/zero of=/dev/sda bs=446

二、GPT格式磁盘分区

1、分区表的类型

  • MBR
    • 主分区、扩展分区、逻辑分区
      • 主分区+扩展分区<=4
    • 单个分区的容量最多只能是2T
    • 分区工具:fdisk
  • GPT
    • 支持2T以上的分区
    • 无分区类型、分区数量的限制
    • 分区工具:parted

2、parted工具的使用

[root@localhost ~]# parted /dev/sdb mklabel gpt

[root@localhost ~]# parted /dev/sdb mkpart web 100 2T
信息: You may need to update /etc/fstab.

[root@localhost ~]# parted /dev/sdb mkpart db 2T 4T
信息: You may need to update /etc/fstab.

[root@localhost ~]# parted /dev/sdb mkpart test 4T 100%                   
信息: You may need to update /etc/fstab.

[root@localhost ~]# partprobe /dev/sdb                                    
[root@localhost ~]# 
[root@localhost ~]# lsblk | grep "sdb"
sdb               8:16   0  4.9T  0 disk 
├─sdb1            8:17   0  1.8T  0 part 
├─sdb2            8:18   0  1.8T  0 part 
└─sdb3            8:19   0  1.3T  0 part 

3RAID 磁盘阵列

一、RAID介绍

1、RAID 0 条带卷

  • 组织、使用硬盘的一种方式
  • 将多块物理
    • 提升数据的读写速度
    • 容量是所有硬盘之和
  • 劣势
    • 数据可靠性低

2、RAID 1 镜像卷

  • 至少需要2块硬盘
  • 优势
    • 提升数据的可靠性
  • 劣势
    • 损失1/2的容量
    • 写速度相对低

3、RAID 5 奇偶校验卷

  • 至少3块硬盘
  • 优势
    • 提升数据读写速度、可靠性(校验码)
    • 最多只支持坏1块盘
    • 实际的存储空间
      • 少1块硬盘的容量,用于存储校验码

linux云计算运维,云计算Linux运维,linux,网络,运维开发,运维,系统架构

4、RAID 6

  • 与RAID 5工作方式类似
  • 最多支持同时损坏2块盘

5、RAID 10

  • 至少4块盘
  • 优势
    • 提升速度,可靠性
    • 容量损失1/2

linux云计算运维,云计算Linux运维,linux,网络,运维开发,运维,系统架构

三、RAID实现方式

  • 软RAID
    • mdadm命令
  • 硬RAID
    • RAID卡
    • 同品牌、同型号、同厂商的硬盘
    • 硬盘必须是裸设备

四、模拟RAID 5的操作

1、创建RAID 5

[root@localhost ~]# mdadm -C /dev/md1 -n 3 -l 5 /dev/sdc /dev/sdd /dev/sde   
mdadm: Defaulting to version 1.2 metadata
mdadm: array /dev/md1 started.
  • -C 创建
  • -l 指定RAID的级别
  • -n 指定磁盘的个数
[root@localhost ~]# cat /proc/mdstat 
Personalities : [raid6] [raid5] [raid4] 
md1 : active raid5 sde[3] sdd[1] sdc[0]
      41908224 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [UU_]
      [===>.................]  recovery = 18.4% (3867648/20954112) finish=1.3min speed=203560K/sec

2、使用RAID

[root@localhost ~]# mkfs -t ext4 /dev/md1 

[root@localhost ~]# mkdir /test4
[root@localhost ~]# mount /dev/md1 /test4

[root@localhost ~]# touch /test4/{1..100}.mp3
[root@localhost ~]# ls /test4/
100.mp3  16.mp3  22.mp3  29.mp3  35.mp3
[root@localhost ~]# df -hT | grep "md1"
/dev/md1                ext4       40G   49M   38G    1% /test4

3、热备盘 Hot Spare

  • 减少故障的修复时间

1) 添加热备盘

[root@localhost ~]# mdadm -a /dev/md1 /dev/sdf
mdadm: added /dev/sdf

[root@localhost ~]# cat /proc/mdstat 
Personalities : [raid6] [raid5] [raid4] 
md1 : active raid5 sdf[4](S) sde[3] sdd[1] sdc[0]
      41908224 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]
      
unused devices: <none>

2) 模拟硬盘故障

[root@localhost ~]# mdadm -f /dev/md1 /dev/sdd 
mdadm: set /dev/sdd faulty in /dev/md1

[root@localhost ~]# cat /proc/mdstat 
Personalities : [raid6] [raid5] [raid4] 
md1 : active raid5 sdf[4] sde[3] sdd[1](F) sdc[0]
      41908224 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [U_U]
      [=>...................]  recovery =  7.6% (1600128/20954112) finish=1.4min speed=228589K/sec

4LVM逻辑卷管理

一、逻辑卷简介

  • 优势
    • 在线扩容
      • 在不影响数据的情况下、扩展容量
  • 工作流程

linux云计算运维,云计算Linux运维,linux,网络,运维开发,运维,系统架构

二、逻辑卷相关管理命令

 1、PV相关命令

1)查看PV

[root@localhost ~]# pvscan 
  PV /dev/sda2   VG centos          lvm2 [19.21 GiB / 0    free]
  Total: 1 [19.21 GiB] / in use: 1 [19.21 GiB] / in no VG: 0 [0   ]

2)创建PV

命令:pvcreate [磁盘、分区]

2、VG相关命令

1)查看VG

[root@localhost ~]# vgscan 
Reading volume groups from cache.
Found volume group "centos" using metadata type lvm2

2)查看VG的详细信息

[root@localhost ~]# vgdisplay centos 
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               19.21 GiB      //卷组的容量 
  PE Size               4.00 MiB       // PE, 类似于数据块
  Total PE              4919           // PE总个数
  Alloc PE / Size       4919 / 19.21 GiB    // 分配的容量 
  Free  PE / Size       0 / 0               // 剩余的容量 
  VG UUID               l3bjYh-yNWw-uOX6-t2Ar-lef9-Ts1Z-cCnbOI

3)创建VG

命令:vgcreate [vg名称] [pv名称] [pv名称]

3、逻辑卷LV相关命令

1)查看逻辑卷

[root@localhost ~]# lvscan 
  ACTIVE            '/dev/centos/swap' [2.00 GiB] inherit
  ACTIVE            '/dev/centos/root' [17.21 GiB] inherit

2)创建逻辑卷

命令:lvcreate -L 容量 -n 逻辑卷名称 卷组名称

命令:lvcreate -L 20G -n test mysql

三、案例——创建逻辑卷

要求:/dev/db/mysql 30G ext4 /mysql

注意:先关掉虚拟机,然后加磁盘,再操作

1、创建PV

[root@localhost ~]# pvcreate /dev/sdg /dev/sdh 
  Physical volume "/dev/sdg" successfully created.
  Physical volume "/dev/sdh" successfully created.

[root@localhost ~]# pvscan 
  PV /dev/sda2   VG centos          lvm2 [19.21 GiB / 0    free]
  PV /dev/sdh                       lvm2 [20.00 GiB]
  PV /dev/sdg                       lvm2 [20.00 GiB]
  Total: 3 [59.21 GiB] / in use: 1 [19.21 GiB] / in no VG: 2 [40.00 GiB]

2、创建VG

[root@localhost ~]# vgcreate db /dev/sdg /dev/sdh 
  Volume group "db" successfully created

[root@localhost ~]# vgdisplay db 
  --- Volume group ---
  VG Name               db
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  1
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                0
  Open LV               0
  Max PV                0
  Cur PV                2
  Act PV                2
  VG Size               39.99 GiB
  PE Size               4.00 MiB
  Total PE              10238
  Alloc PE / Size       0 / 0   
  Free  PE / Size       10238 / 39.99 GiB
  VG UUID               UJix94-Mzbd-eqgd-mWj0-cDNN-4H45-FeauOb

3、创建LV

[root@localhost ~]# lvcreate -L 30G -n mysql db
  Logical volume "mysql" created.

[root@localhost ~]# lvscan 
  ACTIVE            '/dev/centos/swap' [2.00 GiB] inherit
  ACTIVE            '/dev/centos/root' [17.21 GiB] inherit
  ACTIVE            '/dev/db/mysql' [30.00 GiB] inherit

4、创建文件系统,挂载使用

  • 想创建文件系统,首先需要创建一个空的文件夹,记得重新加载,查询创建的文件系统类型用df -hT | grep "文件名",然后想要验证可以创建文件进行验证:touch /mysql/{1..10}.html
[root@localhost ~]# mkdir /mysql
[root@localhost ~]# mkfs -t ext4 /dev/db/mysql

[root@localhost ~]# tail -n 1 /etc/fstab
/dev/db/mysql	/mysql	ext4	defaults	0 0

[root@localhost ~]# mount -a

[root@localhost ~]# df -hT | grep "mysql"
/dev/mapper/db-mysql    ext4       30G   45M   28G    1% /mysql

[root@localhost ~]# touch /mysql/{1..10}.sql
[root@localhost ~]# ls /mysql/
10.sql  1.sql  2.sql  3.sql  4.sql  5.sql  6.sql  7.sql  8.sql  9.sql  lost+found

通过指定PE数量的方式创建逻辑卷

/dev/db/redis xfs /redis 800M

[root@localhost ~]# lvcreate -l 200 -n redis db
  Logical volume "redis" created.
 
[root@localhost ~]# lvscan 
  ACTIVE            '/dev/centos/swap' [2.00 GiB] inherit
  ACTIVE            '/dev/centos/root' [17.21 GiB] inherit
  ACTIVE            '/dev/db/mysql' [30.00 GiB] inherit
  ACTIVE            '/dev/db/redis' [800.00 MiB] inherit
[root@localhost ~]# df -hT | grep "redis"
/dev/mapper/db-redis    xfs       797M   33M  765M    5% /redis
[root@localhost ~]# 
[root@localhost ~]# touch /redis/{1..10}.db
[root@localhost ~]# ls /redis/
10.db  1.db  2.db  3.db  4.db  5.db  6.db  7.db  8.db  9.db

四、逻辑卷扩容

1、扩容流程

  • 先扩展物理大小
    • lvextend
  • 在扩展文件系统大小
    • ewsize2fs 
      • 仅适用于ext4/3/2文件系统
    • xfs_grows
      • 适用于xfs文件系统

2、扩展/dev/db/mysql的容量到35G

1)确认卷组剩余空间是都足够

[root@localhost ~]# vgdisplay db | grep -i "free"
  Free  PE / Size       2358 / 9.21 GiB

2)扩展逻辑卷物理大小

[root@localhost ~]# lvextend -L +5G /dev/db/mysql 

[root@localhost ~]# lvscan 
  ACTIVE            '/dev/centos/swap' [2.00 GiB] inherit
  ACTIVE            '/dev/centos/root' [17.21 GiB] inherit
  ACTIVE            '/dev/db/mysql' [35.00 GiB] inherit
  ACTIVE            '/dev/db/redis' [800.00 MiB] inherit

[root@localhost ~]# df -hT | grep "mysql"
/dev/mapper/db-mysql    ext4       30G   45M   28G    1% /mysql

3)扩展文件系统大小

先查看文件系统类型,选择适合的文件系统进行扩展

[root@localhost ~]# resize2fs /dev/db/mysql 
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/db/mysql is mounted on /mysql; on-line resizing required
old_desc_blocks = 4, new_desc_blocks = 5
The filesystem on /dev/db/mysql is now 9175040 blocks long.

[root@localhost ~]# df -hT | grep "mysql"
/dev/mapper/db-mysql    ext4       35G   48M   33G    1% /mysql

3、将/dev/db/mysql扩容到45GB

1)确认卷组剩余空间

[root@localhost ~]# vgdisplay db | grep -i "free"
  Free  PE / Size       1078 / 4.21 GiB

2)扩展卷组容量

[root@localhost ~]# pvcreate /dev/sdi
  Physical volume "/dev/sdi" successfully created.

[root@localhost ~]# vgextend db /dev/sdi 
  Volume group "db" successfully extended

[root@localhost ~]# vgdisplay db | grep -i "free"
  Free  PE / Size       6197 / <24.21 GiB

3)扩展逻辑卷

[root@localhost ~]# lvextend -L +10G /dev/db/mysql 
  Size of logical volume db/mysql changed from 35.00 GiB (8960 extents) to 45.00 GiB (11520 extents).
  Logical volume db/mysql successfully resized.

[root@localhost ~]# resize2fs /dev/db/mysql 
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/db/mysql is mounted on /mysql; on-line resizing required
old_desc_blocks = 5, new_desc_blocks = 6
The filesystem on /dev/db/mysql is now 11796480 blocks long.

[root@localhost ~]# lvscan 
  ACTIVE            '/dev/centos/swap' [2.00 GiB] inherit
  ACTIVE            '/dev/centos/root' [17.21 GiB] inherit
  ACTIVE            '/dev/db/mysql' [45.00 GiB] inherit
  ACTIVE            '/dev/db/redis' [800.00 MiB] inherit

[root@localhost ~]# df -hT | grep "mysql"
/dev/mapper/db-mysql    ext4       45G   52M   42G    1% /mysql

[root@localhost ~]# ls /mysql/
10.sql  1.sql  2.sql  3.sql  4.sql  5.sql  6.sql  7.sql  8.sql  9.sql  lost+found

4、将/dev/db/redis扩容到1000M

[root@localhost ~]# lvextend -L +200M /dev/db/redis 
  Size of logical volume db/redis changed from 800.00 MiB (200 extents) to 1000.00 MiB (250 extents).
  Logical volume db/redis successfully resized.

[root@localhost ~]# xfs_growfs /redis/
meta-data=/dev/mapper/db-redis   isize=512    agcount=4, agsize=51200 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=204800, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=855, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 204800 to 256000

[root@localhost ~]# lvscan 
  ACTIVE            '/dev/centos/swap' [2.00 GiB] inherit
  ACTIVE            '/dev/centos/root' [17.21 GiB] inherit
  ACTIVE            '/dev/db/mysql' [45.00 GiB] inherit
  ACTIVE            '/dev/db/redis' [1000.00 MiB] inherit

[root@localhost ~]# df -hT | grep "redis"
/dev/mapper/db-redis    xfs       997M   33M  965M    4% /redis

五、逻辑卷缩容

1、注意事项

  • 不支持在线缩容,必须先处于卸载状态
  • 先缩减文件系统大小,再缩减物理大小
  • xfs不支持缩减

2、将逻辑卷/dev/db/mysql缩减到10G

1)卸载逻辑卷

命令:umount /dev/db/mysql

2)检测文件系统是否有损坏

[root@localhost ~]# e2fsck -f /dev/db/mysql 
e2fsck 1.42.9 (28-Dec-2013)
第一步: 检查inode,块,和大小
第二步: 检查目录结构
第3步: 检查目录连接性
Pass 4: Checking reference counts
第5步: 检查簇概要信息
/dev/db/mysql: 21/2949120 files (0.0% non-contiguous), 231191/11796480 blocks

3)先缩减文件系统大小

[root@localhost ~]# resize2fs /dev/db/mysql 10G 
resize2fs 1.42.9 (28-Dec-2013)
Resizing the filesystem on /dev/db/mysql to 2621440 (4k) blocks.
The filesystem on /dev/db/mysql is now 2621440 blocks long.

4)在缩减逻辑卷物理大小

[root@localhost ~]# lvreduce -L 10G /dev/db/mysql 
  WARNING: Reducing active logical volume to 10.00 GiB.
  THIS MAY DESTROY YOUR DATA (filesystem etc.)
Do you really want to reduce db/mysql? [y/n]: y
  Size of logical volume db/mysql changed from 45.00 GiB (11520 extents) to 10.00 GiB (2560 extents).
  Logical volume db/mysql successfully resized.

5)重新挂载逻辑卷,验证数据

[root@localhost ~]# mount /dev/db/mysql /mysql/
[root@localhost ~]# ls /mysql/
10.sql  1.sql  2.sql  3.sql  4.sql  5.sql  6.sql  7.sql  8.sql  9.sql  lost+found

五、删除逻辑卷

1、删除逻辑卷

命令:lvremove <逻辑卷名称>

2、删除卷组

命令:vgremove <卷组名称>

3、删除物理卷

命令:pvremove <pv名称>


5链接文件

一、类型

1、硬链接

  • 硬链接
    • 本质上就是指向源文件所在的inode的另外一个指针
    • 并不是一个单独的文件

命令:ln 源文件 目的文件

[root@localhost ~]# ls -l /opt/file01 
-rw-r--r--. 2 root root 29 7月  18 15:24 /opt/file01

[root@localhost ~]# ls -l /tmp/AA 
-rw-r--r--. 2 root root 29 7月  18 15:24 /tmp/AA

查看文件的inode

[root@localhost ~]# ls -i /opt/file01 
192421 /opt/file01
[root@localhost ~]# ls -i /tmp/AA 
192421 /tmp/AA

2、软连接/符号链接【常用】

  • 相对于源文件来说,软连接文件是个独立的文件
  • 但软连接中并不保存真实的数据,仅保存源文件名的一个指向

命令:ln -s 源文件 目的文件文章来源地址https://www.toymoban.com/news/detail-524850.html

[root@localhost ~]# ln -s /opt/file02 /tmp/BB 

[root@localhost ~]# ls -l /opt/file02 
-rw-r--r--. 1 root root 9 7月  18 15:26 /opt/file02

[root@localhost ~]# ls -l /tmp/BB 
lrwxrwxrwx. 1 root root 11 7月  18 15:26 /tmp/BB -> /opt/file02
[root@localhost ~]# ls -i /opt/file02 
192464 /opt/file02

[root@localhost ~]# ls -i /tmp/BB 
16786690 /tmp/BB

3、硬链接、软连接的区别

  • 软连接
    • 源文件损坏,链接文件失效
    • 支持可以对文件、目录创建软链接
    • 支持跨分区
  • 硬链接
    • 源文件损坏,链接文件 可继续访问
    • 只支持对文件创建
    • 不支持跨分区

到了这里,关于云计算Linux运维——Linux系统管理——磁盘管理的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux运维:网络管理

    提前看:本文是Linux运维的学习笔记,之前的Linux命令基础和shell基础,使我们对Linux有系统的认识,但是这个方面的知识点非常多,今天啥也不干,就整理Linux运维各种范围出现的名词性内容进行解释。 CPU(中央处理器)是计算机的主要组成部分,它负责执行计算机程序中的

    2024年02月03日
    浏览(58)
  • Linux Centos系统 磁盘分区和文件系统管理 (深入理解)

    作者主页: 点击! Linux专栏:点击! 磁盘 在Linux系统中,磁盘是一种用于存储数据的物理设备,可以是传统的硬盘驱动器(HDD)或固态硬盘(SSD)。Linux将磁盘设备视为块设备,它们通常以文件形式表示在 /dev 目录下。 文件系统 在计算机系统中, 文件系统 定义了如何存储

    2024年03月15日
    浏览(52)
  • Linux系统命令与网络、磁盘参数和日志监控

    grep命令用于在文件中搜索,并显示匹配效果 wc命令用于计算字数。 利用wc指令我们可以计算文件的Byte数、字数、或是列数,若不指定文件名称、或是所给予的文件名为\\\"-\\\",则wc指令会从标准输入设备读取数据 查看机器的启动时间、登录用户、平均负载等情况 uptime 13:01:52 up

    2024年02月10日
    浏览(38)
  • 【Linux对磁盘进行清理、重建、配置文件系统和挂载,进行系统存储管理调整存储结构】

    继上一篇 【Linux上创建一个LVM卷组,将多个物理卷添加到卷组中使用】 创建一个卷组,并将多个物理卷添加到该卷组中。 在卷组上创建一个逻辑卷,并进行文件系统格式化。 将逻辑卷挂载到指定目录并自动挂载。 扩展逻辑卷的大小,并调整文件系统以适应扩容后的存储空间

    2024年01月22日
    浏览(46)
  • 2023 网络建设与运维 X86架构计算机操作系统安装与管理题解

    任务描述: 随着信息技术的快速发展,集团计划2023年把部分业务由原有的X86架构服务器上迁移到ARM架构服务器上,同时根据目前的部分业务需求进行了部分调整和优化。 一、X86架构计算机操作系统安装与管理 1.PC1系统为ubuntu-desktop-amd64系统(已安装,语言为英文),登录用

    2024年02月11日
    浏览(95)
  • Linux系统资源分析手段:CPU,内存,磁盘与网络IO的瓶颈定位

    用于优化: 在程序编码完成后,我们通常要对自己编写的工具进行功能测试与性能分析。 用于监控: 在观察某个系统的运行情况时,需要观察系统内多个中间件及组件的资源占用情况。 用于测试: 在开启某个服务时,我们需要拥有对于该服务运行时资源占用的量化手段。

    2024年01月18日
    浏览(87)
  • linux中系统性能监测命令sar,查看cpu、内存、磁盘、网络等使用情况

    显示系统CPU利用率的统计信息: -u : 这是sar命令的选项之一,表示要显示CPU利用率相关的统计数据。 1 : 这是指定采样间隔的参数,表示每秒采样一次数据。 5 : 这是指定采样次数的参数,表示总共采样5次数据。 %user:用户模式下消耗的 CPU 时间的比例。 %nice:通过 nice 改变了

    2024年02月08日
    浏览(56)
  • 千峰云计算linux教程650集,linux系统运维从入门到精通教程(Linux安装极速入门,零基础必备)

    第一天 1. 完成VMware下载,centos7下载,完成配置,获得模拟服务器一台。 2. 使用root登录。 服务器 (可以当初普通计算机,与普通的计算机内部结构相差不大) VMware是安装虚拟机的软件 (通过一些软件在一台主机或服务器系统中模拟出来的一台电脑,实际上就是一个比较大

    2024年01月17日
    浏览(47)
  • linux重装系统步骤 包含raid【主要针对服务器重装】,腾讯Linux运维开发面试记录

    8 、查看网关主机名: cat /etc/sysconfig/network 9 、查看单条网卡信息: ethtool 物理网卡名 比如有很多网卡 ,不知道 使用哪个网卡的时候,就用这个方法。 (万兆网Link为yes就是使用的网卡) ​​ 10、查看cpu内存 查看cpu 最简单方法:输入 top 后按 1 即可查看。 查看CPU信息(型号

    2024年04月12日
    浏览(49)
  • Linux系统中实现便捷运维管理和远程访问的1Panel部署方法解析

    1Panel 是一个现代化、开源的 Linux 服务器运维管理面板。高效管理,通过 Web 端轻松管理 Linux 服务器,包括主机监控、文件管理、数据库管理、容器管理等下面我们介绍在Linux 本地安装1Panel 并结合cpolar 内网穿透工具实现远程访问1Panel 管理界面## 1. Linux 安装1Panel执行如下命令一

    2024年02月09日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包