Linux

找不到根塊設備(在 Gentoo 中)

  • September 2, 2021

總有一些小問題困擾著我。我的 Gentoo 總是抱怨 ’ Could not find the root block device in UUID=5f7c7e13-2a46-4ae4-a8c0-f77f84e80900’ 並卡住,一旦我嘗試啟動。但是,如果我輸入相同的設備名稱/dev/sda2,系統會繼續執行。我不知道為什麼。我的 Gentoo 安裝在一個分區中/dev/sda2,我安裝//dev/sda2.

   我也在網上找到了一些文章。大部分文章說是核心配置引起的,把對應fs的as built-in編譯到核心中,而不是module可以解決。有些說rootfs應該在grub命令後面指定,grubkernel命令後面的設備名稱root應該替換為UUID. _ 我都做了,但那些都沒用。

這是我在 grub 中的配置。

533 menuentry 'Gentoo (on /dev/sda2)' --class gentoo --class linux-gnu --class os $menuentry_id_option 'osprober-chain-225E1F815E1F4D43' { 
534     insmod part_msdos                                                                                                   
535     insmod ext4                                                                                                         
536     set root='hd0,msdos2'                                                                                               
537     if [ x$feature_platform_search_hint = xy ]; then                                                                    
538     ¦   ¦ search --no-floppy --fs-uuid --set=root --hint-    bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2      5f7c7e13-2a46-4ae4-a8c0-f77f84e80900 
539     ¦   else                                                                                                                
540     ¦   ¦ search --no-floppy --fs-uuid --set=root 5f7c7e13-2a46-4ae4-a8c0-f77f84e80900                                      
541     ¦   fi                                                                                                                  
542     ¦   ¦ echo    'Loading Linux x86_64-4.4.39-gentoo ...'                                                                    
543     ¦   ¦ linux   /boot/kernel-genkernel-x86_64-4.4.39-gentoo root=UUID=5f7c7e13-2a46-4ae4-a8c0-f77f84e80900 ro               
544     ¦ echo    'Loading initial ramdisk ...'                                                                               
545     ¦   ¦ initrd  /boot/initramfs-genkernel-x86_64-4.4.39-gentoo                                                        
546     ¦ boot                                                                                                              
547                                                                                                                         
548 }              

Gentoo 與 Ubuntu 共存。

我的/etc/fstab.

1 # /etc/fstab: static file system information.                                                                           
2 #                                                                                                                       
3 # noatime turns off atimes for increased performance (atimes normally aren't                                            
4 # needed); notail increases performance of ReiserFS (at the expense of storage                                          
5 # efficiency).  It's safe to drop the noatime options if you want and to                                                
6 # switch between notail / tail freely.                                                                                  
7 #                                                                                                                       
8 # The root filesystem should have a pass number of either 0 or 1.                                                       
9 # All other filesystems should have a pass number of 0 or greater than 1.                                               
10 #                                                                                                                       
11 # See the manpage fstab(5) for more information.                                                                        
12 #                                                                                                                       
13                                                                                                                         
14 # <fs>          <mountpoint>    <type>      <opts>      <dump/pass>                                                     
15                                                                                                                         
16 # NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.                                              
17 UUID=5f7c7e13-2a46-4ae4-a8c0-f77f84e80900  /      ext4  noatime  0 1                                                    
18 UUID=B66EAE686EAE215B  /mnt/D/     ntfs      errors=remount-ro                                                          
19                                                                     

對應名稱的 UUID

 /dev/sda2: UUID="5f7c7e13-2a46-4ae4-a8c0-f77f84e80900" TYPE="ext4" PARTUUID="000e21f3-02"

 /dev/sda4: UUID="B66EAE686EAE215B" TYPE="ntfs" PARTUUID="000e21f3-04"

有沒有人有一些想法?謝謝。

過了幾天終於弄明白了,是驅動問題造成的。我的 Gentoo 安裝在通過 USB 電纜與筆記型電腦連接的外部硬碟中。但是,當我建構核心時,該USB Mass Storage Support選項沒有被屏蔽。因此,它總是以這種方式被阻止。如果有些人在同一條船上build-in我,你確保你已經編譯了所有引用file system的 as built-in,請檢查以下選項是否built-in在你的核心中。

  • Device Driver-->USB Support -->USB Mass Storage Support
  • Device Driver-->USB Support -->xHCI HCD (USB 3.0) support
  • Device Driver-->USB Support --> EHCI HCD (USB 2.0) support
  • Device Driver-->USB Support --> UHCI HCD (most Intel and VIA) support
  • Device Driver-->USB Support --> Support for Host-side USB

如果他們沒有,請檢查它。

引用自:https://unix.stackexchange.com/questions/343056