Server IP : 66.29.132.122 / Your IP : 18.226.214.95 Web Server : LiteSpeed System : Linux business142.web-hosting.com 4.18.0-553.lve.el8.x86_64 #1 SMP Mon May 27 15:27:34 UTC 2024 x86_64 User : admazpex ( 531) PHP Version : 7.2.34 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : OFF | Pkexec : OFF Directory : /lib/dracut/modules.d/99squash/ |
Upload File : |
#!/bin/bash check() { require_binaries mksquashfs unsquashfs || return 1 for i in CONFIG_SQUASHFS CONFIG_BLK_DEV_LOOP CONFIG_OVERLAY_FS ; do if ! check_kernel_config $i; then dinfo "dracut-squash module requires kernel configuration $i (y or m)" return 1 fi done return 255 } depends() { echo "systemd-initrd" return 0 } installpost() { local _busybox _busybox=$(find_binary busybox) # Move everything under $initdir except $squash_dir # itself into squash image for i in "$initdir"/*; do [[ "$squash_dir" == "$i"/* ]] || mv "$i" "$squash_dir"/ done # Create mount points for squash loader mkdir -p "$initdir"/squash/ mkdir -p "$squash_dir"/squash/ # Copy dracut spec files out side of the squash image # so dracut rebuild and lsinitrd can work mkdir -p "$initdir/usr/lib/dracut/" for file in "$squash_dir"/usr/lib/dracut/*; do [[ -f $file ]] || continue cp "$file" "$initdir/${file#$squash_dir}" done # Install required modules and binaries for the squash image init script. if [[ $_busybox ]]; then inst "$_busybox" /usr/bin/busybox for _i in sh echo mount modprobe mkdir switch_root grep umount; do ln_r /usr/bin/busybox /usr/bin/$_i done else DRACUT_RESOLVE_DEPS=1 inst_multiple sh mount modprobe mkdir switch_root grep umount # libpthread workaround: pthread_cancel wants to dlopen libgcc_s.so inst_libdir_file -o "libgcc_s.so*" # FIPS workaround for Fedora/RHEL: libcrypto needs libssl when FIPS is enabled [[ $DRACUT_FIPS_MODE ]] && inst_libdir_file -o "libssl.so*" fi hostonly="" instmods "loop" "squashfs" "overlay" dracut_kernel_post # Install squash image init script. ln_r /usr/bin /bin ln_r /usr/sbin /sbin inst_simple "$moddir"/init-squash.sh /init # make sure that library links are correct and up to date for squash loader build_ld_cache } install() { if [[ $DRACUT_SQUASH_POST_INST ]]; then installpost fi }