항상 나를 괴롭히는 사소한 문제가 있습니다. Could not find the root block device in UUID=5f7c7e13-2a46-4ae4-a8c0-f77f84e80900
내 젠투는 계속해서 " "에 대해 불평하고 시작하려고 하면 멈춥니다. 하지만 동일한 장치 이름을 입력하면 /dev/sda2
시스템이 계속 실행됩니다. 이유는 모르겠습니다. 내 젠투 설치는 /dev/sda2
내가 설치한 파티션에 /
있습니다 /dev/sda2
.
온라인에서도 몇몇 게시물을 발견했습니다. 대부분의 게시물에서는 커널 구성으로 인해 발생한다고 말하고 fs
모듈이 아닌 해당 내장 기능을 커널에 컴파일하면 문제를 해결할 수 있습니다. 어떤 사람들은 명령 뒤에 grub을 지정 rootfs
해야 하고, grub에서 명령 뒤의 장치 이름을 this 로 바꿔야 한다고 말합니다 . 나는 이 모든 것을 했지만 아무것도 효과가 없었습니다. kernel
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 }
젠투는 우분투와 공존합니다.
내 거 /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"
누구든지 아이디어가 있습니까? 감사해요.
답변1
며칠 동안 작업한 끝에 드라이버 문제로 인한 문제라는 것을 드디어 알아냈습니다. USB 케이블을 통해 노트북에 연결된 외장 하드 드라이브에 Gentoo를 설치했습니다. 그러나 커널을 빌드할 때 USB Mass Storage Support
옵션이 마스크되지 않습니다. 그래서 늘 이렇게 막혀있습니다. 제가 그런 경우이고 참조된 모든 항목을 컴파일 했는지 build-in
확인했다면 커널에 다음 옵션이 있는지 확인하세요 .file system
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
그렇지 않다면 확인해 보세요.
답변2
어쩌면 하드 드라이브 오류일 수도 있습니다grub.cfg
bios=hd1,msdos2 --hint-efi=hd1,msdos2 --hint-baremetal=ahci1,msdos2
hd1,msdos2
등은 ahci1,msdos2
두 번째 디스크를 참조합니다. 일반적으로 grub을 가장 먼저 hd0,msdos1
설치합니다./dev/sda
이것을 확인하세요grub-install --recheck /dev/sda
파티션은 다음과 같습니다. (기본 장치에서 실행)
sudo parted -l
Model: ATA VBOX HARDDISK (scsi)
Disk /dev/sda: 107GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags:
Number Start End Size Type File system Flags
1 1049kB 103GB 103GB primary ext4 boot
2 103GB 107GB 4394MB extended
5 103GB 107GB 4394MB logical linux-swap(v1)
답변3
솔직히 가장 쉬운 방법은 범용 코어를 만드는 것이라고 생각합니다.
난 그냥 우분투의 커널 구성을 얻고, a를 발행하고 make oldconfig
, genkernel --no-clean --menuconfig all
나머지는 해보자.
- 커널을 표시하려면 빠른 설치 가이드의 지침을 따르십시오.
- 공통 커널 구성을 얻으려면:
1) 필요한 파일을 찾으십시오. 최신 커널 버전은 기본적으로 다음과 같습니다.http://kernel.ubuntu.com/~kernel-ppa/configs/
2)wget -O /usr/src/linux/.config kernelconfigurl
- 달리기
make oldconfig
. 이 질문에 대답하는 방법을 모르면 "Enter" 키를 누르십시오. 아니요, 나쁜 일은 일어나지 않습니다. 기본 답변이 기본값으로 설정됩니다. 이는 어쨌든 일반 커널에서 선택해야 하는 답변입니다. - genkernel을 실행하세요
genkernel --no-clean --menuconfig all
. 메뉴에서 필요에 따라 수정하거나 바로 종료할 수 있습니다. 설치가 시작됩니다. - GRUB 구성을 생성하려면 다음 명령을 사용하십시오.
grub-mkconfig -o /boot/grub/grub.cfg
이 커널에는 거의 모든 모듈과 그 이상이 포함됩니다. 따라서 연결하는 모든 것이 작동합니다. 일부 유닉스 베테랑들은 범용 커널에 눈살을 찌푸립니다. Ubuntu, Fedora 또는 기본적으로 모든 배포판을 실행하는 경우 공통 커널을 사용하고 있는 것입니다.
혼란을 주지 않고 최소한의 커널을 만들고 싶나요?
괜찮아요. 커널이 실행되면 필요한 모든 장치를 연결하기만 하면 됩니다. 완료되면 를 입력 /usr/src/linux
하고 발행하십시오 make localmodconfig
. 좋습니다. 이제 필요한 것만 포함하는 커널이 생겼습니다. genkernel을 사용하여 새로운 미니멀리스트 버전을 컴파일하고 같은 방식으로 설치합니다.
행운을 빌어요.
답변4
나에게 있어서 해결책은 내 파티션을 GRUB이 검색 중이라고 표시 LABEL=FUNTOO
하고 /dev/sda3
isolinux 프롬프트를 입력하거나 일시적으로 GRUB 부팅 옵션(매개변수)을 편집하여 작동하도록 하는 것이었습니다 .real_root
/dev/sda3
FUNTOO