Internet kiosk - Linux & Webconverger 5.7

Upute na http://sistemac.carnet.hr/node/514 odnosile su se na inačicu 4.3 Webconvergera. Sada je aktualna inačica 5.7 i dok je ona izašla dogodile su se stanovite promjene. Više nije potrebno dograđivati kernel module za datotečni sustav squashfs, jer ga inačice kernela veće od 2.6.29 nose u sebi. Nesreća je jedino u tome da je to verzija 3.1, a Webconverger koristi još noviju verziju 4.0, koja službeno još nije izašla.

Zato, ako se želi raditi temeljita prilagodba novog Webconvergera, treba sa sourceforgea presnimiti i potom kompilirati izvorni kod razvojnone inačice squashfs alata, s kojim je moguće odpakirati komprimiranu datoteku filesystem.squashfs, izvršiti promjene i ponovo je squashfs alatom nazad zapakirati. No, bez straha, jer nije toliko komplicirano, pošto slijede upute, korak po korak (neke trivijalne naredbe, bit će ispisane samo zato da ih se ne mora tipkati, nego da se mogu udobno kopirati u komandnu liniju):

Na nekom *neprodukcijskom* linux sustavu prvo kao root kreiramo novog korisnika webc:

useradd -m -s /bin/bash webc

Postavite lozinku korisniku webc:

passwd webc

Prijavimo se sustavu kao korisnik webc i sa sourceforge presnimimo datoteku squashfs4.0.tar.gz

wget http://sourceforge.net/projects/squashfs/files/squashfs/squashfs4.0/squashfs4.0.tar.gz/download

Odpakirajmo squashfs4.0.tar.gz

tar xvvf squashfs4.0.tar.gz

Odemo u novonastali direktorij squashfs4.0 i pokrenemo make i nastale izvršne datoteke unsquashfs i mksquashfs kopirajmo u bazni direktorij, te se vratimo u isti:

cd squashfs4.0/squashfs-tools
make
cp unsquashfs mksquashfs ../../
cd ../../

( Ako make ne prođe od prve, eventualno treba dograditi potrebne dev-pakete npr.: zlib1g-devlibssl-dev ili slične.)

Presnimimo i iso datoteku webc-5.7.iso na svoje računalo:

wget http://download.webconverger.org/webc-5.7.iso

Postanimo root, napravimo direktorije, koje ćemo trebati, montirajmo iso datoteku, prekopirajmo sadržaj i ponovo odmontirajmo:

su
mkdir iso fs
mount -o loop webc-5.7.iso iso
cp -Rvp iso/* fs/
umount iso

Dalje radimo kao root. Prvo raspakirajmo komprimiranu filesystem.squashfs datoteku čime nastaje novi direktorij squashfs-root.

./unsquashfs fs/live/filesystem.squashfs

U novonastalom raspakiranom direktoriju napravimo promjene po vlastitom ukusu, recimo da hoćete ukinuti dhcp i za budući web kiosk postaviti statičku IP adresu:

chroot squashfs-root
mount -t proc /proc proc
apt-get remove --purge dhcp3-client dhcp3-common
umount proc
exit

editirajte sada datoteku squashfs-root/etc/resolv.conf i u nju upišite imena DNS poslužitelja npr:

nameserver 161.53.2.70
nameserver 161.53.3.7

Obrišite također sav sadržaj datoteke squashfs-root/etc/network/interfaces i umjesto njega prekopirajte sadržaj te iste datoteke sa glavnog poslužitelja ustanove, tj. nešto kao:

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8) 
auto lo eth0
iface lo inet loopback
iface eth0 inet static
address 161.53.X.X
network 161.53.X.X
netmask 255.255.255.X
gateway 161.53.X.X

X je specifično za vašu poddomenu/mrežu, a pod address je IP adresa budućeg web-kioska.

Nakon ovoga za web kiosk sa statičkom IP adresom treba samo još zapakirati nazad novu filesystem.squashfs datoteku, nakon što uklonimo staru:

rm fs/live/filesystem.squashfs
./mksquashfs squashfs-root fs/live/filesystem.squashfs

Editirajmo još datoteku fs/boot/grub/menu.lst i obrišimo sve osim početka, a pod redak koji počinje s "kernel" upišimo početnu webstranicu kioska i dopišimo locale za hrvatsku tipkovnicu, a varijablu timeout postavimo na 1:

default 0
timeout 1
color cyan/blue white/blue
splashimage /boot/grub/splash.xpm.gz
title Debian GNU/Linux - live
kernel /live/vmlinuz-2.6.30-backports.1-486 boot=live quiet homepage=http://www.carnet.hr/ nonetworking nosudo splash video=vesa:ywrap,mtrr vga=788 nopersistent username=webc hostname=webconverger union=aufs locale=hr
initrd /live/initrd.img-2.6.30-backports.1-486

(pazimo da tekst koji počinje sa "kernel" a završava s "locale=hr" bude u istom redu).

Webkiosk je time prilagođen na statičku IP adresu, treba samo još generirati iso presliku kioska koja neka se zove webconverger.iso:

mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot -boot-load-size 4 -boot-info-table -o webconverger.iso fs

S programom k3b ili iz komandne linije s cdrecord, možemo snimiti iso presliku na CD.

Kuharice: 
Vote: 
5
Vaša ocjena: Nema Average: 5 (1 vote)