我了解LVM是什么以及它完成了什么,但我觉得我错过了一些东西。
假设我们有两个物理驱动器,sda 和 sdb。两者都是 100 兆。我将它们放入 VolumeGroup1 并创建一个 200 兆的 LogicalVolume1。
如果我创建一个 150 兆的文件会发生什么?100 兆物理在 sda 上,50 兆在 sdb 上吗?如果是这样,是什么告诉操作系统文件的一部分在一个驱动器上,而另一块在另一个驱动器上?
驱动故障怎么办?假设没有RAID,如果sdb失败,sda上的数据会不会全部丢失?无论如何要控制哪些文件在哪些物理驱动器上?
您通常如何管理 LVM?您是否创建了一个或两个大的卷组,然后按照合理的方式进行分区?还有其他提示吗?
我在 CentOS 5.5 上运行 Xen。我有一个很大的卷组,我使用 lvcreate 创建逻辑卷。今天我有一位客户取消了她的帐户,然后大约一个小时后改变了主意。不幸的是,我已经删除了她的 Xen 映像所在的 LVM。(仅使用标准 lvremove )。此后此磁盘上没有其他 LVM 活动(没有添加或删除其他任何内容)。是否可以“撤消”lvremove 或恢复逻辑卷?如果是这样,我将如何处理?
如果我尝试在 KVM 主机上执行以下操作:
# kpartx -av /dev/VolGroup00/kvm101_img
add map kvm101_img1 : 0 208782 linear /dev/VolGroup00/kvm101_img 63
add map kvm101_img2 : 0 125612235 linear /dev/VolGroup00/kvm101_img 208845
# mount /dev/mapper/kvm101_img1 /mnt
Run Code Online (Sandbox Code Playgroud)
然后我正在安装 /boot 分区。但是,如果我输入以下内容,则会出现错误:
# mount /dev/mapper/kvm101_img2 /mnt
mount: you must specify the filesystem type
Run Code Online (Sandbox Code Playgroud)
这是客户机上的 fdisk 布局:
# fdisk -l
Device Boot Start End Blocks Id System
/dev/hda1 * 1 13 104391 83 Linux
/dev/hda2 14 7832 62806117+ 8e Linux LVM
Run Code Online (Sandbox Code Playgroud)
是否可以在来宾上找到根分区并将其挂载到主机系统上?
我已将实时系统中的硬盘驱动器(使用 dd)克隆到多个备份硬盘驱动器上。实时系统中的根分区是一个 LVM 卷。备份副本旨在替代原始副本,这意味着它们需要与主副本具有相同的 UUID。
快速提问:是否可以在实时系统上安装备份 HD 之一?当我尝试这样做时,由于相同的 UUID 和卷组名称,LVM 对此感到困惑是可以理解的。按照 [this answer][1] 中的提示首先重命名原始 LVM 组,我尝试过:
将外部备份 HD 连接到 USB 端口
正在运行(请注意,字符串“test”是此系统上的组名)
Run Code Online (Sandbox Code Playgroud)# vgrename test test-live Volume group "test" successfully renamed to "test-live" vgscan --mknodes Reading all physical volumes. This may take a while... Found duplicate PV qWUadGaM2MU1UAJ5Spp8upD6fbddk7Zb: using /dev/dm-3 not /dev/dm-0 Found volume group "test" using metadata type lvm2 # vgchange -ay Found duplicate PV qWUadGaM2MU1UAJ5Spp8upD6fbddk7Zb: using /dev/dm-3 not /dev/dm-0 2 logical volume(s) in volume group "test" now active …
我需要通过 SATA HD 中的 LVM 逻辑卷访问 ext3 分区,该 SATA HD 通过 USB2 连接到我的带有 OS X 10.6 的 iMac。
是否可以从 OS X 看到 LVM 卷?如何?
磁盘工具说连接的设备未知并建议对其进行初始化。
我想我记得几年前用 LVM 制作了一些镜像,我不记得这个“日志”的东西。或者也许我用 mdadm 制作了镜像并将 LVM 放在上面。一定是这样。
如果它只是一个镜像,那么 LVM 日志是什么?那里存储了什么?它的目的是什么?使用“--mirrorlog core”不好吗?不利的一面是什么?如果我不需要,我不想有另一个日志分区。
关于使用这两种技术的任何建议?即使我使用 mdadm 制作镜像,我也会在此基础上使用 LVM。那么,在这种情况下,也许最好用 LVM 构建整个设置......?这对性能的影响会更大还是更少?
这些磁盘用于存储 Xen domU“磁盘”。
对于复杂的不切实际的“问题”,我们深表歉意。
想法、建议和链接是最受欢迎的。谢谢!
我刚刚构建了一个全新的基于 KVM/libvirt 的虚拟机主机,包含 4 个 SATA II 硬盘驱动器,并运行 CentOS 5.5 x86_64。
我决定在作为 libvirt 存储池管理的 LVM 卷组中创建虚拟机磁盘作为逻辑卷,而不是将磁盘创建为 qcow 映像的通常做法。
我无法决定是应该在 VM 主机的卷组中还是在专用卷组中创建虚拟机逻辑卷。
我应该选择哪种方法,为什么?
md0包含/boot文件系统的小型 RAID1md1占用剩余空间的大型 RAID10 ,其中包含一个 LVM 卷组vghost。vghost包含 VM 主机的根文件系统和交换分区vghost根据需要创建虚拟机磁盘作为逻辑卷vghost相对轻松地从中分配更多空间尽管这种方法似乎有效,但我无法摆脱这样的感觉,即这在某种程度上是个坏主意。我觉得:
md0,并md1在方法1,除了化妆md1只是大到足以容纳VM主机(如5至10GB)md2占用剩余空间。md2包含一个 …http://forum.synology.com/wiki/index.php/What_is_Synology_Hybrid_RAID%3F
Synology 只是 Linux 并使用 LVM。
他们的工具如何自动化 LVM 以实现他们所谓的混合突袭?
我增加了用作 LVM PV 的分区的大小,但运行 pvresize 似乎没有看到额外的空间:
cuttle:~# fdisk -l /dev/vda
Disk /dev/vda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00027dbb
Device Boot Start End Blocks Id System
/dev/vda1 * 1 31 248976 83 Linux
/dev/vda2 32 2610 20715817+ 8e Linux LVM
Run Code Online (Sandbox Code Playgroud)
其中说 vda2 大约是 20gigs
cuttle:~# pvdisplay
--- Physical …Run Code Online (Sandbox Code Playgroud) 我们有一个由供应商构建的实施不佳的 mysql 服务器。它消耗了 100% 的可用磁盘空间,一旦任何空间被清除,mysql 就会增长以消耗它。这显然是一个问题。
我们目前在 RAID 1+0 中有 2 个磁盘,并且刚刚添加了 2 个额外的磁盘。我们已将它们直接添加到 RAID,因此磁盘大小应该是以前的两倍。
Pvresize 将是我们的下一步,但它似乎只会促进增长到特定数字(pvresize --setphysicalvolumesize 20G /path/to/disk)。
是否有等效的命令可让您指定扩展到磁盘(或在本例中为阵列)上的所有物理空间?