参考文献:https://www.jianshu.com/p/d22de7da038c
当前任务给一台CentOS7的虚拟服务器增加一块物理卷(Physical Volume)。
之前通过vSphere Client给该虚拟服务器上已添加一块100G的硬盘
然后开始操作:
1.使用fdisk -l 查看添加的物理硬盘,红圈处 /dev/sdb 107.4G的就是新增加的磁盘。
如果找不到硬盘,就要进行搜索了。
ls /sys/class/scsi_host/
host0 host1 host2
echo '- - -' > /sys/class/scsi_host/host0/scan
echo '- - -' > /sys/class/scsi_host/host1/scan
echo '- - -' > /sys/class/scsi_host/host2/scan
2.使用fdisk /dev/sdb 进行分区。
[root@localhost ~]# fdisk /dev/sdb
Welcome to fdisk (util-linux 2.23.2).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.
Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xdd489a45.
Command (m for help): m #命令行帮助
Command action
a toggle a bootable flag
b edit bsd disklabel
c toggle the dos compatibility flag
d delete a partition
g create a new empty GPT partition table
G create an IRIX (SGI) partition table
l list known partition types
m print this menu
n add a new partition
o create a new empty DOS partition table
p print the partition table
q quit without saving changes
s create a new empty Sun disklabel
t change a partition's system id
u change display/entry units
v verify the partition table
w write table to disk and exit
x extra functionality (experts only)
Command (m for help): p #显示分区信息
Disk /dev/sdb: 107.4 GB, 107374182400 bytes, 209715200 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0xdd489a45
Device Boot Start End Blocks Id System
Command (m for help): n #新建一个分区
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): #默认主分区
Using default response p
Partition number (1-4, default 1): #分区号,默认1
First sector (2048-209715199, default 2048): #分区头,默认2048开始
Using default value 2048
Last sector, +sectors or +size{K,M,G} (2048-209715199, default 209715199): #分区尾部,因为全部划分,所以默认值即为最大
Using default value 209715199
Partition 1 of type Linux and of size 100 GiB is set
Command (m for help): t #更改分区的系统ID
Selected partition 1
Hex code (type L to list all codes): 8e
Changed type of partition 'Linux' to 'Linux LVM'
Command (m for help): w #开始执行操作完成后自动退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@localhost ~]#
此时再fdisk -l查看,如图
因为是整块盘划分,所以100G都划成了/dev/sdb1,当然也可以划成几个。
3.对分区进行LVM操作。
将完成格式化后的/dev/sdb1创建成PV
pvcreate /dev/sdb1
将PV /dev/sdb1创建成VG
vgcreate vg_data /dev/sdb1
将VG vg_data 创建成 LV lv_data
lvcreate -l +100%FREE -n lv_data vg_data
查看LV状态
lvdisplay
4.格式化分区(警告!)
原LV组千万不要格式化!!!!!!!!!!!
本次格式化为ext4格式,扩容根据原分区格式定义格式化格式。
mkfs.ext4 /dev/vg_data/lv_data
5.挂载分区到指定目录
创建data目录
mkdir /data
将逻辑盘/dev/vg_data/lv_data 挂载到/data目录
mount /dev/vg_data/lv_data /data
6.修改/etc/fstab 启动自动挂载硬盘
进入自动挂载文件
vi /etc/fstab
修改自动挂载文件,否则虚拟机重启后无法自动挂载添加的硬盘
# 逻辑盘 挂载目录 格式
/dev/vg_data/lv_data /data ext4 defaults 0 0
再扩展一下vg组 vg_data
又增加了一块50G的硬盘,红圈处 /dev/sdc即为所增加的新硬盘。
1.使用fdisk /dev/sdc进行分区。(全部使用)
pvcreate /dev/sdc1
执行完后执行pvdisplay,已经能看到新增加的pv了。
vgextend vg_data /dev/sdc1
可以看到,vg组vg_data中容量已经增加到150G了。
现在把VG组加到原LV组lv_data中去
lvextend -l +100%FREE /dev/vg_data/lv_data
可以看到显示lv_data已经扩容成功了
执行lvdisplay命令
可是执行df -h命令,发现并没有显示容量增加
还需要更新该组的mapper
先找一下该文件的位置
ls /dev/mapper
执行更新
resize2fs /dev/mapper/vg_data-lv_data
再执行df -h,成功
linux目录结构
/boot Linux启动时,需要的文件
/dev 设备文件
/etc 配置文件
/home 用户家目录
/media 媒体文件
/mnt 挂载文件
/opt 第三方软件
/proc 虚拟化文件
/root 管理员的家目录
/run 进程文件
/srv 压缩过的文件
/sys 系统文件
/usr 安装的软件,共享库
/var 可变数据,日志文件
/tmp 临时文件
/usr/bin 普通用户可以使用的命令
/usr/sbin 超级用户可以使用的命令
/usr/lib 32位库文件
/usr/lib64 64位库文件
拓扑图源:https://blog.csdn.net/pengzhisen123/article/details/79833474