ssfs annotate ssfs-sh @ rev 42
ssfh-sh: fix arguments handling
author | Christophe Lincoln <pankso@slitaz.org> |
---|---|
date | Sun Jun 12 16:26:17 2011 +0200 (2011-06-12) |
parents | 6abd5dd7659d |
children | ae4fbb9cbaf5 |
rev | line source |
---|---|
pankso@29 | 1 #!/bin/sh |
pankso@29 | 2 # |
pankso@29 | 3 # Ssfs users SHell - Chroot user into the virtual disk on login. This tool must |
paul@33 | 4 # be installed on the server and in the vdisk chroot, it is executed when logging |
paul@33 | 5 # in and when chrooting. |
pankso@29 | 6 # |
pankso@40 | 7 # Copyright (C) SliTaz GNU/Linux - BSD License |
pankso@40 | 8 # Author: Christophe Lincoln <pankso@slitaz.org> |
pankso@40 | 9 # |
pankso@29 | 10 |
paul@33 | 11 # Ssfs server config doesn't exist in chroot. |
pankso@29 | 12 if [ -f /etc/ssfs/ssfs-server.conf ]; then |
pankso@29 | 13 . /etc/ssfs/ssfs-server.conf |
pankso@29 | 14 root=$SSFS_CHROOT |
pankso@29 | 15 # Make sure it's a valid Ssfs user. |
pankso@29 | 16 [ -d "$root/home/$USER" ] || exit 0 |
pankso@41 | 17 exec chroot $root /bin/ssfs-sh $@ |
pankso@29 | 18 else |
pankso@29 | 19 # Chroot will drop user into /, so set new HOME and cd. Set also |
paul@33 | 20 # some env variables but don't source any profile. |
pankso@42 | 21 cmd=$(echo $@ | sed s'/-c //') && clear |
pankso@38 | 22 echo -e "\n\033[1m Welcome to the Ssfs SHell $USER\033[0m\n" |
pankso@39 | 23 PS1='\u@\h\e[0m:\e[1;34m\w\e[0m\$ ' |
pankso@29 | 24 HOME=/home/$USER |
pankso@29 | 25 SYNC=$HOME/Sync |
pankso@29 | 26 SHELL=/bin/sh |
pankso@42 | 27 export PS1 HOME SYNC SHELL |
pankso@42 | 28 cd $HOME |
pankso@42 | 29 [ "$cmd" ] || exec /bin/sh |
pankso@42 | 30 exec /bin/sh -c "$cmd" |
pankso@29 | 31 fi |