Linux系统LVM逻辑卷创建过程以及自动化脚本
2017-11-28 13:25
711 查看
最近在上海新建机房的时候,给了我2台M2机型服务器,在做初始化的时候发现有一堆磁盘:
其中挂载的只有 /dev/sda,其他都在那闲着。运管那边告诉我这个机型不能做raid。而根据我这边的业务需求,我并不能一次用到这么多分区,所以必须使用LVM合并使用。关于LVM的创建,目前网络上一堆详细教程,用起来也非常简单,这里就只贴一下我的过程。①、用fdisk给每一个磁盘创建一个8e分区:
这样就完成了一块磁盘,接着我们依次将其他 sdc到sdl的磁盘也操作一把。
②、全部完成后,使用 pvcreate 将所有分区转化成物理卷,即添加LVM属性信息并划分PE存储单元:
创建完PV之后,就可以使用 pvdisplay 或 pvs 查看详细信息了,篇幅有限,这里我就不贴了。③、下面我们需要创建一个VG,然后PV都加入到这个卷组当中,卷名可自定义,比如 vg:
同样,在创建好VG以后,我们也可以使用 vgdisplay 或者 vgs 命来来查看VG的信息(略)
④、接着,使用 lvcreate 命令基于VG创建逻辑卷,vg 和 lvm 我们自定义的名称:
同样我们可以使用 lvdisplay 或者 lvs 命令来查看创建好的逻辑卷的信息(略)⑤、格式化创建的逻辑卷:
⑥、挂载分区:
这样,我们就完成了LVM的手工创建过程了,我还有一台M2要弄,而且听运管说以后会继续交付这类机型,我可不想这么苦逼的操作了,光那个创建8e格式分区就已经很坑了。所以,就将上面的操作串成脚本,一键完成:Shell
哦了,就写这么多,以备后用。
12345678910111213 | [root@Centos64:~]# fdisk -l | grep '300.1 GB' | sortDisk /dev/sda: 300.1 GB, 300069052416 bytesDisk /dev/sdb: 300.1 GB, 300069052416 bytesDisk /dev/sdc: 300.1 GB, 300069052416 bytesDisk /dev/sdd: 300.1 GB, 300069052416 bytesDisk /dev/sde: 300.1 GB, 300069052416 bytesDisk /dev/sdf: 300.1 GB, 300069052416 bytesDisk /dev/sdg: 300.1 GB, 300069052416 bytesDisk /dev/sdh: 300.1 GB, 300069052416 bytesDisk /dev/sdi: 300.1 GB, 300069052416 bytesDisk /dev/sdj: 300.1 GB, 300069052416 bytesDisk /dev/sdk: 300.1 GB, 300069052416 bytesDisk /dev/sdl: 300.1 GB, 300069052416 bytes |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | [root@Centos64:~]# fdisk /dev/sdb The device presents a logical sector size that is smaller than the physical sector size. Aligning to a physical sector (or optimal I/O) size boundary is recommended, or performance may be impacted. WARNING: DOS-compatible mode is deprecated. It's strongly recommended to switch off the mode (command 'c') and change display units to sectors (command 'u'). Command (m for help): n #创建 Command action e extended p primary partition (1-4) p #选择主分区 Partition number (1-4): 1 First cylinder (1-36481, default 1): 1 Last cylinder, +cylinders or +size{K,M,G} (1-36481, default 36481): #直接回车选择最大 Using default value 36481 Command (m for help): t #输入t进入类型选择 Selected partition 1 Hex code (type L to list codes): 8e #输入8e格式 Changed system type of partition 1 to 8e (Linux LVM) Command (m for help): w #w保存 |
②、全部完成后,使用 pvcreate 将所有分区转化成物理卷,即添加LVM属性信息并划分PE存储单元:
12345678910111213 | [root@Centos64:~]# pvcreate /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1 /dev/sdh1 /dev/sdi1 /dev/sdj1 /dev/sdk1 /dev/sdl1 Physical volume "/dev/sdb1" successfully created Physical volume "/dev/sdc1" successfully created Physical volume "/dev/sdd1" successfully created Physical volume "/dev/sde1" successfully created Physical volume "/dev/sdf1" successfully created Physical volume "/dev/sdg1" successfully created Physical volume "/dev/sdh1" successfully created Physical volume "/dev/sdi1" successfully created Physical volume "/dev/sdj1" successfully created Physical volume "/dev/sdk1" successfully created Physical volume "/dev/sdl1" successfully created |
1 2 3 | [root@Centos64:~]# vgcreate vg /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1 /dev/sdf1 /dev/sdg1 /dev/sdh1 /dev/sdi1 /dev/sdj1 /dev/sdk1 /dev/sdl1 Volume group "vg" successfully created |
④、接着,使用 lvcreate 命令基于VG创建逻辑卷,vg 和 lvm 我们自定义的名称:
123 | [root@Centos64:~]# lvcreate -l 100%VG -n lvm vg Logical volume "lvm" created |
1 | [root@Centos64:~]# mkfs.ext4 /dev/vg/lvm |
12345678910 | [root@Centos64:~]# mkdir /data[root@Centos64:~]# echo '/dev/vg/lvm /data ext4 noatime,acl,user_xattr 1 2' >> /dev/fstab[root@Centos64:~]# mount -a[root@Centos64:~]# df -hFilesystem Size Used Avail Use% Mounted on/dev/sda1 9.9G 2.1G 7.4G 22% //dev/sda3 20G 370M 19G 2% /usr/localtmpfs 16G 0 16G 0% /dev/shm/dev/sda4 244G 205M 232G 1% /data1/dev/mapper/vg-lvm 3.1T 932M 3.0T 1% /data |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #!/bin/bash partition=/data # 定义最终挂载的名称 vgname=vg # 定义逻辑卷组的名称 lvname=lvm # 定义逻辑卷的名称 code='b c d e f g h i k j l' # 根据分区的实际情况修改 disk= for i in $code do fdisk /dev/sd$i << EOF # 这里自动化完成了所有分区fdisk苦逼的交互步骤 n p 1 1 t 8e w EOF disk="$disk /dev/sd${i}1" # 将所有分区拼起来 done pvcreate $disk vgcreate $vgname $disk lvcreate -l 100%VG -n $lvmname $vgname mkfs.ext4 /dev/$vgname/$lvmname mkdir -p $partition echo "/dev/$vgname/$lvmname $partition ext4 noatime,acl,user_xattr 1 2' >> /dev/fstab mount -a df -h |
相关文章推荐
- GNU/Linux下LVM配置管理以及快照卷、物理卷、卷组、逻辑卷的创建和删除
- Linux LVM逻辑卷配置过程详解(创建,增加,减少,删除,卸载)
- linux下,使用lvm 创建、扩充 、缩减 逻辑磁盘大小,以及相应的文件系统大小
- (转)Linux LVM逻辑卷配置过程详解(创建、扩展、缩减、删除、卸载、快照创建)
- shell脚本编程:Linux的自动化逻辑卷创建脚本
- GNU/Linux下LVM配置管理以及快照卷、物理卷、卷组、逻辑卷的创建和删除
- Linux LVM逻辑卷配置过程详解(创建,增加,减少,删除,卸载)
- Linux LVM逻辑卷配置过程详解(创建,增加,减少,删除,卸载)
- 在Linux如何扩增卷组、逻辑卷以及缩减逻辑卷LVM的过程
- 掌握管理Linux磁盘和分区的方法 创建并挂载文件系统以及 创建并管理LVM
- Linux LVM逻辑卷配置过程详解
- Linux环境下创建、扩展以及缩减LVM
- Android系统Recovery工作原理之使用update.zip升级过程分析(九)---updater-script脚本语法简介以及执行流程
- linux 内核启动过程以及挂载android 根文件系统的过程,以及介绍android 源代码中文件系统部分的浅析
- 从PC机、嵌入式linux、以及android系统的启动过程来总结uboot到底是干嘛的
- Android系统Recovery工作原理之使用update.zip升级过程分析(九)---updater-script脚本语法简介以及执行流程
- shell监控linux系统进程创建脚本分享
- Linux下对lvm逻辑卷分区大小的调整(针对xfs和ext4不同文件系统)
- Linux下对LVM逻辑卷分区大小的调整(针对xfs和ext4不同文件系统)
- Linux--安装虚拟机和Liunx系统过程 以及切换用户