1 |
#!/bin/bash |
#!/bin/bash |
2 |
# $Header: /home/cvsd/magellan-cvs/magellan-src/mkinitrd/mkinitrd-livecd.sh,v 1.2 2006-02-23 15:55:08 niro Exp $ |
# $Header: /home/cvsd/magellan-cvs/magellan-src/mkinitrd/mkinitrd-livecd.sh,v 1.7 2007-05-19 14:30:48 niro Exp $ |
3 |
|
|
4 |
# mkinitrd-livecd |
# mkinitrd-livecd |
5 |
# |
# |
45 |
MODULES_USB="/usr/lib/mkinitrd/modules.usb" |
MODULES_USB="/usr/lib/mkinitrd/modules.usb" |
46 |
MODULES_SCSI="/usr/lib/mkinitrd/modules.scsi" |
MODULES_SCSI="/usr/lib/mkinitrd/modules.scsi" |
47 |
MODULES_SATA="/usr/lib/mkinitrd/modules.sata" |
MODULES_SATA="/usr/lib/mkinitrd/modules.sata" |
48 |
|
MODULES_PATA="/usr/lib/mkinitrd/modules.pata" |
49 |
|
MAKEDEV="/usr/lib/mkinitrd/MAKEDEV.sh" |
50 |
|
|
51 |
compress=1 |
compress=1 |
52 |
allowmissing="" |
allowmissing="" |
284 |
|
|
285 |
|
|
286 |
# create basic filesystem layout |
# create basic filesystem layout |
287 |
install -d ${DEST}/{bin,dev,etc,lib,loopfs,proc,sys,sysroot} || die |
install -d ${DEST}/{bin,dev,etc,lib,loopfs,proc,sbin,sys,sysroot} || die |
288 |
|
|
289 |
# install busybox |
# install busybox |
290 |
echo "$(which busybox.mkinitrd)" |
echo "$(which busybox.mkinitrd)" |
291 |
install -m0755 $(which busybox.mkinitrd) ${DEST}/bin/busybox || die |
install -m0755 $(which busybox.mkinitrd) ${DEST}/bin/busybox || die |
292 |
for i in '[' ash basename cat cut chroot clear cp dirname echo env false find \ |
for i in '[' ash basename cat cut clear cp dirname echo env false find \ |
293 |
grep gunzip gzip init ln ls loadkmap losetup mkdir mknod modprobe more mount mv \ |
grep gunzip gzip ln ls loadkmap mkdir mknod more mount mv \ |
294 |
pivot_root ps pwd rm rmdir sh sleep test touch true umount uname \ |
ps pwd rm rmdir sh sleep test touch true umount uname \ |
295 |
xargs yes chmod chown |
xargs yes chmod chown |
296 |
do |
do |
297 |
|
# use soft links from now on; |
298 |
|
# hardlinks in initramfs apears to be broken on newer kernels |
299 |
|
# -> "request module: runaway loop modprobe binfmt-0000" |
300 |
|
# see: http://www.gossamer-threads.com/lists/linux/kernel/728042 |
301 |
|
ln -s /bin/busybox ${DEST}/bin/${i} || die "${i}" |
302 |
|
done |
303 |
|
|
304 |
|
# sbin related |
305 |
|
for i in chroot init losetup modprobe pivot_root |
306 |
|
do |
307 |
# static links |
# static links |
308 |
ln ${DEST}/bin/busybox ${DEST}/bin/${i} || die "${i}" |
ln ${DEST}/bin/busybox ${DEST}/sbin/${i} || die "${i}" |
309 |
done |
done |
310 |
|
|
311 |
# install run-init |
# install run-init |
312 |
echo "$(which run-init.mkinitrd)" |
echo "$(which run-init.mkinitrd)" |
313 |
install -m0755 $(which run-init.mkinitrd) ${DEST}/bin/run-init || die |
install -m0755 $(which run-init.mkinitrd) ${DEST}/sbin/run-init || die |
314 |
|
|
315 |
# install insmod.static |
# install insmod.static |
316 |
echo "$(which insmod.static)" |
echo "$(which insmod.static)" |
317 |
install -m0755 $(which insmod.static) ${DEST}/bin/insmod || die |
install -m0755 $(which insmod.static) ${DEST}/sbin/insmod || die |
|
|
|
|
# install udev |
|
|
cp -a /etc/udev ${DEST}/etc || die |
|
|
install -m0755 /sbin/udev.static ${DEST}/bin/udev || die |
|
|
install -m0755 /sbin/udevd.static ${DEST}/bin/udevd || die |
|
|
install -m0755 /sbin/udevstart.static ${DEST}/bin/udevstart || die |
|
318 |
|
|
319 |
# create some needed device nodes |
# create some needed device nodes |
320 |
mkdir ${DEST}/dev/mapper || die |
install -o root -g root -m0754 ${MAKEDEV} ${DEST}/dev/MAKEDEV || die |
321 |
mknod ${DEST}/dev/console c 5 1 || die |
( cd ${DEST}/dev; ./MAKEDEV -v generic-nopty) |
|
mknod ${DEST}/dev/null c 1 3 || die |
|
|
mknod ${DEST}/dev/ram b 1 1 || die |
|
|
mknod ${DEST}/dev/rtc c 10 135 || die |
|
|
mknod ${DEST}/dev/systty c 4 0 || die |
|
|
mknod ${DEST}/dev/tty c 5 0 || die |
|
|
mknod ${DEST}/dev/zero c 1 5 || die |
|
|
for ((i=0; i < 13; i++)) |
|
|
do |
|
|
mknod ${DEST}/dev/tty${i} c 4 ${i} || die "tty${i}" |
|
|
done |
|
|
for ((i=64; i < 68; i++)) |
|
|
do |
|
|
mknod ${DEST}/dev/ttyS$((${i} - 64)) c 4 ${i} || die "ttyS$((${i} - 64))" |
|
|
done |
|
322 |
|
|
323 |
## install kernel modules ## |
## install kernel modules ## |
324 |
# generic needed |
# generic needed |
333 |
# sata |
# sata |
334 |
install_kernel_modules "${MODULES_SATA}" |
install_kernel_modules "${MODULES_SATA}" |
335 |
|
|
336 |
|
# pata |
337 |
|
install_kernel_modules "${MODULES_PATA}" |
338 |
|
|
339 |
# show all modules |
# show all modules |
340 |
for i in ${ALL_MODULES} |
for i in ${ALL_MODULES} |
341 |
do |
do |