问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

linux里lvm 用来干什么

发布网友 发布时间:2022-04-21 19:53

我来回答

4个回答

热心网友 时间:2022-04-08 08:04

对于Linux用户而言,在安装一台Linux机器的时候,遇到的问题之一就是给各分区估计和分派足够的硬盘空间。无论对一个正在为服务器寻找空间的系统管理员,还是一个磁盘即将用尽的普通用户来说,这都是一个非常常见的问题。解决的方法通常是使用符号链接,或者一些调整分区大小的工具(比如parted)。但是,这只是一个暂时性的解决办法,不久,我们又会面临同样的问题。

  如果你是一个站点的系统管理员,管理着数量众多的、连接在Internet之上的服务器,那么你每关机一分钟,都会给公司带来很大损失。此外,使用这种方法,在修改了分区表之后,每一次都得重新启动系统。LVM(逻辑卷管理程序)可以帮助我们解决这些问题。

LVM简介

  Linux LVM可以使管理工作更加轻松。相对于硬盘和分区,LVM是从更高的层次来看待存储空间的。在使用LVM之前,先来看一些将要使用到的相关概念。

物理卷

  物理卷是指硬盘分区或者从逻辑上看起来和硬盘分区类似的设备(比如RAID设备)。

逻辑卷

  一个或者多个物理卷组成一个逻辑卷。对于LVM而言,逻辑卷类似于非LVM系统中的硬盘分区。逻辑卷可以包含一个文件系统(比如/home或者/usr)。

卷组

  一个或者多个逻辑卷组成一个卷组。对于LVM而言,卷组类似于非LVM系统中的物理硬盘。卷组把多个逻辑卷组合在一起,形成一个可管理的单元。

document.body.clientWidth-450) {this.height=(document.body.clientWidth-450)*this.height/this.width;this.width=document.body.clientWidth-450}" border="0">

LVM工作方式

  下面来看一看LVM到底是怎样工作的。每一个物理卷都被分成几个基本单元,即所谓的PE(Physical Extents)。PE的大小是可变的,但是必须和其所属卷组的物理卷相同。在每一个物理卷里,每一个PE都有一个惟一的编号。PE是一个物理存储里可以被LVM寻址的最小单元。

  每一个逻辑卷也被分成一些可被寻址的基本单位,即所谓的LE(Logical Extents)。在同一个卷组中,LE的大小和PE是相同的,很显然,LE的大小对于一个卷组中的所有逻辑卷来说都是相同的。

  在一个物理卷中,每一个PE都有一个惟一的编号,但是对于逻辑卷这并不一定是必需的。这是因为当这些PE ID号不能使用时,逻辑卷可以由一些物理卷组成。因此,LE ID号是用于识别LE以及与之相关的特定PE的。正如前面所提到的,LE和PE之间是一一对应的。每一次存储区域被寻址访问或者LE的ID被使用,都会把数据写在物理存储设备之上。

  你可能会觉得奇怪,有关逻辑卷和逻辑卷组的所有元数据都存到哪儿去了。类似的在非LVM系统中,有关分区的数据是存储在分区表中,而分区表被存储在了每一个物理卷的起始位置。VGDA(卷组描述符区域)功能就好象是LVM的分区表,它存储在每一个物理卷的起始处。

  VGDA由以下信息组成:

  ·一个PV描述符
  ·一个VG描述符
  ·LV描述符
  ·一些PE描述符

  当系统启动LV时,VG被激活,并且VGDA被加载至内存。VGDA帮助识别LV的实际存储位置。当系统想要访问存储设备时,由VGDA建立起来的映射机制就用于访问实际的物理位置来执行I/O操作。

开始工作

  下面具体看一看如何使用LVM。

  第一步:配置内核。在安装LVM之前,内核之中应该有LVM模块,可以使用以下的步骤来完成:

  #cd /usr/src/linux
  #make menuconfig

  选择Multi-device Support (RAID and LVM)子菜单,选中以下两个选项:

  
[*] Multiple devices driver support (RAID and LVM)
  < *> Logical volume manager (LVM) Support.

复制代码

注:如果在安装Linux系统时已经安装了LVM相关软件包,上面几步操作可以省略掉,直接到第二步.

  第二步:检查驱动器上空闲硬盘空间的总量。这可以通过以下命令来未完成:

  # df -h
  Filesystem Size Used Avail Use% Mounted on
  /dev/hda1 3.1G 2.7G 398M 87% /
  /dev/hda2 4.0G 3.2G 806M 80% /home
  /dev/hda5 2.1G 1.0G 1.1G 48% /var

  第三步:在硬盘上创建一个LVM分区。使用fdisk或者其它的分区工具来创建一个LVM分区。Linux LVM的分区类型为8e。

  # fdisk /dev/hda
  press p (to print the partition table) and n (to create a new partition)

  第四步:创建一个物理卷。下述命令将在分区的起始处创建一个卷组描述符:

  # pvcreate /dev/hda6
  pvcreate -- -physical volume "/dev/hda6" successfully created
  # pvcreate /dev/hda7
  pvcreate- -- physical volume "/dev/hda7" successfully created

  第五步:创建一个卷组。通过下面的方法创建一个新的卷组,并且添加两个物理卷:

  # vgcreate test_lvm /dev/hda6 /dev/hda7

  vgcreate- -- INFO: using default physical extent size 4 MB
  vgcreate- -- INFO: maximum logical volume size is 255.99 Gigabyte
  vgcreate- -- doing automatic backup of volume group "test_lvm"
  vgcreate- -- volume group "test_lvm" successfully created and activated

  上述命令将创建一个名为test_lvm,包含有/dev/hda6和/dev/hda7两个物理卷的卷组。使用下面命令来激活卷组:

  # vgchange -ay test_lvm

  使用“vgdisplay”命令来查看所建立卷组的细节信息。

  # vgdisplay
  --- Volume group ---
  VG Name test_lvm
  VG Access read/write
  VG Status available/resizable
  VG # 0
  MAX LV 256
  Cur LV 1
  Open LV 0
  MAX LV Size 255.99 GB
  Max PV 256
  Cur PV 2
  Act PV 2
  VG Size 3.91 GB
  PE Size 4 MB
  Total PE 1000
  Alloc PE / Size 256 / 1 GB
  Free PE / Size 744 / 2.91 GB
  VG UUID T34zIt-HDPs-uo6r-cBDT-UjEq-EEPB-GF435E

  第六步:创建一个逻辑卷。使用lvcreate命令在卷组中创建一个逻辑卷:

  # lvcreate -L2G -nlogvol1 test_lvm

  第七步:创建文件系统。在该逻辑卷上选择使用reiserfs日志文件系统:

  # mkreiserfs /dev/test_lvm/logvol1

  使用mount命令来加载新创建的文件系统。

  # mount -t reiserfs /dev/test_lvm/logvol1 /mnt/lv1

  第八步:在/etc/fstab和/etc/lilo.conf中添加一个入口。在/etc/fstab中加入以下入口,在启动时加载文件系统:

  /dev/test_lvm/logvol1 /mnt/lv1 reiserfs defaults 1 1

  如果没有覆盖原来的内核,那么拷贝一份重新编译后的内核,并且在启动时选择是否使用LVM。下面是LILO文件的内容:

  image = /boot/lvm_kernel_image
  label = linux-lvm
  root = /dev/hda1
  initrd = /boot/init_image
  ramdisk = 8192

  添加以上内容后,使用以下命令重新加载LILO:

  #/sbin/lilo

  第九步:修改逻辑卷的大小。可以使用lvextend命令方便地修改逻辑卷的大小,增加逻辑卷大小的方法如下:

  # lvextend -L 1G /dev/test_lvm/logvol1
  lvextend -- extending logical volume "/dev/test_lvm/logvol1" to 3GB
  lvextend -- doing automatic backup of volume group "test_lvm"
  lvextend -- logical volume "/dev/test_lvm/logvol1" successfully extended

  
  类似的,减小逻辑卷大小的方法如下:

  # lvrece -L-1G /dev/test_lvm/lv1
  lvrece -- -Warning: recing active logical volume to 2GB
  lvrece- -- This may destroy your data (filesystem etc.)
  lvrece -- -do you really want to rece "/dev/test_lvm/lv1"? [y/n]: y
  lvrece- -- doing automatic backup of volume group "test_lvm"
  lvrece- -- logical volume "/dev/test_lvm/lv1" successfully reced

复制代码

总结

  从上面的讨论可以看到,LVM具有很好的可扩展性,并且使用起来很直观。一旦卷组建立起来以后,根据需求调整每一个逻辑卷的大小也非常容易。

LVM操作的相关命令:
fdisk -l :查看系统中都认到了那些物理硬盘
pvdisplay:查看系统中已经创建好的物理卷
pvcreate:创建一个新的物理卷
pvremove:删除一个物理卷(也就是从物理卷中删除一个LVM标签)
vgdisplay:查看系统中的卷组
vgcreate:创建一个新的卷组
vgrece:从卷组中删除一个物理卷(也就是缩小卷组)
vgremove:删除一个卷组
lvdisplay:查看系统中已经创建好的逻辑卷
lvcreate:创建一个新的逻辑卷
lvrece:缩小逻辑卷(也就是从一个逻辑卷中减少一些LE)
lvremove:从系统中删除一个逻辑卷
mkfs:基于逻辑卷创建一个相应类型的文件系统
mkdir -p $mount_piont:创建一个挂载目录
创建好的文件系统位于:
/dev/$create_vg_name/$lv_name
mount /dev/$create_vg_name/$lv_name $mount_piont:挂载文件系统

vgscan:读取系统中创建的所有卷组
vgchange -a y :激活所有卷组 (开机执行,redhat可在/etc/rc.d/rc.sysinit系统启动初始化脚本里可以找到)
vgchange -a n :关闭所有卷组(提示:必须在umount所有的文件系统后,才能成功执行

裸设备使用:
1.先lvreate
2. raw /dev/raw/raw0 /dev/mapper/vgname-lvname
3.修改 /etc/sysconfig/rawdevices,添加:
/dev/raw/raw0 /dev/mapper/vgname-lvname
4.执行命令; service rawdevices restart,使得/etc/sysconfig/rawdevices文件中的裸设备配置生效
5.执行/sbin/schkconfig rawdevices on 使得系统重启后,裸设备能自动加载

6.修改裸设备的属主,使得相应权限的用户对裸设备有读写权限
chown -R owner:group /dev/raw/raw0
7.将修改裸设备属主修改命令加入到系统启动执行脚本/etc/rc.local中,使得系统启动后裸设备的属主保持不变.

热心网友 时间:2022-04-08 09:22

LVM(  Logical Volume Manager)逻辑卷管理,是在磁盘分区和文件系统之间添加的一个逻辑层,来为文件系统屏蔽下层磁盘分区布局,提供一个抽象的盘卷,在盘卷上建立文件系统。管理员利用LVM 可以在磁盘不用重新分区的情况下动态调整文件系统的大小,并且利用 LVM  管理的文件系统可以跨越磁盘,当服务器添加了新的磁盘后,管理员不必将原有的文件移动到新的磁盘上,而是通过 LVM  可以直接扩展文件系统跨越磁盘

它就是通过将底层的物理硬盘封装起来,然后以逻辑卷的方式呈现给上层应用。在 LVM  中,其通过对底层的硬盘进行封装,当我们对底层的物理硬盘进行操作时,其不再是针对于分区进行操作,而是通过一个叫做逻辑卷的东西来对其进行底层的磁盘管理操作。

热心网友 时间:2022-04-08 10:57

lvm是linux逻辑卷组管理,用来对磁盘分区进行管理的一种技术。追问能不能讲一下它有什么作用,有什么优点

追答你还是仔细阅读一下。百度百科里的LVM吧。
我觉得会比我讲解的更详细。因为具体的使用方法,功能,作用,优点。这不是一两句就能说清楚的。就算我说清楚,你是否能理解也是另当别论,最好的方式还是你自己看相关的技术文档。

热心网友 时间:2022-04-08 12:48

LVM是逻辑卷管理的简称,他是建立在物理存储设备之上的一个抽象层,允许你生成逻辑存储卷,和直接使用物理存储在管理上相比,提供了更好的灵活性。
LVM将存储虚拟化,使用逻辑卷,你不会受限于物理磁盘的大小。另外,和硬件相关的存储设置被其隐藏,你能不用停止应用或卸载文件系统来调整卷大小或数据迁移,这样可以减少操作成本。
LVM对比直接使用物理存储,具有以下好处:
1、灵活的容量,当使用逻辑卷时,文件系统能扩展到多个磁盘上,你能聚合多个磁盘或磁盘分区成单一的逻辑卷。
2、可伸缩的存储池,你能使用简单的命令来扩大或缩小逻辑卷大小,不用重新格式化或分区磁盘设备。
3、在线的数据再分配,你能在线移动数据,数据能在磁盘在线的情况下重新分配,比如你能在线更换可热插拔的磁盘。
4、方便的设备命名,逻辑卷能按你觉得方便的方式来起所有名称。
5、磁盘条块化,你能生成一个逻辑卷,他的数据能被条块化存储在2个或更多的磁盘上,这样能明显提升数据吞吐量。
6、映像卷,逻辑卷提供方便的方法来映像你的数据。
7、卷快照,使用逻辑卷,你能获得设备快照用来一致性备份或测试数据更新效果而不影响真实数据。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
为什么喜欢我的人 都告诉我 只要我开心,他怎么都行? ...手机是电信的,然后我装了一张移动卡,可以打电话不可以用流量... 停水后热水器还会工作吗 我的电脑为什么不能玩传奇外传 玩传奇外传SF黑屏 传奇外传选择人物进去后就黑屏 为什么我电脑运行全屏游戏时时常会弹出来?就是游戏最小化弹到桌面_百度... 传奇外传下面一半是黑屏 英雄联盟复仇之矛怎么解除契约 名字缺金用什么字补金? Linux新建分区。 创建1个80m的分区。修改其分区ID... Linux怎么创建LVM 已经组成Raid1,怎么才能创建LVM... 关于linux的LVM分区,求解 linux不是lvm怎么分区扩容 烟台新农合医保网上缴费怎么交 如果瘦大腿,能不能帮我p 怎么查医保卡上的余额 【瘦身沐浴露 月瘦5-30斤】减肥产品瘦腰神器瘦腿瘦... 莱山区院格庄新农合网上怎么交费? 神器tr100有没有瘦脸瘦腿功能 医保档次0已定档是什么意思?能具体说说吗? nv瘦腿神器管用么 烟台个人网上医保查询 燃脂瘦身腰带甩脂机减肥机抖抖震动懒人塑身机瘦腿... 烟台市城镇职工医疗保险查询 戚薇同款吴昕代言瘦腿霜燃脂膏紧肤全身紧致瘦腰瘦... 烟台市医保查询系统 淘宝上那些瘦腿霜是真的管用吗?或者那位瘦腿成功了... 烟台2019城镇居民医疗保险缴费 正品减肥产品燃脂瘦肚子祛湿瘦身瘦腿减肥神器学生... red hat linux5 自定义分区时LVM是不是最先划,还... 如何用虚拟机在Linux上建LVM分区 如何减小LVM分区 懂Linux的牛人都来看看 关于Linux系统LVM问题 linux为什么可以不创建lv就挂载 CentOS中如何查看分区是否是LVM 如何在LINUX下使用LVM linux下使用PE创建LVM快照详细步骤 linux的lvm分区可以调整分区大小,那是不是如果我... 如何使用LVM增加linux分区的大小? linux分区 创建2个800m的分区,修改其分区ID号为LV... 夏至应该注意些什么 端午加夏至有什么讲究? 夏至有什么 立夏要注意的方面会有哪些 夏季的生活起居应注意哪些内容? 我的电脑工具栏变成灰色的了/ 锁定任务栏变成灰色,不可调,咋办 电脑任务栏和各种边框变成了灰色,该怎么调回蓝色 怎么解除 锁定任务栏 怎么是灰色的?