lvm讲解 磁盘故障小案例

lvm讲解

Linux提供的逻辑盘卷管理(LVM,LogicalVolumeManager)机制完美的解决了在零停机前提下可以自如对文件系统的大小进行调整,可以方便实现文件系统跨越不同磁盘和分区。

步骤:

1创建磁盘分区

090817_vkSB_3771583.png

修改分区类型为8e(lvm)

091015_TLem_3771583.png

091051_n9sT_3771583.png

2创建物理卷

小知识:如果只知道命令,不知道哪个包安装的,可以用yum provides "/*/[命令名]" 搜索

093454_Lxxw_3771583.png

先安装lvm包,运行命令yum install -y lvm2

pvcreate /dev/sdb1    创建物理卷
pvcreate /dev/sdb2
pvcreate /dev/sdb3

pvdisplay             列出当前物理卷
pvremove /dev/sdb3    删除物理卷

 将sdb1,2,3创建成物理卷

[root@glinux-01 ~]# pvcreate /dev/sdb2
WARNING: xfs_external_log signature detected on /dev/sdb2 at offset 17408. Wipe it? [y/n]: y
  Wiping xfs_external_log signature on /dev/sdb2.
WARNING: xfs_external_log signature detected on /dev/sdb2 at offset 18432. Wipe it? [y/n]: y
  Wiping xfs_external_log signature on /dev/sdb2.
  Physical volume "/dev/sdb2" successfully created.
[root@glinux-01 ~]# pvcreate /dev/sdb3
  Physical volume "/dev/sdb3" successfully created.

注意:如果创建不成功,可能是缺失/dev/sdb1文件,用命令partprobe(重新加载分区列表

查看当前物理卷pvdisplay或pvs

[root@glinux-01 ~]# 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

3创建卷组

vgcreate [卷组名] [包含的物理卷]

[root@glinux-01 ~]# vgcreate vg1 /dev/sdb1 /dev/sdb2
  Volume group "vg1" successfully created

vgdisplay 查看卷组信息或vgs

[root@glinux-01 ~]# 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               pR2eXX-9wpb-Ayhk-P6RP-rCdS-rXcj-mKfXMa

4划分逻辑分区lvcreate

例:lvcreate -L 100M -n lv1 vg1 (-L指定大小 -n 只能逻辑分区名称  vg1从哪个卷组分出)

[root@glinux-01 ~]# lvcreate -L 100M -n lv1 vg1
  Logical volume "lv1" created.

5格式化和挂载

mkfs.ext4 /dev/vg1/lv1

[root@glinux-01 ~]# mkfs.ext4 /dev/vg1/lv1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=1024 (log=0)
分块大小=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
25688 inodes, 102400 blocks
5120 blocks (5.00%) reserved for the super user
第一个数据块=1
Maximum filesystem blocks=33685504
13 block groups
8192 blocks per group, 8192 fragments per group
1976 inodes per group
Superblock backups stored on blocks: 
	8193, 24577, 40961, 57345, 73729

Allocating group tables: 完成                            
正在写入inode表: 完成                            
Creating journal (4096 blocks): 完成
Writing superblocks and filesystem accounting information: 完成 

挂载mount /dev/vg1/lv1 /mnt/

mount /dev/vg1/lv1 /mnt/

[root@glinux-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             23G  1.2G   22G    6% /
devtmpfs             357M     0  357M    0% /dev
tmpfs                367M     0  367M    0% /dev/shm
tmpfs                367M  5.2M  362M    2% /run
tmpfs                367M     0  367M    0% /sys/fs/cgroup
/dev/sda1            197M   97M  100M   50% /boot
tmpfs                 74M     0   74M    0% /run/user/0
/dev/mapper/vg1-lv1   93M  1.6M   85M    2% /mnt

扩容逻辑卷lvresize

  • ext4扩容

先取消挂载umount /mnt

lvresize -L 200M /dev/vg1/lv1  重新设置逻辑卷大小

[root@glinux-01 ~]# lvresize -L 200M /dev/vg1/lv1
  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.

检测磁盘错误(ext4执行)

[root@glinux-01 ~]# 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), 8898/102400 blocks

更新逻辑卷信息(ext4执行)

[root@glinux-01 ~]# resize2fs /dev/vg1/lv1
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vg1/lv1 is mounted on /mnt; on-line resizing required
old_desc_blocks = 1, new_desc_blocks = 2
The filesystem on /dev/vg1/lv1 is now 204800 blocks long.

重新挂载

110952_mE39_3771583.png

  • xfs扩容

1. 格式化 mkfs.xfs /dev/vg1/lv1

[root@glinux-01 ~]# mkfs.xfs /dev/vg1/lv1
mkfs.xfs: /dev/vg1/lv1 appears to contain an existing filesystem (ext4).
mkfs.xfs: Use the -f option to force overwrite.
[root@glinux-01 ~]# mkfs.xfs -f /dev/vg1/lv1
meta-data=/dev/vg1/lv1           isize=512    agcount=4, agsize=12800 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=51200, 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

2 挂载 mount /dev/vg1/lv1 

3重新设置大小lvresize -L 300M  /dev/vg1/lv1 

4更新卷信息 xfs_growfs /dev/vg1/lv1 

缩容逻辑卷(xfs不支持)

先umount

e2fsck -f  /dev/vg1/lv1 检查磁盘错误(ext4)

resize2fs /dev/vg1/lv1 100M 更新逻辑卷信息(ext4)

lvresize -L 100M /dev/vg1/lv1 重新设置卷大小

扩展卷组

步骤:1fdisk /dev/sdb 新增逻辑分区/dev/sdb5(8e)

           2pvcreate dev/sdb5 创建物理卷

          3vgextend vg1 /dev/sdb5 将物理卷加入卷组vg1中

          4lvresize -L 100M /dev/vg1/lv1 重新设置逻辑分区大小

磁盘故障小案例

  1. 输入root账号
  2. vi /etc/fstab 删除最下面一行,保存退出
    3 重启服务器

转载于:https://my.oschina.net/u/3771583/blog/1622831

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值