X-Git-Url: http://git.grml.org/?a=blobdiff_plain;f=backend%2Finitramfs-tools%2Flive.hook;h=7a2bd133ba537f011505e76333dcd2048a6eed7d;hb=9d4ad8c0c81275ddf2f1bbfceb105eef78bc8bb7;hp=560dd0f755c006126099207611d1b04edf901bbf;hpb=0aa07bd386f516176364e710e8b9132036c72986;p=live-boot-grml.git diff --git a/backend/initramfs-tools/live.hook b/backend/initramfs-tools/live.hook index 560dd0f..7a2bd13 100755 --- a/backend/initramfs-tools/live.hook +++ b/backend/initramfs-tools/live.hook @@ -8,7 +8,7 @@ set -e # Reading configuration file from filesystem and live-media for _FILE in /etc/live/boot.conf /etc/live/boot/* \ - /lib/live/mount/media/live/boot.conf /lib/live/mount/media/live/boot/* + /run/live/medium/live/boot.conf /run/live/medium/live/boot/* do if [ -e "${_FILE}" ] then @@ -16,6 +16,12 @@ do fi done +# Grml version information: +if [ -r /etc/grml_version ] +then + cp /etc/grml_version "${DESTDIR}"/etc +fi + # Checking live-boot if [ ! -e /bin/live-boot ] then @@ -28,29 +34,44 @@ fi [ "${QUIET}" ] || echo -n " core" mkdir -p "${DESTDIR}/bin" -cp -a /bin/live-boot /lib/live/boot "${DESTDIR}/bin" +cp -a /bin/live-boot "${DESTDIR}/bin" + mkdir -p "${DESTDIR}/lib/live" cp -a /lib/live/boot "${DESTDIR}/lib/live" +mkdir -p "${DESTDIR}/etc/live" +if [ -e /etc/live/boot.conf ] +then + cp -a /etc/live/boot.conf "${DESTDIR}/etc/live" +fi +if [ -e /etc/live/boot ] +then + cp -a /etc/live/boot "${DESTDIR}/etc/live" +fi + # klibc dependencies for FILE in /lib/libacl* /lib/libblkid* /lib/libuuid* /lib/libdevmapper* /lib/libattr* do - if [ ! -e "${DESTDIR}"/"${FILE}" ] && ls ${FILE} > /dev/null 2>&1 + if [ ! -e "${DESTDIR}/${FILE}" ] && ls "${FILE}" > /dev/null 2>&1 then - cp -a "${FILE}" "${DESTDIR}"/"${FILE}" + cp -a "${FILE}" "${DESTDIR}/${FILE}" fi done # udev dependencies -for FILE in /lib/udev/*_id -do - copy_exec "${FILE}" -done +if [ "${MINIMAL:-}" != "true" ] && [ "${MINIMAL:-}" != "yes" ] +then + for FILE in /lib/udev/*_id + do + copy_exec "${FILE}" + done +fi -if [ -e /lib/udev/rules.d/60-cdrom_id.rules ] +if [ -e /lib/udev/rules.d/60-cdrom_id.rules ] && [ "${DISABLE_CDROM:-}" != "true" ] && \ + [ "${DISABLE_CDROM:-}" != "yes" ] then - mkdir -p ${DESTDIR}/lib/udev/rules.d - cp -p /lib/udev/rules.d/60-cdrom_id.rules ${DESTDIR}/lib/udev/rules.d + mkdir -p "${DESTDIR}/lib/udev/rules.d" + cp -p /lib/udev/rules.d/60-cdrom_id.rules "${DESTDIR}/lib/udev/rules.d" fi [ "${QUIET}" ] || echo -n " filesystems" @@ -60,15 +81,15 @@ if [ -x /bin/loadkeys ] && [ -r /etc/console/boottime.kmap.gz ] then copy_exec /bin/loadkeys - mkdir -p "${DESTDIR}"/etc - cp /etc/console/boottime.kmap.gz "${DESTDIR}"/etc + mkdir -p "${DESTDIR}/etc" + cp /etc/console/boottime.kmap.gz "${DESTDIR}/etc" fi # Configuration: Unique ID if [ -n "${LIVE_GENERATE_UUID}" ] then - mkdir -p "${DESTDIR}"/conf - uuidgen -r > "${DESTDIR}"/conf/uuid.conf + mkdir -p "${DESTDIR}/conf" + uuidgen -r > "${DESTDIR}/conf/uuid.conf" fi # Filesystem: btrfs @@ -92,7 +113,7 @@ manual_add_modules hfsplus # Filesystem: jffs2 manual_add_modules jffs2 -if [ -x /usr/bin/rsync ] +if [ -x /usr/bin/rsync ] && [ "${MINIMAL:-}" != "true" ] && [ "${MINIMAL:-}" != "yes" ] then copy_exec /usr/bin/rsync /bin fi @@ -104,36 +125,42 @@ manual_add_modules squashfs manual_add_modules sqlzma manual_add_modules unlzma -# Filesystem: aufs/overlayfs/unionfs +# Filesystem: aufs/overlay manual_add_modules aufs -manual_add_modules overlayfs -manual_add_modules unionfs +manual_add_modules overlay -# Filesystem: unionfs-fuse -if [ -x /usr/bin/unionfs-fuse ] +# Filesystem: vfat +if [ "${DISABLE_FAT:-}" != "true" ] && [ "${DISABLE_FAT:-}" != "yes" ] then - copy_exec /usr/bin/unionfs-fuse /bin + manual_add_modules nls_cp437 + manual_add_modules nls_iso8859-1 + manual_add_modules nls_utf8 + manual_add_modules nls_ascii + manual_add_modules vfat fi -# Filesystem: vfat -manual_add_modules nls_cp437 -manual_add_modules nls_iso8859-1 -manual_add_modules nls_utf8 -manual_add_modules vfat - # Filesystem: ntfs -manual_add_modules ntfs +if [ "${DISABLE_NTFS:-}" != "true" ] && [ "${DISABLE_NTFS:-}" != "yes" ] +then + manual_add_modules ntfs +fi [ "${QUIET}" ] || echo -n " devices" # Hardware: cdrom -manual_add_modules ide-cd -manual_add_modules ide-generic -manual_add_modules ohci1394 -manual_add_modules sbp2 -manual_add_modules sr_mod +if [ "${DISABLE_CDROM:-}" != "true" ] && [ "${DISABLE_CDROM:-}" != "yes" ] +then + manual_add_modules ide-cd + manual_add_modules ide-generic + manual_add_modules ohci1394 + manual_add_modules sbp2 + manual_add_modules sr_mod +fi # Hardware: usb -manual_add_modules sd_mod +if [ "${DISABLE_USB:-}" != "true" ] && [ "${DISABLE_USB:-}" != "yes" ] +then + manual_add_modules sd_mod +fi # Hardware: network auto_add_modules net @@ -144,10 +171,6 @@ then copy_exec /usr/bin/eject /bin fi -# Program: mount -# fuse does not work with klibc mount -copy_exec /bin/mount /bin/mount.util-linux - [ "${QUIET}" ] || echo -n " utils" # Feature: Verify Checksums @@ -168,17 +191,10 @@ then fi # Program: udev -if [ -x /sbin/udevadm ] +if [ -x /bin/udevadm ] then [ "${QUIET}" ] || echo -n " udev" - copy_exec /sbin/udevadm -fi - -# Program: wget -if [ -x /usr/bin/wget ] -then - [ "${QUIET}" ] || echo -n " wget" - copy_exec /usr/bin/wget /bin + copy_exec /bin/udevadm fi # Program: blockdev @@ -189,24 +205,27 @@ then fi # FUSE kernel module -manual_add_modules fuse - -# FUSE filesystem: httpfs2 -if [ -x /usr/bin/httpfs2_ssl ] -then - [ "${QUIET}" ] || echo -n " httpfs:ssl" - copy_exec /usr/bin/httpfs2_ssl /bin/httpfs -elif [ -x /usr/bin/httpfs2 ] +if [ "${DISABLE_FUSE:-n}" != "true" ] && [ "${DISABLE_FUSE:-n}" != "yes" ] then - [ "${QUIET}" ] || echo -n " httpfs" - copy_exec /usr/bin/httpfs2 /bin/httpfs -fi + manual_add_modules fuse -# FUSE filesystem: curlftpfs -if [ -x /usr/bin/curlftpfs ] -then - [ "${QUIET}" ] || echo -n " ftpfs" - copy_exec /usr/bin/curlftpfs /bin + # FUSE filesystem: httpfs2 + if [ -x /usr/bin/httpfs2_ssl ] + then + [ "${QUIET}" ] || echo -n " httpfs:ssl" + copy_exec /usr/bin/httpfs2_ssl /bin/httpfs + elif [ -x /usr/bin/httpfs2 ] + then + [ "${QUIET}" ] || echo -n " httpfs" + copy_exec /usr/bin/httpfs2 /bin/httpfs + fi + + # FUSE filesystem: curlftpfs + if [ -x /usr/bin/curlftpfs ] + then + [ "${QUIET}" ] || echo -n " ftpfs" + copy_exec /usr/bin/curlftpfs /bin + fi fi # iSCSI @@ -221,23 +240,33 @@ fi # Some experimental stuff -case "${LIVE_DNS}" in - true) - [ "${QUIET}" ] || echo -n " dns" +[ "${QUIET}" ] || echo -n " dns" + +# libnss_dns.so.*: DNS +# libnss_files.so.*: /etc/hosts and /etc/passwd +# libnss_compat.so.*: /etc/passwd - # /lib/libnss_dns.so.*:a DNS - # /lib/libnss_files.so.*: /etc/hosts and /etc/passwd - # /lib/libnss_compat.so.*: /etc/passwd +for _SHLIB in $(find /lib /usr/lib -name 'libnss_dns.so.*' -o -name 'libnss_files.so.*' | grep -v '/lib/live') +do + copy_exec "${_SHLIB}" +done - for _SHLIB in $(find /lib -name 'libnss_dns.so.*') - do - copy_exec "${_SHLIB}" - done +if [ ! -e "${DESTDIR}/etc/nsswitch.conf" ] +then + # Needed to make "hostname -f" honor the domainname provided by DHCP + echo "hosts: files dns" > "${DESTDIR}/etc/nsswitch.conf" +fi - # might be needed if /etc/hosts is used - #mkdir -p "${DESTDIR}/etc" - #cp -p /etc/nsswitch.conf "${DESTDIR}/etc" - ;; -esac +# vlan support +if [ -x /sbin/vconfig ] +then + copy_exec /sbin/vconfig + manual_add_modules 8021q +fi + +if [ -x /sbin/ethtool ] +then + copy_exec /sbin/ethtool +fi [ "${QUIET}" ] || echo .