Veja o artigo Linux Laptop-HOWTO, e especialmente o capítulo Docking Station / Replicador de portas , onde é descrito um script que detecta o estado de encaixe do laptop.
A idéia básica é examinar / proc para dispositivos que estão disponíveis somente quando no estado encaixado.
No script abaixo, se o laptop estiver na docking station, haverá 4 slots PCMCIA disponíveis, enquanto se for autônomo, apenas 2 slots estarão disponíveis:
# check, if Laptop is in docking-station (4 PCMCIA slots available)
# or if it is standalone (2 slots available)
# Start after cardmgr has started
#
# Friedhelm Kueck mailto:[email protected]
# 08-Sep-1998
#
# Find No. of Sockets
SOCKETS='tail -1 /var/run/stab | cut -d ":" -f 1'
case "$SOCKETS" in
"Socket 3")
echo Laptop is in Dockingstation ...
echo Disabeling internal LCD Display for X11
echo
cp /etc/XF86Config_extern /etc/XF86Config
#
# Setup of PCMCIA Network Interface after start of cardmge
#
echo
echo "Setting up eth0 for use at Network ..."
echo
/sbin/ifconfig eth0 10.1.9.5 netmask 255.255.0.0 broadcast 10.1.255.255
/sbin/route add -net 10.1.0.0 gw 10.1.9.5
/sbin/route add default gw 10.1.10.1
;;
"Socket 1")
echo Laptop is standalone
echo Disabling external Monitor for X11
cp /etc/XF86Config_intern /etc/XF86Config
echo
echo Network device NOT setup
;;
esac