Ik heb vandaag STAC compressie over isdn aan de praat gekregen onder Linux. Hier een kleine howto.
Voor Stac compressie heb je de nieuwste Linux 2.2 nodig.
Ik ga er vanuit dat je isdn al draaiende hebt onder Linux, en dat je weet hoe je een kernel moet compileren. Zo niet, breng dan een bezoekje aan www.wurtel.demon.nl . Wil je naar aanleiding van deze tekst je kernel upgraden van 2.0.x naar 2.2.x, ga dan naar LinuxHQ.
Voor Stac compressie heb je de nieuwste isdn4kernel en isdn4k-utils
nodig:
isdn4k.tar.gz
isdn4k-utils.tar.gz
Pak isdn.tar.gz uit, en zet de drivers in je kernel source directory:
cd isdn ; ./std2kern -d
configureer je kernel:
cd /usr/src/linux ; make menuconfig
Je kunt ook voor "make oldconfig" kiezen, als je kernel al volledig
geconfigureerd is. Je hoeft dan alleen te configureren wat er nieuw is.
Compileer de kernel net als anders.
Pak isdn4k-utils uit, en configureer hem:
cd isdn44k-utils ; make config
Daarna compileren met: make
Bij mij ging het compileren van isdnlog fout, maar aangezien dat niet een
kritische applicatie is, heb ik die gewoon uitgezet (make config -> tools for
monitoring activity -> isdnlog).
Daarna installeer je de boel met "make install". Let er wel op dat de locaties van isdnctrl, ipppd, enz. kunnen veranderen! Pas je scripts hierop aan. Wis eventueel de oude versies (wel even backuppen, natuurlijk).
Daarna moet je de compressie module handmatig compileren:
cd ipppcomp
gcc -O2 -I/usr/src/linux/include -I/usr/src/linux/include/linux -D__KERNEL__ -DMODULE -c isdn_lzscomp.c
cp isdn_lzscomp.o /lib/modules/2.2.3/misc/
Pas dat laatste commando aan op je eigen kernel versie.
Je kunt de compressiemodule laden met:
modprobe isdn_lzscomp comp=7 debug=1
Met de comp=x parameter kun je de sterkte van de compressie aanpassen, waarbij 0=geen compressie en 9=maximale compressie. Een compressie van 9 moet volgens de README processorkracht vreten, 7 is de veilige default.
Ikzelf laad de module direct na de isdn modules, voordat ik de boel configureer met isdnctrl. Ik weet niet of dat nodig is, maar het werkt in elk geval prima.
Ik heb verder geen scripts aan hoeven passen, op de locaties van isdnctrl en ipppd na. Alle commando's zijn hetzelfde gebleven. Let op dat de oude ipppd nog steeds werkt, maar je krijgt dan geen compressie!
Nu nog even een reboot, en dan moet het werken. Houd je /var/log/messages in de gaten voor meldingen van de isdn drivers.
Erik Hensema (erik@hensema.net)