执行 update-initramfs 时未找到 copy_exec 命令

执行 update-initramfs 时未找到 copy_exec 命令

我目前正在尝试将 cryptsetup 包含到我的 initramfs 中,以便我可以在加密根分区后启动。

我创建了一个钩子脚本/usr/share/initramfs-tools/hooks/my_hook

具有以下内容

copy_exec /sbin/cryptsetup /sbin

但每次我尝试执行(在 chroot 中)

update-initramfs -u -k all

它失败了:

root@ubuntu update-initramfs -u -k all
/usr/share/initramfs-tools/hooks/my_hook 
:1 /usr/share/initramfs- tools/hooks/my_hook copy_exec: not found

E: /usr/share/initramfs-tools/hooks/my_hook failed with return 127

答案1

确保重写my_hook以符合标准调用约定并包含钩子函数(这是重要的部分)

#!/bin/sh -e

PREREQ=""

#Output prequisites
prereqs()
{
    echo "$PREREQ"
}

case $1 in prereqs)
    preqres
    exit 0;;
esac

. /usr/share/initramfs-tools/hook-functions # this is crucial

相关内容