參考資訊:
http://qole.org/files/debian-m5-v3e.img.ext2.lzma
login
#!/bin/sh
CHMODE=$1
CHUSER=$2
CHROOT=`dirname $0`
_usage(){
echo "Usage: login [cli|lxde|xfce4] [root|user]"
}
_mount(){
sudo mount -o bind /sys "$CHROOT/sys"
sudo mount -o bind /proc "$CHROOT/proc"
sudo mount -o bind /dev "$CHROOT/dev"
sudo mount -t devpts none "$CHROOT/dev/pts"
sudo mount -o bind /dev/shm "$CHROOT/dev/shm"
sudo mount -o bind /var/tmp "$CHROOT/var/tmp"
sudo mount -o bind /var/run/pulse "$CHROOT/var/run/pulse"
sudo mount -o bind /var/run/dbus "$CHROOT/var/run/dbus"
sudo mount -o bind /var/lib/dbus "$CHROOT/var/lib/dbus"
sudo mount /dev/mmcblk0p1 "$CHROOT/home/user/MyDocs"
}
_umount(){
sudo umount "$CHROOT/var/lib/dbus"
sudo umount "$CHROOT/var/run/dbus"
sudo umount "$CHROOT/var/run/pulse"
sudo umount "$CHROOT/var/tmp"
sudo umount "$CHROOT/dev/shm"
sudo umount "$CHROOT/dev/pts"
sudo umount "$CHROOT/dev" &> /dev/null
sudo mount -o bind /dev "$CHROOT/dev"
sudo umount "$CHROOT/dev"
sudo umount "$CHROOT/proc"
sudo umount "$CHROOT/sys"
sudo umount "$CHROOT/home/user/MyDocs"
}
if [ `whoami` == "root" ] ; then
echo "Run me as user"
exit 1
fi
if [ "$CHMODE" != "cli" ] && [ "$CHMODE" != "lxde" ] && [ "$CHMODE" != "xfce4" ] ; then
_usage
exit 2
fi
if [ "$CHUSER" != "root" ] && [ "$CHUSER" != "user" ] ; then
_usage
exit
fi
_umount &> /dev/null
_mount
export GTK_MODULES=libgtkstylus.so
if [ "x$DISPLAY" = x ] ; then
export DISPLAY=:0.0
fi
if [ "x$GTK_MODULES" = x ] ; then
export GTK_MODULES=libgtkstylus.so
fi
if [ "$CHMODE" = "cli" ] ; then
sudo chroot $CHROOT su - "$CHUSER"
_umount
exit 0
fi
if [ "$CHMODE" = "lxde" ] ; then
if [ ! -f "$CHROOT/usr/bin/startlxde1" ] ; then
echo "Not found LXDE installed"
exit 4
fi
fi
if [ "$CHMODE" = "xfce4" ] ; then
if [ ! -f "$CHROOT/usr/bin/startxfce41" ] ; then
echo "Not found XFCE4 installed"
exit 4
fi
fi
export DISPLAY=:0
sudo chroot $CHROOT su - "$CHUSER" -c 'echo "chroot is now open"'
sudo chroot $CHROOT su - "$CHUSER" -c '/usr/bin/Xephyr :1 -screen 800x480 -br -ac' &
while [ "x$PARWIN" = "x" ] ; do
export PARWIN=`wmctrl -l | grep -i "N/A Xephyr" | awk '{print $1}'`
done
DISPLAY=:1 ; sudo chroot $CHROOT su - "$CHUSER" -c "habak -mf /usr/share/fonts/truetype/DroidSans-Bold.ttf -ht 'Welcome to Debian5'"
DISPLAY=:0 ; sudo wmctrl -i -r $PARWIN -T 'Debian5'
sudo wmctrl -i -r $PARWIN -b toggle,fullscreen
zenity --display=:0 --info --title="Information" --text="Welcome to Debian5. This window is needed to gain keyboard focus in LXDE." &
while [ "x$TWOWIN" = "x" ] ; do
export TWOWIN=`wmctrl -l | grep -i Information | awk '{print $1}'`
done
sudo chroot $CHROOT su root -c "/sbin/qobi-wmhint-fix $PARWIN"
sudo chroot $CHROOT su "$CHUSER" -c "/usr/bin/xbindkeys"
if [ "$CHMODE" = "xfce4" ] ; then
sudo chroot $CHROOT su - "$CHUSER" -c "/usr/bin/startxfce41"
else
sudo chroot $CHROOT su - "$CHUSER" -c "/usr/bin/startlxde1"
fi
sudo killall Xephyr
export DISPLAY=:0
_umount
exit 0
/etc/apt/sources.list
deb http://archive.debian.org/debian lenny main contrib non-free deb http://archive.debian.org/debian-backports lenny-backports main contrib non-free deb http://http.us.debian.org/debian squeeze main contrib non-free deb http://archive.debian.org/debian-security lenny/updates main contrib non-free deb http://security.us.debian.org/ squeeze/updates main contrib non-free deb ftp://ftp.deb-multimedia.org lenny main deb http://www.deb-multimedia.org squeeze main deb-src http://archive.debian.org/debian lenny main contrib non-free deb-src http://http.us.debian.org/debian squeeze main contrib non-free
/home/user/.xbindkeysrc
"wmctrl -r :ACTIVE: -b toggle,fullscreen"
m:0x81 + c:33
"xdotool click 3"
Shift + Right
"xdotool click 1"
Shift + Left
"xdotool click 4"
Shift + Up
"xdotool click 5"
Shift + Down
"xdotool key Tab"
Control + Up
"xdotool mousemove_relative 50 0"
Control + Right
"xdotool mousemove_relative -- -50 0"
Control + Left
#"xdotool mousemove_relative 0 -50"
# Control + Up
#"xdotool mousemove_relative 0 50"
# Control + Down
CLI
$ sudo sh login cli user

LXDE
$ sudo sh login lxde user

由於LXDE是屬於另一個Display,一般情況下是無法取得鍵盤的控制權,因此可以透過Zenity視窗,讓使用者點選按鈕,藉此方式取得鍵盤控制權













XFCE4
$ sudo sh login xfce4 user

