Sestava

Skripta samodejnega ponastavljanja Mozille Firefox

Skripta je odvisna od ohranjevalnika zaslona xscreensaver.

touch /usr/bin/inactivity
nano /usr/bin/inactivity
#!/bin/sh
export DISPLAY=":0.0"
xscreensaver-command -watch |
{
while read line; do
if [ -z "$(xscreensaver-command -time | grep 'non-blanked')" ]; then
killall -signal KILL firefox-bin
fi
done
}
chmod 755 /usr/bin/inactivity

Zagon uporabniškega vmesnika

Sledeča skripta se izvede z ukazom startx

touch /home/guest/.xsession
nano /home/guest/.xsession
#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/local/bin
export DISPLAY=":0.0"
rm -fr /home/guest/.mozilla/firefox/kiosk.default/lock
xsetroot -solid steelblue &
xscreensaver &
matchbox-window-manager &
inactivity &
while true ; do
if [ -f /home/guest/.mozilla/firefox/kiosk.default/lock ] ; then
rm -fr /home/guest/.mozilla/firefox/kiosk.default/lock
fi
a=`ps -e | grep matchbox | wc -l`
if [ $a == 0 ]; then
export DISPLAY=":0.0"
matchbox-window-manager &
fi
firefox -fullscreen
sleep 1
done
chmod 400 /home/guest/.xsession
chown guest:users /home/guest/.xsession

V sistem se prijavimo kot guest in preizkusimo, kako se zadeva obnese.

su guest
startx

Strežnik X izklopimo s pomočjo tipk Ctrl-Alt-Bcsp.

Onemogočanje ugašanja strežnika X

V datoteko /etc/X11/xorg.conf se doda sledeče:

Section "ServerFlags"
Option "DontVTSwitch" "True"
Option "DontZap" "True"
Option "DontZoom" "True"
EndSection

Samodejni zagon

touch /etc/init.d/xkiosk
nano /etc/init.d/xkiosk
#!/bin/sh
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/bin/X11:/usr/X11R6/bin
su -c startx guest &
chmod 755 /etc/init.d/xkiosk
ln -s /etc/init.d/xkiosk /etc/rc4.d/S99xkiosk

Samodejno čiščenje

Skripta pobriše datoteke, ki so nastale v mapi uporabnike ter v začasni mapi.

touch /usr/bin/clean
nano /usr/bin/clean
#!/bin/sh
rm -fr /home/guest/*.*
rm -fr /tmp/*.*
rm -fr /tmp/plugtmp*
rm -fr /tmp/Flash*
chmod 755 /usr/bin/clean

Nastavimo skripto tako, da se bo izvedla vsak dan.

touch /etc/cron.daily/cleaning
nano /etc/cron.daily/cleaning
#!/bin/sh
su -c clean guest
chmod 755 /etc/cron.daily/cleaning

> O projektu