You are not logged in.

#1 2012-12-24 12:33:51

RobertBuhren
Member
Registered: 2011-09-05
Posts: 59

refind ignores refind_linux.conf

Hi there,

i have successfully setup refind to act as my bootloader, the only issue i have is that it completly ignores the "refind_linux.conf" file.
My /boot/efi layout is like this:

.
`-- efi
    |-- arch
    |   `-- grubx64.efi
    |-- kernels
    |   |-- bzImage.efi
    |   `-- refind_linux.conf
    `-- refind
        |-- icons
        |-- refind.conf
        `-- refindx64.efi

I can boot the "bzImag.efi" directly using a efi boot entry and refind also finds this kernel, but when i start it, it fails. On pressing "F2" i can't see any of the options i set in "refind_linux.conf". No matter what "refind_linux.conf" i try, it's content is never shown in refind.

Any ideas appreciated.

Regards,

Robert

Offline

#2 2012-12-24 19:37:04

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: refind ignores refind_linux.conf

Please post the contents of your refind_linux.conf file, in code tags. Also, show the output of "file /boot/efi/kernels/refind_linux.conf". Also, what version of rEFInd are you using?

Offline

#3 2013-01-10 10:27:04

RobertBuhren
Member
Registered: 2011-09-05
Posts: 59

Re: refind ignores refind_linux.conf

Sry that it took me so long to respond, i actually forgot about this thread....

Here's the information:

refind.conf

#
# refind.conf
# Configuration file for the rEFInd boot menu
#

# Timeout in seconds for the main menu screen. Setting the timeout to 0
# disables automatic booting (i.e., no timeout).
#
timeout 20

# Hide user interface elements for personal preference or to increase
# security:
#  banner      - the rEFInd title banner
#  label       - text label in the menu
#  singleuser  - remove the submenu options to boot Mac OS X in single-user
#                or verbose modes; affects ONLY MacOS X
#  hwtest      - the submenu option to run Apple's hardware test
#  arrows      - scroll arrows on the OS selection tag line
#  all         - all of the above
#
#hideui singleuser
#hideui all

# Set the name of a subdirectory in which icons are stored. Icons must
# have the same names they have in the standard directory. The directory
# name is specified relative to the main rEFInd binary's directory. If
# an icon can't be found in the specified directory, an attempt is made
# to load it from the default directory; thus, you can replace just some
# icons in your own directory and rely on the default for others.
# Default is "icons".
#
#icons_dir myicons

# Use a custom title banner instead of the rEFInd icon and name. The file
# path is relative to the directory where refind.efi is located. The color
# in the top left corner of the image is used as the background color
# for the menu screens. Currently uncompressed BMP images with color
# depths of 24, 8, 4 or 1 bits are supported.
#
#banner hostname.bmp

# Custom images for the selection background. There is a big one (144 x 144)
# for the OS icons, and a small one (64 x 64) for the function icons in the
# second row. If only a small image is given, that one is also used for
# the big icons by stretching it in the middle. If only a big one is given,
# the built-in default will be used for the small icons.
#
# Like the banner option above, these options take a filename of an
# uncompressed BMP image file with a color depth of 24, 8, 4, or 1 bits.
#
#selection_big   selection-big.bmp
#selection_small selection-small.bmp

# Use text mode only. When enabled, this option forces rEFInd into text mode.
#
#textonly

# Set the screen's video resolution. Pass this option two values,
# corresponding to the X and Y resolutions. Note that not all resolutions
# are supported. On UEFI systems, passing an incorrect value results in a
# message being shown on the screen to that effect, along with a list of
# supported modes. On EFI 1.x systems (e.g., Macintoshes), setting an
# incorrect mode silently fails. On both types of systems, setting an
# incorrect resolution results in the default resolution being used.
# A resolution of 1024x768 usually works, but higher values often don't.
# Default is "0 0" (use the system default resolution, usually 800x600).
#
#resolution 1024 768

# Launch specified OSes in graphics mode. By default, rEFInd switches
# to text mode and displays basic pre-launch information when launching
# all OSes except OS X. Using graphics mode can produce a more seamless
# transition, but displays no information, which can make matters
# difficult if you must debug a problem. Also, on at least one known
# computer, using graphics mode prevents a crash when using the Linux
# kernel's EFI stub loader. You can specify an empty list to boot all
# OSes in text mode.
# Valid options:
#   osx     - Mac OS X
#   linux   - A Linux kernel with EFI stub loader
#   elilo   - The ELILO boot loader
#   grub    - The GRUB (Legacy or 2) boot loader
#   windows - Microsoft Windows
# Default value: osx
#
#use_graphics_for osx,linux

# Which non-bootloader tools to show on the tools line, and in what
# order to display them:
#  shell           - the EFI shell (requires external program; see rEFInd
#                    documentation for details)
#  gptsync         - the (dangerous) gptsync.efi utility (requires external
#                    program; see rEFInd documentation for details)
#  apple_recovery  - boots the Apple Recovery HD partition, if present
#  mok_tool        - makes available the Machine Owner Key (MOK) maintenance
#                    tool, MokManager.efi, used on Secure Boot systems
#  about           - an "about this program" option
#  exit            - a tag to exit from rEFInd
#  shutdown        - shuts down the computer (a bug causes this to reboot
#                    EFI systems)
#  reboot          - a tag to reboot the computer
# Default is shell,apple_recovery,mok_tool,about,shutdown,reboot
#
#showtools shell, mok_tool, about, reboot, exit

# Directories in which to search for EFI drivers. These drivers can
# provide filesystem support, give access to hard disks on plug-in
# controllers, etc. In most cases none are needed, but if you add
# EFI drivers and you want rEFInd to automatically load them, you
# should specify one or more paths here. rEFInd always scans the
# "drivers" and "drivers_{arch}" subdirectories of its own installation
# directory (where "{arch}" is your architecture code); this option
# specifies ADDITIONAL directories to scan.
# Default is to scan no additional directories for EFI drivers
#
#scan_driver_dirs EFI/tools/drivers,drivers

# Which types of boot loaders to search, and in what order to display them:
#  internal      - internal EFI disk-based boot loaders
#  external      - external EFI disk-based boot loaders
#  optical       - EFI optical discs (CD, DVD, etc.)
#  hdbios        - BIOS disk-based boot loaders
#  biosexternal  - BIOS external boot loaders (USB, eSATA, etc.)
#  cd            - BIOS optical-disc boot loaders
#  manual        - use stanzas later in this configuration file
# Note that the legacy BIOS options require firmware support, which is
# not present on all computers.
# On UEFI PCs, default is internal,external,optical,manual
# On Macs, default is internal,hdbios,external,biosexternal,optical,cd,manual
#
#scanfor internal,external,optical,manual

# Delay for the specified number of seconds before scanning disks.
# This can help some users who find that some of their disks
# (usually external or optical discs) aren't detected initially,
# but are detected after pressing Esc.
# The default is 0.
#
#scan_delay 5

# When scanning volumes for EFI boot loaders, rEFInd always looks for
# Mac OS X's and Microsoft Windows' boot loaders in their normal locations,
# and scans the root directory and every subdirectory of the /EFI directory
# for additional boot loaders, but it doesn't recurse into these directories.
# The also_scan_dirs token adds more directories to the scan list.
# Directories are specified relative to the volume's root directory. This
# option applies to ALL the volumes that rEFInd scans. If a specified
# directory doesn't exist, it's ignored (no error condition results).
# The default is to scan no additional directories.
#
#also_scan_dirs boot,EFI/linux/kernels

# Directories that should NOT be scanned for boot loaders. By default,
# rEFInd doesn't scan its own directory or the EFI/tools directory.
# You can "blacklist" additional directories with this option, which
# takes a list of directory names as options. You might do this to
# keep EFI/boot/bootx64.efi out of the menu if that's a duplicate of
# another boot loader or to exclude a directory that holds drivers
# or non-bootloader utilities provided by a hardware manufacturer. If
# a directory is listed both here and in also_scan_dirs, dont_scan_dirs
# takes precedence. Note that this blacklist applies to ALL the
# filesystems that rEFInd scans, not just the ESP.
#
#dont_scan_dirs EFI/boot,EFI/Dell

# Files that should NOT be included as EFI boot loaders (on the
# first line of the display). If you're using a boot loader that
# relies on support programs or drivers that are installed alongside
# the main binary or if you want to "blacklist" certain loaders by
# name rather than location, use this option. Note that this will
# NOT prevent certain binaries from showing up in the second-row
# set of tools. Most notably, MokManager.efi is in this blacklist,
# but will show up as a tool if present in certain directories. You
# can control the tools row with the showtools token.
# The default is shim.efi,MokManager.efi,TextMode.efi,ebounce.efi,GraphicsConsole.efi
#
#dont_scan_files shim.efi,MokManager.efi

# Scan for Linux kernels that lack a ".efi" filename extension. This is
# useful for better integration with Linux distributions that provide
# kernels with EFI stub loaders but that don't give those kernels filenames
# that end in ".efi", particularly if the kernels are stored on a
# filesystem that the EFI can read. When uncommented, this option causes
# all files in scanned directories with names that begin with "vmlinuz"
# or "bzImage" to be included as loaders, even if they lack ".efi"
# extensions. The drawback to this option is that it can pick up kernels
# that lack EFI stub loader support and other files. Most notably, if you
# want to give a kernel a custom icon by placing an icon with the kernel's
# filename but a ".icns" extension in the same directory as the kernel, this
# option will cause the icon file to show up as a non-functional loader tag.
# Default is to NOT scan for kernels without ".efi" extensions.
#
#scan_all_linux_kernels

# Set the maximum number of tags that can be displayed on the screen at
# any time. If more loaders are discovered than this value, rEFInd shows
# a subset in a scrolling list. If this value is set too high for the
# screen to handle, it's reduced to the value that the screen can manage.
# If this value is set to 0 (the default), it's adjusted to the number
# that the screen can handle.
#
#max_tags 0

# Set the default menu selection.  The available arguments match the
# keyboard accelerators available within rEFInd.  You may select the
# default loader using:
#  - A digit between 1 and 9, in which case the Nth loader in the menu
#    will be the default. 
#  - Any substring that corresponds to a portion of the loader's title
#    (usually the OS's name or boot loader's path).
#
#default_selection 1

# Sample manual configuration stanzas. Each begins with the "menuentry"
# keyword followed by a name that's to appear in the menu (use quotes
# if you want the name to contain a space) and an open curly brace
# ("{"). Each entry ends with a close curly brace ("}"). Common
# keywords within each stanza include:
#
#  volume    - identifies the filesystem from which subsequent files
#              are loaded. You can specify the volume by label or by
#              a number followed by a colon (as in "0:" for the first
#              filesystem or "1:" for the second).
#  loader    - identifies the boot loader file
#  initrd    - Specifies an initial RAM disk file
#  icon      - specifies a custom boot loader icon
#  ostype    - OS type code to determine boot options available by
#              pressing Insert. Valid values are "MacOS", "Linux",
#              "Windows", and "XOM". Case-sensitive.
#  graphics  - set to "on" to enable graphics-mode boot (useful
#              mainly for MacOS) or "off" for text-mode boot.
#              Default is auto-detected from loader filename.
#  options   - sets options to be passed to the boot loader; use
#              quotes if more than one option should be passed or
#              if any options use characters that might be changed
#              by rEFInd parsing procedures (=, /, #, or tab).
#  disabled  - use alone or set to "yes" to disable this entry.
#
# Note that you can use either DOS/Windows/EFI-style backslashes (\)
# or Unix-style forward slashes (/) as directory separators. Either
# way, all file references are on the ESP from which rEFInd was
# launched.
# Use of quotes around parameters causes them to be interpreted as
# one keyword, and for parsing of special characters (spaces, =, /,
# and #) to be disabled. This is useful mainly with the "options"
# keyword. Use of quotes around parameters that specify filenames is
# permissible, but you must then use backslashes instead of slashes,
# except when you must pass a forward slash to the loader, as when
# passing a root= option to a Linux kernel.

# Below are several sample boot stanzas. All are disabled by default.
# Find one similar to what you need, copy it, remove the "disabled" line,
# and adjust the entries to suit your needs.

# A sample entry for a Linux 3.3 kernel with its new EFI boot stub
# support on a filesystem called "KERNELS". This entry includes
# Linux-specific boot options and specification of an initial RAM disk.
# Note uses of Linux-style forward slashes, even in the initrd
# specification. Also note that a leading slash is optional in file
# specifications.
menuentry Linux {
	icon EFI/refind/icons/os_linux.icns
	volume KERNELS
	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/refined/icons/os_linux.icns
	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.icns
	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.icns
	volume "OS X boot"
	loader \System\Library\CoreServices\boot.efi
	disabled
}

refind_linux.conf

## This file should be present in the same directory as the EFISTUB kernel and initramfs files
## More info at http://www.rodsbooks.com/refind/linux.html , http://www.rodsbooks.com/efi-bootloaders/efistub.html

"Boot with defaults"    "root=/dev/sda4 rootfstype=btrfs ro init=/bin/systemd"
"Boot to terminal"      "root=/dev/sda4 rootfstype=btrfs ro init=/bin/systemd single"

refind ver

[robert@robert-laptop linux-git]$ sudo pacman -Qi refind-efi 
[sudo] password for robert: 
Name           : refind-efi
Version              : 0.5.0-1
URL                  : http://www.rodsbooks.com/refind/index.html
Lizenzen             : GPL3  custom
Gruppen              : Nichts
Stellt bereit        : refind-efi-x86_64  refind-efi-i386
Hängt ab von         : dosfstools  efibootmgr
Optionale Abhängigkeiten: mactel-boot: For bless command in Apple Mac systems
Benötigt von         : Nichts
Konflikt mit         : refind-efi-x86_64  refind-efi-i386
Ersetzt              : refind-efi-x86_64  refind-efi-i386
Installationsgröße   : 2124,00 KiB
Packer               : Tobias Powalowski <tpowa@archlinux.org>
Architektur          : any
Erstellt am          : Sa 08 Dez 2012 08:18:32 CET
Installiert am       : Di 11 Dez 2012 13:29:47 CET
Installationsgrund   : Ausdrücklich installiert
Installations-Skript : Ja
Beschreibung         : Rod Smith's fork of rEFIt UEFI Boot Manager - built with Tianocore UDK libs

Regards,

Robert

Offline

#4 2013-01-10 16:36:06

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: refind ignores refind_linux.conf

I don't see any problem with that, but you omitted one piece of information I asked for: the output of:

file refind_linux.conf

(Adjusting the path as necessary.) This will tell me if the file is in some unusual encoding -- say, if you've accidentally saved it in RTF or something.

If refind_linux.conf really is an ASCII file, then my best guess is that you've got some sort of subtle filesystem problem. EFI implementations can be rather finicky about their filesystems, and I've seen them completely ignore some files. If this is happening to you, you may have to back up the ESP, unmount it, create a fresh filesystem on it, and restore it. In some cases you may need to change it from FAT16 to FAT32 or vice-versa. FAT32 is what it's officially supposed to be, but I've seen one case myself and heard of others where the computer actually works better with a FAT16 ESP. (OTOH, I also know of cases where FAT32 works better. You may just need to experiment.)

Offline

#5 2013-01-10 16:42:18

RobertBuhren
Member
Registered: 2011-09-05
Posts: 59

Re: refind ignores refind_linux.conf

[robert@robert-laptop ~]$ file /boot/efi/efi/kernels/refind_linux.conf 
/boot/efi/efi/kernels/refind_linux.conf: ASCII text

So your suggestion now is that i try to re-create my efi partition? And try both FAT16 and FAT32 ? It's really weird because everything else is working just fine

Regards,

robert

Offline

#6 2013-01-10 17:47:45

srs5694
Member
From: Woonsocket, RI
Registered: 2012-11-06
Posts: 719
Website

Re: refind ignores refind_linux.conf

RobertBuhren wrote:
[robert@robert-laptop ~]$ file /boot/efi/efi/kernels/refind_linux.conf 
/boot/efi/efi/kernels/refind_linux.conf: ASCII text

So your suggestion now is that i try to re-create my efi partition? And try both FAT16 and FAT32 ? It's really weird because everything else is working just fine

Yes, although there are at least two other options:

  • You can install whatever EFI drivers you need to enable rEFInd to read your kernel from your Linux /boot directory or partition. This will only work if you're using a filesystem that's supported (ext2/3/4fs or ReiserFS) and if it's in a regular partition, not an LVM or RAID setup.

  • You can create a manual entry in refind.conf and ignore the auto-detected entry or reconfigure rEFInd to not auto-detect it.

Offline

Board footer

Powered by FluxBB