RalfFriedl
IPPF-Urgestein
- Mitglied seit
- 22 Apr 2007
- Beiträge
- 12,343
- Punkte für Reaktionen
- 1
- Punkte
- 0
udosw schrieb:Dafür habe ich mir ein kleines Script geschrieben, was die Dateien verschiebt, die notwendigen symlinks setzt und den Step 3 aufruft
verzeichnis_fuer_binaries_libs='...'
# Liste der auszulagernden Dateien
originaldatei_mit_rel_pfad pfad_neu attribute
Das ist eine interessante Idee, aber nur recht eingeschränkt nutzbar. Um beliebige Manipulationen an der Stelle zu erlauben, könnte man auch gleich ein Shell Skript aufrufen, in dem der Anwender beliebige Änderungen ausführen kann.hermann72pb schrieb:Vorschlag wäre:
"make" schaut vor dem STEP3 im Hauptverzeichnis nach einer bestimmten config-Datei, namens (als Beispiel) rmbinlib.conf. ...
Das alles ist ja sooo coool , was sich in den letzten Monaten noch so getan hat. Ist irgendwie genau das, was ich mit meinem NAS (auf dem auch schon längst nicht mehr die Bufallo-Firmware, sondern Gentoo läuft) machen will, einfach in der Fritzbox ein über NFS gemountetes System betreiben, da kann wirklich viel experimentiert werden...kriegaex schrieb:Für NFS-Root brauchst Du die üblichen drei Kernelmodule (nfs, sunrpc, lockd) und insbesondere das entsprechende Init-Skript (und das ist etwas tricky), außerdem, warum auch immer, Replace Kernel, weil es, je nach Box, entweder Kernel Oops oder Kernel Panic beim NFS-Mount gibt (getestet auf W701V und 7170).
Ich habe übrigens vor, aus einer Rohversion eines weiteren Skripts von Oliver auch ein Paket für ein USB-Root zu machen.
Oliver ist noch einen Schritt weiter, denn er bootet auch schon den Kernel von extern via initramfs (und danach dann NFS- oder USB-Root), so daß die Partitionen auf der Box selbst gar nicht mehr benutzt werden, also auch kein pivot_root usw. Kernel und Dateisystem auf der Box sind dann nur noch Fallbacks, falls z.B. das NFS-Share nicht da oder der USB-Datenträger ausgesteckt ist. Auch dafür könnte man ein Paket basteln, aber das ist dann doch eher was für Entwickler, die nicht nur mal eben schnell am Dateisystem was ändern wollen - dafür reichen NFS/USB-Roots aus - sondern auch einen Kernel tauschen wollen, ohne neu flashen zu müssen.
#!/bin/bash
MOD=/usr/src/ds26-15.2/build/modified/filesystem
STD=/usr/src/ds26-15.2/KLEIN/modified/filesystem
EXT=/fbf
cd $MOD
for FILE in $(find -type f -not -path '*etc*' -size +1k -printf "%P\n"); do
if ! [ -e $STD/$FILE ]
then
DIR=$(dirname $FILE)
sudo mkdir -p $EXT/$DIR
sudo cp -f $MOD/$FILE $EXT/$FILE
rm -f $MOD/$FILE
ln -fs /var$EXT/$FILE $FILE
fi
done
# Softlinks
cd $MOD/usr/lib
ln -fs /var/fbf/usr/lib/asterisk
cd $MOD/etc
ln -fs /var/fbf/etc/asterisk
cd /usr/src/ds26-15.2
cd /var/mod
rmdir bin
ln -s /var/fbf/mod/bin
rmdir lib
ln -s /var/fbf/mod/lib
rmdir sbin
ln -s /var/fbf/mod/sbin