Changeset 5804e5f
- Timestamp:
- 05/22/2021 10:56:09 AM (3 years ago)
- Branches:
- 11.0, 11.1, 11.2, 11.3, 12.0, 12.1, kea, ken/TL2024, ken/inkscape-core-mods, ken/tuningfonts, lazarus, lxqt, plabs/newcss, plabs/python-mods, python3.11, qt5new, rahul/power-profiles-daemon, renodr/vulkan-addition, trunk, upgradedb, xry111/intltool, xry111/llvm18, xry111/soup3, xry111/test-20220226, xry111/xf86-video-removal
- Children:
- d9506f79
- Parents:
- 99ed8506
- git-author:
- Xi Ruoyao <xry111@…> (05/22/2021 10:53:33 AM)
- git-committer:
- Xi Ruoyao <xry111@…> (05/22/2021 10:56:09 AM)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
postlfs/filesystems/initramfs.xml
r99ed8506 r5804e5f 66 66 </para> 67 67 68 <screen role="root"><userinput>cat > / sbin/mkinitramfs << "EOF"68 <screen role="root"><userinput>cat > /usr/sbin/mkinitramfs << "EOF" 69 69 <literal>#!/bin/bash 70 70 # This file based in part on the mkinitramfs script for the LFS LiveCD … … 76 76 77 77 if [ "$2" = "lib" ]; then 78 file=$(PATH=/ lib:/usr/lib type -p $1)78 file=$(PATH=/usr/lib type -p $1) 79 79 else 80 80 file=$(type -p $1) … … 82 82 83 83 if [ -n "$file" ] ; then 84 cp $file $WDIR/ $284 cp $file $WDIR/usr/$2 85 85 else 86 86 echo "Missing required file: $1 for directory $2" … … 97 97 fi 98 98 99 if [ -n "$KERNEL_VERSION" ] && [ ! -d "/ lib/modules/$1" ] ; then99 if [ -n "$KERNEL_VERSION" ] && [ ! -d "/usr/lib/modules/$1" ] ; then 100 100 echo "No modules directory named $1" 101 101 exit 1 … … 109 109 110 110 # Systemd installs udevadm in /bin. Other udev implementations have it in /sbin 111 if [ -x / bin/udevadm ] ; then binfiles="$binfiles udevadm"; fi111 if [ -x /usr/bin/udevadm ] ; then binfiles="$binfiles udevadm"; fi 112 112 113 113 sbinfiles="modprobe blkid switch_root" 114 114 115 # Optional files and locations115 # Optional files and locations 116 116 for f in mdadm mdmon udevd udevadm; do 117 if [ -x / sbin/$f ] ; then sbinfiles="$sbinfiles $f"; fi117 if [ -x /usr/sbin/$f ] ; then sbinfiles="$sbinfiles $f"; fi 118 118 done 119 119 120 120 # Add lvm if present (cannot be done with the others because it 121 121 # also needs dmsetup 122 if [ -x / sbin/lvm ] ; then sbinfiles="$sbinfiles lvm dmsetup"; fi122 if [ -x /usr/sbin/lvm ] ; then sbinfiles="$sbinfiles lvm dmsetup"; fi 123 123 124 124 unsorted=$(mktemp /tmp/unsorted.XXXXXXXXXX) … … 131 131 132 132 # Create base directory structure 133 mkdir -p $WDIR/{ bin,dev,lib/firmware,run,sbin,sys,proc,usr}133 mkdir -p $WDIR/{dev,run,sys,proc,usr/{bin,lib/{firmware,modules},sbin}} 134 134 mkdir -p $WDIR/etc/{modprobe.d,udev/rules.d} 135 135 touch $WDIR/etc/modprobe.d/modprobe.conf 136 ln -s lib $WDIR/lib64 137 ln -s ../bin $WDIR/usr/bin 136 ln -s usr/bin $WDIR/bin 137 ln -s usr/lib $WDIR/lib 138 ln -s usr/sbin $WDIR/sbin 139 ln -s lib $WDIR/lib64 138 140 139 141 # Create necessary device nodes … … 151 153 152 154 # Install any firmware present 153 cp -a / lib/firmware $WDIR/lib155 cp -a /usr/lib/firmware $WDIR/usr/lib 154 156 155 157 # Copy the RAID configuration file if present … … 162 164 163 165 if [ -n "$KERNEL_VERSION" ] ; then 164 if [ -x / bin/kmod ] ; then166 if [ -x /usr/bin/kmod ] ; then 165 167 binfiles="$binfiles kmod" 166 168 else … … 172 174 # Install basic binaries 173 175 for f in $binfiles ; do 174 if [ -e /bin/$f ]; then d="/bin"; else d="/usr/bin"; fi 175 ldd $d/$f | sed "s/\t//" | cut -d " " -f1 >> $unsorted 176 copy $d/$f bin 176 ldd /usr/bin/$f | sed "s/\t//" | cut -d " " -f1 >> $unsorted 177 copy /usr/bin/$f bin 177 178 done 178 179 179 180 for f in $sbinfiles ; do 180 ldd / sbin/$f | sed "s/\t//" | cut -d " " -f1 >> $unsorted181 ldd /usr/sbin/$f | sed "s/\t//" | cut -d " " -f1 >> $unsorted 181 182 copy $f sbin 182 183 done 183 184 184 # Add udevd libraries if not in / sbin185 if [ -x / lib/udev/udevd ] ; then186 ldd / lib/udev/udevd | sed "s/\t//" | cut -d " " -f1 >> $unsorted187 elif [ -x / lib/systemd/systemd-udevd ] ; then188 ldd / lib/systemd/systemd-udevd | sed "s/\t//" | cut -d " " -f1 >> $unsorted185 # Add udevd libraries if not in /usr/sbin 186 if [ -x /usr/lib/udev/udevd ] ; then 187 ldd /usr/lib/udev/udevd | sed "s/\t//" | cut -d " " -f1 >> $unsorted 188 elif [ -x /usr/lib/systemd/systemd-udevd ] ; then 189 ldd /usr/lib/systemd/systemd-udevd | sed "s/\t//" | cut -d " " -f1 >> $unsorted 189 190 fi 190 191 191 192 # Add module symlinks if appropriate 192 if [ -n "$KERNEL_VERSION" ] && [ -x / bin/kmod ] ; then193 ln -s kmod $WDIR/ bin/lsmod194 ln -s kmod $WDIR/ bin/insmod193 if [ -n "$KERNEL_VERSION" ] && [ -x /usr/bin/kmod ] ; then 194 ln -s kmod $WDIR/usr/bin/lsmod 195 ln -s kmod $WDIR/usr/bin/insmod 195 196 fi 196 197 197 198 # Add lvm symlinks if appropriate 198 199 # Also copy the lvm.conf file 199 if [ -x / sbin/lvm ] ; then200 ln -s lvm $WDIR/ sbin/lvchange201 ln -s lvm $WDIR/ sbin/lvrename202 ln -s lvm $WDIR/ sbin/lvextend203 ln -s lvm $WDIR/ sbin/lvcreate204 ln -s lvm $WDIR/ sbin/lvdisplay205 ln -s lvm $WDIR/ sbin/lvscan206 207 ln -s lvm $WDIR/ sbin/pvchange208 ln -s lvm $WDIR/ sbin/pvck209 ln -s lvm $WDIR/ sbin/pvcreate210 ln -s lvm $WDIR/ sbin/pvdisplay211 ln -s lvm $WDIR/ sbin/pvscan212 213 ln -s lvm $WDIR/ sbin/vgchange214 ln -s lvm $WDIR/ sbin/vgcreate215 ln -s lvm $WDIR/ sbin/vgscan216 ln -s lvm $WDIR/ sbin/vgrename217 ln -s lvm $WDIR/ sbin/vgck200 if [ -x /usr/sbin/lvm ] ; then 201 ln -s lvm $WDIR/usr/sbin/lvchange 202 ln -s lvm $WDIR/usr/sbin/lvrename 203 ln -s lvm $WDIR/usr/sbin/lvextend 204 ln -s lvm $WDIR/usr/sbin/lvcreate 205 ln -s lvm $WDIR/usr/sbin/lvdisplay 206 ln -s lvm $WDIR/usr/sbin/lvscan 207 208 ln -s lvm $WDIR/usr/sbin/pvchange 209 ln -s lvm $WDIR/usr/sbin/pvck 210 ln -s lvm $WDIR/usr/sbin/pvcreate 211 ln -s lvm $WDIR/usr/sbin/pvdisplay 212 ln -s lvm $WDIR/usr/sbin/pvscan 213 214 ln -s lvm $WDIR/usr/sbin/vgchange 215 ln -s lvm $WDIR/usr/sbin/vgcreate 216 ln -s lvm $WDIR/usr/sbin/vgscan 217 ln -s lvm $WDIR/usr/sbin/vgrename 218 ln -s lvm $WDIR/usr/sbin/vgck 218 219 # Conf file(s) 219 220 cp -a /etc/lvm $WDIR/etc … … 234 235 done 235 236 236 if [ -d / lib/udev ]; then237 cp -a / lib/udev $WDIR/lib238 fi 239 if [ -d / lib/systemd ]; then240 cp -a / lib/systemd $WDIR/lib241 fi 242 if [ -d / lib/elogind ]; then243 cp -a / lib/elogind $WDIR/lib237 if [ -d /usr/lib/udev ]; then 238 cp -a /usr/lib/udev $WDIR/usr/lib 239 fi 240 if [ -d /usr/lib/systemd ]; then 241 cp -a /usr/lib/systemd $WDIR/usr/lib 242 fi 243 if [ -d /usr/lib/elogind ]; then 244 cp -a /usr/lib/elogind $WDIR/usr/lib 244 245 fi 245 246 … … 247 248 if [ -n "$KERNEL_VERSION" ]; then 248 249 find \ 249 / lib/modules/$KERNEL_VERSION/kernel/{crypto,fs,lib} \250 / lib/modules/$KERNEL_VERSION/kernel/drivers/{block,ata,md,firewire} \251 / lib/modules/$KERNEL_VERSION/kernel/drivers/{scsi,message,pcmcia,virtio} \252 / lib/modules/$KERNEL_VERSION/kernel/drivers/usb/{host,storage} \250 /usr/lib/modules/$KERNEL_VERSION/kernel/{crypto,fs,lib} \ 251 /usr/lib/modules/$KERNEL_VERSION/kernel/drivers/{block,ata,md,firewire} \ 252 /usr/lib/modules/$KERNEL_VERSION/kernel/drivers/{scsi,message,pcmcia,virtio} \ 253 /usr/lib/modules/$KERNEL_VERSION/kernel/drivers/usb/{host,storage} \ 253 254 -type f 2> /dev/null | cpio --make-directories -p --quiet $WDIR 254 255 255 cp / lib/modules/$KERNEL_VERSION/modules.{builtin,order} \256 $WDIR/ lib/modules/$KERNEL_VERSION256 cp /usr/lib/modules/$KERNEL_VERSION/modules.{builtin,order} \ 257 $WDIR/usr/lib/modules/$KERNEL_VERSION 257 258 258 259 depmod -b $WDIR $KERNEL_VERSION … … 262 263 263 264 # Prepare early loading of microcode if available 264 if ls / lib/firmware/intel-ucode/* >/dev/null 2>&1 ||265 ls / lib/firmware/amd-ucode/* >/dev/null 2>&1; then265 if ls /usr/lib/firmware/intel-ucode/* >/dev/null 2>&1 || 266 ls /usr/lib/firmware/amd-ucode/* >/dev/null 2>&1; then 266 267 267 268 # first empty WDIR to reuse it … … 271 272 mkdir -p $DSTDIR 272 273 273 if [ -d / lib/firmware/amd-ucode ]; then274 cat / lib/firmware/amd-ucode/microcode_amd*.bin > $DSTDIR/AuthenticAMD.bin274 if [ -d /usr/lib/firmware/amd-ucode ]; then 275 cat /usr/lib/firmware/amd-ucode/microcode_amd*.bin > $DSTDIR/AuthenticAMD.bin 275 276 fi 276 277 277 if [ -d / lib/firmware/intel-ucode ]; then278 cat / lib/firmware/intel-ucode/* > $DSTDIR/GenuineIntel.bin278 if [ -d /usr/lib/firmware/intel-ucode ]; then 279 cat /usr/lib/firmware/intel-ucode/* > $DSTDIR/GenuineIntel.bin 279 280 fi 280 281 … … 291 292 EOF 292 293 293 chmod 0755 / sbin/mkinitramfs</userinput></screen>294 chmod 0755 /usr/sbin/mkinitramfs</userinput></screen> 294 295 295 296 <screen role="root"><userinput>mkdir -p /usr/share/mkinitramfs && … … 297 298 <literal>#!/bin/sh 298 299 299 PATH=/ bin:/usr/bin:/sbin:/usr/sbin300 PATH=/usr/bin:/usr/sbin 300 301 export PATH 301 302
Note:
See TracChangeset
for help on using the changeset viewer.