20180618 Task 4.7 - 4.13

20180613 TASK —— 4.7 - 4.13
6.13 Task
4.7/4.8 磁盘挂载 
4.9 手动增加 swap 空间 
4.10/4.11/4.12 lvm 讲解
4.13 磁盘故障小案例

4.7/4.8 磁盘挂载
  1. 一个磁盘可以不分区, 直接格式化;
## 直接将磁盘格式化为 xfs , 将之前的分区删除, 重新去格式化, 使用 fdisk 时要指定一个大盘, 不要去弄单独的一个区 
[root@arron-01 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。

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


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

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x9c7b9224

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     6293503     3145728   83  Linux

命令(输入 m 获取帮助):d
已选择分区 1
分区 1 已删除

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

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x9c7b9224

   设备 Boot      Start         End      Blocks   Id  System

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

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

## 格式化为 xfs 
[root@arron-01 ~]# mkfs.xfs -f /dev/sdb 
meta-data=/dev/sdb               isize=512    agcount=4, agsize=655360 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=2621440, 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@arron-01 ~]# blkid /dev/sdb
/dev/sdb: UUID="78aa7c15-cd26-4bcd-8916-553828db8f8e" TYPE="xfs"

## 要去Linux 系统访问, 必须要挂载到一个挂载点(实际上就是一个目录)上; 
  1. mount 挂载命令 , umount 卸载命令; 在挂载目录下, umount -l filesystem file / umount /mnt/ , 不在目录下, umount filesystem file /umount /mnt/
## 挂载磁盘到挂载点, 相当于磁盘的入口 
[root@arron-01 ~]# mount /dev/sdb /mnt/
[root@arron-01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        28G  1.1G   27G    4% /
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/sdb         10G   33M   10G    1% /mnt

## 查看挂载后的磁盘类型
[root@arron-01 ~]# mount
......
/dev/sda3 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
selinuxfs on /sys/fs/selinux type selinuxfs (rw,relatime)
systemd-1 on /proc/sys/fs/binfmt_misc type autofs (rw,relatime,fd=32,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=11969)
debugfs on /sys/kernel/debug type debugfs (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,seclabel)
mqueue on /dev/mqueue type mqueue (rw,relatime,seclabel)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
tmpfs on /run/user/0 type tmpfs (rw,nosuid,nodev,relatime,seclabel,size=100816k,mode=700)
/dev/sdb on /mnt type xfs (rw,relatime,seclabel,attr2,inode64,noquota) 

## 如果要卸载怎么办 
[root@arron-01 ~]# cd /mnt
[root@arron-01 mnt]# ls
[root@arron-01 mnt]# touch 1.txt 2.txt ; mkdir 234;ls
1.txt  234  2.txt

## 卸载命令, umount; 无法卸载, 解决方法是退出来,  再卸载
[root@arron-01 mnt]# umount /dev/sdb
umount: /mnt:目标忙。
        (有些情况下通过 lsof(8) 或 fuser(1) 可以
         找到有关使用该设备的进程的有用信息)

[root@arron-01 mnt]# cd /root/
[root@arron-01 ~]# umount /dev/sdb
[root@arron-01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        28G  1.1G   27G    4% /
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

## 也可以在挂载点下 umount -l 去卸载
[root@arron-01 ~]# mount /dev/sdb /mnt/
[root@arron-01 ~]# ls /mnt/
1.txt  234  2.txt
[root@arron-01 ~]# cd /mnt/
[root@arron-01 mnt]# umount /mnt
umount: /mnt:目标忙。
        (有些情况下通过 lsof(8) 或 fuser(1) 可以
         找到有关使用该设备的进程的有用信息)
[root@arron-01 mnt]# umount -l /mnt/
[root@arron-01 mnt]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        28G  1.1G   27G    4% /
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
  1. mount -o rw/ro remount
## mount -o remount,rw /dev/foo /dir

## rw 可读可写 , suid 允许挂载的分区文件设置 suid 权限(像 /etc/passwd 文件) , dev 跟设备有关系, exec 是否可执行, nouser 是否允许普通用户挂载 , async 内存的数据随时写到磁盘上去 , sync 内存和磁盘的数据时时同步, 会增大磁盘的压力
defaults
              Use default options: rw, suid, dev, exec, auto, nouser, and async.
  1. /etc/fstab 系统默认挂载哪些磁盘和分区的文件, 都是在这个文件下配置

UUID : UUID 是 通用唯一识别码(Universally Unique Identifier)的缩写,是一种软件建构的标准,亦为开放软件基金会组织在分布式计算环境领域的一部分

UUID 的目的是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的 UUID。在这样的情况下,就不需考虑数据库建立时的名称重复问题。目前最广泛应用的 UUID,即是微软的 Microsoft's Globally Unique Identifiers (GUIDs),而其他重要的应用,则有 Linux ext2/ext3 档案系统、LUKS 加密分割区、GNOME、KDE、Mac OS X 等等

[root@arron-01 ~]# vi /etc/fstab


#
# /etc/fstab
# Created by anaconda on Sat Jun  9 03:13:13 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=f602fb66-640c-4b32-b5b7-ca89a69a18e4 /                       xfs     defaults        0 0
UUID=ca970cf1-34b7-498c-ab50-357b49f32212 /boot                   xfs     defaults        0 0
UUID=aa2dda5d-d8c9-4f56-85c6-01aaef4fb15f swap                    swap    defaults        0 0

## 设置挂载, /dev/sdb 可以设置为它的 UUID(通过 blkid 查询)
/dev/sdb                                  /mnt                    xfs     defaults        0 0

## /etc/fstab 每一列(field)的意思如下                

第一列 : 这里的 UUID 也可以替换为挂载的分区 /dev/sda (举例) 
第二列 : 挂载点, /mnt 等
第三列 : 分区格式, xfs /swap 
第四列 : 挂载选项, 默认是 defaults 
第五列 : dump 是否备份, 早期还有用, 现在没用了; 0 是临时不备份, 1 是备份 
第六列 : 设置优先级, 文件系统重启时检测的顺序, 数字 1 是 root 要检测, 2 是其他用户要检测 , 0 是不检测 

## man command / filesystem(not fully route file)
NAME
       fstab - static information about the filesystems

The root filesystem should be specified with a fs_passno of 1, and
              other filesystems should have a fs_passno of 2 
If the sixth field is not present or zero, a value of
              zero is returned and fsck will assume that the filesystem does not need to be checked.

## 在 /etc/fstab 里边写入文件后还要执行 mount 才能挂载成功
[root@arron-01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        28G  1.4G   27G    5% /
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
[root@arron-01 ~]# umount /mnt/
umount: /mnt/:未挂载
[root@arron-01 ~]# mount UUID="78aa7c15-cd26-4bcd-8916-553828db8f8e" /mnt/
[root@arron-01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        28G  1.4G   27G    5% /
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/sdb         10G   33M   10G    1% /mnt 

4.9 手动增加 swap 空间
  1. swap 没必要设置成很大的空间, 现在 SSD 硬盘很贵, 最多设置成 8G 就可以了, 后期可以手动增加 swap

1.1 模拟磁盘,

## dd 操作磁盘, 读写磁盘, if 从哪里读, /dev/zero Linux 的倒零器(源源不断的产生 0), of 写入 0 的目的地 , bs 块的大小 (也可以设置成 4k) , count 表示数量 , newdisk 的总大小为 100M 
[root@arron-01 ~]# dd if=/dev/zero of=/tmp/newdisk bs=1M count=100

## 模拟磁盘的快慢跟虚拟磁盘的读写速度的快慢
[root@arron-01 ~]# dd if=/dev/zero of=/tmp/newdisk bs=1M count=100 
记录了100+0 的读入
记录了100+0 的写出
104857600字节(105 MB)已复制,3.08193 秒,34.0 MB/秒

## 查看大小
[root@arron-01 ~]#  ls -lh /tmp/newdisk
-rw-r--r--. 1 root root 100M 6月  14 22:28 /tmp/newdisk
[root@arron-01 ~]# du -sh /tmp/newdisk
100M	/tmp/newdisk

  1. 格式化新增的模拟磁盘

swap 是特有的文件系统 , 需要用 mkswap 去格式化它

[root@arron-01 ~]# mkswap -f /tmp/newdisk
正在设置交换空间版本 1,大小 = 102396 KiB
无标签,UUID=b8ecaeac-4088-4b92-828a-b17cde6d8853

[root@arron-01 ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            984         124         180           6         679         680
Swap:          2047           0        2047 
  1. 加模拟的磁盘
[root@arron-01 ~]# swapon /tmp/newdisk
swapon: /tmp/newdisk:不安全的权限 0644,建议使用 0600。
## 虽然提示不安全, 但模拟的磁盘容量还是加上了 
[root@arron-01 ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            984         124         180           6         679         680
Swap:          2147           0        2147

## 为了安全, 权限更改为 0600 
[root@arron-01 ~]# chmod 600 /tmp/newdisk

  1. 如果不想要了, 可以删除它
[root@arron-01 ~]# swapoff /tmp/newdisk
[root@arron-01 ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:            984         124         180           6         679         680
Swap:          2047           0        2047
[root@arron-01 ~]# rm -f /tmp/newdisk
[root@arron-01 ~]# ls /tmp/newdisk
ls: 无法访问/tmp/newdisk: 没有那个文件或目录
4.10/4.11/4.12 lvm 讲解
  1. LVM 可以很方便的扩容和缩容磁盘空间, 但有有一定的局限性: 如果数据损坏, 磁盘上划分的物理分区的 LVM 恢复起来有些麻烦

  2. LVM 分布图如下, 磁盘 --> 物理卷(磁盘分区) --> 卷组 --> 逻辑卷 (格式化, 且挂载到系统去)

LVM 分布图

  1. 准备磁盘分区 : fdisk /dev/sdb --> 创建三个新分区, 分别 1G --> t (改变分区类型为 8e)

3.1 格式化磁盘标签

[root@arron-01 ~]# fdisk /dev/sdb
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.
欢迎使用 fdisk (util-linux 2.23.2)。

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


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

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
Disk identifier: C419B25A-8B78-4716-9D4D-5F9EB5446F85


#         Start          End    Size  Type            Name
 1         2048      1953791    953M  Microsoft basic primary
 2      3907584      5859327    953M  Microsoft basic primary
 3      5861376      9764863    1.9G  Microsoft basic extended

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

## 将之前划分好的磁盘分区格式化 
[root@arron-01 ~]# parted mklabel gpt /dev/sdb
错误: 无法对设备 mklabel - 没有那个文件或目录 做 stat 操作。
重试/Retry/放弃/Cancel? cancel
[root@arron-01 ~]# parted /dev/sdb mklabel gpt
警告: 正在使用 /dev/sdb 上的分区。
忽略/Ignore/放弃/Cancel? ignore
警告: The existing disk label on /dev/sdb will be destroyed and all data on this disk will be lost. Do you want
to continue?
是/Yes/否/No? yes                                                         
错误: Partition(s) 1 on /dev/sdb have been written, but we have been unable to inform the kernel of the change,
probably because it/they are in use.  As a result, the old partition(s) will remain in use.  You should reboot
now before making further changes.
忽略/Ignore/放弃/Cancel? ingore                                           
parted: invalid token: ingore
忽略/Ignore/放弃/Cancel? ignore                                           
信息: You may need to update /etc/fstab.

[root@arron-01 ~]# parted /dev/sdb print
Model: VMware, VMware Virtual S (scsi)
Disk /dev/sdb: 10.7GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start  End  Size  File system  Name  标志


## 在 /etc/fstab 里边删除之前更新的那一行  
[root@arron-01 ~]# vim /etc/fstab 

UUID=f4637728-8318-4478-8a48-e79c95fa2482 /mnt                    ext4     defaults       0 0

## 如下是错误的格式转换方法 
[root@arron-01 ~]# mke2fs -t ext4 /dev/sdb
mke2fs 1.42.9 (28-Dec-2013)
/dev/sdb is entire device, not just one partition!
无论如何也要继续? (y,n) y
/dev/sdb is apparently in use by the system; will not make a 文件系统 here!
[root@arron-01 ~]# fdisk -l

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

   设备 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    62914559    29154304   83  Linux
WARNING: fdisk GPT support is currently new, and therefore in an experimental phase. Use at your own discretion.

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:gpt
Disk identifier: 1BF8B49B-42C5-496B-BF7B-36A8E9732EA3


#         Start          End    Size  Type            Name

[root@arron-01 ~]# parted /dev/sdb mklabel ext4
parted: invalid token: ext4
新的磁盘标签类型? y                                                      
parted: invalid token: y
新的磁盘标签类型? yes                                                    
parted: invalid token: yes
新的磁盘标签类型?                                                        
新的磁盘标签类型?                                                        
新的磁盘标签类型? YES                                                    
parted: invalid token: YES
新的磁盘标签类型? 错误: 需要磁盘标签类型。 

## 正确的转换磁盘标签类型 
[root@arron-01 ~]# parted -s /dev/sdb mklabel msdos
错误: 正在使用 /dev/sdb 上的分区。

## 那就卸载然后再增加新的磁盘 
[root@arron-01 ~]# fdisk -l

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

   设备 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    62914559    29154304   83  Linux

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

3.2 磁盘分区

[root@arron-01 ~]# fdisk -l

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

   设备 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    62914559    29154304   83  Linux

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节 

## 划分磁盘分区
[root@arron-01 ~]# fdisk -l

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

   设备 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    62914559    29154304   83  Linux

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节

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

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

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

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

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x28c52cc5

   设备 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/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x28c52cc5

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     2099199     1048576   83  Linux

## 更改分区 Id , System 就变成了 Linux LVM , 这样才能做物理卷 
命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):8e
已将分区“Linux”的类型更改为“Linux LVM”

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

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x28c52cc5

   设备 Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     2099199     1048576   8e  Linux LVM

## 这样就创建了三个分区 
命令(输入 m 获取帮助):p

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x28c52cc5

   设备 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 

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

Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@arron-01 ~]# fdisk -l

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

   设备 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    62914559    29154304   83  Linux

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x28c52cc5

   设备 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 

3.3 准备三个物理卷

pvcreate /dev/sdb1
 pvcreate /dev/sdb2
 pvcreate /dev/sdb3

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

创建物理卷如下

[root@arron-01 ~]# pvcreate /dev/sdb1
-bash: pvcreate: 未找到命令
## 查找命令包的两个命令, yum search command / yum provides "/*/command"  

[root@arron-01 ~]# yum search pvcreate
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.nju.edu.cn
 * epel: mirrors.tongji.edu.cn
 * extras: centos.ustc.edu.cn
 * updates: mirrors.aliyun.com
警告:没有匹配 pvcreate 的软件包
No matches found

[root@arron-01 ~]# yum provides "/*/pvcreate"
已加载插件:fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * epel: mirror01.idc.hinet.net
 * extras: ftp.sjtu.edu.cn
 * updates: mirrors.aliyun.com
1:bash-completion-2.1-6.el7.noarch : Programmable completion for Bash
源    :base
匹配来源:
文件名    :/usr/share/bash-completion/completions/pvcreate



7:lvm2-2.02.177-4.el7.x86_64 : Userland logical volume management tools
源    :base
匹配来源:
文件名    :/usr/sbin/pvcreate

## 安装包 lvm ( yum install -y lvm2 )
[root@arron-01 ~]# yum install -y lvm2

## 创建物理卷 
[root@arron-01 ~]# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created.
[root@arron-01 ~]# pvcreate /dev/sdb2 ; pvcreate /dev/sdb3
  Physical volume "/dev/sdb2" successfully created.
  Physical volume "/dev/sdb3" successfully created.

如果创建的分区还不存在, 需要执行命令 partprobe

mark

清除签名

mark

3.4 查看创建的分区 pvdisplay / pvs

[root@arron-01 ~]# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created.
[root@arron-01 ~]# pvcreate /dev/sdb2 ; pvcreate /dev/sdb3
  Physical volume "/dev/sdb2" successfully created.
  Physical volume "/dev/sdb3" successfully created.
[root@arron-01 ~]# pvdisplay 
  "/dev/sdb3" is a new physical volume of "1.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb3
  VG Name               
  PV Size               1.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               Y3oYkf-QvhJ-oMz3-Vmy2-MWDo-SYS1-ILYoet
   
  "/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               bYz30y-YY9l-5KHf-yH1o-Tfpu-oPsg-2A7jDw
   
  "/dev/sdb2" is a new physical volume of "1.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb2
  VG Name               
  PV Size               1.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               9wyW5E-uh0x-JXQK-JxPD-F2tI-FPri-RObnRd
   
[root@arron-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.5 创建卷组

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

## 查看卷组 vgdisplay / vgs 

[root@arron-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               KPZyet-Gzz2-6dov-fPfX-in1y-FyYp-n36KUJ

[root@arron-01 ~]# vgs
  VG  #PV #LV #SN Attr   VSize VFree
  vg1   2   0   0 wz--n- 1.99g 1.99g

3.6 创建逻辑卷 lvcreate -L 100M -n lv1 vg1 ; -L 指定大小 , -n 指定逻辑卷名称; lvremove /dev/vgname/lvname 删除逻辑卷

## 有了卷组后就可以创建逻辑卷了
[root@arron-01 ~]# lvcreate -L 100M -n lv1 vg1
[root@arron-01 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/vg1/lv1
  LV Name                lv1
  VG Name                vg1
  LV UUID                Acr0cL-6or9-1Urf-k4pS-L9wi-4ptK-IHD4TF
  LV Write Access        read/write
  LV Creation host, time arron-01, 2018-06-17 21:45:08 +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
   
[root@arron-01 ~]# lvs
  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv1  vg1 -wi-a----- 100.00m 

3.7 对创建好的逻辑卷格式化 : mkfs.ext4 /dev/vgname/lvname ; 先将文件系统格式化为 ext4, 因为 xfs 对后面的扩容缩容有影响

[root@arron-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: 完成

3.8 挂载 mount /dev/vgname/lvname mountpoint

## 如下可以看到挂载的目录和挂载后的目录名称不一样, 前者是 /dev/vg1/lv1 , 后者是 /dev/mapper/vg1-lv1  

[root@arron-01 ~]# mount /dev/vg1/lv1 /mnt/
[root@arron-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             28G  1.5G   27G    6% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                492M     0  492M    0% /dev/shm
tmpfs                492M  7.5M  485M    2% /run
tmpfs                492M     0  492M    0% /sys/fs/cgroup
/dev/sda1            197M  102M   96M   52% /boot
tmpfs                 99M     0   99M    0% /run/user/0
/dev/mapper/vg1-lv1   93M  1.6M   85M    2% /mnt

## 实际上他们两个指向了同一个文件 
[root@arron-01 ~]# ls -l /dev/vg1/lv1
lrwxrwxrwx. 1 root root 7 6月  17 21:50 /dev/vg1/lv1 -> ../dm-0
[root@arron-01 ~]# ls -l /dev/mapper/vg1-lv1 
lrwxrwxrwx. 1 root root 7 6月  17 21:50 /dev/mapper/vg1-lv1 -> ../dm-0 
[root@arron-01 ~]# ls -l /dev/dm-0
brw-rw----. 1 root disk 253, 0 6月  17 22:34 /dev/dm-0

## 在挂载的目录 /mnt 下创建目录和文件, 并对文件写入内容 
[root@arron-01 ~]# mkdir /mnt/617
[root@arron-01 ~]# touch /mnt/1.txt;echo "121212" >> /mnt/1.txt 

3.9 扩容逻辑卷; 逻辑卷存在是为了更好地扩容和缩容, 缩容比较少

扩容 lvresize -L 200M /dev/vgname/lvname , -L 指定大小

## 扩容逻辑卷 
lvresize -L 300M  /dev/vg1/lv1  重新设置卷大小

 e2fsck -f /dev/vg1/lv1 检查磁盘错误  (ext4执行, ext3/2 也可以)

 resize2fs /dev/vg1/lv1 更新逻辑卷信息(ext4执行, ext3/2 也可以)

 xfs_growfs /dev/vg1/lv1  xfs文件系统需要执行 


## 扩容 
[root@arron-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. 

## 发觉逻辑卷还是之前的大小 (100M)
[root@arron-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             28G  1.5G   27G    6% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                492M     0  492M    0% /dev/shm
tmpfs                492M  7.5M  485M    2% /run
tmpfs                492M     0  492M    0% /sys/fs/cgroup
/dev/sda1            197M  102M   96M   52% /boot
tmpfs                 99M     0   99M    0% /run/user/0
/dev/mapper/vg1-lv1   93M  1.6M   85M    2% /mnt

## 卸载 
[root@arron-01 ~]# umount /dev/mapper/vg1-lv1

[root@arron-01 ~]# lvresize -L 200M /dev/vg1/lv1
  New size (50 extents) matches existing size (50 extents). 

## 检查磁盘错误 e2fsck -f /dev/vg1/lv1 
[root@arron-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), 8899/102400 blocks


## 更新逻辑卷信息 (如果不去更新, 就不能识别新的逻辑卷大小) resize2fs /dev/vgname/lvname 

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

## 重新 mount 
[root@arron-01 ~]# mount /dev/vg1/lv1 /mnt 
[root@arron-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             28G  1.5G   27G    6% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                492M     0  492M    0% /dev/shm
tmpfs                492M  7.5M  485M    2% /run
tmpfs                492M     0  492M    0% /sys/fs/cgroup
/dev/sda1            197M  102M   96M   52% /boot
tmpfs                 99M     0   99M    0% /run/user/0
/dev/mapper/vg1-lv1  190M  1.6M  175M    1% /mnt 

## 查看 mount 下的文件是否存在 
[root@arron-01 ~]# ls /mnt
1.txt  617  lost+found 

## 如果因为扩容而导致在扩容过程中新建的目录或文件不存在了, 那扩容就没有意义了 
[root@arron-01 ~]# cat /mnt/1.txt
121212

4.0 缩容 —— 缩减逻辑卷 (xfs 不支持)

先umount

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

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

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

## 基本上和扩容, 不同在于顺序 
[root@arron-01 ~]# umount /mnt

## 检查磁盘错误(ext)
[root@arron-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/49400 files (7.7% non-contiguous), 11887/204800 blocks

## 更新逻辑卷信息(ext)
[root@arron-01 ~]# resize2fs /dev/vg1/lv1 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.

## 重新设置卷大小 
[root@arron-01 ~]# lvresize -L 100M /dev/vg1/lv1
  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. 

## 查看缩容后的逻辑卷 
[root@arron-01 ~]# lvdisplay
  --- Logical volume ---
  LV Path                /dev/vg1/lv1
  LV Name                lv1
  VG Name                vg1
  LV UUID                Acr0cL-6or9-1Urf-k4pS-L9wi-4ptK-IHD4TF
  LV Write Access        read/write
  LV Creation host, time arron-01, 2018-06-17 21:45:08 +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
   
[root@arron-01 ~]# lvs
  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv1  vg1 -wi-a----- 100.00m 

## 重新挂载 
[root@arron-01 ~]# mount /dev/vg1/lv1 /mnt
[root@arron-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             28G  1.5G   27G    6% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                492M     0  492M    0% /dev/shm
tmpfs                492M  7.5M  485M    2% /run
tmpfs                492M     0  492M    0% /sys/fs/cgroup
/dev/sda1            197M  102M   96M   52% /boot
tmpfs                 99M     0   99M    0% /run/user/0
/dev/mapper/vg1-lv1   93M  1.6M   85M    2% /mnt

## 并不会因为缩容而导致文件有问题, 如果原逻辑卷有超过 100M 的内容, 如果逻辑卷减到 100M, 那肯定会出问题 
[root@arron-01 ~]# ls -l /mnt
总用量 16
-rw-r--r--. 1 root root     7 6月  17 22:01 1.txt
drwxr-xr-x. 2 root root  1024 6月  17 22:00 617
drwx------. 2 root root 12288 6月  17 21:50 lost+found

  1. xfs 文件系统扩容操作, xfs 文件系统不支持缩容
## 卸载并查看分区 
[root@arron-01 ~]# umount /mnt
[root@arron-01 ~]# df -h
文件系统        容量  已用  可用 已用% 挂载点
/dev/sda3        28G  1.5G   27G    6% /
devtmpfs        481M     0  481M    0% /dev
tmpfs           492M     0  492M    0% /dev/shm
tmpfs           492M  7.5M  485M    2% /run
tmpfs           492M     0  492M    0% /sys/fs/cgroup
/dev/sda1       197M  102M   96M   52% /boot
tmpfs            99M     0   99M    0% /run/user/0 

## 重新格式化 
[root@arron-01 ~]# mkfs.xfs -f /dev/vg1/lv1
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
[root@arron-01 ~]# blkid
/dev/sda1: UUID="9e9d939b-7b13-4c26-b956-d2e2ef0d0dc2" TYPE="xfs" 
/dev/sda2: UUID="a9df1da7-288d-46b3-8614-a4327f358c31" TYPE="swap" 
/dev/sda3: UUID="9efe0c94-2bab-4cf7-a5c8-9f94c1fb417b" TYPE="xfs" 
/dev/sdb1: UUID="bYz30y-YY9l-5KHf-yH1o-Tfpu-oPsg-2A7jDw" TYPE="LVM2_member" 
/dev/sdb2: UUID="9wyW5E-uh0x-JXQK-JxPD-F2tI-FPri-RObnRd" TYPE="LVM2_member" 
/dev/sdb3: UUID="Y3oYkf-QvhJ-oMz3-Vmy2-MWDo-SYS1-ILYoet" TYPE="LVM2_member" 
/dev/sr0: UUID="2018-05-03-20-55-23-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos" 
/dev/mapper/vg1-lv1: UUID="09b53ee8-4d47-49ef-ac2a-63cbb7a2ea6d" TYPE="xfs"

## 在 /mnt 下创建目录和文件, 并对文件写入一些内容 
[root@arron-01 ~]# mkdir /mnt/2018;touch /mnt/2.txt;echo "121212" >> /mnt/2.txt;ls /mnt
2018  2.txt
[root@arron-01 ~]# cat /mnt/2.txt
121212

## 在扩容过程中 ext 需要卸载再继续扩容, xfs 也需要 
[root@arron-01 ~]# lvresize -L 300M /dev/vg1/lv1;lvdisplay;lvs
  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.
  --- Logical volume ---
  LV Path                /dev/vg1/lv1
  LV Name                lv1
  VG Name                vg1
  LV UUID                Acr0cL-6or9-1Urf-k4pS-L9wi-4ptK-IHD4TF
  LV Write Access        read/write
  LV Creation host, time arron-01, 2018-06-17 21:45:08 +0800
  LV Status              available
  # open                 1
  LV Size                300.00 MiB
  Current LE             75
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0
   
  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
  lv1  vg1 -wi-ao---- 300.00m 

## 发觉扩容还没显示 
[root@arron-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             28G  1.5G   27G    6% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                492M     0  492M    0% /dev/shm
tmpfs                492M  7.5M  485M    2% /run
tmpfs                492M     0  492M    0% /sys/fs/cgroup
/dev/sda1            197M  102M   96M   52% /boot
tmpfs                 99M     0   99M    0% /run/user/0
/dev/mapper/vg1-lv1   97M  5.2M   92M    6% /mnt

## 卸载再挂载
[root@arron-01 ~]# mount /dev/vg1/lv1 /mnt
mount: /dev/mapper/vg1-lv1 已经挂载或 /mnt 忙
       /dev/mapper/vg1-lv1 已经挂载到 /mnt 上
[root@arron-01 ~]# umount -l /mnt
[root@arron-01 ~]# mount /dev/vg1/lv1 /mnt

## xfs文件系统需要执行这一步才能完成扩容 —— xfs_growfs /dev/vg1/lv1 , 而不需要执行(ext 文件系统的操作步骤)  " e2fsck -f /dev/vg1/lv1 检查磁盘错误 " 和 " resize2fs /dev/vg1/lv1 更新逻辑卷信息 "
[root@arron-01 ~]# xfs_growfs /dev/vg1/lv1
meta-data=/dev/mapper/vg1-lv1    isize=512    agcount=4, agsize=6400 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=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               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 25600 to 76800
[root@arron-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             28G  1.5G   27G    6% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                492M     0  492M    0% /dev/shm
tmpfs                492M  7.5M  485M    2% /run
tmpfs                492M     0  492M    0% /sys/fs/cgroup
/dev/sda1            197M  102M   96M   52% /boot
tmpfs                 99M     0   99M    0% /run/user/0
/dev/mapper/vg1-lv1  297M  5.5M  292M    2% /mnt
  1. 扩展卷组
fdisk /dev/sdb  新增/dev/sdb5(逻辑分区8e)  2G

 pvcreate /dev/sdb5

 vgextend vg1 /dev/sdb5

 lvresize -L 100M  /dev/vg1/lv1  重新设置卷大小
## 当逻辑卷的空间耗完卷组时, 就要想办法给卷组扩容了, 
[root@arron-01 ~]# vgs
  VG  #PV #LV #SN Attr   VSize VFree 
  vg1   2   1   0 wz--n- 1.99g <1.70g

6.1 卷组扩容

[root@arron-01 ~]# fdisk -l

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

   设备 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    62914559    29154304   83  Linux

磁盘 /dev/sdb:10.7 GB, 10737418240 字节,20971520 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x28c52cc5

   设备 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

磁盘 /dev/mapper/vg1-lv1:314 MB, 314572800 字节,614400 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节 

## 卷组扩容  vgextend vgname /dev/sdbname
[root@arron-01 ~]# vgextend vg1 /dev/sdb3
  Volume group "vg1" successfully extended 

[root@arron-01 ~]# vgdisplay
  --- Volume group ---
  VG Name               vg1
  System ID             
  Format                lvm2
  Metadata Areas        3
  Metadata Sequence No  13
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                1
  Open LV               1
  Max PV                0
  Cur PV                3
  Act PV                3
  VG Size               <2.99 GiB
  PE Size               4.00 MiB
  Total PE              765
  Alloc PE / Size       75 / 300.00 MiB
  Free  PE / Size       690 / <2.70 GiB
  VG UUID               KPZyet-Gzz2-6dov-fPfX-in1y-FyYp-n36KUJ
   
[root@arron-01 ~]# vgs
  VG  #PV #LV #SN Attr   VSize  VFree 
  vg1   3   1   0 wz--n- <2.99g <2.70g 

6.2 逻辑卷扩容 lvresize -L 100M /dev/vgname/lvname , 6.1 是扩容卷组, 现在是逻辑卷扩容

[root@arron-01 ~]# lvresize -L 1100M /dev/vg1/lv1
  Size of logical volume vg1/lv1 changed from 300.00 MiB (75 extents) to 1.07 GiB (275 extents).
  Logical volume vg1/lv1 successfully resized.
[root@arron-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             28G  1.5G   27G    6% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                492M     0  492M    0% /dev/shm
tmpfs                492M  7.5M  485M    2% /run
tmpfs                492M     0  492M    0% /sys/fs/cgroup
/dev/sda1            197M  102M   96M   52% /boot
tmpfs                 99M     0   99M    0% /run/user/0
/dev/mapper/vg1-lv1  297M  5.5M  292M    2% /mnt
[root@arron-01 ~]# xfs_growfs /dev/vg1/lv1
meta-data=/dev/mapper/vg1-lv1    isize=512    agcount=12, agsize=6400 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=76800, 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 76800 to 281600

## 扩容成功
[root@arron-01 ~]# df -h
文件系统             容量  已用  可用 已用% 挂载点
/dev/sda3             28G  1.5G   27G    6% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                492M     0  492M    0% /dev/shm
tmpfs                492M  7.5M  485M    2% /run
tmpfs                492M     0  492M    0% /sys/fs/cgroup
/dev/sda1            197M  102M   96M   52% /boot
tmpfs                 99M     0   99M    0% /run/user/0
/dev/mapper/vg1-lv1  1.1G  6.5M  1.1G    1% /mnt 
4.13 磁盘故障小案例

  1. 写了一行配置到 /etc/fstab 里边, 做完 Lvm 试验后, 重启系统, 发觉无法进入系统, 问题如下

mark

  1. 以后在生产环境中遇到类似的问题了, 那往往是磁盘挂载出现问题了

2.1 需要输入 root 密码

2.2 进入界面, 编辑 /etc/fstab, 删除增加的那一行

mark

2.3 保存, 退出来, reboot, 最后远程登录看看是否可行

转载于:https://my.oschina.net/u/3869385/blog/1831581

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值