]> git.proxmox.com Git - mirror_zfs-debian.git/commitdiff
Use upstream version of initramfs configurations
authorAron Xu <aron@debian.org>
Sun, 1 Nov 2015 14:31:59 +0000 (22:31 +0800)
committerAron Xu <aron@debian.org>
Sun, 1 Nov 2015 14:31:59 +0000 (22:31 +0800)
debian/tree/zfs-initramfs/usr/share/initramfs-tools/conf-hooks.d/zfs [deleted file]
debian/tree/zfs-initramfs/usr/share/initramfs-tools/hooks/zfs [deleted file]
debian/tree/zfs-initramfs/usr/share/initramfs-tools/scripts/zfs [deleted file]
debian/zfs-initramfs.install

diff --git a/debian/tree/zfs-initramfs/usr/share/initramfs-tools/conf-hooks.d/zfs b/debian/tree/zfs-initramfs/usr/share/initramfs-tools/conf-hooks.d/zfs
deleted file mode 100644 (file)
index 29950ca..0000000
+++ /dev/null
@@ -1,2 +0,0 @@
-# Force the inclusion of Busybox in the initramfs.
-BUSYBOX=y
diff --git a/debian/tree/zfs-initramfs/usr/share/initramfs-tools/hooks/zfs b/debian/tree/zfs-initramfs/usr/share/initramfs-tools/hooks/zfs
deleted file mode 100755 (executable)
index b8bb41e..0000000
+++ /dev/null
@@ -1,80 +0,0 @@
-#!/bin/sh
-#
-# Add ZoL filesystem capabilities to an initrd, usually for a native ZFS root.
-#
-
-# This hook installs udev rules for ZoL.
-PREREQ="zdev"
-
-# These prerequisites are provided by the zfsutils package. The zdb utility is
-# not strictly required, but it can be useful at the initramfs recovery prompt.
-COPY_EXEC_LIST="/sbin/zdb /sbin/zpool /sbin/zfs /sbin/mount.zfs"
-
-# These prerequisites are provided by the base system.
-COPY_EXEC_LIST="$COPY_EXEC_LIST /bin/hostname /sbin/blkid"
-
-# Explicitly specify all kernel modules because automatic dependency resolution
-# is unreliable on many systems.
-BASE_MODULES="zlib_deflate spl zavl zcommon znvpair zunicode zfs"
-CRPT_MODULES="sun-ccm sun-gcm sun-ctr"
-MANUAL_ADD_MODULES_LIST="$BASE_MODULES"
-
-# Generic result code.
-RC=0
-
-case $1 in
-prereqs)
-       echo "$PREREQ"
-       exit 0
-       ;;
-esac
-
-for ii in $COPY_EXEC_LIST
-do
-       if [ ! -x "$ii" ]
-       then
-               echo "Error: $ii is not executable."
-               RC=2
-       fi
-done
-
-if [ "$RC" -ne 0 ]
-then
-       exit "$RC"
-fi
-
-. /usr/share/initramfs-tools/hook-functions
-
-mkdir -p "$DESTDIR/etc/"
-
-# ZDB uses pthreads for some functions, but the library dependency is not
-# automatically detected. The `find` utility and extended `cp` options are
-# used here because libgcc_s.so could be in a subdirectory of /lib for
-# multi-arch installations.
-cp --target-directory="$DESTDIR" --parents $(find /lib -type f -name libgcc_s.so.1)
-
-for ii in $COPY_EXEC_LIST
-do
-       copy_exec "$ii"
-done
-
-for ii in $MANUAL_ADD_MODULES_LIST
-do
-       manual_add_modules "$ii"
-done
-
-if [ -f "/etc/hostname" ]
-then
-       cp -p "/etc/hostname" "$DESTDIR/etc/"
-else
-       hostname >"$DESTDIR/etc/hostname"
-fi
-
-# The spl-dkms package ensures that the /etc/hostid file exists.
-# NB: Commentary in the spl-dkms.postinst script.
-[ -f "/etc/hostid" ] && cp -p "/etc/hostid" "$DESTDIR/etc/hostid"
-
-# Install the zpool.cache file.
-[ ! -d "$DESTDIR/boot/zfs" ] && mkdir -p "$DESTDIR/boot/zfs"
-[ -d /boot/zfs ] && cp -r /boot/zfs "$DESTDIR/boot"
-exit 0
diff --git a/debian/tree/zfs-initramfs/usr/share/initramfs-tools/scripts/zfs b/debian/tree/zfs-initramfs/usr/share/initramfs-tools/scripts/zfs
deleted file mode 100644 (file)
index de3bad6..0000000
+++ /dev/null
@@ -1,236 +0,0 @@
-# ZFS boot stub for initramfs-tools.
-#
-# In the initramfs environment, the /init script sources this stub to
-# override the default functions in the /scripts/local script.
-#
-# Enable this by passing boot=zfs on the kernel command line.
-#
-
-
-pre_mountroot()
-{
-       [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-top"
-       run_scripts /scripts/local-top
-       [ "$quiet" != "y" ] && log_end_msg
-
-       if [ -r '/etc/default/zfs' ]
-       then
-               . '/etc/default/zfs'
-               if [ "$ZFS_INITRD_PRE_MOUNTROOT_SLEEP" -gt '0' ]
-               then
-                       [ "$quiet" != "y" ] && log_begin_msg "Sleeping for $ZFS_INITRD_PRE_MOUNTROOT_SLEEP seconds..."
-                       sleep "$ZFS_INITRD_PRE_MOUNTROOT_SLEEP"
-                       [ "$quiet" != "y" ] && log_end_msg
-               fi
-       fi
-}
-
-# Duplicates the functionality found under try_failure_hooks in functions
-# but invoking that would be inappropriate here.
-disable_plymouth()
-{
-       if [ -x /bin/plymouth ] && /bin/plymouth --ping
-       then
-               /bin/plymouth hide-splash >/dev/null 2>&1
-       fi
-}
-
-mountroot()
-{
-       pre_mountroot
-
-       [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-premount"
-       run_scripts /scripts/local-premount
-       [ "$quiet" != "y" ] && log_end_msg
-
-       # Wait for all of the /dev/{hd,sd}[a-z] device nodes to appear.
-       wait_for_udev
-
-       # Load the module now to get consistent automatic pool import behavior.
-       modprobe zfs
-
-       # Check the kernel command line for overrides.
-       ZFS_RPOOL="${rpool#rpool=}"
-       ZFS_BOOTFS="${bootfs#bootfs=}"
-
-       if [ -z "$ZFS_RPOOL" ]
-       then
-               # Check for the `-B zfs-bootfs=%s/%u,...` kind of parameter.
-               #
-               # The ${zfs-bootfs} variable is set at the kernel commmand
-               # line, usually by GRUB, but it cannot be referenced here
-               # directly because bourne variable names cannot contain a
-               # hyphen.
-               #
-               # Reassign the variable by dumping the environment and
-               # stripping the zfs-bootfs= prefix.  Let the shell handle
-               # quoting through the eval command.
-               eval ZFS_RPOOL=$(set | sed -n -e 's,^zfs-bootfs=,,p')
-
-               # Only the pool name is relevant because the ZFS filesystem on
-               # Linux is extrinsic and the userland cannot resolve a ZFS
-               # object number.
-               #
-               # Strip everything after the first slash character.
-               ZFS_RPOOL=$(echo "$ZFS_RPOOL" | sed -e 's,/.*,,')
-       fi
-
-       # Use "rpool" as the default, like on most Solaris systems.
-       [ -z "$ZFS_RPOOL" ] && ZFS_RPOOL='rpool'
-
-       if [ -f /etc/zfs/zpool.cache ]; then
-               ZPOOL_CACHE=/etc/zfs/zpool.cache
-       elif [ -f /boot/zfs/zpool.cache ]; then
-               ZPOOL_CACHE=/boot/zfs/zpool.cache
-       fi
-
-       # zpool import refuse to import without a valid mtab
-       [ ! -f /proc/mounts ] && mount proc /proc
-       [ ! -f /etc/mtab ] && cat /proc/mounts > /etc/mtab
-
-       # Just make sure it's not already imported. Should be impossible, but...
-       zpool list "$ZFS_RPOOL" 1>/dev/null 2>&1
-       ZFS_ERROR=$?
-
-       [ "$quiet" != "y" ] && log_begin_msg "Importing ZFS root pool $ZFS_RPOOL"
-       # Attempt 1: Try the correct/proper way.
-       if [ "$ZFS_ERROR" -ne 0 -a -n "$ZPOOL_CACHE" ]
-       then
-               ZFS_CMD="zpool import -c $ZPOOL_CACHE -N $ZFS_RPOOL"
-
-               ZFS_STDERR=$($ZFS_CMD 2>&1)
-               ZFS_ERROR=$?
-
-               [ "$ZFS_ERROR" -ne 0 ] && echo "FAIL: $ZFS_CMD. Retrying..."
-       fi
-
-       # Attempt 2: Try forcing the import, using /dev/disk/by-id if it exists.
-       [ -d /dev/disk/by-id ] && DISK_BY_ID="-d /dev/disk/by-id"
-       if [ "$ZFS_ERROR" -ne 0 -o -z "$ZPOOL_CACHE" ]
-       then
-               ZFS_CMD="zpool import -f -N $DISK_BY_ID $ZFS_RPOOL"
-
-               ZFS_STDERR=$($ZFS_CMD 2>&1)
-               ZFS_ERROR=$?
-
-               [ "$ZFS_ERROR" -ne 0 ] && echo "FAIL: $ZFS_CMD. Retrying..."
-       fi
-
-       # Attempt 3: Last ditch attempt. If DISK_BY_ID is set, we've already tried...
-       if [ "$ZFS_ERROR" -ne 0 -a -z "$DISK_BY_ID" ]
-       then
-               ZFS_CMD="zpool import -f -N $ZFS_RPOOL"
-
-               ZFS_STDERR=$($ZFS_CMD 2>&1)
-               ZFS_ERROR=$?
-
-               [ "$ZFS_ERROR" -ne 0 ] && echo "FAIL: $ZFS_CMD. Retrying..."
-       fi
-       [ "$quiet" != "y" ] && log_end_msg
-
-       if [ "$ZFS_ERROR" -ne 0 ]
-       then
-               disable_plymouth
-               echo "Command: $ZFS_CMD"
-               echo "Message: $ZFS_STDERR"
-               echo "Error: $ZFS_ERROR"
-               echo ""
-               echo "Manually import the root pool at the command prompt and then exit."
-               echo "Hint: Try:  zpool import -f -R / -N $ZFS_RPOOL"
-               /bin/sh
-       fi
-
-       if [ -z "$ZFS_BOOTFS" ]
-       then
-               [ "$quiet" != "y" ] && log_begin_msg "Getting ZFS bootfs property"
-               ZFS_BOOTFS=$(zpool list -H -o bootfs "$ZFS_RPOOL")
-               ZFS_ERROR=$?
-               [ "$quiet" != "y" ] && log_end_msg
-       fi
-
-       if [ -z "$ZFS_BOOTFS" ]
-       then
-               disable_plymouth
-               echo "Command: zpool list -H -o bootfs $ZFS_RPOOL"
-               echo "Error: $ZFS_ERROR, unable to get the bootfs property."
-               echo ""
-               echo "Manually mount the root filesystem on $rootmnt and then exit."
-               echo "Hint: Try:  mount -t zfs -o zfsutil $ZFS_RPOOL/ROOT/system $rootmnt"
-               /bin/sh 
-       fi
-
-       # Force the mountpoint to the only correct value for a root filesystem.
-       [ "$quiet" != "y" ] && log_begin_msg "Setting mountpoint=/ on ZFS filesystem $ZFS_BOOTFS"
-       ZFS_STDERR=$(zfs set mountpoint=/ "$ZFS_BOOTFS" 2>&1)
-       [ "$quiet" != "y" ] && log_end_msg
-
-       if zfs 2>&1 | grep -q 'key -l '
-       then
-               # 'zfs key' is availible (hence we have crypto), check if filesystem is encrypted.
-               set -- `zfs get encryption $ZFS_BOOTFS | grep ^$ZFS_RPOOL`
-               crypt_type=$3
-               if [ "$crypt_type" != "off" ]
-               then
-                       [ "$quiet" != "y" ] && log_begin_msg "Loading crypto wrapper key for $ZFS_BOOTFS"
-
-                       # Just make sure that ALL crypto modules module is loaded.
-                       # Simplest just to load all...
-                       for mod in sun-ccm sun-gcm sun-ctr
-                       do
-                               modprobe $mod
-                       done
-
-                       # If the key isn't availible, then this will fail!
-                       ZFS_CMD="zfs key -l -a"
-                       ZFS_STDERR=$($ZFS_CMD 2>&1)
-                       ZFS_ERROR=$?
-
-                       if [ "$ZFS_ERROR" -ne 0 ]
-                       then
-                           disable_plymouth
-                           echo "FAIL: $ZFS_CMD"
-                           echo "Message: $ZFS_STDERR"
-                           echo "Error: $ZFS_ERROR"
-                           echo ""
-                           echo "Failed to load zfs encryption wrapper key (s)."
-                           echo "Please verify dataset property 'keysource' for datasets"
-                           echo "and rerun: $ZFS_CMD"
-                           /bin/sh
-
-                           ZFS_ERROR=0
-                       else
-                           [ "$quiet" != "y" ] && log_end_msg
-                       fi
-               fi
-       fi
-
-       # Ideally, the root filesystem would be mounted like this:
-       #
-       #   zpool import -R "$rootmnt" -N "$ZFS_RPOOL"
-       #   zfs mount -o mountpoint=/ "$ZFS_BOOTFS"
-       #
-       # but the MOUNTPOINT prefix is preserved on descendent filesystem after
-       # the pivot into the regular root, which later breaks things like
-       # `zfs mount -a` and the /etc/mtab refresh.
-
-       [ "$quiet" != "y" ] && log_begin_msg "Mounting ZFS filesystem $ZFS_BOOTFS"
-       ZFS_STDERR=$(mount -t zfs -o zfsutil "$ZFS_BOOTFS" "$rootmnt" 2>&1)
-       ZFS_ERROR=$?
-       [ "$quiet" != "y" ] && log_end_msg
-
-       if [ "$ZFS_ERROR" -ne 0 ]
-       then
-               disable_plymouth
-               echo ""
-               echo "Command: mount -t zfs -o zfsutil $ZFS_BOOTFS $rootmnt"
-               echo "Message: $ZFS_STDERR"
-               echo "Error: $ZFS_ERROR"
-               echo ""
-               echo "Manually mount the root filesystem on $rootmnt and then exit."
-               /bin/sh 
-       fi
-
-       [ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-bottom"
-       run_scripts /scripts/local-bottom
-       [ "$quiet" != "y" ] && log_end_msg
-}
index b853d8eb5db1a31485b9a465f31b60861a87a76d..efd8c64186705f62032acef1c8bd4d8e7da619ae 100644 (file)
@@ -1 +1 @@
-../tree/zfs-initramfs/* /
+usr/share/initramfs-tools/*