Netværksopsætning på mit job, er ikke optimalt i forhold til en bærbar computer. Hjemmedrevet er monteret med NFS, hvilket der i og for sig ikke er noget galt i. Tilgengæld er NIS brugergodkendelsen lidt af en ufleksibel størrelse, hvis maskinen ikke er en fast klient. Når vi tager vores maskiner af vores netværk så tager de en evighed om at starte op, og vi er nødt til at have en ekstra profil at logge ind med. Det sidste er ikke et problem. Hvad der tilgengæld er et problem er, at brugerne er nødt til at have lidt kendskab til linux administration, og visse admin rettigheder, for at kunne lukke NIS ned. NIS har en kedelige tendens til at sløve alt net aktitivetet, hvis den ikke finder sin YP server.
Der kommer quickswitch ind. Quickswitch gør, at du kan vælge mellem netværksprofiler. Du kan aktivere services og du kan have flere hosts filer. F.eks. har jeg en
Kode: Vælg alt
hosts.home
Kode: Vælg alt
hosts.work
Installationen er ret nemt. Download quickswitch fra hjemmesiden. Udpak til /usr/local/
> cd /usr/local
> su -
(Type root password here)
> tar -zxvf quickswitch-0.1.2-linux-intel.tar.gz
Jeg omdøber diret fra quickswitch* til almindelige quickswitch for nemheds skyld
mv quickswitch-0.1.2-linux-intel quickswicth
Dernæst er det bare at konfigurer dine profiler i /etc/switchto.conf
Mine profiler ser således ud
# Profiles
# --------------------------------------------------------------
[work]
description=server.work.dk
adress=dhcp
nisdomainname=server.work.dk
essid=WorkHotSpot
key=work key
usehosts=/etc/hosts.work
execpost=/etc/init.d/nis start
[home]
description=Hjemme
adress=dhcp
essid=Wrecked
key=min wlan key
usehosts=/etc/hosts.home
Der er lige et par ting mere der skal gøres. I switchto.conf er der et punkt omkring dhcp. Der skal man skifte dhcpd ud med dhclient, da det er den dhcp klient Ubuntu bruger.
# DHCP command (default)
#
# Add a -R to not overwrite /etc/resolv.conf. Add a
# '-h hostname' to specify a hostname (Some ISPs need this).
dhcpconfig=/sbin/dhclient
#
# Kill dhcpcd client.
dhcpkill=/sbin/dhclient stop
Bemærk at dhclient stop ikke er standard, og virker vist hellere ikke så satans godt. Men jeg kan ikke helt se hvorfor man skal slå dhcpd ned bagefter. Det skal man vist ikke med dhclient, så jeg har bare skrevet dhclient stop. Den brokker sig, men jeg får IP og ting virker.
Hvis du kører NIS, så skal du fjerne NIS fra opstart. Det gøres med
update-rc.d -f nis remove
Når du så starter op med din profil, hvor du har brug for NIS, så hus at tilføke
Kode: Vælg alt
execpost=/etc/init.d/nis start
Når du så vil skifte profil, så skriver du switchto "profil navn" i din konsol. Switchto.conf er ganske velforklaret, og der er også masser af eksempler på hvordan man kan konfigurere sine profiler.
Det smarte er, hvilket især er meget smart når man har NIS, at man kan vælge fra opstart, hvilken profil man skal bruge. For starter NIS ikke op fra starten af, så kan du jo ikke logge ind .
Derfor skal vi lige have fat i grub's config fil. I ubuntu er det filen /boot/grub/menu.lst. Der kan man tilføje hvilken profil man vil starte op med, som et kerne parameter.
Min ser således ud
## ## End Default Options ##
title Ubuntu 7.10, kernel 2.6.22-14-generic WORK
root (hd0,2)
kernel /boot/vmlinuz-2.6.22-14-generic SWITCHTO=work root=UUID=1532a760-2eb1-462e-a973-cc4729c194ba ro quiet splash
initrd /boot/initrd.img-2.6.22-14-generic
quiet
title Ubuntu 7.10, kernel 2.6.22-14-generic HOME
root (hd0,2)
kernel /boot/vmlinuz-2.6.22-14-generic SWITCHTO=home root=UUID=1532a760-2eb1-462e-a973-cc4729c194ba ro quiet splash
initrd /boot/initrd.img-2.6.22-14-generic
quiet
title Ubuntu 7.10, kernel 2.6.22-14-generic (recovery mode)
root (hd0,2)
kernel /boot/vmlinuz-2.6.22-14-generic root=UUID=1532a760-2eb1-462e-a973-cc4729c194ba ro single
initrd /boot/initrd.img-2.6.22-14-generic
Det man skal er, at skrive SWITCHTO=profil-navn lige efter hvilken kerne man vælger at boot på
kernel /boot/vmlinuz-2.6.22-14-generic SWITCHTO=work root=UUID=1532a760-2eb1-462e-a973-cc4729c194ba ro quiet splash
Sidst, men ikke mindst, skal man tilføje følgende linje til /etc/rc.local
/usr/bin/switchto -s
så er du kørende til at kunne skifte fra netværk til netværk. Det er ret praktisk, og noget jeg virkeligt har savnet