diff options
author | Thomas Bächler <thomas@archlinux.org> | 2010-02-16 00:30:48 +0100 |
---|---|---|
committer | Thomas Bächler <thomas@archlinux.org> | 2010-02-16 00:30:48 +0100 |
commit | 8a81daeb4fdc9f559ef972ac5a2cda9f313000f1 (patch) | |
tree | 144cf7663228304793e0ea9ac1b5be1d9a23292b /hooks | |
parent | c83d5eb8c694ac266b3055c38254e751e8917e8e (diff) | |
download | mkinitcpio-8a81daeb4fdc9f559ef972ac5a2cda9f313000f1.tar.gz mkinitcpio-8a81daeb4fdc9f559ef972ac5a2cda9f313000f1.tar.xz |
Introduce mount handlers
Instead of having special NFS code in /init, make it possible for a hook to register a mount handler
When a hook sets the mount_handler environment variable, the normal mount code will be skipped and
the handler will be called with the path to mount point as the first and only argument.
Diffstat (limited to 'hooks')
-rw-r--r-- | hooks/net | 14 |
1 files changed, 14 insertions, 0 deletions
@@ -80,6 +80,20 @@ run_hook () rootfstype="nfs" echo "NFS-Mount: ${nfs_server}:${nfs_path}" + + # set mount handler for NFS + mount_handler="nfs_mount_handler" fi fi } + +nfs_mount_handler() { + if [ -z "$nfs_server" -o -z "$nfs_path" ]; then + err "Unable to mount root filesystem over NFS: wrong parameters." + echo "You are being dropped to a recovery shell" + echo " Type 'exit' to try and continue booting" + launch_interactive_shell + msg "Trying to continue (this will most likely fail) ..." + fi + nfsmount ${nfs_option:+-o ${nfs_option}} "${nfs_server}:${nfs_path}" "$1" +} |