您尚未登录。

#1 2020-10-22 10:54:56

Mr.I
路人丙
所在地: Kerbal
注册时间: 2015-08-29
帖子: 249

【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

我尝试了一下配置多内核,原先用的是 linux,现在额外安装了 linux-lts 作为备用选项,引导用的是 grub + efibootmgr

在安装了 linux-lts 和 linux-lts 所需的驱动类的包之后,我用 grub-mkconfig 重新制作了 grub.cfg。

重启试用发现 linux-lts 内核无法找到根文件系统对应的设备并且进了 emergency shell,但是原来的 linux 内核可以正常启动,grub.cfg 里面配置的根文件系统的设备 UUID 是相同的。

在进到 emergency shell 时 kernel 有说一些像 "Cannot find device UUID=xxxxxx" "failed to mount /new_root" 之类的错误信息

我在 linux-lts 的 emergency shell 里面翻了一下 /dev ,没有找到 /dev/disk 之类的目录,也没有找到任何硬盘相关的设备文件。

这种情况下应该如何排查问题呢?


以下是 grub.cfg 中和启动相关的配置:

这个是 linux-lts 的:

		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt2'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,gpt2' --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  18c965cb-73dd-4db7-9588-29a3a614c02b
		else
		  search --no-floppy --fs-uuid --set=root 18c965cb-73dd-4db7-9588-29a3a614c02b
		fi
		echo	'Loading Linux linux-lts ...'
		linux	/boot/vmlinuz-linux-lts root=UUID=18c965cb-73dd-4db7-9588-29a3a614c02b rw  loglevel=3 quiet
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initramfs-linux-lts.img

这个是 linux 的:

		load_video
		set gfxpayload=keep
		insmod gzio
		insmod part_gpt
		insmod ext2
		set root='hd0,gpt2'
		if [ x$feature_platform_search_hint = xy ]; then
		  search --no-floppy --fs-uuid --set=root --hint-ieee1275='ieee1275//disk@0,gpt2' --hint-bios=hd0,gpt2 --hint-efi=hd0,gpt2 --hint-baremetal=ahci0,gpt2  18c965cb-73dd-4db7-9588-29a3a614c02b
		else
		  search --no-floppy --fs-uuid --set=root 18c965cb-73dd-4db7-9588-29a3a614c02b
		fi
		echo	'Loading Linux linux ...'
		linux	/boot/vmlinuz-linux root=UUID=18c965cb-73dd-4db7-9588-29a3a614c02b rw  loglevel=3 quiet
		echo	'Loading initial ramdisk ...'
		initrd	/boot/initramfs-linux.img

最近编辑记录 Mr.I (2020-10-22 20:54:11)

离线

#2 2020-10-22 13:47:49

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 6,661
个人网站

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

去看看 initramfs-linux-lts.img 里是不是缺少驱动(lsinitcpio)。mkinitcpio -P 重新生成试试?

离线

#3 2020-10-22 16:18:01

Mr.I
路人丙
所在地: Kerbal
注册时间: 2015-08-29
帖子: 249

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

依云 说:

去看看 initramfs-linux-lts.img 里是不是缺少驱动(lsinitcpio)。mkinitcpio -P 重新生成试试?


好像并不缺,我的根文件系统是 ext4,模块里面有看到 ext4,mkinitcpio 我之前已经手动跑过了,而且,pacman 装内核的时候也会作为 hook 来调用


lsinitcpio -a initramfs-linux-lts.img 的输出:

$ lsinitcpio -a initramfs-linux-lts.img
==> Image: initramfs-linux-lts.img 
==> Created with mkinitcpio 28
==> Kernel: 5.4.72-1-lts
==> Size: 9.66 MiB
==> Compressed with: gzip
  -> Uncompressed size: 24.53 MiB (.393 ratio)
  -> Estimated decompression time: 0.140s

==> Included modules:
  cdrom			  crc-itu-t		  hid			  mmc_block		  sr_mod		  xhci-hcd
  crc16			  ext4			  hid-generic		  mmc_core		  usbhid		  xhci-pci
  crc32c_generic	  firewire-core		  jbd2			  scsi_mod		  usb-storage
  crc32c-intel		  firewire-sbp2		  mbcache		  sd_mod		  virtio_blk

==> Included binaries:
  blkid			  fsck			  kmod			  switch_root		  udevadm
  busybox		  fsck.ext4		  mount			  systemd-tmpfiles

==> Early hook run order:
  udev

==> Hook run order:
  udev

==> Cleanup hook run order:
  udev

lsinitcpio initramfs-linux-lts.img 输出的所有文件:

$ lsinitcpio initramfs-linux-lts.img
bin
buildconfig
config
dev/
etc/
etc/fstab
etc/initrd-release
etc/ld.so.cache
etc/ld.so.conf
etc/modprobe.d/
etc/mtab
hooks/
hooks/udev
init
init_functions
lib
lib64
new_root/
proc/
run/
sbin
sys/
tmp/
usr/
usr/bin/
usr/bin/[
usr/bin/arch
usr/bin/ash
usr/bin/awk
usr/bin/base64
usr/bin/basename
usr/bin/bc
usr/bin/blkdiscard
usr/bin/blkid
usr/bin/busybox
usr/bin/bzip2
usr/bin/cat
usr/bin/chgrp
usr/bin/chmod
usr/bin/chown
usr/bin/chroot
usr/bin/clear
usr/bin/cp
usr/bin/cpio
usr/bin/cttyhack
usr/bin/cut
usr/bin/dd
usr/bin/depmod
usr/bin/df
usr/bin/dirname
usr/bin/dmesg
usr/bin/du
usr/bin/echo
usr/bin/env
usr/bin/expr
usr/bin/fallocate
usr/bin/false
usr/bin/fatattr
usr/bin/free
usr/bin/fsck
usr/bin/fsck.ext2
usr/bin/fsck.ext3
usr/bin/fsck.ext4
usr/bin/fsfreeze
usr/bin/fstrim
usr/bin/fsync
usr/bin/getopt
usr/bin/grep
usr/bin/gzip
usr/bin/halt
usr/bin/head
usr/bin/hexdump
usr/bin/hexedit
usr/bin/i2ctransfer
usr/bin/ifconfig
usr/bin/init
usr/bin/insmod
usr/bin/install
usr/bin/ip
usr/bin/ipaddr
usr/bin/iplink
usr/bin/ipneigh
usr/bin/iproute
usr/bin/iprule
usr/bin/iptunnel
usr/bin/kbd_mode
usr/bin/kill
usr/bin/killall
usr/bin/kmod
usr/bin/less
usr/bin/link
usr/bin/ln
usr/bin/loadfont
usr/bin/loadkmap
usr/bin/losetup
usr/bin/ls
usr/bin/lsmod
usr/bin/lsscsi
usr/bin/lzop
usr/bin/md5sum
usr/bin/mkdir
usr/bin/mkfifo
usr/bin/mknod
usr/bin/mkpasswd
usr/bin/mktemp
usr/bin/modinfo
usr/bin/modprobe
usr/bin/mount
usr/bin/mountpoint
usr/bin/mv
usr/bin/nc
usr/bin/netstat
usr/bin/nologin
usr/bin/nproc
usr/bin/nsenter
usr/bin/nslookup
usr/bin/nuke
usr/bin/openvt
usr/bin/partprobe
usr/bin/paste
usr/bin/pgrep
usr/bin/pidof
usr/bin/ping
usr/bin/ping6
usr/bin/poweroff
usr/bin/printf
usr/bin/ps
usr/bin/pwd
usr/bin/readlink
usr/bin/realpath
usr/bin/reboot
usr/bin/resume
usr/bin/rm
usr/bin/rmdir
usr/bin/rmmod
usr/bin/route
usr/bin/run-init
usr/bin/sed
usr/bin/seq
usr/bin/setfattr
usr/bin/setfont
usr/bin/sh
usr/bin/sha1sum
usr/bin/sha256sum
usr/bin/sha512sum
usr/bin/shuf
usr/bin/sleep
usr/bin/sort
usr/bin/stat
usr/bin/strings
usr/bin/switch_root
usr/bin/sync
usr/bin/systemd-tmpfiles
usr/bin/tac
usr/bin/tail
usr/bin/tar
usr/bin/tcpsvd
usr/bin/tee
usr/bin/telnet
usr/bin/test
usr/bin/tftp
usr/bin/touch
usr/bin/true
usr/bin/truncate
usr/bin/ts
usr/bin/udevadm
usr/bin/udhcpc
usr/bin/udhcpc6
usr/bin/umount
usr/bin/uname
usr/bin/uniq
usr/bin/unlink
usr/bin/unshare
usr/bin/unzip
usr/bin/uptime
usr/bin/vi
usr/bin/wc
usr/bin/wget
usr/bin/which
usr/bin/xxd
usr/bin/xz
usr/bin/yes
usr/lib/
usr/lib64
usr/lib/ld-linux-x86-64.so.2
usr/lib/libacl.so.1
usr/lib/libargon2.so.1
usr/lib/libattr.so.1
usr/lib/libaudit.so.1
usr/lib/libblkid.so.1
usr/lib/libcap-ng.so.0
usr/lib/libcap.so.2
usr/lib/libcom_err.so.2
usr/lib/libcrypto.so.1.1
usr/lib/libcryptsetup.so.12
usr/lib/libcrypt.so.2
usr/lib/libc.so.6
usr/lib/libdevmapper.so.1.02
usr/lib/libdl.so.2
usr/lib/libe2p.so.2
usr/lib/libext2fs.so.2
usr/lib/libffi.so.7
usr/lib/libgcrypt.so.20
usr/lib/libgpg-error.so.0
usr/lib/libidn2.so.0
usr/lib/libip4tc.so.2
usr/lib/libjson-c.so.5
usr/lib/libkmod.so.2
usr/lib/liblz4.so.1
usr/lib/liblzma.so.5
usr/lib/libmount.so.1
usr/lib/libm.so.6
usr/lib/libp11-kit.so.0
usr/lib/libpam.so.0
usr/lib/libpthread.so.0
usr/lib/librt.so.1
usr/lib/libseccomp.so.2
usr/lib/libssl.so.1.1
usr/lib/libudev.so.1
usr/lib/libunistring.so.2
usr/lib/libuuid.so.1
usr/lib/libz.so.1
usr/lib/libzstd.so.1
usr/lib/modprobe.d/
usr/lib/modprobe.d/bluetooth-usb.conf
usr/lib/modprobe.d/nvdimm-security.conf
usr/lib/modprobe.d/nvidia.conf
usr/lib/modprobe.d/nvidia-lts.conf
usr/lib/modprobe.d/systemd.conf
usr/lib/modules/
usr/lib/modules/5.4.72-1-lts/
usr/lib/modules/5.4.72-1-lts/kernel/
usr/lib/modules/5.4.72-1-lts/kernel/cdrom.ko
usr/lib/modules/5.4.72-1-lts/kernel/crc16.ko
usr/lib/modules/5.4.72-1-lts/kernel/crc32c_generic.ko
usr/lib/modules/5.4.72-1-lts/kernel/crc32c-intel.ko
usr/lib/modules/5.4.72-1-lts/kernel/crc-itu-t.ko
usr/lib/modules/5.4.72-1-lts/kernel/ext4.ko
usr/lib/modules/5.4.72-1-lts/kernel/firewire-core.ko
usr/lib/modules/5.4.72-1-lts/kernel/firewire-sbp2.ko
usr/lib/modules/5.4.72-1-lts/kernel/hid-generic.ko
usr/lib/modules/5.4.72-1-lts/kernel/hid.ko
usr/lib/modules/5.4.72-1-lts/kernel/jbd2.ko
usr/lib/modules/5.4.72-1-lts/kernel/mbcache.ko
usr/lib/modules/5.4.72-1-lts/kernel/mmc_block.ko
usr/lib/modules/5.4.72-1-lts/kernel/mmc_core.ko
usr/lib/modules/5.4.72-1-lts/kernel/scsi_mod.ko
usr/lib/modules/5.4.72-1-lts/kernel/sd_mod.ko
usr/lib/modules/5.4.72-1-lts/kernel/sr_mod.ko
usr/lib/modules/5.4.72-1-lts/kernel/usbhid.ko
usr/lib/modules/5.4.72-1-lts/kernel/usb-storage.ko
usr/lib/modules/5.4.72-1-lts/kernel/virtio_blk.ko
usr/lib/modules/5.4.72-1-lts/kernel/xhci-hcd.ko
usr/lib/modules/5.4.72-1-lts/kernel/xhci-pci.ko
usr/lib/modules/5.4.72-1-lts/modules.alias.bin
usr/lib/modules/5.4.72-1-lts/modules.builtin.alias.bin
usr/lib/modules/5.4.72-1-lts/modules.builtin.bin
usr/lib/modules/5.4.72-1-lts/modules.dep.bin
usr/lib/modules/5.4.72-1-lts/modules.devname
usr/lib/modules/5.4.72-1-lts/modules.softdep
usr/lib/modules/5.4.72-1-lts/modules.symbols.bin
usr/lib/systemd/
usr/lib/systemd/libsystemd-shared-246.so
usr/lib/systemd/systemd-udevd
usr/lib/udev/
usr/lib/udev/ata_id
usr/lib/udev/rules.d/
usr/lib/udev/rules.d/50-udev-default.rules
usr/lib/udev/rules.d/60-persistent-storage.rules
usr/lib/udev/rules.d/64-btrfs.rules
usr/lib/udev/rules.d/80-drivers.rules
usr/lib/udev/scsi_id
usr/local/
usr/local/bin
usr/local/lib
usr/local/sbin
usr/sbin
var/
var/run
VERSION

mkinitcpio 好像也把该打包的都打包进去了:

$ sudo mkinitcpio -P
==> Building image from preset: /etc/mkinitcpio.d/linux-lts.preset: 'default'
  -> -k /boot/vmlinuz-linux-lts -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-lts.img
==> Starting build: 5.4.72-1-lts
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [autodetect]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
  -> Running build hook: [filesystems]
  -> Running build hook: [keyboard]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux-lts.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux-lts.preset: 'fallback'
  -> -k /boot/vmlinuz-linux-lts -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-lts-fallback.img -S autodetect
==> Starting build: 5.4.72-1-lts
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: wd719x
==> WARNING: Possibly missing firmware for module: aic94xx
  -> Running build hook: [filesystems]
  -> Running build hook: [keyboard]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux-lts-fallback.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
  -> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 5.9.1-arch1-1
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [autodetect]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: xhci_pci
  -> Running build hook: [filesystems]
  -> Running build hook: [keyboard]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
  -> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 5.9.1-arch1-1
  -> Running build hook: [base]
  -> Running build hook: [udev]
  -> Running build hook: [modconf]
  -> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: wd719x
==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: xhci_pci
  -> Running build hook: [filesystems]
  -> Running build hook: [keyboard]
  -> Running build hook: [fsck]
==> Generating module dependencies
==> Creating gzip-compressed initcpio image: /boot/initramfs-linux-fallback.img
==> Image generation successful

最近编辑记录 Mr.I (2020-10-22 16:30:22)

离线

#4 2020-10-22 16:37:19

Mr.I
路人丙
所在地: Kerbal
注册时间: 2015-08-29
帖子: 249

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

不过,我发现我的 linux-lts 的 initramfs 里面的模块和 linux 的不一样,多了 scsi_mod 和 sd_mod,少了 xhci-pci-renesas,我去查一下这几个模块是用来干嘛的 big_smile

这个是 initramfs-linux.img 的:

$ lsinitcpio -a initramfs-linux.img 
==> Image: initramfs-linux.img 
==> Created with mkinitcpio 28
==> Kernel: 5.9.1-arch1-1
==> Size: 9.53 MiB
==> Compressed with: gzip
  -> Uncompressed size: 24.02 MiB (.396 ratio)
  -> Estimated decompression time: 0.148s

==> Included modules:
  cdrom			  crc32c-intel		  firewire-core		  hid-generic		  mmc_block		  usbhid		  xhci-hcd
  crc16			  crc-itu-t		  firewire-sbp2		  jbd2			  mmc_core		  usb-storage		  xhci-pci
  crc32c_generic	  ext4			  hid			  mbcache		  sr_mod		  virtio_blk		  xhci-pci-renesas

==> Included binaries:
  blkid			  fsck			  kmod			  switch_root		  udevadm
  busybox		  fsck.ext4		  mount			  systemd-tmpfiles

==> Early hook run order:
  udev

==> Hook run order:
  udev

==> Cleanup hook run order:
  udev

-----------------------

xhci-pci-renesas 只是一个 USB 驱动,好像和这个话题无关。至于多出来的 2 个 SCSI 模块,应该不会是它们导致了内核认不出硬盘吧?

最近编辑记录 Mr.I (2020-10-22 16:51:54)

离线

#5 2020-10-22 16:55:30

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 6,661
个人网站

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

Mr.I 说:

xhci-pci-renesas 只是一个 USB 驱动,好像和这个话题无关。至于多出来的 2 个 SCSI 模块,应该不会是它们导致了内核认不出硬盘吧?

就是它们了。你是找不到硬盘,又不是文件系统类型不认识。

离线

#6 2020-10-22 16:59:13

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 6,661
个人网站

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

你这是什么设备啊,硬盘是怎么接的呢?

离线

#7 2020-10-22 17:23:19

Mr.I
路人丙
所在地: Kerbal
注册时间: 2015-08-29
帖子: 249

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

依云 说:

就是它们了

哦,天哪 big_smile


依云 说:

你这是什么设备啊,硬盘是怎么接的呢?

这台电脑上就只有一块 SATA 口的机械硬盘,接在主板的 SATA3 接口上

$ sudo smartctl -a /dev/sda
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.9.1-arch1-1] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Seagate Barracuda 3.5
Device Model:     ST1000DM010-2EP102
Serial Number:    <手动移除>
LU WWN Device Id: <手动移除>
Firmware Version: 1001
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    7200 rpm
Form Factor:      3.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ATA8-ACS T13/1699-D revision 4
SATA Version is:  SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Thu Oct 22 17:17:13 2020 CST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

那么,为什么我的 linux 和 linux-lts 的 mkinitcpio 自动发现的模块会是不一样的呢?

离线

#8 2020-10-22 17:40:34

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 6,661
个人网站

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

我也搞不懂为什么会有这种差异。理论上有 scsi_mod 和 sd_mod 才应该正常的呀。你试试 fallback 那个启动项呢?

离线

#9 2020-10-22 18:05:52

Mr.I
路人丙
所在地: Kerbal
注册时间: 2015-08-29
帖子: 249

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

依云 说:

我也搞不懂为什么会有这种差异。理论上有 scsi_mod 和 sd_mod 才应该正常的呀。你试试 fallback 那个启动项呢?

fallback (在我 blacklist 掉 scsi 模块前) 也是一样, linux-lts 找不到设备,linux 可以正常启动。

另外,我按照 wiki 上 说的把那 2 个 scis 模块给 blacklist 掉了,按照 wiki 上的说法,虽然模块仍然会 mkinitcpio 被打包进去,但是它并不会在启动过程中被加载(我在 emergency shell 里面 lsmod 看了一下,scsi 相关的模块的确没有被列出来,但是还是存疑)。当然,结果还是一样。

离线

#10 2020-10-22 18:57:30

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 6,661
个人网站

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

怪怪的。是老的内核不支持你的设备么?

离线

#11 2020-10-22 20:45:17

Mr.I
路人丙
所在地: Kerbal
注册时间: 2015-08-29
帖子: 249

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

依云 说:

怪怪的。是老的内核不支持你的设备么?

变成未解之谜了(可能确实是这样吧) tongue

我回到家,在我自己的电脑上装了 linux-lts 和 nvidia-lts(等 lts 包),然后 grub-mkconfig 重做 grub.cfg,然后就好了,一点问题都没有。

我自己的电脑上的硬盘是 :

# 根文件系统(ext4)在这块上

$ sudo smartctl -a /dev/sda
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.72-1-lts] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Samsung based SSDs
Device Model:     Samsung SSD 860 EVO 1TB
Serial Number:    <手动移除>
LU WWN Device Id: <手动移除>
Firmware Version: RVT03B6Q
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Size:      512 bytes logical/physical
Rotation Rate:    Solid State Device
Form Factor:      2.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-4 T13/BSR INCITS 529 revision 5
SATA Version is:  SATA 3.2, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Thu Oct 22 20:40:15 2020 CST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
$ sudo smartctl -a /dev/sdb
smartctl 7.1 2019-12-30 r5022 [x86_64-linux-5.4.72-1-lts] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Blue
Device Model:     WDC WD10EZEX-08WN4A0
Serial Number:    <手动移除>
LU WWN Device Id: <手动移除>
Firmware Version: 01.01A01
User Capacity:    1,000,204,886,016 bytes [1.00 TB]
Sector Sizes:     512 bytes logical, 4096 bytes physical
Rotation Rate:    7200 rpm
Form Factor:      3.5 inches
Device is:        In smartctl database [for details use: -P show]
ATA Version is:   ACS-3 T13/2161-D revision 3b
SATA Version is:  SATA 3.1, 6.0 Gb/s (current: 6.0 Gb/s)
Local Time is:    Thu Oct 22 20:40:16 2020 CST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

离线

#12 2020-10-22 20:52:40

Mr.I
路人丙
所在地: Kerbal
注册时间: 2015-08-29
帖子: 249

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

然后,我自己电脑上的 linux-lts 和 linux 的 initramfs 的模块和那台有问题的电脑上的是一样的,所以的确不是那两个 scsi 模块的问题

$ lsinitcpio -a initramfs-linux-lts.img
==> Image: initramfs-linux-lts.img 
==> Created with mkinitcpio 28
==> Kernel: 5.4.72-1-lts
==> Size: 9.83 MiB
==> Compressed with: gzip
  -> Uncompressed size: 25.2 MiB (.390 ratio)
  -> Estimated decompression time: 0.179s

==> Included modules:
  ahci			  crc32c-intel		  firewire-sbp2		  libahci		  mmc_core		  usbhid		  xhci-pci
  cdrom			  crc-itu-t		  hid			  libata		  scsi_mod		  usb-storage
  crc16			  ext4			  hid-generic		  mbcache		  sd_mod		  virtio_blk
  crc32c_generic	  firewire-core		  jbd2			  mmc_block		  sr_mod		  xhci-hcd

==> Included binaries:
  blkid			  fsck			  kmod			  switch_root		  udevadm
  busybox		  fsck.ext4		  mount			  systemd-tmpfiles

==> Early hook run order:
  udev

==> Hook run order:
  udev

==> Cleanup hook run order:
  udev
$ lsinitcpio -a initramfs-linux.img    
==> Image: initramfs-linux.img 
==> Created with mkinitcpio 28
==> Kernel: 5.9.1-arch1-1
==> Size: 9.53 MiB
==> Compressed with: gzip
  -> Uncompressed size: 24.02 MiB (.396 ratio)
  -> Estimated decompression time: 0.154s

==> Included modules:
  cdrom			  crc32c-intel		  firewire-core		  hid-generic		  mmc_block		  usbhid		  xhci-hcd
  crc16			  crc-itu-t		  firewire-sbp2		  jbd2			  mmc_core		  usb-storage		  xhci-pci
  crc32c_generic	  ext4			  hid			  mbcache		  sr_mod		  virtio_blk		  xhci-pci-renesas

==> Included binaries:
  blkid			  fsck			  kmod			  switch_root		  udevadm
  busybox		  fsck.ext4		  mount			  systemd-tmpfiles

==> Early hook run order:
  udev

==> Hook run order:
  udev

==> Cleanup hook run order:
  udev

最近编辑记录 Mr.I (2020-10-22 20:59:28)

离线

#13 2020-10-22 22:01:26

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 6,661
个人网站

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

那大概真就是旧内核不支持?你按型号搜一下呢?

离线

#14 2020-10-22 22:24:15

Mr.I
路人丙
所在地: Kerbal
注册时间: 2015-08-29
帖子: 249

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

依云 说:

那大概真就是旧内核不支持?你按型号搜一下呢?

linux-hardware 上 找到了,有少量的故障报告,除此之外没有再找到什么有用的信息了。

我在 archive 中找了一下 linux 包 5.4 版本的打包时间,最后一批是在今年一月,那台有问题的电脑我是在今年 7 月份开始用上的,也许是我很幸运地跳过了有问题的内核版本,然后现在用 linux-lts 重现了原本应该在大半年前碰到的问题。

然而还是存疑,并没有找到决定性的证据 big_smile

离线

#15 2021-08-10 10:21:49

Negativ
会员
注册时间: 2018-10-20
帖子: 18

Re: 【未解之谜】 同时安装了 linux 和 linux-tls,但是 linux-lts 找不到根文件系统设备

我碰到了和你差不多一样的问题,不过我是新内核(5.13.x)进emergency shell,老内核(5.10.x)没有问题,同样都是用grub-mkconfig重做过grub.cfg

离线

页脚