6.19 4.10-4.13

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6.19 4.10-4.13相关的知识,希望对你有一定的参考价值。

4.10 LVM讲解

 

磁盘分区形成物理卷,多个物理卷形成卷组,再在卷组的基础上划分出逻辑卷,并最终在逻辑卷的基础上格式化并挂载使用;

一个卷组可以包含一个或多个物理卷;

 

创建步骤:

1 创建一个物理分区

2 物理分区形成物理卷

3 一个或多个物理卷形成卷组

4 卷组划分出逻辑卷

5 格式化逻辑卷并挂载使用

 

准备磁盘:

磁盘 /dev/sdb10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理)512 字节 / 512 字节

I/O 大小(最小/最佳)512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0xb81c7d69

 

   设备 Boot      Start         End      Blocks   Id  System

 

命令(输入 m 获取帮助)n

Partition type:

   p   primary (0 primary, 0 extended, 4 free)

   e   extended

Select (default p): p

分区号 (1-4,默认 1)

起始 扇区 (2048-20971519,默认为 2048)

将使用默认值 2048

Last 扇区, +扇区 or +size{K,M,G} (2048-20971519,默认为 20971519)+1G

分区 1 已设置为 Linux 类型,大小设为 1 GiB

 

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

 

磁盘 /dev/sdb10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理)512 字节 / 512 字节

I/O 大小(最小/最佳)512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0xb81c7d69

 

   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   83  Linux 83表示为普通类型

 

命令(输入 m 获取帮助)t 更改类型

已选择分区 1

Hex 代码(输入 L 列出所有代码)8e 8e表示类型为LVM

已将分区“Linux”的类型更改为“Linux LVM

 

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

 

磁盘 /dev/sdb10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理)512 字节 / 512 字节

I/O 大小(最小/最佳)512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0xb81c7d69

 

   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   8e  Linux LVM

修改为8e后分区才可以做物理卷

[[email protected] ~]# fdisk -l

 

磁盘 /dev/sda21.5 GB, 21474836480 字节,41943040 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理)512 字节 / 512 字节

I/O 大小(最小/最佳)512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0x000c9c2f

 

   设备 Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048      411647      204800   83  Linux

/dev/sda2          411648     4605951     2097152   82  Linux swap / Solaris

/dev/sda3         4605952    41943039    18668544   83  Linux

 

磁盘 /dev/sdb10.7 GB, 10737418240 字节,20971520 个扇区

Units = 扇区 of 1 * 512 = 512 bytes

扇区大小(逻辑/物理)512 字节 / 512 字节

I/O 大小(最小/最佳)512 字节 / 512 字节

磁盘标签类型:dos

磁盘标识符:0xb81c7d69

 

   设备 Boot      Start         End      Blocks   Id  System

/dev/sdb1            2048     2099199     1048576   8e  Linux LVM

/dev/sdb2         2099200     4196351     1048576   8e  Linux LVM

/dev/sdb3         4196352     6293503     1048576   8e  Linux LVM

 

创建物理卷:

 

[[email protected] ~]# yum install -y lvm 发现无法创建物理卷,需要安装LVM

[[email protected] ~]# pvcreate /dev/sdb1 安装LVM包后仍无法使用pvcreate命令

-bash: pvcreate: 未找到命令

[[email protected] ~]# yum provides "/*/pvcreate" 根据使用的命令搜索要安装的包

7:lvm2-2.02.177-4.el7.x86_64 : Userland logical volume management tools

    base

匹配来源:

文件名    /usr/sbin/pvcreate

[[email protected] ~]# yum install -y lvm2

[[email protected] ~]# pvcreate /dev/sdb1

  Device /dev/sdb1 not found. 由于系统中没有该块设备文件,所以无法执行,linux中一切皆文件

[[email protected] ~]# partprobe 一般分区创建完成后块设备文件会自动生成,若不生成可以使用该命令

[[email protected] ~]# ls /dev/sdb1

/dev/sdb1 块设备文件出现

[[email protected] ~]# pvcreate /dev/sdb1

  Can't open /dev/sdb1 exclusively.  Mounted filesystem? 由于sdb1仍然被挂载产生的报错信息

[[email protected] ~]# df -h

文件系统        容量  已用  可用 已用% 挂载点

/dev/sda3        18G  1.2G   17G    7% /

devtmpfs        483M     0  483M    0% /dev

tmpfs           493M     0  493M    0% /dev/shm

tmpfs           493M  6.9M  486M    2% /run

tmpfs           493M     0  493M    0% /sys/fs/cgroup

/dev/sda1       197M   97M  100M   50% /boot

tmpfs            99M     0   99M    0% /run/user/0

/dev/sdb         10G   33M   10G    1% /mnt

[[email protected] ~]#umount /dev/sdb 卸载sdb

[[email protected] ~]# pvcreate /dev/sdb1

  Physical volume "/dev/sdb1" successfully created.

[[email protected] ~]# pvdisplay 显示物理卷信息

  "/dev/sdb1" is a new physical volume of "1.00 GiB"

  --- NEW Physical volume ---

  PV Name               /dev/sdb1

  VG Name              

  PV Size               1.00 GiB

  Allocatable           NO

  PE Size               0   

  Total PE              0

  Free PE               0

  Allocated PE          0

  PV UUID               3flTOL-WVQn-cUvg-9PsO-ucs5-8kpg-uyXzIU

[[email protected] ~]# pvcreate /dev/sdb2

  Physical volume "/dev/sdb2" successfully created.

[[email protected] ~]# pvcreate /dev/sdb3

WARNING: ext4 signature detected on /dev/sdb3 at offset 1080. Wipe it? [y/n]: y

  Wiping ext4 signature on /dev/sdb3. 将原来的ext4文件系统覆盖

  Physical volume "/dev/sdb3" successfully created.

 

4.11 LVM讲解

 

[[email protected] ~]# pvs 查看当前的物理卷都有哪些

  PV         VG Fmt  Attr PSize PFree

  /dev/sdb1     lvm2 ---  1.00g 1.00g

  /dev/sdb2     lvm2 ---  1.00g 1.00g

  /dev/sdb3     lvm2 ---  1.00g 1.00g

[[email protected] ~]# vgcreate vg1 /dev/sdb1 /dev/sdb2

  Volume group "vg1" successfully created

使用物理卷sdb1sdb2创建卷组vg1

[[email protected] ~]# vgdisplay 查看卷组信息

  --- Volume group ---

  VG Name               vg1

  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               1.99 GiB

  PE Size               4.00 MiB

  Total PE              510

  Alloc PE / Size       0 / 0  

  Free  PE / Size       510 / 1.99 GiB

  VG UUID               l7ARjU-Uevg-OmJ6-Ge4T-Bmy0-CBeT-uqlb39

  

[[email protected] ~]# vgs 查看卷组信息

  VG  #PV #LV #SN Attr   VSize VFree

  vg1   2   0   0 wz--n- 1.99g 1.99g

[[email protected] ~]# lvcreate -L 100M -n lv1 vg1 从卷组vg1中划分100M创建逻辑卷lv1

  Logical volume "lv1" created.

[[email protected] ~]# mkfs.ext4 /dev/vg1/lv1 将逻辑卷lv1格式化为ext4文件格式

[[email protected] ~]# mount /dev/vg1/lv1 /mnt 挂载lv1mnt目录下

[[email protected] ~]# df -h

文件系统             容量  已用  可用 已用% 挂载点

/dev/sda3             18G  1.2G   17G    7% /

devtmpfs             483M     0  483M    0% /dev

tmpfs                493M     0  493M    0% /dev/shm

tmpfs                493M  6.8M  486M    2% /run

tmpfs                493M     0  493M    0% /sys/fs/cgroup

/dev/sda1            197M   97M  100M   50% /boot

tmpfs                 99M     0   99M    0% /run/user/0

/dev/mapper/vg1-lv1   93M  1.6M   85M    2% /mnt

[[email protected] ~]# ls -l /dev/mapper/vg1-lv1

lrwxrwxrwx. 1 root root 7 6  18 16:20 /dev/mapper/vg1-lv1 -> ../dm-0

[[email protected] ~]# ls -l /dev/vg1/lv1

lrwxrwxrwx. 1 root root 7 6  18 16:20 /dev/vg1/lv1 -> ../dm-0

/dev/mapper/vg1-lv1/dev/vg1/lv1指向相同的文件../dm-0

[[email protected] ~]# cd /mnt

[[email protected] mnt]# mkdir 1 lv1的挂载点/mnt下创建新的文件、目录

[[email protected] mnt]# cd 1

[[email protected] 1]# touch 2.txt

[[email protected] 1]# echo 32413434 > 2.txt

 

扩容:

[[email protected] 1]# lvresize -L 200M /dev/vg1/lv1 为逻辑卷lv1扩容至200M

  Size of logical volume vg1/lv1 changed from 100.00 MiB (25 extents) to 200.00 MiB (50 extents).

  Logical volume vg1/lv1 successfully resized.

[[email protected] mnt]# df –h 刚刚扩容后的空间无法被正常识

文件系统             容量  已用  可用 已用% 挂载点

/dev/sda3             18G  1.2G   17G    7% /

devtmpfs             483M     0  483M    0% /dev

tmpfs                493M     0  493M    0% /dev/shm

tmpfs                493M  6.8M  486M    2% /run

tmpfs                493M     0  493M    0% /sys/fs/cgroup

/dev/sda1            197M   97M  100M   50% /boot

tmpfs                 99M     0   99M    0% /run/user/0

/dev/mapper/vg1-lv1   93M  1.6M   85M    2% /mnt

[[email protected] 1]# umount -l /dev/vg1/lv1 卸载逻辑卷lv1

[[email protected] 1]# mount /dev/vg1/lv1 /mnt

[[email protected] 1]# df –h 卸载再挂载逻辑卷大小仍不改变

文件系统             容量  已用  可用 已用% 挂载点

/dev/sda3             18G  1.2G   17G    7% /

devtmpfs             483M     0  483M    0% /dev

tmpfs                493M     0  493M    0% /dev/shm

tmpfs                493M  6.8M  486M    2% /run

tmpfs                493M     0  493M    0% /sys/fs/cgroup

/dev/sda1            197M   97M  100M   50% /boot

tmpfs                 99M     0   99M    0% /run/user/0

/dev/mapper/vg1-lv1   93M  1.6M   85M    2% /mnt

[[email protected] 1]# cd ..

[[email protected] mnt]# cd ..

[[email protected] /]# umount /mnt

[[email protected] /]# df -h

文件系统        容量  已用  可用 已用% 挂载点

/dev/sda3        18G  1.2G   17G    7% /

devtmpfs        483M     0  483M    0% /dev

tmpfs           493M     0  493M    0% /dev/shm

tmpfs           493M  6.8M  486M    2% /run

tmpfs           493M     0  493M    0% /sys/fs/cgroup

/dev/sda1       197M   97M  100M   50% /boot

tmpfs            99M     0   99M    0% /run/user/0

[[email protected] /]# lvresize -L 200M /dev/vg1/lv1 一般正常步骤是先卸载逻辑卷,再扩容

  New size (50 extents) matches existing size (50 extents).

[[email protected] /]# e2fsck -f /dev/vg1/lv1 检查磁盘是否正常

e2fsck 1.42.9 (28-Dec-2013)

第一步: 检查inode,,和大小

第二步: 检查目录结构

3: 检查目录连接性

Pass 4: Checking reference counts

5: 检查簇概要信息

/dev/vg1/lv1: 13/25688 files (7.7% non-contiguous), 8899/102400 blocks

[[email protected] /]# resize2fs /dev/vg1/lv1 更新逻辑卷信息

resize2fs 1.42.9 (28-Dec-2013)

Resizing the filesystem on /dev/vg1/lv1 to 204800 (1k) blocks.

The filesystem on /dev/vg1/lv1 is now 204800 blocks long.

 

[[email protected] /]# mount /dev/vg1/lv1 /mnt 挂载逻辑卷

[[email protected] /]# df -h

文件系统             容量  已用  可用 已用% 挂载点

/dev/sda3             18G  1.2G   17G    7% /

devtmpfs             483M     0  483M    0% /dev

tmpfs                493M     0  493M    0% /dev/shm

tmpfs                493M  6.8M  486M    2% /run

tmpfs                493M     0  493M    0% /sys/fs/cgroup

/dev/sda1            197M   97M  100M   50% /boot

tmpfs                 99M     0   99M    0% /run/user/0

/dev/mapper/vg1-lv1  190M  1.6M  175M    1% /mnt 此时显示的容量为扩容后的正常容量

要让更新后的容量被正常识别需要在扩容后检查磁盘并更细逻辑卷信息

 

缩容(xfs不支持):

[[email protected] /]# umount /mnt 缩容时要先卸载

[[email protected] /]# e2fsck -f /dev/vg1/lv1 先检查磁盘情况

e2fsck 1.42.9 (28-Dec-2013)

第一步: 检查inode,,和大小

第二步: 检查目录结构

3: 检查目录连接性

Pass 4: Checking reference counts

5: 检查簇概要信息

/dev/vg1/lv1: 13/49400 files (7.7% non-contiguous), 11887/204800 blocks

[[email protected] /]# resize2fs /dev/vg1/lv1 100M 将逻辑卷缩容为100M

resize2fs 1.42.9 (28-Dec-2013)

Resizing the filesystem on /dev/vg1/lv1 to 102400 (1k) blocks.

The filesystem on /dev/vg1/lv1 is now 102400 blocks long.

 

[[email protected] /]# lvresize -L 100M /dev/vg1/lv1 更新逻辑卷信息为100M

  WARNING: Reducing active logical volume to 100.00 MiB.

  THIS MAY DESTROY YOUR DATA (filesystem etc.)

Do you really want to reduce vg1/lv1? [y/n]: y

  Size of logical volume vg1/lv1 changed from 200.00 MiB (50 extents) to 100.00 MiB (25 extents).

  Logical volume vg1/lv1 successfully resized.

[[email protected] /]# lvdisplay 查看逻辑卷大小

  --- Logical volume ---

  LV Path                /dev/vg1/lv1

  LV Name                lv1

  VG Name                vg1

  LV UUID                3NN0sH-Zf3l-8cWo-73cD-cPPC-P3WA-34uusI

  LV Write Access        read/write

  LV Creation host, time hyc-01-01, 2018-06-18 16:18:21 +0800

  LV Status              available

  # open                 0

  LV Size                100.00 MiB

  Current LE             25

  Segments               1

  Allocation             inherit

  Read ahead sectors     auto

  - currently set to     8192

  Block device           253:0

[[email protected] /]# lvs 查看逻辑卷

  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert

  lv1  vg1 -wi-a----- 100.00m   

[[email protected] /]# df -h

文件系统        容量  已用  可用 已用% 挂载点

/dev/sda3        18G  1.2G   17G    7% /

devtmpfs        483M     0  483M    0% /dev

tmpfs           493M     0  493M    0% /dev/shm

tmpfs           493M  6.8M  486M    2% /run

tmpfs           493M     0  493M    0% /sys/fs/cgroup

/dev/sda1       197M   97M  100M   50% /boot

tmpfs            99M     0   99M    0% /run/user/0

[[email protected] /]# mount /dev/vg1/lv1 /mnt 挂载vg1逻辑卷

[[email protected] /]# tree /mnt 改变大小重挂载后文件内容未丢失

/mnt

├── 1

   └── 2.txt

└── lost+found

 

2 directories, 1 file

 

xfs不支持缩容

 

xfs扩容:

[[email protected] /]# umount /mnt 卸载vg1

[[email protected] /]# mkfs.xfs -f /dev/vg1/lv1 将逻辑卷vg1重格式化为xfs

meta-data=/dev/vg1/lv1           isize=512    agcount=4, agsize=6400 blks

         =                       sectsz=512   attr=2, projid32bit=1

         =                       crc=1        finobt=0, sparse=0

data     =                       bsize=4096   blocks=25600, imaxpct=25

         =                       sunit=0      swidth=0 blks

naming   =version 2              bsize=4096   ascii-ci=0 ftype=1

log      =internal log           bsize=4096   blocks=855, version=2

         =                       sectsz=512   sunit=0 blks, lazy-count=1

realtime =none                   extsz=4096   blocks=0, rtextents=0

[[email protected] /]# mount /dev/vg1/lv1 /mnt 挂载

[[email protected] /]# cd /mnt

[[email protected] mnt]# mkdir 1

[[email protected] mnt]# touch 2.txt

[[email protected] mnt]# echo aaaaa > 2.txt

[[email protected] mnt]# lvs

  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert

  lv1  vg1 -wi-ao---- 100.00m                                                   

[[email protected] mnt]# lvresize -L 300M /dev/vg1/lv1 lv1逻辑卷扩容为300M

  Size of logical volume vg1/lv1 changed from 100.00 MiB (25 extents) to 300.00 MiB (75 extents).

  Logical volume vg1/lv1 successfully resized.

执行xfs扩容时不需要先执行umount卸载逻辑卷

[[email protected] mnt]# xfs_growfs /dev/vg1/lv1 更新逻辑卷信息(更新时必须为挂载状态)

[[email protected] mnt]# df -h

文件系统             容量  已用  可用 已用% 挂载点

/dev/sda3             18G  1.2G   17G    7% /

devtmpfs             483M     0  483M    0% /dev

tmpfs                493M     0  493M    0% /dev/shm

tmpfs                493M  6.8M  486M    2% /run

tmpfs                493M     0  493M    0% /sys/fs/cgroup

/dev/sda1            197M   97M  100M   50% /boot

tmpfs                 99M     0   99M    0% /run/user/0

/dev/mapper/vg1-lv1  297M  5.5M  292M    2% /mnt

 

4.12 lvm讲解

 

扩容卷组:

[[email protected] mnt]# vgextend vg1 /dev/sdb3 sdb3扩展到卷组vg1

  Volume group "vg1" successfully extended

 

4.13 磁盘故障小案例

 

故障现象:开机界面无法进入系统

技术分享图片

故障原因通常是因为磁盘挂载出现问题

 

操作办法:

1 根据提示输入root密码进入操作界面,但此时仍然存在问题;

2 这类故障通常与/etc/fstab文件有关,可能需要对文件做修改,如删除错误或修改配置;

3 进入操作界面后输入journalctl –xb可以查看日志

 

此处由于sdb未格式化,所以无法以xfs文件系统正常挂载导致问题

技术分享图片

技术分享图片

删除/etc/fstab/关于/dev/sdb的那一行配置后问题消失


以上是关于6.19 4.10-4.13的主要内容,如果未能解决你的问题,请参考以下文章

6.19 多态

第十六周 6.13 --- 6.19

6.19 抽象类

6.19 提纲

6.19心得

6.19