Linux Lvm创建详解

Disk管理

LVM(Logical Volume Manager)逻辑卷管理
建立在硬盘和分区之上,文件系统之下的逻辑层,能在保持原有数据不变的状况下动态调整磁盘容量
/boot分区不能创建在逻辑卷上(跟启动引导相关)必须独立出来

LVM概念  创建时在硬盘头部预留一个块,用于保存LVM属性
PV物理卷--->VG卷组--->LV逻辑卷--->格式化--->挂载使用文件系统

2、LVM管理命令
功能          物理卷          卷组          逻辑卷
scan(扫描)     pvscan          vgscan          lvscan
create(创建)     pvcreate     vgcreate     lvcreate
display(显示)     pvdisplay     vgdisplay     lvdisplay
remove(移除)     pvremove     vgremove     lvremove
extend(扩充)               vgextend     lvextend
reduce(减小)               vgreduce     lvreduce
3、LVM用法
pvcreate  设备名                    创建PV
vgcreate  卷组名  物理卷名1 物理卷名2          创建VG
lvcreate  -L  大小  -n  逻辑卷名  卷组名     创建LVM
4、增大LVM
lvextend  -L  +大小  /dev/卷组名/逻辑卷名       扩大LVM
resize2fs /dev/卷组名/逻辑卷名               更新文件系统
5、减小LVM
umount /dev/vg01/lv01          卸载分区   
e2fsck -f /dev/vg01/lv01      检查分区    
resize2fs /dev/vg01/lv01 450M     先减小文件系统    
lvreduce -L 450M /dev/vg01/lv01     再减小分区

[[email protected] ~]# fdisk  -l

Disk /dev/hdb doesn‘t contain a valid partition table

[[email protected] ~]# fdisk /dev/hdb

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-44384, default 1):
Using default value 1
Last cylinder or +size or +sizeM or +sizeK (1-44384, default 44384): +2G

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (4136-44384, default 4136):
Using default value 4136
Last cylinder or +size or +sizeM or +sizeK (4136-44384, default 44384): +2G

Command (m for help): n
Command action
   e   extended
   p   primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (8271-44384, default 8271):
Using default value 8271
Last cylinder or +size or +sizeM or +sizeK (8271-44384, default 44384): +2G

Command (m for help): p

Device Boot      Start         End      Blocks   Id  System
/dev/hdb1               1        4135     1953756   83  Linux
/dev/hdb2            4136        8270     1953787+  83  Linux
/dev/hdb3            8271       12405     1953787+  83  Linux

Command (m for help): t
Partition number (1-4): 1
Hex code (type L to list codes): 8e
Changed system type of partition 1 to 8e (Linux LVM)
Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): 8e
Changed system type of partition 2 to 8e (Linux LVM)
Command (m for help): t
Partition number (1-4): 3
Hex code (type L to list codes): 8e
Changed system type of partition 3 to 8e (Linux LVM)
Command (m for help): p
[[email protected] ~]# pvcreate /dev/hdb[123]
[[email protected] ~]# pvdisplay /dev/hdb[123]
[[email protected] ~]# vgscan
[[email protected] ~]# vgcreate vg01 /dev/hdb[123]
[[email protected] ~]# vgdisplay vg01
[[email protected] ~]# lvscan
[[email protected] ~]# lvcreate -L 3G -n lvm01 vg01
[[email protected] ~]# mkfs.ext3 /dev/vg01/lvm01
[[email protected] ~]# mkdir /lvm01
[[email protected] ~]# mount /dev/vg01/lvm01 /lvm01
[[email protected] ~]# cd /lvm01
[[email protected] lvm01]# touch 1
[[email protected] ~]# df -Th

[[email protected] ~]# lvdisplay /dev/vg01/lvm01
[[email protected] ~]# lvextend -L +512M /dev/vg01/lvm01
[[email protected] ~]# lvdisplay /dev/vg01/lvm01
[[email protected] ~]# resize2fs /dev/vg01/lvm01
[[email protected] ~]# df -Th
文件系统                类型    容量  已用 可用 已用% 挂载点
/dev/mapper/vg01-lvm01  ext3    3.5G   72M  3.3G   3% /lvm01

[[email protected] ~]# umount /dev/vg01/lvm01
[[email protected] ~]# e2fsck -f /dev/vg01/lvm01
[[email protected] ~]# resize2fs /dev/vg01/lvm01 2G
[[email protected] ~]# lvreduce -L 2G /dev/vg01/lvm01
[[email protected] ~]# mount /dev/vg01/lvm01 /lvm01/
[[email protected] ~]# df -Th
文件系统                类型    容量  已用 可用 已用% 挂载点
/dev/mapper/vg01-lvm01  ext3    2.0G   70M  1.9G   4% /lvm01

磁盘配额
方法一:
[[email protected] ~]# mount -o remount,usrquota,grpquota /dev/vg01/lvm01 /lvm01/
[[email protected] ~]# mount
/dev/mapper/vg01-lvm01 on /lvm01 type ext3 (rw,usrquota,grpquota)
[[email protected] ~]# chmod 777 /lvm01/
方法二:
[[email protected] ~]# vi /etc/fstab     
/dev/vg01/lvm01         /lvm01                  ext3    defaults,usrquota,grpquota 0 0
在你要做配额的分区后面添加usrquota,grpquota
[[email protected] ~]# umount /lvm01/ && mount -a
[[email protected] ~]# mount -o remount /dev/vg01/lvm01
[[email protected] ~]# mount     查看所配额分区后面有没(rw,usrquota,grpquota)
/dev/mapper/vg01-lvm01 on /lvm01 type ext3 (rw,usrquota,grpquota)

[[email protected] ~]# quotacheck -cmug /dev/vg01/lvm01  创建配额文件
[[email protected] ~]# quotacheck -augcv
[[email protected] ~]# ll /lvm01/aquota.*
-rw------- 1 root root 6144 09-06 23:59 /lvm01/aquota.group
-rw------- 1 root root 6144 09-06 23:59 /lvm01/aquota.user
[[email protected] ~]# useradd jack
[[email protected] ~]# passwd jack
[[email protected] ~]# edquota -u jack
Disk quotas for user jack (uid 500):
  Filesystem                   blocks       soft       hard     inodes     soft     hard
  /dev/mapper/vg01-lvm01         0          80000     100000       0        40        50

Filesystem   表示本行配置记录对应的文件系统,配额作用范围               
blocks       表示用户当前已用的硬盘容量
inodes       表示用户当前拥有的文件数量
soft         第三列的soft表示硬盘容量的软限制、第六列的soft表示文件数量的软限制
hard          第四列的hard表示硬盘容量的硬限制、第七列的hard表示文件数量的硬限制

edquota -u 用户
        -g 组
        -t 时间
        -p 复制模板

[[email protected] ~]# edquota -t
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
  Filesystem             Block grace period     Inode grace period
  /dev/mapper/vg01-lvm01         3days                 3days

[[email protected] ~]# quotaon -ugv /lvm01/     开启配额
/dev/mapper/vg01-lvm01 [/lvm01]: group quotas turned on
/dev/mapper/vg01-lvm01 [/lvm01]: user quotas turned on
[[email protected] ~]# su - jack               切换用户
[[email protected] ~]$ dd if=/dev/zero of=/lvm01/test bs=1M count=70
70+0 records in
70+0 records out
73400320 bytes (73 MB) copied, 0.10486 seconds, 700 MB/s
[[email protected] ~]$ dd if=/dev/zero of=/lvm01/test bs=1M count=79
dm-0: warning, user block quota exceeded.
79+0 records in
79+0 records out
82837504 bytes (83 MB) copied, 0.167987 seconds, 493 MB/s
[[email protected] ~]$ dd if=/dev/zero of=/lvm01/test bs=1M count=110
dm-0: warning, user block quota exceeded.
dm-0: write failed, user block limit reached.
dd: 写入 “/lvm01/test”: 超出磁盘限额
98+0 records in
97+0 records out
102293504 bytes (102 MB) copied, 0.152686 seconds, 670 MB/s

dd if=哪里来 of=到哪里去 bs=大小 count=次数
quota  -u 用户     查看用户配额情况
       -g 组    查看组配额情况
edquota -p  已设置配额账户  -u 未设置配额账户
quotaoff -a   关闭配额
repquota -a

时间: 2024-12-25 14:33:52

Linux Lvm创建详解的相关文章

8.Linux的LVM使用详解

8.Linux的LVM使用详解 命令概览:所使用的命令(#代表是数字)pvcreate /dev/sd[xx]vgcreate -s # vgname /dev/sd[]-s 指定PE的大小   默认大小为4Mvgextend vgname /dev/sd[xx]lvcreate -n lvname -L # /dev/vgname扩容lvslvextend -L # /dev/vgname/lvnameresize2fs /dev/vgname/lvnamelvs缩减umount /dev/v

Linux磁盘阵列技术详解(二)--raid 1创建

我在Linux磁盘阵列技术详解(一)里已经详细介绍了几种RAID磁盘阵列方式,原理以及创建raid 0 的详细步骤.那么这篇文档就着重讲解如何创建raid 1的技术: 步骤如下: ① 分区 同样我们还是以一块硬盘的不同分区为例,实际工作中应该是不同的硬盘才对. 具体分区步骤不再赘述! 分区后结果如下图所示: ② 创建raid 1 mdadm -C -v /dev/md1 -l 1 -n 2 -x 1 /dev/sdc1 /dev/sdc2 /dev/sdc3 或者 mdadm -C -v /de

【转】Linux 网络工具详解之 ip tuntap 和 tunctl 创建 tap/tun 设备

---------------------------------------------------------- Linux 网络工具详解之 ip tuntap 和 tunctl 创建 tap/tun 设备 本文首发于我的公众号 Linux云计算网络(id: cloud_dev),专注于干货分享,号内有 10T 书籍和视频资源,后台回复「1024」即可领取,欢迎大家关注,二维码文末可以扫. 在前面一篇文章中,我们已经介绍了 tap/tun 的基本原理,本文将介绍如何使用工具 tunctl 和

linux FTP配置详解

一.vsftpd说明: LINUX下实现FTP服务的软件很多,最常见的有vsftpd,Wu-ftpd和Proftp等.Red Hat Enterprise Linux中默认安装的是vsftpd. 访问FTP服务器时需要经过验证,只有经过了FTP服务器的相关验证,用户才能访问和传输文件.vsftpd提供了3种ftp登录形式:  (1)anonymous(匿名帐号) 使用anonymous是应用广泛的一种FTP服务器.如果用户在FTP服务器上没有帐号,那么用户可以以anonymous为用户名,以自己

linux rm 命令详解及使用方法实战【初级】

rm:删除命令 前言: windows中的删除命令大家都不陌生,linux中的删除命令和windows中有一个共同特点,那就是危险,前两篇linux mkdir 命令详解及使用方法实战[初级]中我们就提到了rm命令,现在我们来详细介绍一下linux中删除文件和目录的命令, rm命令,rm是常用的命令,该命令的功能为删除一个目录中的一个或多个文件或目录,它也可以将某个目录及其下的所有文件及子目录均删除.对于链接文件,只是删除了链接,原有文件均保持不变. 名称 rm - remove files o

红帽Linux故障定位技术详解与实例(3)

红帽Linux故障定位技术详解与实例(3) 在线故障定位就是在故障发生时, 故障所处的操作系统环境仍然可以访问,故障处理人员可通过console, ssh等方式登录到操作系统上,在shell上执行各种操作命令或测试程序的方式对故障环境进行观察,分析,测试,以定位出故障发生的原因. AD:2014WOT全球软件技术峰会北京站 课程视频发布 5.用kdump工具内核故障定位实例 A) 部署Kdump 部署 kdump 收集故障信息的步骤如下: (1)设置好相关的内核启动参数 在 /boot/grub

linux dd 命令详解

1 磁盘管理 1.1 dd 1.1.1 功能说明 读取,转换并输出数据. 1.1.2 语法 dd [bs=<字节数>][cbs=<字节数>][conv=<关键字>][count=<区块数>][ibs=<字节数>][if=<文件>][obs=<字节数>][of=<文件>][seek=<区块数>][skip=<区块数>][--help][--version] 1.1.3 补充说明 dd可从标

linux ls -l 详解[转]

linux ls -l 详解[转] 有几个字段老是记不住,就记载这里吧 ls -l 列表信息详解 我们平时用ls -l 命令查看一个目录下的文件和子目录的详悉信息时,会得到一个详细的文件和目录名列表.这个列表包含了文件的属性,所属用户,所属组,创建时间,文件大小等等信息.这些信息到底是什么意思呢?有很多初学者对这些不太了解,因此想详悉讲解一下用ls -l命令得到的文件列表每一个字段的意思 以笔者电脑的/root目录为例: [[email protected] root]# ll 总用量 4055

linux screen 命令详解

linux screen 命令详解 一.背景 系统管理员经常需要SSH 或者telent 远程登录到Linux 服务器,经常运行一些需要很长时间才能完成的任务,比如系统备份.ftp 传输等等.通常情况下我们都是为每一个这样的任务开一个远程终端窗口,因为它们执行的时间太长了.必须等待它们执行完毕,在此期间不能关掉窗口或者断开连接,否则这个任务就会被杀掉,一切半途而废了. 二.简介 GNU Screen是一款由GNU计划开发的用于命令行终端切换的自由软件.用户可以通过该软件同时连接多个本地或远程的命