wok-next view slitaz-loram-cdrom/stuff/loram.rootfs @ rev 850

Slitaz-loram-cdrom: fix squashfs case
author Pascal Bellard <pascal.bellard@slitaz.org>
date Tue May 20 22:11:39 2008 +0000 (2008-05-20)
parents d140ad412816
children 5f88af4f7f75
line source
1 echo "$(du -hs /usr | cut -f1) were used by /usr"
2 for ii in /sbin /lib /bin; do
3 mkdir -p ./usr/.moved$ii
4 for j in e2fsprogs pcmciautils cpio syslinux-extra isapnptools ncurses \
5 libcap; do
6 for k in $(grep -s ^$ii /var/lib/tazpkg/installed/$j/files.list) ; do
7 [ -f .$k ] || continue
8 mv .$k ./usr/.moved$k
9 ln -s /usr/.moved$k .$k
10 done
11 done
12 done
13 k="$(ls /lib/lib[rp]*.so)"
14 [ -x /bin/funionfs ] && k="$(ls /lib/libresolv*.so)"
15 for ii in /var/lib/tazpkg/installed /lib/modules/*/kernel/drivers/net \
16 /lib/modules/*/kernel/sound /sbin/depmod /sbin/modinfo /bin/lsmod \
17 /lib/libns*.so $k; do
18 [ -L .$ii ] && continue
19 j=$(dirname /usr/.moved$ii)
20 mkdir -p .$j
21 mv .$ii .$j
22 ln -s /usr/.moved$ii .$ii
23 done
24 echo "$(du -hs ./usr/.moved | cut -f1) have been moved into /usr"
25 usr=usr
26 if [ -x bin/funionfs -o -x usr/bin/mkcromfs ]; then
27 usr=.usr.ro
28 mkdir .usr.ro .usr.rw
29 ln -s /.usr.ro/lib/$(cd usr/lib ; ls libfuse.so.2.*) lib/libfuse.so.2
30 fi
31 if [ -x usr/bin/mkcromfs ]; then
32 usr/bin/mkcromfs -qq -f 262144 -b 16384 usr ../rootcd/usr.cromfs
33 rm -rf usr
34 mkdir usr
35 for ii in unmkcromfs cromfs-driver ; do
36 mv bin/$ii ../rootcd
37 ln -s /cdrom/$ii bin/$ii
38 done
39 elif [ -x usr/sbin/mksquashfs ]; then
40 usr/sbin/mksquashfs usr ../rootcd/usr.sqfs
41 rm -rf usr
42 mkdir usr
43 else
44 mv usr ../rootcd
45 [ "$usr" = "usr" ] || mv $usr usr
46 ln -s /cdrom/usr $usr
47 fi
48 if [ -d ../rootcd/usr/lib ]; then
49 for ii in *; do
50 case "$ii" in
51 usr|boot) continue;;
52 mnt|media|sys|proc|cdrom) mkdir ../rootcd/$ii;;
53 *) cp -a $ii ../rootcd/$ii;;
54 esac
55 done
56 for ii in keymap.conf locale.conf resolv.conf TZ motd; do
57 ln -s /tmp/$ii ../rootcd/etc
58 done
59 for ii in log run lock; do
60 mv ../rootcd/var/$ii ../rootcd/var/$ii.ORG
61 ln -s /tmp/$ii ../rootcd/var
62 done
63 mv ../rootcd/root ../rootcd/root.ORG
64 ln -s /tmp ../rootcd/root
65 ln -s / ../rootcd/media/cdrom
66 mkdir ../rootcd/mnt/target
67 sed -i 's/CLEAN_UP_SYSTEM="yes"/CLEAN_UP_SYSTEM="no"/' ../rootcd/etc/rcS.conf
68 sed -i 's/RUN_DAEMONS=.*/RUN_DAEMONS=""/' ../rootcd/etc/rcS.conf
69 for ii in ../rootcd/boot/isolinux/*.cfg; do
70 cat $ii | awk '{ print } /append/ { printf "label loram\n\tkernel /boot/bzImage\n\tappend ro sound=noconf screen=text %s %s %s\n",$5,$6,$7 }' > $ii.tmp
71 mv -f $ii.tmp $ii
72 done
73 cat >> ../rootcd/boot/isolinux/enopts.txt <<EOT
74 With few RAM, you can use loram entry with the cdrom device; example:
75 boot: loram root=/dev/hdc
76 EOT
77 cat >> ../rootcd/boot/isolinux/options.txt <<EOT
78 Avec peu de RAM, utilisez l'entrée loram en précisant le cdrom, exemple:
79 boot: loram root=/dev/hdc
80 EOT
81 fi
82 for ii in bin/vcsa2txt bin/awk bin/script bin/cut bin/readlink bin/du bin/free; do
83 ln -s busybox $ii
84 done
85 mkdir cdrom
86 COMPRESSION="gzip"