[SOLVED] Does systemd/arch append -n to a mount during boot?

Hi all,
I tried gdrivefs from AUR:
https://aur.archlinux.org/packages/gdrivefs/
When I put an the following line into the fstab
/var/cache/gdfs.creds /mnt/gdrivefs gdfs allow_other 0 0
I get this error:
Mär 29 23:39:25 c64 mount[294]: usage: mount.gdfs [-h] [-d] [-o OPT] auth_storage_file mountpoint
Mär 29 23:39:25 c64 mount[294]: mount.gdfs: error: unrecognized arguments: -n
Mär 29 23:39:25 c64 systemd[1]: mnt-gdrive.mount mount process exited, code=exited status=2
Apparently, someone adds a "-n" option to the mount command.
Interestingly, if I add this line after boot to the fstab,
mount /mnt/gdrivefs
works. I reported a bug upstream to add a dummy "-n" option to gdfs. However, the maintainer is wondering who actually adds this "-n" option:
https://github.com/dsoprea/GDriveFS/iss … t-87722639
Any systemd experts around who have a clue about what's going on and/or can hint me to some documentation?
Last edited by knue (2015-03-31 14:56:33)

systemd does require /etc/mtab to be a symlink to /proc/self/mounts and that is read-only, so passing -n seems to make sense.
Furthermore, the man page mount(8) describes the interface for external helpers as follows:
EXTERNAL HELPERS
       The syntax of external mount helpers is:
              /sbin/mount.suffix  spec  dir [-sfnv] [-o options] [-t type.sub‐
              type]
       where the suffix is the filesystem type and the -sfnvo options have the
       same  meaning  as  the normal mount options.  The -t option is used for
       filesystems with subtypes  support  (for  example  /sbin/mount.fuse  -t
       fuse.sshfs).
       The  command mount does not pass the mount options unbindable, runbind‐
       able, private, rprivate, slave, rslave, shared, rshared, auto,  noauto,
       comment, x-*, loop, offset and sizelimit to the mount.<suffix> helpers.
       All other options are used in a comma-separated list as argument to the
       -o option.
Apparently the gdfs helper does not fully implement that interface.

Similar Messages

  • [solved]How to unlock LUKS using keyfile on usbdrive during boot?

    Hi all,
    I would like some advise for booting encrypted partitions using kefiles on a flashdrive. I'm setting up a Intel Atom based homeserver, and and want my data to be encrypted in case the server gets stolen. To save some encryption overhead I prefer to leave root unencrypted and only encrypt /home, and if this works, later on /var, /tmp and swap as well. My plan is to have a keyfile on a flash thumbdrive, and only have the thumbdrive plugged in while booting.
    I have read the dm-crypt wiki page, but it assumes an encrypted root, and this approach won't work in my situation, where only non-root mountpoints are encrypted. If i put 'ASK' in /etc/crypttab I get prompted for the passphrase and the LUKS container unlocks and mounts fine. I can also unlock the LUKS container manually using the keyfile that I created. However when I put the path to the keyfile in /etc/crypttab instead of 'ASK', and let the usbdrive automount using an udev rule the unlock at boot fails. It seems that my udev rule is only executed when I plug in a drive after booting, not when it is already plugged in during boot. How would I accomplish this? Mount it with fstab and automatically unmount it after booting, or some entirely different way?
    my /etc/fstab:
    none /dev/pts devpts defaults 0 0
    none /dev/shm tmpfs defaults 0 0
    /dev/sda1 / ext4 defaults 0 1
    /dev/sda2 swap swap defaults 0 0
    /dev/mapper/home /home ext4 defaults 0 1
    /etc/crypttab:
    home /dev/sda3 /media/usbhd-sdc1/keyfiles/arch_server_-_home.key
    /etc/udev/rules.d/01.usbdrive_automount.rules (sdb is a second, currently unused harddisk):
    KERNEL=="sd[b-z]", NAME:="%k", SYMLINK+="usbhd-%k", GROUP:="users", OPTIONS="last_rule"
    ACTION=="add", KERNEL=="sd[c-z][0-9]", SYMLINK+="usbhd-%k", GROUP:="users", NAME:="%k"
    ACTION=="add", KERNEL=="sd[c-z][0-9]", RUN+="/bin/mkdir -p /media/usbhd-%k"
    ACTION=="add", KERNEL=="sd[c-z][0-9]", PROGRAM=="/sbin/blkid -t %N", RESULT=="vfat", RUN+="/bin/mount -t vfat -o rw,noauto,flush,dirsync,noexec,nodev,noatime,dmask=000,fmask=111 /dev/%k /media/usbhd-%k", OPTIONS="last_rule"
    ACTION=="add", KERNEL=="sd[c-z][0-9]", RUN+="/bin/mount -t auto -o rw,noauto,async,dirsync,noexec,nodev,noatime /dev/%k /media/usbhd-%k", OPTIONS="last_rule"
    ACTION=="remove", KERNEL=="sd[c-z][0-9]", RUN+="/bin/umount -l /media/usbhd-%k"
    ACTION=="remove", KERNEL=="sd[c-z][0-9]", RUN+="/bin/rmdir /media/usbhd-%k", OPTIONS="last_rule"
    <edit>
    Okay I have found a solution. The trick was to make sure the usbstick gets mounted first, so the keyfile is available for the unlocking/mounting during boot. To do so I have added 'usb' to the hooks line in /etc/mkinitcpio.conf and recompiled the initramfs as described in the wiki link above.
    Next I changed my /etc/udev/rules.d/01.usbdrive_automount.rules a little so that the mountpoint of the usbdrive stays after unplugging it:
    KERNEL=="sd[b-z]", NAME:="%k", SYMLINK+="usbhd-%k", GROUP:="users", OPTIONS="last_rule"
    ACTION=="add", KERNEL=="sd[c-z][0-9]", SYMLINK+="usbhd-%k", GROUP:="users", NAME:="%k"
    ACTION=="add", KERNEL=="sd[c-z][0-9]", RUN+="/bin/mkdir -p /media/usbhd-%k"
    ACTION=="add", KERNEL=="sd[c-z][0-9]", PROGRAM=="/sbin/blkid -t %N", RESULT=="vfat", RUN+="/bin/mount -t vfat -o rw,noauto,flush,dirsync,noexec,nodev,noatime,dmask=000,fmask=111 /dev/%k /media/usbhd-%k", OPTIONS="last_rule"
    ACTION=="add", KERNEL=="sd[c-z][0-9]", RUN+="/bin/mount -t auto -o rw,noauto,async,dirsync,noexec,nodev,noatime /dev/%k /media/usbhd-%k", OPTIONS="last_rule"
    ACTION=="remove", KERNEL=="sd[c-z][0-9]", RUN+="/bin/umount -l /media/usbhd-%k", OPTIONS="last_rule"
    #ACTION=="remove", KERNEL=="sd[c-z][0-9]", RUN+="/bin/umount -l /media/usbhd-%k"
    #ACTION=="remove", KERNEL=="sd[c-z][0-9]", RUN+="/bin/rmdir /media/usbhd-%k", OPTIONS="last_rule"
    /etc/fstab:
    The usbdrive is put above the encrypted partition to make it get mounted first:
    none /dev/pts devpts defaults 0 0
    none /dev/shm tmpfs defaults 0 0
    /dev/sdc1 /media/usbhd-sdc1 ext2 defaults 0 0
    /dev/sda1 / ext4 defaults 0 1
    /dev/sda2 swap swap defaults 0 0
    /dev/mapper/home /home ext4 defaults 0 1
    /etc/crypttab:
    home /dev/sda3 /media/usbhd-sdc1/keyfiles/arch_server_-_luks.key
    So now I plug in the flashdrive, turn on the server, unplug the flashdrive and udev automatically unmounts the flashdrive while leaving the mountpoint /media/usbhd-sdc1 for the next boot.
    </edit>
    Last edited by rwd (2009-12-04 19:36:14)

    graysky wrote:@ratcheer - You can try now if it's a major pain in the balls by enabling [testing] and using the updated linux package.
    If you do enable testing make sure you aren't like myself: I'm not competent enough to enable testing..
    Edit:
    To elaborate a bit.  If you enable testing and then just do a "pacman -Syu" then you are going to pull in all sorts of packages you may not want and it may be complicated to get rid of later.  To avoid this I would enable testing, do this:
    sudo pacman -Syy
    sudo pacman -S testing/linux
    So it would pull in the absolute minimum that I wanted from testing.  Then I would disable the testing repository and pacman -Syy again.  That would convert the new linux package and packages it requires to manual packages.  E.g. they would be shown under "pacman -Qm"
    Because once you start pulling packages in from testing it is almost a one-way street.  As I instructed above, that is my gross understanding.  I don't use testing at all, it is supposed to be used if you are actively testing Arch and providing feedback while doing so.
    Last edited by headkase (2012-10-03 01:51:51)

  • [solved[KERNEL PANIC ARCH-3.4.4-2] can not boot Arch from liveCD (x64)

    i have somes problems with several apps and want to fresh installed Arch.
    my current file system:
    i use: gpt, lvm2, luks, grub2.
    /dev/sda1: bios partition
    /dev/sda2: boot partition
    /dev/sda3: lvm partition (var, usr, usr-local,....home...)
    i keep partition structure (cause i want to keep home directory without damage, it's contain my data).
    but when i try to boot from livecd to reinstall Arch, this proccess can't be done.
    this is output:
    mounting: /bootmnt/arch/any/repo-core-any-sys/....
    mounting: /bootmnt/arch/x64/.....
    I/O error on device sr0, logical block
    buffer I/O error on device sr0, logical block
    SQUASHFS error: .....
    end_request: I/O error, device sr0, sector ....
    kernel panic_not syncing: attempted to kill init !
    pid: 1 comm: init Not tainted 3.0 - ARCH #1
    call trace:
    [<fffffffffffffffff812ae6al] panic+0xa0/0x1ad
    [<fffffffffffffffff...............] do_exit ...
    [.....................................] do_group_exit ...
    [.....................................] get_signal_to_diver....
    and caps lock  & scroll lock blink.
    any ideas?
    thanks for reply !
    EDIT: i tested /dev/sr0 and the result:
    sudo mount /dev/sr0 /mnt
    mount: /dev/sr0 is write-protected, mounting read-only.
    Last edited by angelfalls (2012-07-13 17:09:56)

    Yeah that's what I meant. Try to burn a new cd at a slower speed. When the new one is done create a hashsum of the new burn and compare it to the iso you used to burn it with. I only say this because a few times in the past when I had sr0 errors while booting live cds it was because the disk was messed up and I had to burn it again.

  • Why does My Mac Book Pro Keeps Shutting Off During Boot Up.

    I recently installed office 2008 shut laptop off to take to work then i went to reboot at work and it goes to white apple screen then shuts right off,i went into disk utility and Invalid Key Length then it says the volume apps could not be verified completely. Error this disk needs to be repaired. This is like third time happen .i dont understand and no i didnt do a backup cause its a mac,never had this problem before until upgraded to lion,please help i dont wanna have to reinstall i finally got a my music from itunes,

    I am afraid that you have no choice other than Repairing Disk using Recovery HD.
    You can download music purchased from iTunes again for free, in case it is lost.
    Best.

  • NFS mount on boot failing after systemd upgrade

    Hello,
    after upgrading systemd (208-2 --> 208-3), nfs mount on boot will fail. Tested multiple times. After downgrading  back to 208-2, all worked fine.
    Output of journalctl --reverse:
    Dependency failed for Remote File Systems.
    Dependency failed for /mnt/demeter.
    Dependency failed for File System Check on /192.168.20.70:/data.
    Timed out waiting for device 192.168.20.70:-data.device.
    /etc/fstab, the nfs line:
    192.168.20.70:/data/ /mnt/demeter nfs4 defaults 0 5
    uname -a:
    Linux eros 3.12.5-1-ARCH #1 SMP PREEMPT Thu Dec 12 12:57:31 CET 2013 x86_64 GNU/Linux
    I'm using the latest packages (expect grub, it's the version before the current, because of huge ugrade problems, too).
    Greetings,
    Sebastian

    Ah, big thanks. I thought the last column is the mount order, because it's called "pass". I changed it to zero, and now it works.
    Greetings,
    Sebastian

  • [SOLVED] systemd-arch-units conflicts with mdadm and xinetd packages

    Trying to upgrade my testing box today to latest/greatest and running into a file conflict between systemd-arch-linux providing systemd profiles for xinetd and mdadm which also think they control the same files:
    error: failed to commit transaction (conflicting files)
    /usr/lib/systemd/system/mdadm.service exists in both 'mdadm' and 'systemd-arch-units'
    /usr/lib/systemd/system/xinetd.service exists in both 'systemd-arch-units' and 'xinetd'
    Errors occurred, no packages were upgraded.
    Should I just do a force? I am not relying on systemd yet. Or should I just remove systemd?
    Chester
    Last edited by chetwisniewski (2012-05-15 18:17:45)

    silent wrote:So now the new version of mdadm and xinetd moved to [core] and I have the same conflict with systemd-arch-units in [community].
    Try -Syu again?

  • [Solved]Controlling systemd's 'emergency-behaviour'

    So after boot-cycling some systems only to return to the 'emergency-console' because something went wrong during boot, I'm wondering if there is any way to control 'when' exactly the system(d) decides it can no longer continue booting.
    More specifically, I know why the boot fails, its because of a certain mount line in /etc/fstab.
    Sometimes the filesystem just isn't available, in my case because the kernel-module needed hasn't been rebuilt after a kernel upgrade, but its easy to image other scenarios like networked filesystems and such.
    So I'm wondering how to stop systemd from dropping into 'emergency-room-mode' just because of a failed mount line in /etc/fstb, and more generally if/where/how more fine grained control is possible.
    Any ideas?
    Last edited by hungerfish (2014-08-17 13:32:05)

    ...but for my purposes I'd rather the boot process be as permissive as possible.
    Exactly my point, it could be more permissive in case such as non-essential fs not being available.*
    The 'nofail' option apparently does just that (tell the system that a fs is not essential). This fixes my 'problem'.
    And it gets to chose when to stick to the rules and when to ignore some, and it gets to chose which ones to ignore.
    The whole point of me asking was to find out how to to instruct the system towards behaving in a appropriate fashion. The 'nofail' option tells the system to 'ignore some stuff', in this case a filesystem, I don't get your angle.
    What's the problem, again?
    *While using 'nofail' works fine, the 'problem/nag' that remains is that this could be the default for non-essential mountpoints thus eliminating the need for adding the option manually. But I guess there's a ton of reasons for it not being so, or maybe not...

  • I am using 4K Footages for editing in Premiere pro CC 2014, but its getting crash in between at every 15 to 20 mins. Kindly suggest how can it be solved, does any plugins or settings needed to edit 4K footages? Also would like to mention that footages fra

    I am using 4K Footages for editing in Premiere pro CC 2014, but its getting crash in between at every 15 to 20 mins. Kindly suggest how can it be solved, does any plugins or settings needed to edit 4K footages? Also would like to mention that footages frame rates are 29.97 and i have set timeline to 25 FPS is requirement by client. kindly revert. Thanks

    Thanks Richarad ..It has solved the problem but still crashes some times .As the programme has the break (bumper)after every five minutes ,i hope it will not compress bumper time too after export.

  • Dhcpcd 5.6.0 conflicts with systemd-arch-units

    Specifically, upgrading dhcpcd to version 5.6.0 complains that /usr/lib/systemd/system/[email protected] is already owned by package systemd-arch-units. Which package shall be the owner of this systemd service ?
    Thanks

    dhcpcd should own it. You need the systemd-arch-units from [community-testing], which doesn't have it any more. (You should have both testing repos enabled if you use either of them.)

  • Are systemd-arch-units necessary or required?

    Hi, I just want to know, if the systemd-arch-units aren't any more necessary or required? Because, that package isn't any more existing in the official repositiories and in the AUR.

    Not needed anymore; update your system and uninstall it.
    mod action: Split from https://bbs.archlinux.org/viewtopic.php?id=146787.

  • [SOLVED] Luks with /arch/setup installation , fails at boot

    Hi all,
    So I tried to install arch on virtualbox with encrypted partitions (root /, /home/ and swap), but it fails at boot.
    /dev/sda1 is /boot
    /dev/sda2 is swap
    /dev/sda3 is /
    /dev/sda4 is /home
    The root partition seems to be loading fine because it asks for my password, then the boot sequence goes on, until the /home/ (apparently) :
    :: Bringing up loopback interface
    :: Unlocking encrypted volumes: chome..Usage: cryptsetup [-?vyrq] (...all the options...can't copy paste with virtualbox)
    /sbin/cryptsetup: Unknown action
    failed [FAIL]
    /dev/mapper/croot: clean, 27576/457856 files, 166316/1830898 blocks
    fsck.ext4: No such file or directory while trying to open /dev/mapper/chome
    Possibly non-existent device?
    /dev/sda1: clean,29/24096 files, 20790/96356 blocks
    [FAIL]
    It seems that it tries to open /dev/mapper/chome but it's not mounted yet
    In my /etc/crypttab, I added the lines :
    chome /dev/sda4 none luks
    cswap /dev/sda2 none luks
    /etc/fstab (I didn't change anything, /arch/setup configured it that way) :
    /dev/mapper/chome /home ext4 defaults 0 1
    /dev/mapper/croot / ext4 defaults 0 1
    /dev/mapper/cswap swap swap defaults 0 0
    /dev/sda1 /boot ext2 defaults 0 1
    And grub :
    title Arch Linux
    root (hd0,0)
    kernel /vmlinuz-linux root=/dev/mapper/croot cryptdevice=/dev/sda3:croot ro
    initrd /initramfs-linux.img
    What I wanted to do was to have swap,root and home encrypted partitions mounted at boot, but maybe it is not possible?
    I tried a lot of configurations for /etc/fstab and /etc/crypttab according to what I could find on the net but nothing worked. I read the whole tutorial https://wiki.archlinux.org/index.php/Sy … _with_LUKS but there is no config for fstab or crypttab or grub when installing with /arch/setup
    Thanks for any help !
    Last edited by John0000 (2012-04-12 12:50:18)

    Indeed you have a point, putting password in plaintext isn't very safe.
    There is a good alternative though: https://wiki.archlinux.org/index.php/Sy … _a_Keyfile
    the reason why you don't have a passphrase for root in a file somewhere is that you provide this passphrase during boot-time.
    Somewhere during boot you get the option to unlock you root device by typing in a passphrase... right?
    ro means that the volume is mounted read only http://linux.die.net/man/8/mount

  • External HDD won't mount at boot. [Solved]

    Edit:
    I've noticed that this is an issue regarding my NTFS partition being on an external drive. Please check post #8 by me to get further details.
    Hello guys, I'm having some problems getting my external NTFS HDD to mount automatically at boot. I have installed HAL and NTFS-3G, but I'm still getting problems. Mounting once the computer has finished booting is no problem using the simple mount command (sudo mount /media/pebble). I see no reason why this should be having problems mounting at boot with my fstab entry, but no errors occur when mounting manually.
    Fstab entry:
    /dev/sdc1 /media/pebble ntfs-3g fmask=022 1 0
    rc.conf:
    # /etc/rc.conf - Main Configuration for Arch Linux
    # LOCALIZATION
    # LOCALE: available languages can be listed with the 'locale -a' command
    # HARDWARECLOCK: set to "UTC" or "localtime"
    # USEDIRECTISA: use direct I/O requests instead of /dev/rtc for hwclock
    # TIMEZONE: timezones are found in /usr/share/zoneinfo
    # KEYMAP: keymaps are found in /usr/share/kbd/keymaps
    # CONSOLEFONT: found in /usr/share/kbd/consolefonts (only needed for non-US)
    # CONSOLEMAP: found in /usr/share/kbd/consoletrans
    # USECOLOR: use ANSI color sequences in startup messages
    LOCALE="en_US.utf8"
    HARDWARECLOCK="localtime"
    USEDIRECTISA="no"
    TIMEZONE="America/Vancouver"
    KEYMAP="us"
    CONSOLEFONT=
    CONSOLEMAP=
    USECOLOR="yes"
    # HARDWARE
    # MOD_AUTOLOAD: Allow autoloading of modules at boot and when needed
    # MOD_BLACKLIST: Prevent udev from loading these modules
    # MODULES: Modules to load at boot-up. Prefix with a ! to blacklist.
    # NOTE: Use of 'MOD_BLACKLIST' is deprecated. Please use ! in the MODULES array.
    MOD_AUTOLOAD="yes"
    #MOD_BLACKLIST=() #deprecated
    MODULES=(fuse)
    # Scan for LVM volume groups at startup, required if you use LVM
    USELVM="no"
    # NETWORKING
    # HOSTNAME: Hostname of machine. Should also be put in /etc/hosts
    HOSTNAME="r3-desktop-arch"
    # Use 'ifconfig -a' or 'ls /sys/class/net/' to see all available interfaces.
    # Interfaces to start at boot-up (in this order)
    # Declare each interface then list in INTERFACES
    # - prefix an entry in INTERFACES with a ! to disable it
    # - no hyphens in your interface names - Bash doesn't like it
    # DHCP: Set your interface to "dhcp" (eth0="dhcp")
    # Wireless: See network profiles below
    #Static IP example
    #eth0="eth0 192.168.0.2 netmask 255.255.255.0 broadcast 192.168.0.255"
    #eth0="dhcp"
    eth0="eth0 192.168.0.23 netmask 255.255.255.0 broadcast 192.168.0.255"
    INTERFACES=(eth0)
    # Routes to start at boot-up (in this order)
    # Declare each route then list in ROUTES
    # - prefix an entry in ROUTES with a ! to disable it
    gateway="default gw 192.168.0.1"
    ROUTES=(gateway)
    # Enable these network profiles at boot-up. These are only useful
    # if you happen to need multiple network configurations (ie, laptop users)
    # - set to 'menu' to present a menu during boot-up (dialog package required)
    # - prefix an entry with a ! to disable it
    # Network profiles are found in /etc/network.d
    # This now requires the netcfg package
    #NETWORKS=(main)
    # DAEMONS
    # Daemons to start at boot-up (in this order)
    # - prefix a daemon with a ! to disable it
    # - prefix a daemon with a @ to start it up in the background
    DAEMONS=(syslog-ng network netfs crond dbus hal alsa)
    Do I need to load HAL earlier? What am I doing wrong?
    Last edited by ryeguy146 (2009-11-05 10:04:32)

    I just noticed something, I don't think that this is an issue with the partition being NTFS, but rather with it being on an external hard drive (/dev/sdc). I say this because I just rebooted and noticed another NTFS partition that I have in my fstab is mounting (/dev/sda5). It's an internal HDD, and I didn't notice that it mounted up because I rarely use it. But there it is.
    I suppose that I should define /dev/sdc. It is a Western Digital External HDD running off of a USB 2.0 cable. I don't know why this makes a difference, but it apparently does. Both entries in the fstab are identical for their respective devices and mount points.
    Now that we have that figured out, I think that I'll change the title of the thread. So any ideas on how to solve this one?

  • [SOLVED] Installing on ZFS root: "ZFS: cannot find bootfs" on boot.

    I have been experimenting with ZFS filesystems on external HDDs for some time now to get more comfortable with using ZFS in the hopes of one day reinstalling my system on a ZFS root.
    Today, I tried installing a system on an USB external HDD, as my first attempt to install on ZFS (I wanted to try in a safe, disposable environment before I try this on my main system).
    My partition configuration (from gdisk):
    Command (? for help): p
    Disk /dev/sdb: 3907024896 sectors, 1.8 TiB
    Logical sector size: 512 bytes
    Disk identifier (GUID): 2FAE5B61-CCEF-4E1E-A81F-97C8406A07BB
    Partition table holds up to 128 entries
    First usable sector is 34, last usable sector is 3907024862
    Partitions will be aligned on 8-sector boundaries
    Total free space is 0 sectors (0 bytes)
    Number Start (sector) End (sector) Size Code Name
    1 34 2047 1007.0 KiB EF02 BIOS boot partition
    2 2048 264191 128.0 MiB 8300 Linux filesystem
    3 264192 3902828543 1.8 TiB BF00 Solaris root
    4 3902828544 3907024862 2.0 GiB 8300 Linux filesystem
    Partition #1 is for grub, obviously. Partition #2 is an ext2 partition that I mount on /boot in the new system. Partition #3 is where I make my ZFS pool.
    Partition #4 is an ext4 filesystem containing another minimal Arch system for recovery and setup purposes. GRUB is installed on the other system on partition #4, not in the new ZFS system.
    I let grub-mkconfig generate a config file from the system on partition #4 to boot that. Then, I manually edited the generated grub.cfg file to add this menu entry for my ZFS system:
    menuentry 'ZFS BOOT' --class arch --class gnu-linux --class gnu --class os {
    load_video
    set gfxpayload=keep
    insmod gzio
    insmod part_gpt
    insmod ext2
    set root='hd0,gpt2'
    echo 'Loading Linux core repo kernel ...'
    linux /vmlinuz-linux zfs=bootfs zfs_force=1 rw quiet
    echo 'Loading initial ramdisk ...'
    initrd /initramfs-linux.img
    My ZFS configuration:
    # zpool list
    NAME SIZE ALLOC FREE CAP DEDUP HEALTH ALTROOT
    External2TB 1.81T 6.06G 1.81T 0% 1.00x ONLINE -
    # zpool status :(
    pool: External2TB
    state: ONLINE
    scan: none requested
    config:
    NAME STATE READ WRITE CKSUM
    External2TB ONLINE 0 0 0
    usb-WD_Elements_1048_575836314135334C32383131-0:0-part3 ONLINE 0 0 0
    errors: No known data errors
    # zpool get bootfs
    NAME PROPERTY VALUE SOURCE
    External2TB bootfs External2TB/ArchSystemMain local
    # zfs list
    NAME USED AVAIL REFER MOUNTPOINT
    External2TB 14.6G 1.77T 30K none
    External2TB/ArchSystemMain 293M 1.77T 293M /
    External2TB/PacmanCache 5.77G 1.77T 5.77G /var/cache/pacman/pkg
    External2TB/Swap 8.50G 1.78T 20K -
    The reason for the above configuration is that after I get this system to work, I want to install a second system in the same zpool on a different dataset, and have them share a pacman cache.
    GRUB "boots" successfully, in that it loads the kernel and the initramfs as expected from the 2nd GPT partition. The problem is that the kernel does not load the ZFS:
    ERROR: device '' not found. Skipping fsck.
    ZFS: Cannot find bootfs.
    ERROR: Failed to mount the real root device.
    Bailing out, you are on your own. Good luck.
    and I am left in busybox in the initramfs.
    What am I doing wrong?
    Also, here is my /etc/fstab in the new system:
    # External2TB/ArchSystemMain
    #External2TB/ArchSystemMain / zfs rw,relatime,xattr 0 0
    # External2TB/PacmanCache
    #External2TB/PacmanCache /var/cache/pacman/pkg zfs rw,relatime,xattr 0 0
    UUID=8b7639e2-c858-4ff6-b1d4-7db9a393578f /boot ext4 rw,relatime 0 2
    UUID=7a37363e-9adf-4b4c-adfc-621402456c55 none swap defaults 0 0
    I also tried to boot using "zfs=External2TB/ArchSystemMain" in the kernel options, since that was the more logical way to approach my intention of having multiple systems on different datasets. It would allow me to simply create separate grub menu entries for each, with different boot datasets in the kernel parameters. I also tried setting the mount points to "legacy" and uncommenting the zfs entries in my fstab above. That didn't work either and produced the same results, and that was why I decided to try to use "bootfs" (and maybe have a script for switching between the systems by changing the ZFS bootfs and mountpoints before reboot, reusing the same grub menuentry).
    Thanks in advance for any help.
    Last edited by tajjada (2013-12-30 20:03:09)

    Sounds like a zpool.cache issue. I'm guessing your zpool.cache inside your arch-chroot is not up to date. So on boot the ZFS hook cannot find the bootfs. At least, that's what I assume the issue is, because of this line:
    ERROR: device '' not found. Skipping fsck.
    If your zpool.cache was populated, it would spit out something other than an empty string.
    Some assumptions:
    - You're using the ZFS packages provided by demizer (repository or AUR).
    - You're using the Arch Live ISO or some version of it.
    On cursory glance your configuration looks good. But verify anyway. Here are the steps you should follow to make sure your zpool.cache is correct and up to date:
    Outside arch-chroot:
    - Import pools (not using '-R') and verify the mountpoints.
    - Make a copy of the /etc/zfs/zpool.cache before you export any pools. Again, make a copy of the /etc/zfs/zpool.cache before you export any pools. The reason for this is once you export a pool the /etc/zfs/zpool.cache gets updated and removes any reference to the exported pool. This is likely the cause of your issue, as you would have an empty zpool.cache.
    - Import the pool containing your root filesystem using the '-R' flag, and mount /boot within.
    - Make sure to copy your updated zpool.cache to your arch-chroot environment.
    Inside arch-chroot:
    - Make sure your bootloader is configured properly (i.e. read 'mkinitcpio -H zfs').
    - Use the 'udev' hook and not the 'systemd' one in your mkinitcpio.conf. The zfs-utils package does not have a ported hook (as of 0.6.2_3.12.6-1).
    - Update your initramfs.
    Outside arch-chroot:
    - Unmount filesystems.
    - Export pools.
    - Reboot.
    Inside new system:
    - Make sure to update the hostid then rebuild your initramfs. Then you can drop the 'zfs_force=1'.
    Good luck. I enjoy root on ZFS myself. However, I wouldn't recommend swap on ZFS. Despite what the ZoL tracker says, I still ran into deadlocks on occasion (as of a month ago). However, I cannot say definitely the cause of the issue; but it resolved when I moved swap off ZFS to a dedicated partition.
    Last edited by NVS (2013-12-29 14:56:44)

  • Arch PV guest in Xen won't boot

    Hi,
    I have Xen installed and running several (win 7) HVMs.  I've setup an Arch PV guest but I am having a problem booting it.  After each failed attempt to fix this issue I try to view the /var/log/xen/bootloader.XX.log file but all of these files are zero bytes.  So, I'm having some trouble troubleshooting this.  I followed the instructions from https://wiki.archlinux.org/index.php/xen on setting up an Arch PV and do not think I missed anything.
    This is the error message I get:
    [root@earth arch1]# xl create -c /vm/arch1/arch1.conf
    Parsing config from /vm/arch1/arch1.conf
    libxl: error: libxl_bootloader.c:628:bootloader_finished: bootloader failed - consult logfile /var/log/xen/bootloader.85.log
    libxl: error: libxl_exec.c:129:libxl_report_child_exitstatus: bootloader [-1] died due to fatal signal Killed
    libxl: error: libxl_create.c:1022:domcreate_rebuild_done: cannot (re-)build domain: -3
    This is the vm conf that I use to boot the arch install iso after loop mounting it.
    name = "arch1"
    kernel = "/mnt/arch/boot/x86_64/vmlinuz"
    ramdisk = "/mnt/arch/boot/x86_64/archiso.img"
    extra = "archisobasedir=arch archisolabel=ARCH_201410"
    memory = 1024
    vif = [ 'mac=00:16:3E:42:01:3D,bridge=xenbr0,model=e1000' ]
    disk = [ '/vm/arch1/arch1.img,,hda,w', '/vm/img/ARCH_201410.iso,,hdb,cdrom']
    This is my vm conf used to boot the VM after installing arch and umount-ing the loop mounted iso:
    name = "arch1"
    bootloader = "pygrub"
    memory = 1024
    vif = [ 'mac=00:16:3E:42:01:3D,bridge=xenbr0,model=e1000' ]
    disk = [ '/vm/arch1/arch1.img,,hda,w']
    And this is an abbreviated version of how I install arch on the VM.  During the install I don't think I've missed anything from the wiki.
    My understanding is that pygrub will take care of booting as long as  /boot/grub/grub.conf is exists and is setup correctly which I believe I have done.
    I copied the sample grub.conf from "Xen - ArchWiki" and used the UUID for "/" found in /etc/fstab (its the same I get from blkid)
    The wiki mentions that without certain modules in  /etc/mkinitcpio.conf the VM will not boot.  But I've added them as shown below. 
    So I'm not sure why I'm getting the above error.
    gdisk /dev/xvda
    n
    1
    <enter>
    <enter>
    8e00 #this sets up my lvm partition to stick everything in (root and home) as shown below.
    pvcreate /dev/xvda1
    vgcreate arch /dev/xvda1
    lvcreate -L 18G -n root arch
    lvcreate -L 1G -n home arch
    mkfs.ext4 -F /dev/mapper/arch-root
    mkfs.ext4 -F /dev/mapper/arch-home
    mount /dev/mapper/arch-root /mnt
    mkdir /mnt/home
    mount /dev/mapper/arch-home /mnt/home
    pacstrap -i /mnt base base-devel
    genfstab -U -p /mnt >> /mnt/etc/fstab
    arch-chroot /mnt /bin/bash
    #setup /etc/locale.gen & /etc/locale.conf
    #setup host name
    #setup network
    sed -i 's/MODULES=\"\"/MODULES=\"xen-blkfront\ xen-fbfront\ xen-netfront\ xen-kbdfront\"/g' /etc/mkinitcpio.conf
    mkinitcpio -p linux
    mkdir /boot/grub
    cd /boot/grub
    cat /etc/fstab
    #create /boot/grub/grub.conf based on the sample from "Xen - ArchWiki" with the UUID for "/" found in /etc/fstab (its the same I get from blkid)
    After doing the above install I poweroff and umount the loop mounted iso. I then get the above error message when running xl create.  Unfortunately the bootloader logs are empty.
    Last edited by hbc2 (2014-10-13 15:28:18)

    Is your hard disk attached via usb?  If not, you did not have the proper modules for the intramfs to access the hard disk itself.  You had it set up so that it could boot from a usb device, but not an internal device.  You should have read the comments for each of those examples.  It explains pretty cearly what each example would be used for.
    Edit: I use lvm and my mkinitcpio.conf HOOKS line looks like this:
    HOOKS="base udev autodetect sata lvm2 filesystems fsck timestamp"
    My SSD's are connected via SATA III, the lvm2 hook is obvious, the filesystems load the ext4 module (all filesystems are ext4), fsck adds fsck and fsck.ext4, timestamp makes 'systemd-analyze' able to tell you how long it takes the initramfs and kernel to load individually instead of together.  base should always be there, and first (unless you really really know what you are doing), udev adds... udev, and autodetect tries its best to strip everything you don't need for your particular system.
    For info on a paritcular hook, use the -H option with mkinitcpio. (ie. 'mkinipcio -H lvm2').  There is also a fantasticlly informative wiki page about mkinitcpio.
    Last edited by WonderWoofy (2012-11-26 03:44:40)

  • "F11 System Recovery" during boot does not work after Cloning hard drive.

    Problem: “F11 System Recovery” during boot does not work after Cloning hard drive.
    HP Envy m6-1125dx UEFI Notebook Computer with GPT hard drive.
    Original Seagate Hard Disk GPT 700GB with Window 8.0_64 upgraded to Windows 8.1_64
    Startup Menu (F11 System Menu works properly) only on original hard drive.
    Following obtained from Disk Management & diskpart in Command Prompt.
                                     GPT Disk <700GB>
    Partition 1 WINRE NTFS Primary 235MB/400MB [Recovery]
    Partition 2 EFI System FAT32 (LBA) Primary 108MB/260MB [System]
    Partition 3 (NONE) Unformatted Primary 128MB/128MB [Reserve]
    Partition 4 Main NTFS Primary 90GB/195GB [Primary “C”]
    Partition 5 (NONE) NTFS Primary 372MB/450MB [Recovery]
    Partition 6 Data NTFS Primary 7GB/475GB [Primary “E”]
    Partition 7 NTFS Primary 26MB/350MB [Recovery]
    Partition 8 Recovery NTFS Primary 24GB/26GB [Recovery “D”]
    I have Cloned the original hard drive to a new HGST 1TB Hard Drive using four different methods (sector by sector):
    Acronis True Image 2015
    Acronis Backup for PC
    AOMEI Backupper Professional
    Macrium Reflect
    Each time the cloning process completes successfully and has the same original partition arrangement. The computer works properly except when trying to use the “F11 System Menu” key during boot. It gives the following error message:
    “Recovery
    Your PC needs to be repaired
    A required device isn’t connected or can’t be accessed.
    Error code: 0xc0000225
    You need to use the recovery tools on your installation media. If you don’t have any installation media (like a disc or USB device), contact your system administrator or PC manufacturer. “
    Any suggestions why the F11 System Recovery does not work during boot and how to fix the problem would be appreciated. I have does various disk checking and file checking on both the original and new hard drive with no errors.
    Thank you in advanced.

    Hi,
    How did you clone the HDD ? One-for-one or different method ?
    Regards.
    BH
    **Click the KUDOS thumb up on the left to say 'Thanks'**
    Make it easier for other people to find solutions by marking a Reply 'Accept as Solution' if it solves your problem.

Maybe you are looking for

  • Caller Id with Landline No Longer Working - Called Verizon 4 times without success

    I have a Verizon landline account (no Fios) and the caller id has stopped working.   I first tried using their help desk and went through the automated process of resetting it but that did not work.  Then I've tried 3 other times while speaking to a

  • Hard drive failure on Pavilion dv6-6000 laptop (LT069AV)

    I posted this as a reply on another thread (xxx).   Thought I might get a quicker response starting a new question. Persistent BSODs and disk errors culminated in a "disk not found" error yesterday on my dv6-6000 laptop PC.  Windows 7 Home, Intel i5

  • Sender JDBC Adapter Supports Stored Procedures????

    Dear All, I was trying to use the Sender JDBC adapter to call the Stored procedure in the Sender JDBC adapter is possible to do this??? I don't think Sender JDBC Adapter is supported to execute the Oracle Started Procedures. With my understanding onl

  • Outlook Connecter Install Problems

    Hi there, I have just set up a trial for the Calander Server and it is working a treat through the web interface but I am having problems with the Outlook Connector. The problem seems to spring from the fact that I am not using (and do not intend to

  • Integrating workflow within an ADOBE Interactive form

    Hi experts, We have a  Web-dynpro ABAP application which uses an Interactive Adobe form to enter personal and org data for HR. The form is now being used by HR personnel for  new-hire- employee's personal, organizational, and payroll information.  Ev