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

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