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

[求助] Linux 小白安装 Arch 时遇到的关于 mount 的报错

  •  1
     
  •   HeiXiaoBai · 2018-12-14 08:29:42 +08:00 · 4097 次点击
    这是一个创建于 1931 天前的主题,其中的信息可能已经有所发展或是发生改变。

    在安装完基本系统后
    使用 genfstab -L >> /mnt/etc/fstab
    通过设备名挂载的方式,写入 fstab
    但是在开机时遇到了报错,如图所示
    image

    然后我回到 iso 安装环境,做了点测试
    发现 UUID 是存在的,但是无法通过 mount -U 无法挂载
    同时 fstab 没有使用 UUID 的方式挂载分区

    磁盘
    3 个 1T HDD 组成 raid 0

    分区和文件系统

    /dev/md126  
      md126p1    EFI   vfat    256M  
      md126p2    grub  ext4    512M  
      md126p3    /     btrfs   500G  
      md126p4    null  null    500G  
      md126p5    null  null    1.8T  
    

    挂载报错的是我根分区 md126p3 下的 btrfs 子卷
    下图是测试过程演示
    image

    第 1 条附言  ·  2018-12-14 09:14:51 +08:00

    经过 #9 的提醒,发现测试过程做错了
    现在重新做了一下
    image

    第 2 条附言  ·  2018-12-14 10:46:17 +08:00
    搞定,使用 @MayKiller #21 的方法,成功解决
    多谢 T▽T
    33 条回复    2018-12-14 13:06:22 +08:00
    shylockhg
        1
    shylockhg  
       2018-12-14 08:39:39 +08:00
    grub?
    HeiXiaoBai
        2
    HeiXiaoBai  
    OP
       2018-12-14 08:43:01 +08:00
    @shylockhg #1
    是的,用 grub2 作为引导
    shylockhg
        3
    shylockhg  
       2018-12-14 08:45:14 +08:00
    @HeiXiaoBai 这个好像对 btrfs 支持不好,,我之前装直接 error 警告,我就重新分区了
    HeiXiaoBai
        4
    HeiXiaoBai  
    OP
       2018-12-14 08:45:40 +08:00
    补充一点:刚才经过测试,发现不止 md126p3(btrfs)无法挂载
    其他的两个分区(vfat\grub)通过 UUID 挂载也会出现报错
    无论是 arch 安装环境,还是通过 arch-chroot 进入系统分区后
    HeiXiaoBai
        5
    HeiXiaoBai  
    OP
       2018-12-14 08:46:23 +08:00
    @shylockhg #3 我的 grub 是 ext4 分区,并且在我的另一台机子是没问题的
    MayKiller
        6
    MayKiller  
       2018-12-14 08:56:17 +08:00
    看起来你的 fstab 和我以前的 fstab 不一样?!

    https://gist.github.com/Kazetoyuki/5522f14ab01396f6c2e0f912cb6b9039

    我的是 UUID 开头 你仍然是以 /dev/dev_name 开头所以找不到 UUID?
    重新生成一下 fstab 吧.

    genfstab -U /mnt >> /mnt/etc/fstab
    记得 -U 使用 UUID
    HeiXiaoBai
        7
    HeiXiaoBai  
    OP
       2018-12-14 09:00:13 +08:00
    @MayKiller #6
    最初就是使用 genfstab -U 生成的,报错后以为是生成的 UUID 问题,才重新生成了以设备名挂载的 fstab
    MayKiller
        8
    MayKiller  
       2018-12-14 09:01:39 +08:00
    又或者你非常想使用设备名.
    修改 /etc/grub.d/40_custom
    添加如下
    GRUB_DISABLE_LINUX_UUID=true
    重新 grub-mkconfig -o /<PATH>
    mikeguan
        9
    mikeguan  
       2018-12-14 09:04:04 +08:00 via Android
    没试过 不过看 mount -U 报错 感觉是把 UUID 也作为一部分了
    HeiXiaoBai
        10
    HeiXiaoBai  
    OP
       2018-12-14 09:05:12 +08:00
    @mikeguan #9
    emmm,你一说我才发现做的测试做错了
    MayKiller
        11
    MayKiller  
       2018-12-14 09:08:54 +08:00
    emm 还有 fstab 的 / mount options subvol=/hxb,subvol=hxb
    这是生成的还是自己加的...
    HeiXiaoBai
        12
    HeiXiaoBai  
    OP
       2018-12-14 09:15:26 +08:00
    @MayKiller #11 生成的
    MayKiller
        13
    MayKiller  
       2018-12-14 09:20:00 +08:00
    @HeiXiaoBai
    是 nvme 驱动器么... 无意间逛到了这一帖
    https://bbs.archlinux.org/viewtopic.php?id=208132 #6
    试一下? 不确定是否是这个原因
    MayKiller
        14
    MayKiller  
       2018-12-14 09:23:14 +08:00
    @MayKiller #13 脑抽忘记审题了 明明都说了是 3 个 HDD 组的 RIAD
    无视 #13 吧
    Osk
        15
    Osk  
       2018-12-14 09:27:29 +08:00 via Android
    用了 lvm 和 md raid? 看一下 mkinitcpio conf 里面的 hooks 顺序是否正确。
    在开机时报错那里你可以 ls /dev/disk/by-uuid/ 看下你的 root fs uuid 是否出来了。
    MayKiller
        16
    MayKiller  
       2018-12-14 09:30:43 +08:00
    HeiXiaoBai
        17
    HeiXiaoBai  
    OP
       2018-12-14 09:42:40 +08:00
    @Osk #15
    emmmm
    <img src=" " alt="image" width="4000" data-width="4000" data-height="2000">
    HeiXiaoBai
        18
    HeiXiaoBai  
    OP
       2018-12-14 09:56:30 +08:00
    @MayKiller #16 说实话,这两个 wiki 看得我一懵╮(╯_╰)╭
    meppy
        19
    meppy  
       2018-12-14 10:03:33 +08:00
    为啥用 arch …找虐么这不是
    HeiXiaoBai
        20
    HeiXiaoBai  
    OP
       2018-12-14 10:24:33 +08:00
    @meppy #19 Arch 大法好 /滑稽
    MayKiller
        21
    MayKiller  
       2018-12-14 10:25:54 +08:00
    @HeiXiaoBai ... 看不明白旁边选中文... 我刚刚去看了一下翻译应该没问题...
    https://wiki.archlinux.org/index.php/RAID#Configure_mkinitcpio
    重要的就这个了...
    添加 mdadm_udev 到 /etc/mkinitcpio.conf 注意顺序
    然后 mkinitcpio -p linux 重新生成 initramfs.
    配置好了以后更新 kernel 也不用管了...
    Osk
        22
    Osk  
       2018-12-14 10:25:55 +08:00 via Android
    @HeiXiaoBai 看这情况你的 mkinitcpio raid 配置可能有问题。贴下你的
    /etc/mkinitcpio.conf 看看?

    参考 https://wiki.archlinux.org/index.php/RAID#Configure_mkinitcpio

    你用的是哪种方式组的 raid 啊? lvm 还是 mdadm ???
    HeiXiaoBai
        23
    HeiXiaoBai  
    OP
       2018-12-14 10:28:15 +08:00
    @Osk #22 主板自带,硬件 raid
    Osk
        24
    Osk  
       2018-12-14 10:30:09 +08:00 via Android
    对了既然都上 btrfs 了,可以考虑下 btrfs 自带的 raid 0 啊,目测能提供不少 md 做不到的功能,比如在线添加移除磁盘. 只要别用 raid5/6 就好。

    滑稽🤣
    Osk
        25
    Osk  
       2018-12-14 10:32:23 +08:00 via Android
    @HeiXiaoBai 硬盘 raid 得看你的是哪种 raid 控制器了。。。然后把它驱动加到 mkinitcpio.conf 中
    MayKiller
        27
    MayKiller  
       2018-12-14 10:46:48 +08:00
    @HeiXiaoBai 图炸了



    就二图的情况来看... 没问题. 本来就没有 fsck.btrfs
    前俩 warnings 都是 fsck.btrfs 的
    后俩 warnings https://wiki.archlinux.org/index.php/Mkinitcpio#Possibly_missing_firmware_for_module_XXXX
    一般来说用不到的模块, 如果不使用可忽略
    reus
        28
    reus  
       2018-12-14 10:46:58 +08:00
    应该是 initramfs 没有加载驱动,所以没法读硬盘分区信息,所以找不到那个 UUID
    如果 iso 里面可以看到,那说明是可以驱动的,找出那个驱动的模块名,arch-chroot 进去之后,加到 /etc/mkinitcpio.conf 里,再 mkinitcpio -p linux,就能让启动时找到那个分区了
    模块名你要搜索下
    reus
        29
    reus  
       2018-12-14 10:52:37 +08:00
    MODULES="dm_mod md_mod raid1 btrfs" 试试
    HeiXiaoBai
        30
    HeiXiaoBai  
    OP
       2018-12-14 11:16:28 +08:00
    @MayKiller 刚才回复太频繁被禁言= =
    已经解决啦,多谢(〃'▽'〃)
    Rokee
        31
    Rokee  
       2018-12-14 11:43:50 +08:00 via iPhone
    为什么不用 arch 系的 manjaro,简单
    zst
        32
    zst  
       2018-12-14 11:54:27 +08:00 via Android
    强烈推荐 majaro 和 antergo。。省心啊
    dontaskcece
        33
    dontaskcece  
       2018-12-14 13:06:22 +08:00 via Android
    我用的 archanywhere,原版加安装器,好用
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3045 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 31ms · UTC 12:48 · PVG 20:48 · LAX 05:48 · JFK 08:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.