V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
wniming
V2EX  ›  Linux

Linux lvm 可以在 /dev 下看到卷组中的一个逻辑卷,但是用各种 lvm 命令行工具都报告没有这个卷组,这种问题有 v 友遇到过吗?

  •  
  •   wniming · 8 天前 · 790 次点击

    系统中有 2 个卷组,一个名为 vg ,一个名为 fedora ,vg 这个卷组中有 root 和 hmoe 分区的逻辑卷,fedora 这个卷组中有一个没有在使用的 root 分区的逻辑卷(这个逻辑卷是可以挂载的),具体如下:

    root@develop:/home/d# ls -l /dev/mapper/*
    crw------- 1 root root 10, 236 Jun 24 10:16 /dev/mapper/control
    lrwxrwxrwx 1 root root       7 Jun 24  2024 /dev/mapper/fedora-root -> ../dm-0
    lrwxrwxrwx 1 root root       7 Jun 24  2024 /dev/mapper/vg-f40_root -> ../dm-1
    lrwxrwxrwx 1 root root       7 Jun 24  2024 /dev/mapper/vg-home -> ../dm-2
    root@develop:/home/d# 
    root@develop:/home/d# ls -l /dev/vg/*
    lrwxrwxrwx 1 root root 7 Jun 24  2024 /dev/vg/f40_root -> ../dm-1
    lrwxrwxrwx 1 root root 7 Jun 24  2024 /dev/vg/home -> ../dm-2
    root@develop:/home/d# 
    root@develop:/home/d# ls -l /dev/fedora/*
    lrwxrwxrwx 1 root root 7 Jun 24  2024 /dev/fedora/root -> ../dm-0
    root@develop:/home/d# 
    root@develop:/home/d# vgchange -a y vg
      2 logical volume(s) in volume group "vg" now active
    root@develop:/home/d# 
    root@develop:/home/d# vgchange -a y fedora
      Volume group "fedora" not found
      Cannot process volume group fedora
    root@develop:/home/d# 
    root@develop:/home/d# vgdisplay 
      --- Volume group ---
      VG Name               vg
      System ID             
      Format                lvm2
      Metadata Areas        1
      Metadata Sequence No  8
      VG Access             read/write
      VG Status             resizable
      MAX LV                0
      Cur LV                2
      Open LV               2
      Max PV                0
      Cur PV                1
      Act PV                1
      VG Size               <444.76 GiB
      PE Size               4.00 MiB
      Total PE              113858
      Alloc PE / Size       14336 / 56.00 GiB
      Free  PE / Size       99522 / <388.76 GiB
      VG UUID               Z2vdTX-aTxO-ob2f-cUmu-tHZH-UOEA-ww6DS6
       
    root@develop:/home/d# 
    
    

    从上面命令的输出可以看到有以下 2 个异常现象:

    1 ,用 vgchange 可以激活 vg 这个卷组,但找不到 fedora 这个卷组。

    2 ,用 vgdisplay 可以正常识别到 vg 这个卷组,却识别不到 fedora 这个卷组。

    有 v 友知道这是什么原因导致的吗?

    15 条回复    2024-06-30 20:44:41 +08:00
    blackeeper
        1
    blackeeper  
       8 天前
    vgscan
    wniming
        2
    wniming  
    OP
       8 天前
    @blackeeper

    root@develop:/home/d# vgscan
    Found volume group "vg" using metadata type lvm2
    root@develop:/home/d#

    不管用
    fitme
        3
    fitme  
       8 天前
    pvs 看下
    wniming
        4
    wniming  
    OP
       8 天前
    @fitme

    root@develop:/home/d# pvs
    PV VG Fmt Attr PSize PFree
    /dev/nvme1n1p1 vg lvm2 a-- <444.76g <388.76g
    root@develop:/home/d#
    wniming
        5
    wniming  
    OP
       8 天前
    @fitme fedora 卷组只有一个物理卷,是在 /dev/nvme1n1p5 这个分区上,如下:

    root@develop:/home/d#
    root@develop:/home/d# gdisk -l /dev/nvme1n1
    GPT fdisk (gdisk) version 1.0.10

    Partition table scan:
    MBR: protective
    BSD: not present
    APM: not present
    GPT: present

    Found valid GPT with protective MBR; using GPT.
    Disk /dev/nvme1n1: 976773168 sectors, 465.8 GiB
    Model: WD_BLACK SN770 500GB
    Sector size (logical/physical): 512/512 bytes
    Disk identifier (GUID): C429264E-34FC-4E49-8B10-9120D21303DC
    Partition table holds up to 128 entries
    Main partition table begins at sector 2 and ends at sector 33
    First usable sector is 34, last usable sector is 976773134
    Partitions will be aligned on 2048-sector boundaries
    Total free space is 2029 sectors (1014.5 KiB)

    Number Start (sector) End (sector) Size Code Name
    1 2048 932732927 444.8 GiB 8E00
    2 974675968 974778367 50.0 MiB EF00 EFI System Partition
    3 974778368 976773119 974.0 MiB 8300
    4 932732928 934830079 1024.0 MiB EA00
    5 934830080 974675967 19.0 GiB 8E00
    root@develop:/home/d#
    root@develop:/home/d# mount /dev/nvme1n1p5 /mnt/0/
    mount: /mnt/0: unknown filesystem type 'LVM2_member'.
    dmesg(1) may have more information after failed mount system call.
    root@develop:/home/d#
    fitme
        6
    fitme  
       8 天前
    ls -l /dev/disk/by-uuid/ 有没有可能是指向同一个设备?
    wniming
        7
    wniming  
    OP
       8 天前
    @fitme

    root@develop:~# ls -l /dev/disk/by-uuid/
    total 0
    lrwxrwxrwx 1 root root 10 Jun 24 2024 36df5d97-0c81-415e-baf0-88bde742f7bb -> ../../dm-1
    lrwxrwxrwx 1 root root 15 Jun 24 10:16 4B64-9175 -> ../../nvme1n1p2
    lrwxrwxrwx 1 root root 15 Jun 24 10:16 4b7258eb-9478-4f7e-bf52-d83fdcf31147 -> ../../nvme1n1p3
    lrwxrwxrwx 1 root root 10 Jun 24 2024 6ac9d777-70da-4ea2-8873-a00644e50934 -> ../../dm-0
    lrwxrwxrwx 1 root root 15 Jun 24 10:16 86dbca85-a16b-46c4-9099-9c3fcac2e8c2 -> ../../nvme1n1p4
    lrwxrwxrwx 1 root root 10 Jun 24 2024 e189760f-5df8-4ccc-9bfb-0a6c28628e9b -> ../../dm-2
    root@develop:~#


    lvm 的 pv 本来就不能用 /dev/disk/by-uuid/ 这种方式看到 uuid 吧?

    正常的卷组所在的 pv 用 /dev/disk/by-uuid/ 这种方式也看不到
    Ggmusic
        8
    Ggmusic  
       8 天前 via iPhone
    巧了,今天碰到一个机器也是两个 vg 只看得到一个 vg 。lsblk 能看到两个 vg 被挂载的 lv 。pvdisplay lvdisplay 和 vgdisplay 都看不到另一个 vg 的信息。vgscan 不管用。蹲个后续。
    fitme
        9
    fitme  
       8 天前
    @wniming 分区和 lv 能看到吧? lsblk -f 我看和 by-uuid 的一样,你把 fedora-root 挂载,df -h 然后写入数据试试?
    wniming
        10
    wniming  
    OP
       8 天前
    @fitme

    root@develop:/mnt/0# lsblk -f
    NAME FSTYPE FSVER LABEL UUID FSAVAIL FSUSE% MOUNTPOINTS
    nvme0n1
    nvme1n1
    ├─nvme1n1p1 LVM2_member LVM2 001 We699H-iVEw-Hbkc-weAS-rovx-iX3U-xI9I5f
    │ ├─vg-f40_root ext4 1.0 36df5d97-0c81-415e-baf0-88bde742f7bb 10.1G 30% /
    │ └─vg-home ext4 1.0 e189760f-5df8-4ccc-9bfb-0a6c28628e9b 27.8G 22% /home
    ├─nvme1n1p2 vfat FAT16 4B64-9175 24.5M 51% /boot/efi
    ├─nvme1n1p3 ext4 1.0 4b7258eb-9478-4f7e-bf52-d83fdcf31147 653.2M 24% /boot
    ├─nvme1n1p4 ext4 1.0 86dbca85-a16b-46c4-9099-9c3fcac2e8c2
    └─nvme1n1p5 LVM2_member LVM2 001 PCUuVc-rqiA-f7Wd-Qg0f-sfeJ-DC1R-SlspPV
    └─fedora-root ext4 1.0 6ac9d777-70da-4ea2-8873-a00644e50934 11.4G 33% /mnt/0
    root@develop:/mnt/0#
    root@develop:/mnt/0# df .
    Filesystem Type Size Used Avail Use% Mounted on
    /dev/mapper/fedora-root ext4 19G 6.2G 12G 35% /mnt/0
    root@develop:/mnt/0#
    root@develop:/mnt/0# date > test
    root@develop:/mnt/0#
    root@develop:/mnt/0# cat test
    Mon Jun 24 12:21:53 PM CST 2024
    root@develop:/mnt/0#

    可以写入数据
    wniming
        11
    wniming  
    OP
       8 天前
    @Ggmusic 确实巧了,问题完全一样,,

    你是什么系统环境,之前有做什么不寻常的操作吗?

    我是装了 fedora 40 双系统的,2 个 fedora 40 ,一个本来不是以 lvm 的分区方式安装的,是我手动把这个非 lvm 方式安装 的 fedora 转换成了 lvm 的分区方式,名为 vg 的 vg 就是我手动创建的,然后我又通过 fedora 安装程序安装了一个以 lvm 分区方式自动配置分区的 fedora ,就是 vg 名为 fedora 的这个。

    2 个 fedora 都是可以启动的,奇怪的是我手动转换成 lvm 分区方式的那个 fedora 启动后识别不到名为 fedora 的卷组,但用 fedora 安装程序自动配置 lvm 的那个 fedora 启动后,2 个 vg 都能正常识别。

    由于这 2 个 fedora 都是 fedora 40 ,所以内核版本是一样的,感觉最大的不同是 initramfs 以及 rootfs 上预先配置的一些 systemd 的服务, 我手动转换成 lvm 的那个 fedora 的 initramfs 是我通过 dracut 生成的,也不知道是不是跟一些 systemd 的配置有关。
    fugu37
        12
    fugu37  
       8 天前   ❤️ 1
    新版 Fedora 修改了 LVM 的默认配置,修改 /etc/lvm/lvm.conf ,添加 use_devicesfile = 0 ,RHEL/Rocky/Almalinux 9 都有这个问题。

    https://forums.rockylinux.org/t/rocky-9-install-existing-logical-volumes-are-not-visible/7239

    https://access.redhat.com/solutions/7014295
    wniming
        13
    wniming  
    OP
       8 天前
    @fugu37 你这个方法管用,多谢
    julyclyde
        14
    julyclyde  
       8 天前
    hmoe
    miaosl
        15
    miaosl  
       1 天前
    收藏了,虽然不知道,但是可能以后用的上
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3148 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 11:35 · PVG 19:35 · LAX 04:35 · JFK 07:35
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.