Por que preciso especificar duas imagens init - initrd e boot - dentro do KVM para inicializar o bash?

2

Minha máquina está executando dentro de uma máquina virtual KVM (Parallels Desktop v8), tendo um BIOS (não UEFI), tendo uma unidade SATA conectada, uma partição GPT nesse disco, a partição é formatada em ext4, o carregador de inicialização é extlinux v 4.05, e o kernel é o pacote Ubuntu 13.10 linux-image-3.11.0-18-generic.

O sistema é inicializado para o prompt (initramfs) quando somente o argumento initrd e no boot é especificado:

(initramfs) cat /proc/cmdline
initrd=/boot/initrd.img-3.11.0-18-generic ro quiet BOOT_IMAGE=/boot/vmlinuz-3.11.0-18-generic

Somente depois de inserir boot=/dev/sda1 o sistema inicializa para o prompt bash, como apontado na resposta da pergunta Como corrigir o boot no prompt initramfs e" mount: cannot read " / etc / fstab ': Nenhum arquivo ou diretório "e" Nenhum init encontrado "?

Eu li que o kernel geralmente consegue encontrar sua partição de inicialização sem configuração adicional.

Ambiente:

$ sudo efibootmgr
Fatal: Couldn't open either sysfs or procfs directories for accessing EFI variables.
$ sudo modprobe efivars
(no result)

Solicitação com falha (initramfs):

mount: can't read '/etc/fstab': No such file or directory
mount: mounting /dev on /root/dev failed: No such file or directory
mount: mounting /sys on /root/sys failed: No such file or directory
mount: mounting /proc on /root/proc failed: No such file or directory
The filesystem doesn't have requested /sbin/init.
No init found. Try passing init= bootarg.

(initramfs) cd /root || mkdir /root
(initramfs)

Atualização # 1 - (initramfs) saída echo $ (pwd)

(initramfs) cd /root && echo $(pwd) || mkdir /root?
/root
(initramfs)

Atualização # 2 - (initramfs) ls / dev output

(initramfs) ls /dev
vga_arbiter rfkill mem null port zero full random urandom kmsg tty console
tty0-tty63 vcs vcsa vcs1 vcsa1 snapshot ecryptfs fuse ptmx ttyS0-ttyS31
ttyprintk hpet ram0-ram15 loop-control loop0-loop7 net ppp bus input psaux
uinput rtc0 mapper mcelog cpu_dma_latency network_latency network_throughput
pts core fd stdin stdout stderr btrfs-control char rtc sg0 bsg sda sda1

Atualização # 3 - (initramfs) ls / & & ls / * / output

(initramfs) ls /
dev root conf bin etc sbin run init lib64 scripts lib sys proc tmp var
(initramfs) ls /*/
/var/:
lock

/tmp/:

/sys/:
hypervisor kernel power block dev fs module firmware class devices bus

/scripts/:
panic init-bottom local-premount nfs functions local init-top

/sbin/:
blkid wait-for-root rmmod hwclock udevadm dumpe2fs modprobe

/run/:

/root/:

/proc/:
1-130 142-148 167-169 219-231 233 243-245 248 self ounts net sysvipc fs
driver tty bus sys cgroups irq mtrr fb acpi misc scsi mdstat execdomains
ioports imem schedstat sched_debug timer_list timer_stats dma modules
kallsyms latency_stats buddyinfo pagetypeinfo vmstat zoneinfo slabinfo
vmallocinfo swaps filesystems locks cmdline consoles cpuinfo devices 
interrupts loadavg meminfo stat uptime version softirqs kcore kmsg 
kpagecount kpageflags version_signature key-users crypto diskstats
partitions sysrq-trigger

/lib64/:
ld-linux-x86-64.so.2

/lib/:
udev klibc-dev6iJxsMLkI8yu6xMVSFDIuVsJk.so x86_64-linux-gnu modules firmware systemd

/etc/:
modprobe.d ld.so.conf.d udev ld.so.conf ls.so.cache mtab

/dev/:
...see above...

/conf/:
initramfs.conf arch.conf conf.d

/bin/:
kmod udevadm dmesg busybox poweroff fstype losetup ipconfig reboot halt sh
run-init pivot-root date dd insmod nfsmount sleep mount cpio resume

Atualização # 4 - ls / scripts / * / conf / * / sys / firmware / * / output

(initramfs) ls /scripts/* /conf/* /sys/firmware/*/
/scripts/functions /scripts/local /scripts/nfs /conf/initramfs.conf /conf/arch.conf  

/sys/firmware/memmap/:
9 8 7 6 5 4 3 2 1 0

/sys/firmware/acpi/:
hotplug tables pm_profiles interrupts

/conf/conf.d:

/scripts/panic:
ORDER keymap

/scripts/local-premount:
ORDER fixrtc resume

/scripts/init-top:
ORDER all_generic_ide blacklist udev

/scripts/init-bottom:
ORDER udev

Por que o kernel não consegue encontrar a partição de inicialização nesse caso?

    
por Pro Backup 23.03.2014 / 11:02

0 respostas