[Pkg-cryptsetup-devel] Bug#397651: cryptsetup: failed to determine
cipher modules to load for /dev/mapper/bee--sata-root
Loïc Minier
lool at dooz.org
Wed Nov 8 17:16:56 CET 2006
Package: cryptsetup
Version: 2:1.0.4-4
Severity: important
File: /usr/share/initramfs-tools/hooks/cryptroot
Hi,
I'm getting this warning during "update-initramfs -u":
cryptsetup: failed to determine cipher modules to load for /dev/mapper/bee--sata-root
I only use cryptsetup for crypted partitions on USB keys (LUKS), but I
do have a regular LVM setup for swap, /, and other partitions.
I attach an "update-initramfs -u" run with set -x in the hook.
The failure is caused by add_device() calling get_lvm_deps() which
returns 1.
The misleading comment "is it lvm?" suggests that "get_lvm_deps
"$nodes"" on line 222 is a test for LVM devices. I think it is a test
on whether $nodes is (are) *backed up* by a LVM device, but I'm not
sure.
"get_lvm_deps" outputs a list of deps and can return either 0 or 1. It
returns 0 when $node is non-empty and has at least one dep. I am not
sure it is of any value to return 1 (== failure) when there is no dep,
I would suggest returning 0 in get_lvm_deps even when there is no dep,
and returning 0 immediately in add_device if it's a LVM device with no
dep.
The attached patch does this, and changes the root function to look
at the return code of add_device instead of checking whether the list
of modules is empty.
I also attach the patched /usr/share/initramfs-tools/hooks/cryptroot,
and the "set -x" run of the fixed version.
It would be nice if you could pass a testsuite for cryptsetup to
prevent regressions.
Bye,
-- System Information:
Debian Release: 4.0
APT prefers unstable
APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-1-686
Locale: LANG=fr_FR.UTF-8, LC_CTYPE=fr_FR.UTF-8 (charmap=UTF-8)
Versions of packages cryptsetup depends on:
ii dmsetup 2:1.02.08-1 The Linux Kernel Device Mapper use
ii libc6 2.3.6.ds1-8 GNU C Library: Shared libraries
ii libdevma 2:1.02.08-1 The Linux Kernel Device Mapper use
ii libgcryp 1.2.3-2 LGPL Crypto library - runtime libr
ii libgpg-e 1.4-1 library for common error values an
ii libpopt0 1.10-3 lib for parsing cmdline parameters
ii libuuid1 1.39+1.40-WIP-2006.10.02+dfsg-2 universally unique id library
cryptsetup recommends no packages.
-- no debconf information
--
Loïc Minier <lool at dooz.org>
-------------- next part --------------
update-initramfs: Generating /boot/initrd.img-2.6.18-1-686
+ PREREQ=
+ case $1 in
+ prereqs
+ echo ''
+ exit 0
+ PREREQ=
+ case $1 in
+ . /usr/share/initramfs-tools/hook-functions
+ '[' '' '!=' dep ']'
+ for mod in dm_mod dm_crypt aes sha256
+ manual_add_modules dm_mod
++ modprobe --set-version=2.6.18-1-686 --ignore-install --show-depends dm_mod
++ awk '/^insmod/ { print $2 }'
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko ']'
++ dirname /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko
+ mkdir -p /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/drivers/md
++ dirname /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko
+ ln -s /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/drivers/md
+ '[' -n n ']'
+ '[' n = y ']'
+ for mod in dm_mod dm_crypt aes sha256
+ manual_add_modules dm_crypt
++ modprobe --set-version=2.6.18-1-686 --ignore-install --show-depends dm_crypt
++ awk '/^insmod/ { print $2 }'
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko ']'
+ continue
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/drivers/md/dm-crypt.ko ']'
++ dirname /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-crypt.ko
+ mkdir -p /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/drivers/md
++ dirname /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-crypt.ko
+ ln -s /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-crypt.ko /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/drivers/md
+ '[' -n n ']'
+ '[' n = y ']'
+ for mod in dm_mod dm_crypt aes sha256
+ manual_add_modules aes
++ modprobe --set-version=2.6.18-1-686 --ignore-install --show-depends aes
++ awk '/^insmod/ { print $2 }'
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/crypto/aes.ko ']'
++ dirname /lib/modules/2.6.18-1-686/kernel/crypto/aes.ko
+ mkdir -p /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/crypto
++ dirname /lib/modules/2.6.18-1-686/kernel/crypto/aes.ko
+ ln -s /lib/modules/2.6.18-1-686/kernel/crypto/aes.ko /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/crypto
+ '[' -n n ']'
+ '[' n = y ']'
+ for mod in dm_mod dm_crypt aes sha256
+ manual_add_modules sha256
++ modprobe --set-version=2.6.18-1-686 --ignore-install --show-depends sha256
++ awk '/^insmod/ { print $2 }'
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/crypto/sha256.ko ']'
++ dirname /lib/modules/2.6.18-1-686/kernel/crypto/sha256.ko
+ mkdir -p /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/crypto
++ dirname /lib/modules/2.6.18-1-686/kernel/crypto/sha256.ko
+ ln -s /lib/modules/2.6.18-1-686/kernel/crypto/sha256.ko /tmp/mkinitramfs_T21230//lib/modules/2.6.18-1-686/kernel/crypto
+ '[' -n n ']'
+ '[' n = y ']'
+ copy_exec /sbin/cryptsetup /sbin
++ basename /sbin/cryptsetup
+ final_destination=/tmp/mkinitramfs_T21230//sbin/cryptsetup
+ '[' -L /tmp/mkinitramfs_T21230//sbin/cryptsetup ']'
+ ln -s /sbin/cryptsetup /tmp/mkinitramfs_T21230//sbin
++ ldd /sbin/cryptsetup
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libpopt.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libpopt.so.0
+ '[' -e /lib/libpopt.so.0 ']'
+ x=/lib/libpopt.so.0
++ basename /lib/libpopt.so.0
+ libname=libpopt.so.0
++ dirname /lib/libpopt.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libpopt.so.0 ']'
+ ln -s /lib/libpopt.so.0 /tmp/mkinitramfs_T21230//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libdevmapper.so.1.02
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdevmapper.so.1.02
+ '[' -e /lib/libdevmapper.so.1.02 ']'
+ x=/lib/libdevmapper.so.1.02
++ basename /lib/libdevmapper.so.1.02
+ libname=libdevmapper.so.1.02
++ dirname /lib/libdevmapper.so.1.02
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libdevmapper.so.1.02 ']'
+ ln -s /lib/libdevmapper.so.1.02 /tmp/mkinitramfs_T21230//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libuuid.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libuuid.so.1
+ '[' -e /lib/libuuid.so.1 ']'
+ x=/lib/libuuid.so.1
++ basename /lib/libuuid.so.1
+ libname=libuuid.so.1
++ dirname /lib/libuuid.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libuuid.so.1 ']'
+ ln -s /lib/libuuid.so.1 /tmp/mkinitramfs_T21230//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libselinux.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libselinux.so.1
+ '[' -e /lib/libselinux.so.1 ']'
+ x=/lib/libselinux.so.1
++ basename /lib/libselinux.so.1
+ libname=libselinux.so.1
++ dirname /lib/libselinux.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libselinux.so.1 ']'
+ ln -s /lib/libselinux.so.1 /tmp/mkinitramfs_T21230//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libsepol.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libsepol.so.1
+ '[' -e /lib/libsepol.so.1 ']'
+ x=/lib/libsepol.so.1
++ basename /lib/libsepol.so.1
+ libname=libsepol.so.1
++ dirname /lib/libsepol.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libsepol.so.1 ']'
+ ln -s /lib/libsepol.so.1 /tmp/mkinitramfs_T21230//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/ld-linux.so.2 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libdl.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdl.so.2
+ '[' -e /lib/libdl.so.2 ']'
+ x=/lib/libdl.so.2
++ basename /lib/libdl.so.2
+ libname=libdl.so.2
++ dirname /lib/libdl.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libdl.so.2 ']'
+ ln -s /lib/libdl.so.2 /tmp/mkinitramfs_T21230//lib
+ copy_exec /sbin/dmsetup /sbin
++ basename /sbin/dmsetup
+ final_destination=/tmp/mkinitramfs_T21230//sbin/dmsetup
+ '[' -L /tmp/mkinitramfs_T21230//sbin/dmsetup ']'
+ ln -s /sbin/dmsetup /tmp/mkinitramfs_T21230//sbin
++ ldd /sbin/dmsetup
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libdevmapper.so.1.02
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdevmapper.so.1.02
+ '[' -e /lib/libdevmapper.so.1.02 ']'
+ x=/lib/libdevmapper.so.1.02
++ basename /lib/libdevmapper.so.1.02
+ libname=libdevmapper.so.1.02
++ dirname /lib/libdevmapper.so.1.02
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libdevmapper.so.1.02 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libselinux.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libselinux.so.1
+ '[' -e /lib/libselinux.so.1 ']'
+ x=/lib/libselinux.so.1
++ basename /lib/libselinux.so.1
+ libname=libselinux.so.1
++ dirname /lib/libselinux.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libselinux.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libsepol.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libsepol.so.1
+ '[' -e /lib/libsepol.so.1 ']'
+ x=/lib/libsepol.so.1
++ basename /lib/libsepol.so.1
+ libname=libsepol.so.1
++ dirname /lib/libsepol.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libsepol.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libdl.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdl.so.2
+ '[' -e /lib/libdl.so.2 ']'
+ x=/lib/libdl.so.2
++ basename /lib/libdl.so.2
+ libname=libdl.so.2
++ dirname /lib/libdl.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libdl.so.2 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/ld-linux.so.2 ']'
+ prepare_keymap
+ local env charmap
+ '[' '!' -x /bin/loadkeys ']'
+ '[' '!' -r /etc/console/boottime.kmap.gz ']'
+ copy_exec /bin/loadkeys /bin/
++ basename /bin/loadkeys
+ final_destination=/tmp/mkinitramfs_T21230//bin//loadkeys
+ '[' -L /tmp/mkinitramfs_T21230//bin//loadkeys ']'
+ ln -s /bin/loadkeys /tmp/mkinitramfs_T21230//bin/
++ ldd /bin/loadkeys
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libcfont.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libcfont.so.0
+ '[' -e /lib/libcfont.so.0 ']'
+ x=/lib/libcfont.so.0
++ basename /lib/libcfont.so.0
+ libname=libcfont.so.0
++ dirname /lib/libcfont.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libcfont.so.0 ']'
+ ln -s /lib/libcfont.so.0 /tmp/mkinitramfs_T21230//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libctutils.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libctutils.so.0
+ '[' -e /lib/libctutils.so.0 ']'
+ x=/lib/libctutils.so.0
++ basename /lib/libctutils.so.0
+ libname=libctutils.so.0
++ dirname /lib/libctutils.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libctutils.so.0 ']'
+ ln -s /lib/libctutils.so.0 /tmp/mkinitramfs_T21230//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libconsole.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libconsole.so.0
+ '[' -e /lib/libconsole.so.0 ']'
+ x=/lib/libconsole.so.0
++ basename /lib/libconsole.so.0
+ libname=libconsole.so.0
++ dirname /lib/libconsole.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libconsole.so.0 ']'
+ ln -s /lib/libconsole.so.0 /tmp/mkinitramfs_T21230//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/ld-linux.so.2 ']'
+ cp /etc/console/boottime.kmap.gz /tmp/mkinitramfs_T21230/etc/
+ '[' '!' -x /usr/bin/kbd_mode ']'
+ '[' -r /etc/environment ']'
+ env=/etc/environment
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LANG=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value='"en_US.UTF-8"'
+ eval 'LANG="en_US.UTF-8"'
++ LANG=en_US.UTF-8
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LC_ALL=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value=
+ eval LC_ALL=
++ LC_ALL=
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LC_CTYPE=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value=
+ eval LC_CTYPE=
++ LC_CTYPE=
++ LANG=en_US.UTF-8
++ LC_ALL=
++ LC_CTYPE=
++ locale charmap
+ charmap=UTF-8
+ '[' UTF-8 = UTF-8 ']'
+ copy_exec /usr/bin/kbd_mode /bin/
++ basename /usr/bin/kbd_mode
+ final_destination=/tmp/mkinitramfs_T21230//bin//kbd_mode
+ '[' -L /tmp/mkinitramfs_T21230//bin//kbd_mode ']'
+ ln -s /usr/bin/kbd_mode /tmp/mkinitramfs_T21230//bin/
++ ldd /usr/bin/kbd_mode
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libctutils.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libctutils.so.0
+ '[' -e /lib/libctutils.so.0 ']'
+ x=/lib/libctutils.so.0
++ basename /lib/libctutils.so.0
+ libname=libctutils.so.0
++ dirname /lib/libctutils.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libctutils.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libconsole.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libconsole.so.0
+ '[' -e /lib/libconsole.so.0 ']'
+ x=/lib/libconsole.so.0
++ basename /lib/libconsole.so.0
+ libname=libconsole.so.0
++ dirname /lib/libconsole.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libconsole.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_T21230//lib
+ '[' '!' -e /tmp/mkinitramfs_T21230//lib/ld-linux.so.2 ']'
+ return 0
++ get_root_device
++ '[' '!' -r /etc/fstab ']'
++ grep '^[^#]' /etc/fstab
++ read device mount type options dump pass
++ '[' /proc = / ']'
++ read device mount type options dump pass
++ '[' / = / ']'
++ echo /dev/mapper/bee--sata-root
++ return
+ rootdev=/dev/mapper/bee--sata-root
++ get_resume_devices
++ local device opt
++ '[' -e /etc/uswsusp.conf ']'
+++ sed -rn 's/^resume device[[:space:]]+[:=][[:space:]]+// p' /etc/uswsusp.conf
++ device=/dev/mapper/bee--sata-swap
++ '[' -n /dev/mapper/bee--sata-swap ']'
++ echo /dev/mapper/bee--sata-swap
+++ cat /proc/cmdline
++ for opt in '$(cat /proc/cmdline)'
++ case $opt in
++ for opt in '$(cat /proc/cmdline)'
++ case $opt in
+ resumedevs=/dev/mapper/bee--sata-swap
+ '[' -z /dev/mapper/bee--sata-root ']'
+ for dev in '$rootdev' '$resumedevs'
++ add_device /dev/mapper/bee--sata-root
++ local node nodes opts lastopts i count
++ nodes=/dev/mapper/bee--sata-root
++ opts=
++ lastopts=
++ '[' -z /dev/mapper/bee--sata-root ']'
++ nodes=bee--sata-root
++ '[' bee--sata-root = /dev/mapper/bee--sata-root ']'
++ node_is_in_crypttab bee--sata-root
++ local node
++ node=bee--sata-root
++ grep -q '^bee--sata-root' /etc/crypttab
++ return 1
+++ get_lvm_deps bee--sata-root
+++ local node rc deps maj min depnode
+++ node=bee--sata-root
+++ rc=1
+++ '[' -z bee--sata-root ']'
++++ dmsetup deps bee--sata-root
++++ sed 's/[^:]*: *//;s/[ (]//g;s/)/ /g'
+++ deps='8,1 '
+++ for dep in '$deps'
+++ maj=8
+++ min=1
++++ dmsetup ls
++++ sed -n 's/\([^ ]*\) *(8, 1)/\1/p'
+++ depnode=
+++ '[' -n '' ']'
+++ return 1
++ lvmnodes=
++ return 1
+ modules=
+ '[' -z '' ']'
+ echo 'cryptsetup: failed to determine cipher modules to load for /dev/mapper/bee--sata-root'
cryptsetup: failed to determine cipher modules to load for /dev/mapper/bee--sata-root
+ exit 1
-------------- next part --------------
update-initramfs: Generating /boot/initrd.img-2.6.18-1-686
+ PREREQ=
+ case $1 in
+ prereqs
+ echo ''
+ exit 0
+ PREREQ=
+ case $1 in
+ . /usr/share/initramfs-tools/hook-functions
+ '[' '' '!=' dep ']'
+ for mod in dm_mod dm_crypt aes sha256
+ manual_add_modules dm_mod
++ modprobe --set-version=2.6.18-1-686 --ignore-install --show-depends dm_mod
++ awk '/^insmod/ { print $2 }'
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko ']'
++ dirname /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko
+ mkdir -p /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/drivers/md
++ dirname /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko
+ ln -s /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/drivers/md
+ '[' -n n ']'
+ '[' n = y ']'
+ for mod in dm_mod dm_crypt aes sha256
+ manual_add_modules dm_crypt
++ modprobe --set-version=2.6.18-1-686 --ignore-install --show-depends dm_crypt
++ awk '/^insmod/ { print $2 }'
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/drivers/md/dm-mod.ko ']'
+ continue
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/drivers/md/dm-crypt.ko ']'
++ dirname /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-crypt.ko
+ mkdir -p /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/drivers/md
++ dirname /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-crypt.ko
+ ln -s /lib/modules/2.6.18-1-686/kernel/drivers/md/dm-crypt.ko /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/drivers/md
+ '[' -n n ']'
+ '[' n = y ']'
+ for mod in dm_mod dm_crypt aes sha256
+ manual_add_modules aes
++ modprobe --set-version=2.6.18-1-686 --ignore-install --show-depends aes
++ awk '/^insmod/ { print $2 }'
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/crypto/aes.ko ']'
++ dirname /lib/modules/2.6.18-1-686/kernel/crypto/aes.ko
+ mkdir -p /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/crypto
++ dirname /lib/modules/2.6.18-1-686/kernel/crypto/aes.ko
+ ln -s /lib/modules/2.6.18-1-686/kernel/crypto/aes.ko /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/crypto
+ '[' -n n ']'
+ '[' n = y ']'
+ for mod in dm_mod dm_crypt aes sha256
+ manual_add_modules sha256
++ modprobe --set-version=2.6.18-1-686 --ignore-install --show-depends sha256
++ awk '/^insmod/ { print $2 }'
+ for mam_x in '$(modprobe --set-version="${version}" --ignore-install --show-depends "${1}" 2>/dev/null | awk '\''/^insmod/ { print $2 }'\'')'
+ '[' -e /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/crypto/sha256.ko ']'
++ dirname /lib/modules/2.6.18-1-686/kernel/crypto/sha256.ko
+ mkdir -p /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/crypto
++ dirname /lib/modules/2.6.18-1-686/kernel/crypto/sha256.ko
+ ln -s /lib/modules/2.6.18-1-686/kernel/crypto/sha256.ko /tmp/mkinitramfs_m20226//lib/modules/2.6.18-1-686/kernel/crypto
+ '[' -n n ']'
+ '[' n = y ']'
+ copy_exec /sbin/cryptsetup /sbin
++ basename /sbin/cryptsetup
+ final_destination=/tmp/mkinitramfs_m20226//sbin/cryptsetup
+ '[' -L /tmp/mkinitramfs_m20226//sbin/cryptsetup ']'
+ ln -s /sbin/cryptsetup /tmp/mkinitramfs_m20226//sbin
++ ldd /sbin/cryptsetup
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libpopt.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libpopt.so.0
+ '[' -e /lib/libpopt.so.0 ']'
+ x=/lib/libpopt.so.0
++ basename /lib/libpopt.so.0
+ libname=libpopt.so.0
++ dirname /lib/libpopt.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libpopt.so.0 ']'
+ ln -s /lib/libpopt.so.0 /tmp/mkinitramfs_m20226//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libdevmapper.so.1.02
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdevmapper.so.1.02
+ '[' -e /lib/libdevmapper.so.1.02 ']'
+ x=/lib/libdevmapper.so.1.02
++ basename /lib/libdevmapper.so.1.02
+ libname=libdevmapper.so.1.02
++ dirname /lib/libdevmapper.so.1.02
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libdevmapper.so.1.02 ']'
+ ln -s /lib/libdevmapper.so.1.02 /tmp/mkinitramfs_m20226//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libuuid.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libuuid.so.1
+ '[' -e /lib/libuuid.so.1 ']'
+ x=/lib/libuuid.so.1
++ basename /lib/libuuid.so.1
+ libname=libuuid.so.1
++ dirname /lib/libuuid.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libuuid.so.1 ']'
+ ln -s /lib/libuuid.so.1 /tmp/mkinitramfs_m20226//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libselinux.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libselinux.so.1
+ '[' -e /lib/libselinux.so.1 ']'
+ x=/lib/libselinux.so.1
++ basename /lib/libselinux.so.1
+ libname=libselinux.so.1
++ dirname /lib/libselinux.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libselinux.so.1 ']'
+ ln -s /lib/libselinux.so.1 /tmp/mkinitramfs_m20226//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libsepol.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libsepol.so.1
+ '[' -e /lib/libsepol.so.1 ']'
+ x=/lib/libsepol.so.1
++ basename /lib/libsepol.so.1
+ libname=libsepol.so.1
++ dirname /lib/libsepol.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libsepol.so.1 ']'
+ ln -s /lib/libsepol.so.1 /tmp/mkinitramfs_m20226//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/ld-linux.so.2 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libdl.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdl.so.2
+ '[' -e /lib/libdl.so.2 ']'
+ x=/lib/libdl.so.2
++ basename /lib/libdl.so.2
+ libname=libdl.so.2
++ dirname /lib/libdl.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libdl.so.2 ']'
+ ln -s /lib/libdl.so.2 /tmp/mkinitramfs_m20226//lib
+ copy_exec /sbin/dmsetup /sbin
++ basename /sbin/dmsetup
+ final_destination=/tmp/mkinitramfs_m20226//sbin/dmsetup
+ '[' -L /tmp/mkinitramfs_m20226//sbin/dmsetup ']'
+ ln -s /sbin/dmsetup /tmp/mkinitramfs_m20226//sbin
++ ldd /sbin/dmsetup
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libdevmapper.so.1.02
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdevmapper.so.1.02
+ '[' -e /lib/libdevmapper.so.1.02 ']'
+ x=/lib/libdevmapper.so.1.02
++ basename /lib/libdevmapper.so.1.02
+ libname=libdevmapper.so.1.02
++ dirname /lib/libdevmapper.so.1.02
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libdevmapper.so.1.02 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libselinux.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libselinux.so.1
+ '[' -e /lib/libselinux.so.1 ']'
+ x=/lib/libselinux.so.1
++ basename /lib/libselinux.so.1
+ libname=libselinux.so.1
++ dirname /lib/libselinux.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libselinux.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libsepol.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libsepol.so.1
+ '[' -e /lib/libsepol.so.1 ']'
+ x=/lib/libsepol.so.1
++ basename /lib/libsepol.so.1
+ libname=libsepol.so.1
++ dirname /lib/libsepol.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libsepol.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libdl.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdl.so.2
+ '[' -e /lib/libdl.so.2 ']'
+ x=/lib/libdl.so.2
++ basename /lib/libdl.so.2
+ libname=libdl.so.2
++ dirname /lib/libdl.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libdl.so.2 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/ld-linux.so.2 ']'
+ prepare_keymap
+ local env charmap
+ '[' '!' -x /bin/loadkeys ']'
+ '[' '!' -r /etc/console/boottime.kmap.gz ']'
+ copy_exec /bin/loadkeys /bin/
++ basename /bin/loadkeys
+ final_destination=/tmp/mkinitramfs_m20226//bin//loadkeys
+ '[' -L /tmp/mkinitramfs_m20226//bin//loadkeys ']'
+ ln -s /bin/loadkeys /tmp/mkinitramfs_m20226//bin/
++ ldd /bin/loadkeys
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libcfont.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libcfont.so.0
+ '[' -e /lib/libcfont.so.0 ']'
+ x=/lib/libcfont.so.0
++ basename /lib/libcfont.so.0
+ libname=libcfont.so.0
++ dirname /lib/libcfont.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libcfont.so.0 ']'
+ ln -s /lib/libcfont.so.0 /tmp/mkinitramfs_m20226//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libctutils.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libctutils.so.0
+ '[' -e /lib/libctutils.so.0 ']'
+ x=/lib/libctutils.so.0
++ basename /lib/libctutils.so.0
+ libname=libctutils.so.0
++ dirname /lib/libctutils.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libctutils.so.0 ']'
+ ln -s /lib/libctutils.so.0 /tmp/mkinitramfs_m20226//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libconsole.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libconsole.so.0
+ '[' -e /lib/libconsole.so.0 ']'
+ x=/lib/libconsole.so.0
++ basename /lib/libconsole.so.0
+ libname=libconsole.so.0
++ dirname /lib/libconsole.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libconsole.so.0 ']'
+ ln -s /lib/libconsole.so.0 /tmp/mkinitramfs_m20226//lib
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/ld-linux.so.2 ']'
+ cp /etc/console/boottime.kmap.gz /tmp/mkinitramfs_m20226/etc/
+ '[' '!' -x /usr/bin/kbd_mode ']'
+ '[' -r /etc/environment ']'
+ env=/etc/environment
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LANG=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value='"en_US.UTF-8"'
+ eval 'LANG="en_US.UTF-8"'
++ LANG=en_US.UTF-8
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LC_ALL=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value=
+ eval LC_ALL=
++ LC_ALL=
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LC_CTYPE=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value=
+ eval LC_CTYPE=
++ LC_CTYPE=
++ LANG=en_US.UTF-8
++ LC_ALL=
++ LC_CTYPE=
++ locale charmap
+ charmap=UTF-8
+ '[' UTF-8 = UTF-8 ']'
+ copy_exec /usr/bin/kbd_mode /bin/
++ basename /usr/bin/kbd_mode
+ final_destination=/tmp/mkinitramfs_m20226//bin//kbd_mode
+ '[' -L /tmp/mkinitramfs_m20226//bin//kbd_mode ']'
+ ln -s /usr/bin/kbd_mode /tmp/mkinitramfs_m20226//bin/
++ ldd /usr/bin/kbd_mode
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libctutils.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libctutils.so.0
+ '[' -e /lib/libctutils.so.0 ']'
+ x=/lib/libctutils.so.0
++ basename /lib/libctutils.so.0
+ libname=libctutils.so.0
++ dirname /lib/libctutils.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libctutils.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libconsole.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libconsole.so.0
+ '[' -e /lib/libconsole.so.0 ']'
+ x=/lib/libconsole.so.0
++ basename /lib/libconsole.so.0
+ libname=libconsole.so.0
++ dirname /lib/libconsole.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libconsole.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/ld-linux.so.2 ']'
+ return 0
++ get_root_device
++ '[' '!' -r /etc/fstab ']'
++ grep '^[^#]' /etc/fstab
++ read device mount type options dump pass
++ '[' /proc = / ']'
++ read device mount type options dump pass
++ '[' / = / ']'
++ echo /dev/mapper/bee--sata-root
++ return
+ rootdev=/dev/mapper/bee--sata-root
++ get_resume_devices
++ local device opt
++ '[' -e /etc/uswsusp.conf ']'
+++ sed -rn 's/^resume device[[:space:]]+[:=][[:space:]]+// p' /etc/uswsusp.conf
++ device=/dev/mapper/bee--sata-swap
++ '[' -n /dev/mapper/bee--sata-swap ']'
++ echo /dev/mapper/bee--sata-swap
+++ cat /proc/cmdline
++ for opt in '$(cat /proc/cmdline)'
++ case $opt in
++ for opt in '$(cat /proc/cmdline)'
++ case $opt in
+ resumedevs=/dev/mapper/bee--sata-swap
+ '[' -z /dev/mapper/bee--sata-root ']'
+ for dev in '$rootdev' '$resumedevs'
++ add_device /dev/mapper/bee--sata-root
++ local node nodes opts lastopts i count
++ nodes=/dev/mapper/bee--sata-root
++ opts=
++ lastopts=
++ '[' -z /dev/mapper/bee--sata-root ']'
++ nodes=bee--sata-root
++ '[' bee--sata-root = /dev/mapper/bee--sata-root ']'
++ node_is_in_crypttab bee--sata-root
++ local node
++ node=bee--sata-root
++ grep -q '^bee--sata-root' /etc/crypttab
++ return 1
+++ get_lvm_deps bee--sata-root
+++ local node deps maj min depnode
+++ node=bee--sata-root
+++ '[' -z bee--sata-root ']'
++++ dmsetup deps bee--sata-root
++++ sed 's/[^:]*: *//;s/[ (]//g;s/)/ /g'
+++ deps='8,1 '
+++ for dep in '$deps'
+++ maj=8
+++ min=1
++++ dmsetup ls
++++ sed -n 's/\([^ ]*\) *(8, 1)/\1/p'
+++ depnode=
+++ '[' -n '' ']'
+++ return 0
++ lvmnodes=
++ '[' -z '' ']'
++ return 0
+ modules=
+ '[' -n '' ']'
+ for dev in '$rootdev' '$resumedevs'
++ add_device /dev/mapper/bee--sata-swap
++ local node nodes opts lastopts i count
++ nodes=/dev/mapper/bee--sata-swap
++ opts=
++ lastopts=
++ '[' -z /dev/mapper/bee--sata-swap ']'
++ nodes=bee--sata-swap
++ '[' bee--sata-swap = /dev/mapper/bee--sata-swap ']'
++ node_is_in_crypttab bee--sata-swap
++ local node
++ node=bee--sata-swap
++ grep -q '^bee--sata-swap' /etc/crypttab
++ return 1
+++ get_lvm_deps bee--sata-swap
+++ local node deps maj min depnode
+++ node=bee--sata-swap
+++ '[' -z bee--sata-swap ']'
++++ dmsetup deps bee--sata-swap
++++ sed 's/[^:]*: *//;s/[ (]//g;s/)/ /g'
+++ deps='8,1 '
+++ for dep in '$deps'
+++ maj=8
+++ min=1
++++ dmsetup ls
++++ sed -n 's/\([^ ]*\) *(8, 1)/\1/p'
+++ depnode=
+++ '[' -n '' ']'
+++ return 0
++ lvmnodes=
++ '[' -z '' ']'
++ return 0
+ modules=
+ '[' -n '' ']'
+ copy_exec /sbin/cryptsetup /sbin
++ basename /sbin/cryptsetup
+ final_destination=/tmp/mkinitramfs_m20226//sbin/cryptsetup
+ '[' -L /tmp/mkinitramfs_m20226//sbin/cryptsetup ']'
++ readlink /tmp/mkinitramfs_m20226//sbin/cryptsetup
+ '[' /sbin/cryptsetup = /sbin/cryptsetup ']'
++ ldd /sbin/cryptsetup
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libpopt.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libpopt.so.0
+ '[' -e /lib/libpopt.so.0 ']'
+ x=/lib/libpopt.so.0
++ basename /lib/libpopt.so.0
+ libname=libpopt.so.0
++ dirname /lib/libpopt.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libpopt.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libdevmapper.so.1.02
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdevmapper.so.1.02
+ '[' -e /lib/libdevmapper.so.1.02 ']'
+ x=/lib/libdevmapper.so.1.02
++ basename /lib/libdevmapper.so.1.02
+ libname=libdevmapper.so.1.02
++ dirname /lib/libdevmapper.so.1.02
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libdevmapper.so.1.02 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libuuid.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libuuid.so.1
+ '[' -e /lib/libuuid.so.1 ']'
+ x=/lib/libuuid.so.1
++ basename /lib/libuuid.so.1
+ libname=libuuid.so.1
++ dirname /lib/libuuid.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libuuid.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libselinux.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libselinux.so.1
+ '[' -e /lib/libselinux.so.1 ']'
+ x=/lib/libselinux.so.1
++ basename /lib/libselinux.so.1
+ libname=libselinux.so.1
++ dirname /lib/libselinux.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libselinux.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libsepol.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libsepol.so.1
+ '[' -e /lib/libsepol.so.1 ']'
+ x=/lib/libsepol.so.1
++ basename /lib/libsepol.so.1
+ libname=libsepol.so.1
++ dirname /lib/libsepol.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libsepol.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/ld-linux.so.2 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libdl.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdl.so.2
+ '[' -e /lib/libdl.so.2 ']'
+ x=/lib/libdl.so.2
++ basename /lib/libdl.so.2
+ libname=libdl.so.2
++ dirname /lib/libdl.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libdl.so.2 ']'
+ copy_exec /sbin/dmsetup /sbin
++ basename /sbin/dmsetup
+ final_destination=/tmp/mkinitramfs_m20226//sbin/dmsetup
+ '[' -L /tmp/mkinitramfs_m20226//sbin/dmsetup ']'
++ readlink /tmp/mkinitramfs_m20226//sbin/dmsetup
+ '[' /sbin/dmsetup = /sbin/dmsetup ']'
++ ldd /sbin/dmsetup
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libdevmapper.so.1.02
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdevmapper.so.1.02
+ '[' -e /lib/libdevmapper.so.1.02 ']'
+ x=/lib/libdevmapper.so.1.02
++ basename /lib/libdevmapper.so.1.02
+ libname=libdevmapper.so.1.02
++ dirname /lib/libdevmapper.so.1.02
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libdevmapper.so.1.02 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libselinux.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libselinux.so.1
+ '[' -e /lib/libselinux.so.1 ']'
+ x=/lib/libselinux.so.1
++ basename /lib/libselinux.so.1
+ libname=libselinux.so.1
++ dirname /lib/libselinux.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libselinux.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libsepol.so.1
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libsepol.so.1
+ '[' -e /lib/libsepol.so.1 ']'
+ x=/lib/libsepol.so.1
++ basename /lib/libsepol.so.1
+ libname=libsepol.so.1
++ dirname /lib/libsepol.so.1
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libsepol.so.1 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libdl.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libdl.so.2
+ '[' -e /lib/libdl.so.2 ']'
+ x=/lib/libdl.so.2
++ basename /lib/libdl.so.2
+ libname=libdl.so.2
++ dirname /lib/libdl.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libdl.so.2 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/ld-linux.so.2 ']'
+ prepare_keymap
+ local env charmap
+ '[' '!' -x /bin/loadkeys ']'
+ '[' '!' -r /etc/console/boottime.kmap.gz ']'
+ copy_exec /bin/loadkeys /bin/
++ basename /bin/loadkeys
+ final_destination=/tmp/mkinitramfs_m20226//bin//loadkeys
+ '[' -L /tmp/mkinitramfs_m20226//bin//loadkeys ']'
++ readlink /tmp/mkinitramfs_m20226//bin//loadkeys
+ '[' /bin/loadkeys = /bin/loadkeys ']'
++ ldd /bin/loadkeys
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libcfont.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libcfont.so.0
+ '[' -e /lib/libcfont.so.0 ']'
+ x=/lib/libcfont.so.0
++ basename /lib/libcfont.so.0
+ libname=libcfont.so.0
++ dirname /lib/libcfont.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libcfont.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libctutils.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libctutils.so.0
+ '[' -e /lib/libctutils.so.0 ']'
+ x=/lib/libctutils.so.0
++ basename /lib/libctutils.so.0
+ libname=libctutils.so.0
++ dirname /lib/libctutils.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libctutils.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libconsole.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libconsole.so.0
+ '[' -e /lib/libconsole.so.0 ']'
+ x=/lib/libconsole.so.0
++ basename /lib/libconsole.so.0
+ libname=libconsole.so.0
++ dirname /lib/libconsole.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libconsole.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/ld-linux.so.2 ']'
+ cp /etc/console/boottime.kmap.gz /tmp/mkinitramfs_m20226/etc/
+ '[' '!' -x /usr/bin/kbd_mode ']'
+ '[' -r /etc/environment ']'
+ env=/etc/environment
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LANG=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value='"en_US.UTF-8"'
+ eval 'LANG="en_US.UTF-8"'
++ LANG=en_US.UTF-8
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LC_ALL=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value=
+ eval LC_ALL=
++ LC_ALL=
+ for var in LANG LC_ALL LC_CTYPE
++ egrep '^[^#]*LC_CTYPE=' /etc/environment
++ tail -n1
++ cut -d= -f2
+ value=
+ eval LC_CTYPE=
++ LC_CTYPE=
++ LANG=en_US.UTF-8
++ LC_ALL=
++ LC_CTYPE=
++ locale charmap
+ charmap=UTF-8
+ '[' UTF-8 = UTF-8 ']'
+ copy_exec /usr/bin/kbd_mode /bin/
++ basename /usr/bin/kbd_mode
+ final_destination=/tmp/mkinitramfs_m20226//bin//kbd_mode
+ '[' -L /tmp/mkinitramfs_m20226//bin//kbd_mode ']'
++ readlink /tmp/mkinitramfs_m20226//bin//kbd_mode
+ '[' /usr/bin/kbd_mode = /usr/bin/kbd_mode ']'
++ ldd /usr/bin/kbd_mode
++ sed -e '
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libctutils.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libctutils.so.0
+ '[' -e /lib/libctutils.so.0 ']'
+ x=/lib/libctutils.so.0
++ basename /lib/libctutils.so.0
+ libname=libctutils.so.0
++ dirname /lib/libctutils.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libctutils.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/libconsole.so.0
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libconsole.so.0
+ '[' -e /lib/libconsole.so.0 ']'
+ x=/lib/libconsole.so.0
++ basename /lib/libconsole.so.0
+ libname=libconsole.so.0
++ dirname /lib/libconsole.so.0
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libconsole.so.0 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/tls/i686/cmov/libc.so.6
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/libc.so.6
+ '[' -e /lib/libc.so.6 ']'
+ x=/lib/libc.so.6
++ basename /lib/libc.so.6
+ libname=libc.so.6
++ dirname /lib/libc.so.6
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/libc.so.6 ']'
+ for x in '$(ldd ${1} 2>/dev/null | sed -e '\''
/\//!d;
/linux-gate/d;
/=>/ {s/.*=>[[:blank:]]*\([^[:blank:]]*\).*/\1/};
s/[[:blank:]]*\([^[:blank:]]*\) (.*)/\1/'\'' 2>/dev/null)'
++ echo /lib/ld-linux.so.2
++ sed -e 's#/lib/tls.*/\(lib.*\)#/lib/\1#'
+ nonoptlib=/lib/ld-linux.so.2
+ '[' -e /lib/ld-linux.so.2 ']'
+ x=/lib/ld-linux.so.2
++ basename /lib/ld-linux.so.2
+ libname=ld-linux.so.2
++ dirname /lib/ld-linux.so.2
+ dirname=/lib
+ mkdir -p /tmp/mkinitramfs_m20226//lib
+ '[' '!' -e /tmp/mkinitramfs_m20226//lib/ld-linux.so.2 ']'
+ return 0
+ exit 0
-------------- next part --------------
--- /root/cryptroot.orig 2006-11-08 17:13:32.000000000 +0100
+++ /usr/share/initramfs-tools/hooks/cryptroot 2006-11-08 17:16:44.000000000 +0100
@@ -60,12 +60,11 @@
}
get_lvm_deps() {
- local node rc deps maj min depnode
+ local node deps maj min depnode
node="$1"
- rc=1
if [ -z $node ]; then
- return $rc
+ return 1
fi
deps=$(dmsetup deps "$node" | sed 's/[^:]*: *//;s/[ (]//g;s/)/ /g') || return 1
@@ -76,11 +75,10 @@
depnode=$(dmsetup ls | sed -n "s/\\([^ ]*\\) *($maj, $min)/\\1/p")
if [ -n "$depnode" ]; then
echo "$depnode"
- rc=0
fi
done
- return $rc
+ return 0
}
get_device_opts() {
@@ -221,6 +219,11 @@
# It is a /dev/mapper node but not in crypttab, is it lvm?
lvmnodes=$(get_lvm_deps "$nodes") || return 1
+ # /dev/mapper node not backed by no other dm device; stop here
+ if [ -z "$lvmnodes" ]; then
+ return 0
+ fi
+
# It is a lvm device!
lastopts="lvm=$nodes"
nodes="$lvmnodes"
@@ -294,16 +297,16 @@
# Load the config opts and modules for each device
for dev in $rootdev $resumedevs; do
- modules=$(add_device "$dev")
-
- if [ -z "$modules" ]; then
+ if ! modules=$(add_device "$dev"); then
echo "cryptsetup: failed to determine cipher modules to load for $dev" >&2
exit 1
fi
- for mod in $modules; do
- manual_add_modules $mod
- done
+ if [ -n "$modules" ]; then
+ for mod in $modules; do
+ manual_add_modules $mod
+ done
+ fi
done
# Prepare the initramfs
-------------- next part --------------
#!/bin/sh
PREREQ=""
prereqs()
{
echo "$PREREQ"
}
case $1 in
prereqs)
prereqs
exit 0
;;
esac
. /usr/share/initramfs-tools/hook-functions
get_root_device() {
if [ ! -r /etc/fstab ]; then
return 1
fi
grep '^[^#]' /etc/fstab | \
while read device mount type options dump pass; do
if [ "$mount" = "/" ]; then
echo "$device"
return
fi
done
}
get_resume_devices() {
local device opt
# uswsusp
if [ -e /etc/uswsusp.conf ]; then
device=$(sed -rn 's/^resume device[[:space:]]+[:=][[:space:]]+// p' /etc/uswsusp.conf)
if [ -n "$device" ]; then
echo "$device"
fi
fi
# regular swsusp
for opt in $(cat /proc/cmdline); do
case $opt in
resume=*)
echo "${opt#resume=}"
;;
esac
done
}
node_is_in_crypttab() {
local node
node="$1"
grep -q ^$node /etc/crypttab
return $?
}
get_lvm_deps() {
local node deps maj min depnode
node="$1"
if [ -z $node ]; then
return 1
fi
deps=$(dmsetup deps "$node" | sed 's/[^:]*: *//;s/[ (]//g;s/)/ /g') || return 1
for dep in $deps; do
maj=${dep%,*}
min=${dep#*,}
depnode=$(dmsetup ls | sed -n "s/\\([^ ]*\\) *($maj, $min)/\\1/p")
if [ -n "$depnode" ]; then
echo "$depnode"
fi
done
return 0
}
get_device_opts() {
local target source extraopts rootopts opt
target="$1"
extraopts="$2"
KEYSCRIPT=""
OPTIONS=""
if [ -z "$target" ]; then
return 1
fi
if [ ! -r /etc/crypttab ]; then
return 1
fi
opt=$( grep ^$target /etc/crypttab | head -1 | sed 's/[[:space:]]\+/ /g' )
source=$( echo $opt | cut -d " " -f2 )
key=$( echo $opt | cut -d " " -f3 )
rootopts=$( echo $opt | cut -d " " -f4- )
if [ -z "$opt" ] || [ -z "$source" ] || [ -z "$key" ] || [ -z "$rootopts" ]; then
return 1
fi
if [ -n "$extraopts" ]; then
rootopts="$extraopts,$rootopts"
fi
# We have all the basic options, let's go trough them
OPTIONS="target=$target,source=$source,key=$key"
local IFS=", "
for opt in $rootopts; do
case $opt in
cipher=*)
OPTIONS="$OPTIONS,$opt"
;;
hash=*)
OPTIONS="$OPTIONS,$opt"
;;
size=*)
OPTIONS="$OPTIONS,$opt"
;;
lvm=*)
OPTIONS="$OPTIONS,$opt"
;;
keyscript=*)
opt=${opt#keyscript=}
if [ -x "$opt" ]; then
KEYSCRIPT="$opt"
opt=$(basename "$opt")
OPTIONS="$OPTIONS,keyscript=/keyscripts/$opt"
fi
;;
*)
# Presumably a non-supported option
;;
esac
done
}
get_device_modules() {
local node value cipher ivhash
node="$1"
# Check the ciphers used by the active root mapping
value=$(dmsetup table "$node" | cut -d " " -f4)
cipher=$(echo "$value" | cut -d ":" -f1 | cut -d "-" -f1)
ivhash=$(echo "$value" | cut -d ":" -s -f2)
if [ -z "$cipher" ]; then
return 1
fi
echo "$cipher"
if [ -n "$ivhash" ]; then
echo "$ivhash"
fi
return 0
}
prepare_keymap() {
local env charmap
# Allow the correct keymap to be loaded if possible
if [ ! -x /bin/loadkeys ] || [ ! -r /etc/console/boottime.kmap.gz ]; then
return 1
fi
copy_exec /bin/loadkeys /bin/
cp /etc/console/boottime.kmap.gz $DESTDIR/etc/
# Check for UTF8 console
if [ ! -x /usr/bin/kbd_mode ]; then
return 0
fi
if [ -r /etc/environment ]; then
env="/etc/environment"
elif [ -r /etc/default/locale ]; then
env="/etc/default/locale"
else
return 0
fi
for var in LANG LC_ALL LC_CTYPE; do
value=$(egrep "^[^#]*${var}=" $env | tail -n1 | cut -d= -f2)
eval $var=$value
done
charmap=$(LANG=$LANG LC_ALL=$LC_ALL LC_CTYPE=$LC_CTYPE locale charmap)
if [ "$charmap" = "UTF-8" ]; then
copy_exec /usr/bin/kbd_mode /bin/
fi
return 0
}
add_device() {
local node nodes opts lastopts i count
nodes="$1"
opts="" # Applied to all nodes
lastopts="" # Applied to last node
if [ -z "$nodes" ]; then
return 0
fi
# Check that it is a node under /dev/mapper/
nodes="${nodes#/dev/mapper/}"
if [ "$nodes" = "$1" ]; then
return 0
fi
# Can we find this node in crypttab
if ! node_is_in_crypttab "$nodes"; then
# It is a /dev/mapper node but not in crypttab, is it lvm?
lvmnodes=$(get_lvm_deps "$nodes") || return 1
# /dev/mapper node not backed by no other dm device; stop here
if [ -z "$lvmnodes" ]; then
return 0
fi
# It is a lvm device!
lastopts="lvm=$nodes"
nodes="$lvmnodes"
fi
# Prepare to setup each node
count=$(echo "$nodes" | wc -w)
i=1
for node in $nodes; do
# Prepare the additional options
if [ $i -eq $count ]; then
if [ -z "$opts" ]; then
opts="$lastopts"
else
opts="$opts,$lastopts"
fi
fi
# Get crypttab root options
if ! get_device_opts $node $opts; then
echo "cryptsetup: failed to determine cipher options to use for $node" >&2
continue
fi
echo "$OPTIONS" >> "$DESTDIR/conf/conf.d/cryptroot"
# If we have a keyscript, make sure it is included
if [ -n "$KEYSCRIPT" ]; then
if [ ! -d "$DESTDIR/keyscripts" ]; then
mkdir "$DESTDIR/keyscripts"
fi
copy_exec "$KEYSCRIPT" /keyscripts
fi
# Calculate needed modules
modules=$(get_device_modules $node | sort | uniq)
if [ -z "$modules" ]; then
echo "$0: failed to determine cipher modules to load for $node" >&2
continue
fi
echo dm_mod
echo dm_crypt
echo "$modules"
i=$(( $i + 1 ))
done
return 0
}
#
# Begin real processing
#
# Unless MODULES = "dep", we always add a basic subset of modules/tools
if [ "$MODULES" != "dep" ]; then
for mod in dm_mod dm_crypt aes sha256; do
manual_add_modules $mod
done
copy_exec /sbin/cryptsetup /sbin
copy_exec /sbin/dmsetup /sbin
prepare_keymap
fi
# Find out which devices to add to the config file
rootdev=$(get_root_device)
resumedevs=$(get_resume_devices)
if [ -z "$rootdev" ] && [ -z "$resumedevs" ]; then
exit 0
fi
# Load the config opts and modules for each device
for dev in $rootdev $resumedevs; do
if ! modules=$(add_device "$dev"); then
echo "cryptsetup: failed to determine cipher modules to load for $dev" >&2
exit 1
fi
if [ -n "$modules" ]; then
for mod in $modules; do
manual_add_modules $mod
done
fi
done
# Prepare the initramfs
copy_exec /sbin/cryptsetup /sbin
copy_exec /sbin/dmsetup /sbin
prepare_keymap
# Done
exit 0
More information about the Pkg-cryptsetup-devel
mailing list