linux7创卷组的命令 linux卷组添加逻辑卷

linux 如何创建卷组

1. 创建一个物理卷

创新互联建站是专业的汕城网站建设公司,汕城接单;提供成都做网站、成都网站制作、成都外贸网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行汕城网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

Pvcreate /dev/sd1

/dev/sd2 /dev/sd3 /dev/sd4

2. 用刚才创建的物理卷创建一个卷组

Vgcreate 卷组名 /dev/sd1

/dev/sd2 /dev/sd3 /dev/sd4

3. 创建逻辑卷

Lvcreate -L

(size) -n (name) 卷组名

4. 创建文件系统

Mkfs.ext3 逻辑卷名(/dev/卷组名/逻辑卷名)

创建挂载点

mkdir /name

mount /dev/卷组名/逻辑卷名 /挂载点

pvcreate /dev/emcpowers1 /dev/emcpowerq1 /dev/emcpowerp1

/dev/emcpowerr1

vgcreate backupvg /dev/emcpowers1 /dev/emcpowerq1

/dev/emcpowerp1 /dev/emcpowerr1

lvcreate –L 790G –n backuplv backupvg

mkfs.ext3 /dev/mapper/backupvg-backuplv

mkdir /backupdb

mount /dev/mapper/backupvg-backuplv /backupdb

Linux文件系统和逻辑卷管理命令(二)

根据前面介绍的分区命令就可以创建分区了,不过需要注意,我们要为某些特定挂载点设置合适的分区大小。CentOS 7 (参考 Red Hat Ent erprise Linux 7 安装手册)至少需要为 /boot 、 / 、 /home 、 swap 这四个挂载点配置分区。下面是这四个挂载点分区大小建议:

下面是可选的挂载点分区:

为各挂载目录创建好分区之后,就可以为其创建文件系统了。

在 Windows 环境下,格式化的操作相对简单。通常的操作步骤是:先打开资源管理器,接着在希望被执行格式化的盘符图标上右击,然后选择“格式化”,再按照提示操作即可。也可以选择“快速格式化”,但要求分区没有坏道。需要注意的是:对硬盘执行格式化操作时,用户需要拥有系统管理员权限(仅限于 Windows Vista 以及此后推出的作业系统)。在 Windows 环境中,除了可以使用图形化的操作界面执行格式化操作之外,也可以在命令提示字符中使用 Diskpart 指令 (仅限于 Windows 2000 及以后的作业系统,包含 Windows PE)进行操作。

在 Unix/Linux 环境下,通常使用命令工具执行格式化操作。需要注意的是:对硬盘执行格式化操作时,用户需要拥有超级用户权限。创建文件系统的常用命令如下:

并非所有文件系统的命令工具都已经默认安装了。要想知道某个文件系统的命令工具是否可用,可以使用 type 命令。

每个文件系统命令都有很多命令行选项,允许你定制如何在分区上创建文件系统。要查看所有可用的命令行选项,可用 man 命令来显示该文件系统命令的手册页面。所有的文件系统命令都允许通过不带选项的简单命令来创建一个默认的文件系统。

为分区创建了文件系统之后,下一步是将它挂载到虚拟目录下的某个挂载点,这样就可以将数据存储在新文件系统中了。你可以将新文件系统通过 mount 命令挂载到虚拟目录中需要额外空间的任何位置。

现在你可以在新分区中保存新文件和目录了! 这种挂载文件系统的方法只能临时挂载文件系统。当重启 Linux 系统时,文件系统并不会自动挂载。要强制 Linux 在启动时自动挂载新的文件系统,可以将其添加到 /etc/fstab 文件。

如果用标准分区在硬盘上创建了文件系统,为已有文件系统添加额外的空间多少是一种痛苦的体验。你只能在同一个物理硬盘的可用空间范围内调整分区大小。如果硬盘上没有地方了,你就必须弄一个更大的硬盘,然后手动将已有的文件系统移动到新的硬盘上。这时候就可以通过将另外一个硬盘上的分区加入已有文件系统,动态地添加存储空间。 Linux 逻辑卷管理器(logical volume manager, LVM)软件包正好可以用来做这个。它可以让你在无需重建整个文件系统的情况下,轻松地管理磁盘空间。

逻辑卷管理的核心在于如何处理安装在系统上的硬盘分区。在逻辑卷管理的世界里,硬盘称作 物理卷(physical volume, PV) 。每个物理卷都会映射到硬盘上特定的物理分区。多个物理卷集中在一起可以形成一个 卷组(volume group, VG) 。逻辑卷管理系统 将卷组视为一个物理硬盘 ,但事实上卷组可能是由分布在多个物理硬盘上的多个物理分区组成的。 卷组提供了一个创建逻辑分区的平台,而这些逻辑分区则包含了文件系统。 整个结构中的最后一层是逻辑卷(logical volume, LV) 。 逻辑卷为 Linux 提供了创建文件系统的分区环境,作用类似于到目前为止我们一直在探讨的 Linux 中的物理硬盘分区。Linux 系统将逻辑卷视为物理分区。 每个逻辑卷可以被格式化成某种文件系统,然后挂载到虚拟目录中某个特定位置 。逻辑卷由 PE (physical extents,即物理区段)组成,PE 为硬盘可供指派给逻辑卷的最小单位(通常为4MB)。

注意,上图中的第三个物理硬盘有一个未使用的分区。通过逻辑卷管理,你随后可以轻松地将这个未使用分区分配到已有卷组:要么用它创建一个新的逻辑卷,要么在需要更多空间时用它来扩展已有的逻辑卷。 类似地,如果你给系统添加了一块硬盘,逻辑卷管理系统允许你将它添加到已有卷组,为某个已有的卷组创建更多空间,或是创建一个可用来挂载的新逻辑卷。这种扩展文件系统的方法要好用得多!

优点

比起正常的硬盘分区管理,LVM 更富于弹性:

这些优点使得 LVM 对服务器的管理非常有用,对于桌面系统管理的帮助则没有那么显著,你需要根据实际情况进行取舍。

缺点

Linux LVM 是由 Heinz Mauelshagen 开发的,于 1998年 发布到了 Linux 社区。它允许你在 Linux 上用简单的命令行命令管理一个完整的逻辑卷管理环境。 Linux LVM 有两个可用的版本。

大部分采用 2.6 或更高内核版本的现代 Linux 发行版都提供对 LVM2 的支持。除了标准的逻辑卷管理功能外, LVM2 还提供了另外一些好用的功能。

Linux LVM 包只提供了命令行程序来创建和管理逻辑卷管理系统中所有组件。有些 Linux 发行版则包含了命令行命令对应的图形化前端,但为了完全控制你的 LVM 环境,最好习惯直接使用这些命令。

此外,还可以使用以下命令来操作逻辑卷:

在手动增加或减小逻辑卷的大小时,要特别小心。逻辑卷中的文件系统需要手动修整来处理大小上的改变。大多数文件系统都包含了能够重新格式化文件系统的命令行程序,比如用于 ext2、 ext3 和 ext4 文件系统的 resize2fs 程序。

第一种方法:直接增大5G,写“+5G”

第二种方法:原来是10G,增大5G就是“15G”

动态扩容示例:

Linux文件系统-LVM逻辑卷

LVM(Logical Volume Manager)卷组管理器,通过对底层物理磁盘的封装,可以将多块物理磁盘组合成逻辑资源池,提供给上层应用使用(如文件系统). LVM的好处是,可以跨物理硬盘为文件系统提供容量,并且可以动态进行分区容量的调整,而不会损坏原有的文件系统.

物理磁盘 :物理存储介质,可以是整块物理存储或一个分区.

物理卷PV(physical volume) :LVM要使用物理磁盘,在物理磁盘的头部写入lvm标签头,就创建了一个PV,PV是组成VG的基本单元.

卷组VG(Volume Group) :VG相当于非LVM系统中的物理硬盘,一个卷组VG由一个或多个PV组成,形成一个存储资源池.

逻辑卷LV(logical volume) :LV相当于非LVM系统中的硬盘分区,LV建立在卷组VG之上,文件系统建立在LV之上.

物理块PE(physical Extent) :创建LV时可以分配的最小存储单元,大小可以指定,默认为4MB

如上是从物理磁盘到lvm逻辑卷的创建过程及映射关系,lv01、lv02被创建后,通过device-mapper映射为逻辑块设备(块设备路径/dev/vg01/lv01、/dev/vg01/lv02),供文件系统使用,通过mkfs.ext4 /dev/vg01/lv02可创建ext4文件系统.

元数据主要是两部分,PV header + metadata,位置一般是在PV的0~2048 sector中,从2048 sector开始是数据区域.

通过pvcreate创建pv时,会将pv header写入物理磁盘,位置一般是在磁盘的第二个sector(512B/sector),lvm扫描磁盘时,通过pv header来识别PV.

pv header主要信息包括,pv uuid、元数据位置和metadata位置.

pv header实例:

metadata记录的是vg和lv的配置信息,以ASCII码的方式写入metadata区域;vg和lv的每次配置变更,都会以追加的方式写入metadata区域,并打上时间戳,该区域写满后,新的变更记录会覆盖最早的一次记录. 进行vgscan时,猜测应该是通过读取最新一次的配置记录,进行激活.

vg配置信息,主要是包含的pv信息.

lv配置信息,主要是lv的起始位置和PE大小.

实例:

pvcreate /dev/vdb1

pvcreate /dev/vdb2

pvcreate /dev/vdb3

vgcreate /dev/vdb1 /dev/vdb2 /dev/vdb3

vgcreate wan /dev/vdb1 /dev/vdb2 /dev/vdb3

lvcreate -L 300M -n lv01 wan

将PV的前2048个sector通过dd拷贝出来,用cat查看如下.

假设我们有一块磁盘 /dev/sdb1 作为应用数据盘使用,以此为例创建lvm分区

先创建物理卷PV,命令: pvcreate /dev/sdb1

创建卷组VG,卷组命名为kylin,命令:vgcreate kylin /dev/sdb1

在VG中创建逻辑分区LV,命令:lvcreate -L 30G -n test kylin

创建逻辑分区后,进行格式化,然后便可以挂载使用.

mkfs.ext4 /dev/kylin/test

mount /dev/kylin/test /data

假设我们在上述基础上,又获得一块磁盘/dev/sdc1进行扩容,将磁盘容量增加到LV分区/dev/kylin/test中,具体操作如下.

先创建物理卷PV,命令: pvcreate /dev/sdc1

将/dev/sdc1添加进VG kylin,命令:vgextend kylin /dev/sdc1

增加LV分区容量,命令:lvextend -L +30G /dev/kylin/test

lvm卷组配置备份

lvm的配置信息默认在/etc/lvm/backup、/etc/lvm/archive/两个目录存在备份,当lvm元数据损坏,lvm卷组读取异常时,可通过备份文件进行恢复.

/etc/lvm/backup: 保留了当前配置的备份

/etc/lvm/archive/:保留了每次配置更新前的备份

实例演示

逻辑卷/dev/wan/lv01

在/dev/wan/lv01上创建文件系统

挂载并创建文件

覆盖/dev/vdb1、/dev/vdb2的lvm元数据,并重启系统,vg已不能识别

通过pvcreate命令修复pv header 和metadata数据.

激活逻辑卷

挂载/dev/wan/lv01成功,说明成功修复

linux查看卷组的命令vgdisplay得出的结果各行是什么意思啊?特别是“VG Access”行

VG Access”行是指他的访问权限:读和写。给你个参考得资料吧,你一看就懂了,其实很简单得。

LVM一种支持在线增大和减小的分区技术

一、PV物理卷

由分区架构而成,为卷组提供空间。

二、VG卷组

由一个或多个物理卷组成,为LV提供空间。

三、LV逻辑卷

从卷组中获取空间,形成一个新的可用的LVM分区。

四、制作逻辑卷。

1、创建PV(在创建PV之前需要创建一个可用的分区,并且ID为8e)

[root@station19 media]# fdisk /dev/hda 对第一块IDE硬盘进行操作。这取决于你的环境。

The number of cylinders for this disk is set to 14593.

There is nothing wrong with that, but this is larger than 1024,

and could in certain setups cause problems with:

1) software that runs at boot time (e.g., old versions of LILO)

2) booting and partitioning software from other OSs

(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): n 新建一个分区

First cylinder (5421-14593, default 5421):

Using default value 5421

Last cylinder or +size or +sizeM or +sizeK (5421-14593, default 14593): +500M 给他500M的空间。

Command (m for help): p 查看一下当前硬盘分区的情况。

Disk /dev/hda: 120.0 GB, 120034123776 bytes

255 heads, 63 sectors/track, 14593 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/hda1 * 1 13 104391 83 Linux

/dev/hda2 14 3837 30716280 83 Linux

/dev/hda3 3838 5112 10241437+ 83 Linux

/dev/hda4 5113 14593 76156132+ 5 Extended

/dev/hda5 5113 5243 1052226 82 Linux swap / Solaris

/dev/hda6 5244 5308 522081 8e Linux LVM

/dev/hda7 5309 5370 497983+ 83 Linux

/dev/hda8 5371 5420 401593+ 8e Linux LVM

/dev/hda9 5421 5482 497983+ 83 Linux

(这是新建的那快分区)

Command (m for help): t 修改分区的表示符

Partition number (1-9): 9 选择对第9个分区进行操作

Hex code (type L to list codes): 8e 将标识符改为8e(只有将标识符改为8e才能支持LVM)

Changed system type of partition 9 to 8e (Linux LVM)

Command (m for help): p 再次查看一下

Disk /dev/hda: 120.0 GB, 120034123776 bytes

255 heads, 63 sectors/track, 14593 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Device Boot Start End Blocks Id System

/dev/hda1 * 1 13 104391 83 Linux

/dev/hda2 14 3837 30716280 83 Linux

/dev/hda3 3838 5112 10241437+ 83 Linux

/dev/hda4 5113 14593 76156132+ 5 Extended

/dev/hda5 5113 5243 1052226 82 Linux swap / Solaris

/dev/hda6 5244 5308 522081 8e Linux LVM

/dev/hda7 5309 5370 497983+ 83 Linux

/dev/hda8 5371 5420 401593+ 8e Linux LVM

/dev/hda9 5421 5482 497983+ 8e Linux LVM

(当前第9快分区的类型变成了8e,LVM)

Command (m for help): w 保存退出

[root@station19 media]# partprobe 重新加载分区,不加载或重启的话当前系统无法识别这个新的分区)

[root@station19 media]# pvcreate /dev/hda9 (将hda9这个分区制作成物理卷)

Physical volume "/dev/hda9" successfully created

[root@station19 media]# pvdisplay 查看PV的内容

--- Physical volume ---

PV Name /dev/hda9

VG Name

PV Size 486.31 MB / not usable 2.31 MB

Allocatable yes

PE Size (KByte) 4096

Total PE 121

Free PE 121

Allocated PE 0

PV UUID 0pE20O-EWqI-JtTY-gmeX-VJck-GUb0-Mxvx5v

(从这些信息可以看出,/dev/hda9这个物理卷不属于任何VG,它的磁盘空间为486M)

2、创建VG

[root@station19 media]# vgcreate vg /dev/hda9

Volume group "vg" successfully created

将hda9这个物理卷加入到vg这个组里(vg为自己定义的名字)

[root@station19 media]# vgdisplay

--- Volume group ---

VG Name vg

System ID

Format lvm2

Metadata Areas 1

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 1

Act PV 1

VG Size 484.00 MB

PE Size 4.00 MB

Total PE 121

Alloc PE / Size 0 / 0

Free PE / Size 121 / 484.00 MB

VG UUID 6yOerB-EExr-sY0E-KFwO-fg0D-9Zol-RypiT5

现在查看一下,vg这个卷组就拥有了484M的空间也就是/dev/hda9这个逻辑卷的空间

3、创建LV

[root@station19 media]# lvcreate -L 300M -n lv vg

Logical volume "lv" created

创建一个LV,并给他指定拥有300M的空间,vg为指定它属于哪个卷组,也就是由哪个卷组为它提供这300M的空间。

[root@station19 media]# lvdisplay

--- Logical volume ---

LV Name /dev/vg/lv

VG Name vg

LV UUID HIc32H-DR98-Ymd1-Flhy-1Z2u-iU1Q-e2znLB

LV Write Access read/write

LV Status available

# open 0

LV Size 300.00 MB

Current LE 75

Segments 1

Allocation inherit

Read ahead sectors auto

- currently set to 256

Block device 253:1

现在查看一下LV信息,现在这个lv属于vg这个卷组并拥有300M的空间

5、格式化文件系统

[root@station19 media]# mkfs.ext3 /dev/vg/lv 将lv这个逻辑卷格式化为ext3文件系统

mke2fs 1.39 (29-May-2006)

Filesystem label=

OS type: Linux

Block size=1024 (log=0)

Fragment size=1024 (log=0)

76912 inodes, 307200 blocks

15360 blocks (5.00%) reserved for the super user

First data block=1

Maximum filesystem blocks=67633152

38 block groups

8192 blocks per group, 8192 fragments per group

2024 inodes per group

Superblock backups stored on blocks:

8193, 24577, 40961, 57345, 73729, 204801, 221185

Writing inode tables: done

Creating journal (8192 blocks): done

Writing superblocks and filesystem accounting information: done

This filesystem will be automatically checked every 39 mounts or

180 days, whichever comes first. Use tune2fs -c or -i to override.

6、挂载

[root@station19 media]# mount /dev/vg/lv /lv 将/dev/vg/lv这个分区挂在到/下的lv下

[root@station19 media]# df -H /lv/

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

/dev/mapper/vg-lv 305M 11M 279M 4% /lv

查看一下/lv这个分区的大小,300M

到现在为止,我们已经成功的创建了一个逻辑卷,但别忘了。逻辑卷最大的功能是增大和减小,下面我们来对逻辑卷进行增大和减小。

7、增大逻辑卷

[root@station19 media]# lvextend -L 500M /dev/vg/lv

Extending logical volume lv to 500.00 MB

Insufficient free space: 50 extents needed, but only 46 available

[root@station19 media]# lvdisplay

--- Logical volume ---

LV Name /dev/vg/lv

VG Name vg

LV UUID HIc32H-DR98-Ymd1-Flhy-1Z2u-iU1Q-e2znLB

LV Write Access read/write

LV Status available

# open 1

LV Size 300.00 MB

Current LE 75

Segments 1

Allocation inherit

Read ahead sectors auto

- currently set to 256

Block device 253:1

这是一个失败的例子,因为lv所属的vg只有484M,所以当我将lv扩增到500M的时候会失败,因为vg无法为lv提供500M的空间。查看一下,lv仍然只有300M。

[root@station19 media]# lvextend -L 480M /dev/vg/lv

Extending logical volume lv to 480.00 MB

Logical volume lv successfully resized

[root@station19 media]# lvdisplay

--- Logical volume ---

LV Name /dev/vg/lv

VG Name vg

LV UUID HIc32H-DR98-Ymd1-Flhy-1Z2u-iU1Q-e2znLB

LV Write Access read/write

LV Status available

# open 1

LV Size 480.00 MB

Current LE 120

Segments 1

Allocation inherit

Read ahead sectors auto

- currently set to 256

Block device 253:1

现在我将lv扩增到480M,480M是vg所允许的空间大小,查看一下现在成功了。Lv被成功的扩增到了480M。

8、增大文件系统

[root@station19 media]# df -H /lv/

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

/dev/mapper/vg-lv 305M 11M 279M 4% /lv

查看一下文件系统大小,lv这个文件系统仍是300M,因为我们之前扩展的只是它的分区大小,文件大小并没有增大,所以我们仍然只能使用300M的空间

[root@station19 media]# resize2fs /dev/vg/lv 480M

resize2fs 1.39 (29-May-2006)

Filesystem at /dev/vg/lv is mounted on /lv; on-line resizing required

Performing an on-line resize of /dev/vg/lv to 491520 (1k) blocks.

The filesystem on /dev/vg/lv is now 491520 blocks long.

[root@station19 media]# df -H /lv

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

/dev/mapper/vg-lv 488M 11M 452M 3% /lv

现在用resize这个工具将/dev/vg/lv这个文件系统扩展到488M,查看一下成功了。

*注:文件系统是建立在分区之上的,分区为我们提供空间,而我们真正能直接使用的是文件系统,例如windows下我们使用的ntfs文件系统一样。而在linux下使用的是ext3格式的文件系统。所以文件系统只能比分区小,不能比分区大。

9、缩小文件系统和分区

(1)减小文件系统时需要现卸载,因为resize这个工具不支持在线减小。

[root@station19 media]# umount /lv 卸载

[root@station19 media]# e2fsck -f /dev/vg/lv

e2fsck 1.39 (29-May-2006)

Pass 1: Checking inodes, blocks, and sizes

Pass 2: Checking directory structure

Pass 3: Checking directory connectivity

Pass 4: Checking reference counts

Pass 5: Checking group summary information

/dev/vg/lv: 11/121440 files (9.1% non-contiguous), 25872/491520 blocks

在减小文件系统之前需要先检查一下分区的完整性。

[root@station19 media]# resize2fs /dev/vg/lv 100M 将文件系统减小到100M

resize2fs 1.39 (29-May-2006)

Resizing the filesystem on /dev/vg/lv to 102400 (1k) blocks.

The filesystem on /dev/vg/lv is now 102400 blocks long.

(2)缩小分区

[root@station19 media]# lvreduce -L 100M /dev/vg/lv

WARNING: Reducing active logical volume to 100.00 MB

THIS MAY DESTROY YOUR DATA (filesystem etc.)

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

Reducing logical volume lv to 100.00 MB

Logical volume lv successfully resized

将分区缩小到100M

[root@station19 media]# mount /dev/vg/lv /lv/

[root@station19 media]# df -H /lv/

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

/dev/mapper/vg-lv 102M 11M 88M 11% /lv

[root@station19 media]# lvdisplay

--- Logical volume ---

LV Name /dev/vg/lv

VG Name vg

LV UUID HIc32H-DR98-Ymd1-Flhy-1Z2u-iU1Q-e2znLB

LV Write Access read/write

LV Status available

# open 1

LV Size 100.00 MB

Current LE 25

Segments 1

Allocation inherit

Read ahead sectors auto

- currently set to 256

Block device 253:1

挂载、查看,成功!文件系统和分区都为100M

10、增大与减小VG

这个很简单,VG是由多个物理卷构成的,只要将物理卷加入VG就可以实现增容,移出就能实现减小。

[root@station19 media]# pvcreate /dev/hda10 将一块新的lvm格式的分区做成物理卷

Physical volume "/dev/hda10" successfully created

[root@station19 media]# vgextend vg /dev/hda10 将hda10这个分区加入到vg这个组

Volume group "vg" successfully extended

[root@station19 media]# vgdisplay

--- Volume group ---

VG Name vg

System ID

Format lvm2

Metadata Areas 2

Metadata Sequence No 5

VG Access read/write

VG Status resizable

MAX LV 0

Cur LV 1

Open LV 1

Max PV 0

Cur PV 2

Act PV 2

VG Size 968.00 MB

PE Size 4.00 MB

Total PE 242

Alloc PE / Size 25 / 100.00 MB

Free PE / Size 217 / 868.00 MB

VG UUID 6yOerB-EExr-sY0E-KFwO-fg0D-9Zol-RypiT5

现在查看一下,VG这个卷组拥有了将近1G的空间。

减小、

root@station19 media]# vgreduce vg /dev/hda10

Removed "/dev/hda10" from volume group "vg"

[root@station19 media]# vgdisplay

--- Volume group ---

VG Name vg

System ID

Format lvm2

Metadata Areas 1

Metadata Sequence No 6

VG Access read/write

VG Status resizable

MAX LV 0

Cur LV 1

Open LV 1

Max PV 0

Cur PV 1

Act PV 1

VG Size 484.00 MB

PE Size 4.00 MB

Total PE 121

Alloc PE / Size 25 / 100.00 MB

Free PE / Size 96 / 384.00 MB

VG UUID 6yOerB-EExr-sY0E-KFwO-fg0D-9Zol-RypiT5

将hda10这个物理卷从VG中移出,再查看,VG又被减小了。

【Linux命令】磁盘管理(逻辑卷与物理卷)

Linux和Windows都采用了MBR的磁盘管理方法,也就是先对一个硬盘进行分区,在对这个一般光盘进行格式化的方法;他们的区别是: Linux系统,是先进行磁盘分区,如果需要使用该分区,将其挂载到对应目录即可;而Windows则是自动将所有分区挂载好 传统的磁盘管理的缺点:不方便进行分区扩充、容易导致文件系统崩溃、不适用于作为生产环境的服务器、拷贝分区的时候要求强制卸载磁盘分区,分区转移时耗费的时间长;

LVM磁盘管理技术 是Linux环境下对磁盘管理的一种技术,是通过一个建立在硬盘和分区之上的逻辑层来提高磁盘分区的灵活性

物理卷(PV):就是真正的物理硬盘或物理分区

卷组(VG):是将多个物理硬盘整合到一起形成的逻辑卷组;也可以视作一块逻辑硬盘

逻辑卷(LV):卷组是一块逻辑硬盘,逻辑硬盘必须分区之后才能使用;逻辑卷可以视作是卷组的逻辑分区

物理扩展(PE):物理扩展是用来保存数据的最小单元

系统首先把物理硬盘合并为卷组;再通过卷组分区;将卷组(逻辑硬盘)分成逻辑分区(逻辑卷)进行使用;

把物理硬盘分成分区,也可以使用一整块的物理硬盘;把物理硬盘分区建立为物理卷(PV)也可以把整块物理硬盘都建立为物理卷;把刚刚划分的物理卷合为卷组(VG)卷组就已经可以动态的调整大小了,最后把卷组划分成逻辑卷,其中逻辑卷也是可以随时划分大小的

pvcreate命令在系统中一般用于创建物理卷;

语法结构

在使用这个命令的时候不要对存放Linux系统的盘符进行进行使用;我们在创建物理卷的时候都是对逻辑分区进行创建的;扩展分区(Extend)不能进行创建物理卷

pvdisplay 命令用于查看当前的分区情况

语法格式以及常用参数:

查看我们刚刚创建的物理卷

pvremove命令常用于删除对应的物理卷

语法结构:

删除我们刚刚创建的物理卷

vgcreate 命令的作用是将一个或多个物理卷整合成一个卷组;在创建卷组之前我们需要保证系统中有足够的除系统存放卷本身的物理卷(使用pvscan查看)需要注意的是,存放Linux的系统物理卷不能被划分到自定义卷组中、 常用参数:-s:设定PE(最小物理存储单元)的大小、-l:最大逻辑卷数量、-p:允许存在的最大物理卷数量

语法结构:

将我们刚刚创建物理卷添加到卷组之中

vgdisplay 这个命令可以用来查看我们创建的卷组; 常见的参数 -s 卷组信息以短格式输出 ;vgdisplay可以查看对应卷组的简短信息,所以相对于pvdisplay用处又大了那么一点

语法格式:

查看刚刚创建的卷组和某一个卷组的信息

同样:vgscan 命令也可以查看当前卷组使用情况的简短信息

vgremove 命令的作用是删除指定的卷组

语法结构:

删除我们刚刚创建的卷组

注意:当删除含有逻辑卷的卷组的时候系统会提示是否删除对应卷组和对应逻辑卷,只有在两个都输入:y之后系统才会删除对应的卷组

lvcreate 命令作用是在一个指定的卷组中创建一块逻辑卷,前提是要求有指定的卷组; 常用参数:-L:规定创建的逻辑卷大小(直接写大小就可以)、-l:通过PE划分逻辑卷的大小(后面接的数字是PE的个数)

语法结构:

在指定的卷组里创建逻辑卷

lvdisplay 命令可用于查看逻辑卷的详细信息,也可以用来查看指定逻辑卷的详细信息 参数:-m:查看对应逻辑卷的挂载信息

语法结构:

检查指定的逻辑卷,并查看指定逻辑卷的挂载信息:

管理逻辑卷大小的常用命令是lvextend 命令和 lvreduce 命令分别表示逻辑卷大小的扩充和减少, 其中lvextend命令表示逻辑卷大小扩充,常用参数 -L(指的是扩充的具体大小)、-l(指的是扩充的LE块数量);lvextend命令表示逻辑卷大小的减小,常用参数-L(指的是减小的具体大小)、-l(指的是减小的LE块数量)

语法结构:

对我们指定的两个逻辑卷分别进行容量的增加和减少,并挂载对应的逻辑卷

LINUX常用命令3、su、df、du、磁盘分区

一、 su 、sudo 、限制root远程登陆

su- username

带用户环境切换用户

su- -c"touch /tmp/123.txt"user1

以user1用户创建/tmp/123.txt 文件

没有家目录的用户可以用模板新建家目录

mkdir-p /home/user4chownuser4:user4  /home/user4cp /etc/skel/.bash*/home/user4chown-R user4:user4 /home/user4/

普通用户临时授权root用户权限去执行一条命令

visudo

可以查看sudo配置文件

在命令前加入NOPASSWD: 执行sudo时就不需要再输入用户的密码

例子:

User_Alias USER=chen1,chen2

Cmnd_Alias SU=/usr/bin/su

USER ALL=(ALL) NOPASSWD:SU

禁止root用户远程登陆

vi/etc/ssh/sshd_configPermitRootLoginno//修改此处systemctl restart sshd.service

二、df命令、du命令、磁盘分区

df-h

自动适应文件大小的单位,查看磁盘使用情况

free

可以查看swap的使用情况

df-i

查看各个分区inode的使用情况

有的时候明明磁盘的内存还有剩余,但是却无法写入新文件,这时候就可能是inode用完了。

du-sh

自动适应单位显示文件或文件夹大小

du不加后缀的时候和du -l 一样,显示文件夹下文件的大小

du-lh

自动适应单位显示文件夹下文件的大小

fdisk-l

列出linux 的磁盘信息

fdisk/dev/sdb

m帮助,直接按p是查看分区情况 n新建分区 p建立主分区 e扩展分区 d删除分区,起始扇区默认2048就可以啦,last 扇区 +2G 就是将分区一的大小设置为2G;输错命令用ctrl +u清除

BLOCKS是分区的大小,system是分区的类型,主分区和逻辑分区都是linux,扩展分区是extended

主分区的分区号可以为空,而逻辑分区的分区号必须连续;逻辑分区以sdb5开始,分区之后输入w可以保存分区,q则不保存操作直接退出

三、磁盘格式化、磁盘挂载、手动增加swap空间

1.磁盘格式化

cat/etc/filesystems  //查看系统支持的文件格式,centos7默认xfs,centos6默认ext4

mount//查看系统的文件格式

mke2fs

-t指定文件格式 ext4 、ext3

-b指定块大小,文件都比较大时,块可以大一点,比如视频、高清图片

比较小时可以将块设置小一点,加快读取速度

-m指定给root用户预留的空间大小,1就是1%,0.1就是0.1%

-i指定多少字节占一个inode号

如果不指定-t文件格式,则默认为ext2格式

mkfs.ext4/dev/sdb1  //将分区格式化为ext4格式mkfs.xfs  -f/dev/sdb1  //将分区格式化为xfs格式\

分区只有挂载了才可以使用mount查询到,没有挂载的分区可以用

blkid/dev/sdb1

mkfs.ext4 == mke2fs -t ext4

mkfs.ext4与mke2fs支持的选项相同

xfs格式只能用mkfs.xfs 创建

2.磁盘挂载

mount/dev/sdb  /mnt///将 /dev/sdb挂载到mnt下 mount UUID="2d8e7749-f2f7-4de5-b1b9-b6bf758d2f37"/mnt///这里的uuid是用blkid /dev/sdb 查到的

卸载磁盘

umount/dev/sdb

如果当前目录在/dev/sdb下则需要退出当前分区

也可以直接用

umount-l/dev/sdb  umount-l/mnt/

mount

man mount 可以查看mount的具体用法

/defaults 可以查找默认用法

找到下面这一行

Use default options: rw, suid, dev, exec, auto, nouser, and async.

rw读写权限

suid可以设置suid权限

dev,系统默认不用管

exec可执行

auto自动挂载

nouser是否允许普通用户挂载,默认不允许

async 不实时同步内存的东西到磁盘(减轻磁盘压力)

mount -o remount,rw/dev/sdb  //重新挂载

vi/etc/fstab  //系统开机都挂载哪些文件

四、手动增加虚拟内存

ddif=/dev/zeroof=/tmp/newdisk  bs=1M count=100//创建虚拟磁盘

if指定源,一般写/dev/zero,它是unix系统特有的一个文件,可以源源不断的提供'0',of指定目标文件,bs指定块大小,count指定块的数量

mkswap -f /tmp/newdisk//格式化为swapswapon  /tmp/newdisk//将新建的swap加载free-m//显示内存使用大小,-m指定单位为mswapoff  /tmp/newdisk//将虚拟内存卸载

五、lvm

lvm创建过程

创建物理卷创建卷组创建逻辑分区格式化为需要的格式挂载分区

具体介绍日志

fdisk /dev/sdb

t 选择分区,8e //将分区转换为lvm格式 ,w退出

创建物理卷

1.

yumprovides"/*/pvcreate"

通配查询pvcreate命令的软件包名

yum install -y lvm2//安装lvm

partprobe //生成分区文件

2.

pvcreate/dev/sdb1pvcreate  /dev/sdb2pvcreate  /dev/sdb3

pvdisplay查看已经创建的物理卷

创建卷组

1.pvs

可以直观的查看物理卷有哪些

2.创建卷组,将sdb1和sdb2设置为一个卷组

vgcreatevg1 /dev/sdb1 /dev/sdb2

vgdisplay可以查看卷组信息

创建逻辑分区

lvcreate-L100M-n lv1 vg1

从vg1卷组中创建名字为lv1大小100M的逻辑分区

-L指定分区大小

-n指定分区名字

将分区格式化为ext4格式

mkfs.ext4 /dev/vg1/lv1

然后将文件挂载

mount/dev/vg1/lv1 /mnt

ext4扩容逻辑分区

umount/mnt///卸载分区lvresize -L200M/dev/vg1/lv1  //扩展分区e2fsck -f/dev/vg1/lv1  //检查磁盘是否有错误resize2fs/dev/vg1/lv1  //更新逻辑分区大小,不然重新挂载会无法识别扩容的大小

ext4缩容

umount/mnt///卸载分区e2fsck -f/dev/vg1/lv1    //检查磁盘是否有错误resize2fs/dev/vg1/lv1 100M  //将分区缩小为100Mlvresize -L100M/dev/vg1/lv1    //重新设置卷大小

xfs扩容

1.扩容与缩容不会更改分区中的文件,xfs只可以扩容不可以缩容;

2.如果磁盘已经挂载要先umount 卸载

然后格式化为xfs.

mkfs.xfs-f/dev/vg1/lv1

XFS的扩容不需要先卸载,直接扩容即可

lvresize -L200M /dev/vg1/lv1  xfs_growfs/dev/vg1/lv1  //更新分区大小

关于扩容缩容的总结

ext4可以扩容和缩容而且需要卸载后操作,xfs只可以扩容,不需要卸载

ext4扩容

lvresize -L 100M /dev/vg1/lv1e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1

缩容

e2fsck-f/dev/vg1/lv1resize2fs /dev/vg1/lv1 100Mlvresize -L 100M /dev/vg1/lv1

xfs扩容

lvresize-L100M/dev/vg1/lv1xfs_growfs /dev/vg1/lv1

在分区空间用完之后就需要扩容卷组,然后再扩容

卷组扩容

vgextendvg1 /dev/sdb3

将 /dev/sdb3加入到vg1卷组


网站栏目:linux7创卷组的命令 linux卷组添加逻辑卷
文章源于:http://scjbc.cn/article/dosscdj.html

其他资讯