You are not logged in.

#1 2017-02-22 10:23:07

「」
Member
Registered: 2017-02-22
Posts: 2

will only boot into [rootfs]

I'm trying to install arch on my Surface pro 3. I've done this before but now for some reason whenever I install it will only boot to rootfs. I can boot from the install media and install everything as the installation guide says, both the regular one and the one specific for surface pro 3, however when I reboot and take out the install media and try to boot from the device itself it goes into some recovery rootfs after saying it can't find a root device. I've made sure to run genfstab -U /mnt >> /mnt/etc/fstab and have even looked around a little and messed around with initramfs and mkcpio but nothing I do will work. I'm using refind-efi as a boot loader which worked fine before, and now seems to work fine, except when trying to start up it can't find the root device. I only have 2 partitions /dev/sda1 is an EFI system(ef00) partition of 100M mounted at /boot and /dev/sda2 the rest of the 256G mounted at / as Linux file (8300?) system

EDIT: I found a way to boot into my system by mounting the root partition on /newroot in rootfs, but now I need to figure out how to make refind do that

Last edited by 「」 (2017-02-22 10:58:35)

Offline

#2 2017-02-22 11:17:34

loqs
Member
Registered: 2014-03-06
Posts: 15,079

Re: will only boot into [rootfs]

Welcome to the arch linux forums 「」 check in /boot/refind_linux.conf and /boot/EFI/refind/refind.conf (path may be different for this one) that the root parameter is specified and its value matches that from `blkid` see REFInd#Configuration.  If you need more help please post the contents of the two mentioned configuration files plus the output of

# blkid

and the kernel command line ( usually available as /proc/cmdline before /proc is mounted it is available from dmesg ( approximately the third line ) )

Offline

#3 2017-02-22 14:06:05

「」
Member
Registered: 2017-02-22
Posts: 2

Re: will only boot into [rootfs]

The content of /boot/refind_linux.conf

"Boot with standard options"  "archisobasedir=arch archisolabel=ARCH_201702"
"Boot to single-user mode"    "archisobasedir=arch archisolabel=ARCH_201702 single"
"Boot with minimal options"   "ro root=/dev/nvme0n1p5"

The content of /boot/EFI/refind/refind.conf

# A sample entry for a Linux 3.13 kernel with EFI boot stub support
# on a partition with a GUID of 904404F8-B481-440C-A1E3-11A5A954E601.
# This entry includes Linux-specific boot options and specification
# of an initial RAM disk. Note uses of Linux-style forward slashes.
# Also note that a leading slash is optional in file specifications.
menuentry Linux {
    icon EFI/refind/icons/os_linux.png
    volume 904404F8-B481-440C-A1E3-11A5A954E601
    loader bzImage-3.3.0-rc7
    initrd initrd-3.3.0.img
    options "ro root=UUID=5f96cafa-e0a7-4057-b18f-fa709db5b837"
    disabled
}

# A sample entry for loading Ubuntu using its standard name for
# its GRUB 2 boot loader. Note uses of Linux-style forward slashes
menuentry Ubuntu {
    loader /EFI/ubuntu/grubx64.efi
    icon /EFI/refind/icons/os_linux.png
    disabled
}

# A minimal ELILO entry, which probably offers nothing that
# auto-detection can't accomplish.
menuentry "ELILO" {
    loader \EFI\elilo\elilo.efi
    disabled
}

# Like the ELILO entry, this one offers nothing that auto-detection
# can't do; but you might use it if you want to disable auto-detection
# but still boot Windows....
menuentry "Windows 7" {
    loader \EFI\Microsoft\Boot\bootmgfw.efi
    disabled
}

# EFI shells are programs just like boot loaders, and can be
# launched in the same way. You can pass a shell the name of a
# script that it's to run on the "options" line. The script
# could initialize hardware and then launch an OS, or it could
# do something entirely different.
menuentry "Windows via shell script" {
    icon \EFI\refind\icons\os_win.png
    loader \EFI\tools\shell.efi
    options "fs0:\EFI\tools\launch_windows.nsh"
    disabled
}

# Mac OS is normally detected and run automatically; however,
# if you want to do something unusual, a manual boot stanza may
# be the way to do it. This one does nothing very unusual, but
# it may serve as a starting point. Note that you'll almost
# certainly need to change the "volume" line for this example
# to work.
menuentry "My Mac OS X" {
    icon \EFI\refind\icons\os_mac.png
    volume "OS X boot"
    loader \System\Library\CoreServices\boot.efi
    disabled
}

In this file I changed the "options "ro root=UUID="
with the UUID of the root partition where before it wasn't the UUID of either the root or boot partition, however this had no change

also blkid output nothing, not even a "command not found"

lsblk though, /dev/nvmeon1 is the drive I'm installing on and /dev/nvme0n1p5 is the root partition and /dev/nvme0n1p1 is the boot partition

Last edited by 「」 (2017-02-22 19:35:40)

Offline

#4 2017-02-22 14:13:31

Trilby
Inspector Parrot
Registered: 2011-11-29
Posts: 27,044
Website

Re: will only boot into [rootfs]

Please edit your last post and add [ code ] tags around command output or file contents.  You could also consider removing commented lines from what you post here, e.g.:

grep -v '^#' /boot/EFI/refind/refind.conf

"UNIX is simple and coherent..." - Dennis Ritchie, "GNU's Not UNIX" -  Richard Stallman

Offline

#5 2017-02-22 14:49:05

loqs
Member
Registered: 2014-03-06
Posts: 15,079

Re: will only boot into [rootfs]

「」 wrote:

In this file I changed the "options "ro root=UUID="
with the UUID of the root partition where before it wasn't the UUID of either the root or boot partition, however this had no change

menuentry Linux {
    icon EFI/refind/icons/os_linux.png
    volume 904404F8-B481-440C-A1E3-11A5A954E601
    loader bzImage-3.3.0-rc7
    initrd initrd-3.3.0.img
    options "ro root=UUID=5f96cafa-e0a7-4057-b18f-fa709db5b837"
    disabled
}

The menuentry has the disabled option so will not be used,  the loader and initrd lines are also not configured for a standard arch linux kernel.

「」 wrote:

also blkid output nothing, not even a "command not found"

Dis you run it without root privileges by mistake?

"Boot with standard options"  "archisobasedir=arch archisolabel=ARCH_201702"
"Boot to single-user mode"    "archisobasedir=arch archisolabel=ARCH_201702 single"
"Boot with minimal options"   "ro root=/dev/nvme0n1p5"

The first entry is the one refind is most likely using to attempt to boot arch with which is missing both initrd and root paramters.

Offline

Board footer

Powered by FluxBB