On Sam, 19 Jul 2003, Stefan Baehre wrote:
> Ich m�chte in einem kleinen Heim-LAN die Datenhaltung zentrieren,
> also ein Fileserver, die restlichen Rechner diskless Clients. Das
Wir haben das auf unserem Uni Institut mit ca 15 Rechnern so laufen.
> Welches ist der richtige Weg, auf so einem System Software zu
> installieren? Tut man es auf einem Client, werden nicht zwingend alle
> Dateien in das Master-Image installiert, z.B. der /etc und /var Zweig
Wir haben einen Master DC, der die Dateisysteme per NFS rw bekommt, die
clients sind alle ro von /.
Jeder client DC hat ein eigenes /etc und /var, dass wird aber jedesmal
beim booten auf dem server mit rsync abgeglichen.
Ablauf (ich verwende *nicht* das diskless Packerl, sondern habe ein
einziges boot script selber geschreiben, dass vor allen anderen
anl�uft):
if [ ! `hostname` = masterdc ] ; then
# ethernet ist vom netboot sschon laufend., noch lo starten
ifconfig lo 127.0.0.1 up
# das ist ein ssh key der *nur* ein Programm ausf�hren kann,
# n�mlich das build-dc-etc (siehe unten) script, in dem die
# clients /etc und /var
# mit den des master dc abgeglichen werden
ssh -i /root/.ssh/dcstart.id_dsa mein.nfs.und.alles.server
mount -n /proc
/etc/init.d/portmap start
echo -n "Mounting local etc directory under /etc:"
mount -n -o nolock -t nfs ip-adrr-des-srver:/usr/dc/debian-dc/`hostname`/etc
/etc
echo " done"
echo -n "Mounting local var directory under /var:"
mount -o nolock -t nfs ip-addr-des-server:/usr/dc/debian-dc/`hostname`/var /var
echo " done"
echo -n "Fixing /etc/mtab: "
cat /proc/mounts > /etc/mtab
echo "done"
exit 0
fi
Das script build-dc-etc schaut so aus:
set $SSH_CLIENT
IP=$1
echo "------------> IP=$IP"
cd /usr/dc/debian-dc
if [ ! -d $IP ] ; then
echo "`basename $0`: The IPADDR: $IP does not exist in /usr/dc/debian-dc/"
exit 1
fi
echo "Syncing /etc files ..."
rsync -av root/etc/ $IP/etc 2>&1
echo "Syncing /var files ..."
rsync -av --exclude='tmp/*' --exclude='lib/logcheck/*' --delete root/var/ $IP/var 2>&1
cd $IP
#
# hier werden die DC spezifischen Konfigurationsfiles hin�bergespielt:
#
echo "Copying changed /etc files ..."
cp -a etc-changefiles/* etc/ 2>&1
#
# Wir generieren auch noch ein eigenes XF86Config file, da wir ziemlich
# verschiedene Konfigurationen haben
#
echo "Generating XF86Config-4 file ..."
. etc/X11/X-spec.txt
sed -e "s/%%DEVICE%%/$DEVICE/g;s/%%MONITOR%%/$MONITOR/g;s/%%LONG%%/$LONG/g"
etc/X11/XF86Config-4.generic > etc/X11/XF86Config-4
echo "Local DC setup complete."
Das wars. Obiges script in den rcS.d start Prozess eingeh�ngt, den ssh
key mit den entsprechenden options generieren, und alles l�uft.
Software wird entweder auf dem amster dc installiert, oder mit
chroot /usr/dc/debian-dc
beim n�chsten boot ist wieder alles syncron auf den anderen DCs.
Wenn du genauere Anleitungen brauchst, kann ich dir sicher helfen!
Herzliche Gr��e
Norbert
-------------------------------------------------------------------------------
Norbert Preining <preining AT logic DOT at> Technische Universit�t Wien
gpg DSA: 0x09C5B094 fp: 14DF 2E6C 0307 BE6D AD76 A9C0 D2BF 4AA3 09C5 B094
-------------------------------------------------------------------------------
DUNCRAGGON (n.)
The name of Charles Bronson's retirement cottage.
--- Douglas Adams, The Meaning of Liff
--
Haeufig gestellte Fragen und Antworten (FAQ):
http://www.de.debian.org/debian-user-german-FAQ/
Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)