Changeset 15 for devel/sshgw/bin/createrootskel
- Timestamp:
- 05/24/07 17:33:42 (5 years ago)
- File:
-
- 1 edited
-
devel/sshgw/bin/createrootskel (modified) (7 diffs)
Legend:
- Unmodified
- Added
- Removed
-
devel/sshgw/bin/createrootskel
r14 r15 1 1 #!/bin/bash 2 # 3 # Create the chroot skeleton env (To be relaunched when changing distro ver e.g. 4 # 5 # $Id$ 6 # 2 7 3 # Create the chroot skeleton env (To be relaunched when changing distro ver e.g. 8 root=/etc/chrootskel 4 9 5 users=""6 10 if [ _"$1" = _"retrofit" ]; then 7 users=`ls -d /home/chroot/*` 11 users="`ls -d /home/chroot/*` $root" 12 elif [ _"$1" != _"" ]; then 13 for i in $*; do 14 users="$users `ls -d /home/chroot/$1`" 15 shift 16 done 17 else 18 users="$root" 8 19 fi 9 20 10 root=/etc/chrootskel11 21 12 22 # Purge the old content and recreate it … … 17 27 18 28 # Adds binaries 19 sbins="/bin/bash /bin/cp /bin/ls /bin/mkdir /bin/mv /bin/rm /bin/rmdir /bin/grep /usr/local/bin/removehost" 29 sbins="/bin/bash /bin/cp /bin/ls /bin/mkdir /bin/mv /bin/rm /bin/rmdir /bin/grep" 30 ubins="/usr/bin/rdesktop /usr/bin/scp /usr/bin/sftp /usr/bin/ssh" 31 xbins="/usr/X11R6/bin/xauth" 32 lbins="/usr/lib/ssh/sftp-server" 33 obins="/usr/local/bin/removehost" 20 34 21 for d in $users $root; do35 for d in $users; do 22 36 echo "Updating chroot env for $d" 23 37 mkdir -p $d/bin 24 cp -a $sbins $ d/bin38 cp -a $sbins $obins $d/bin 25 39 (cd $d/bin ; ln -sf bash sh) 26 40 … … 70 84 71 85 # Users 86 uid=`basename $d` 72 87 73 mkdir -p $d/home/user 74 touch $d/home/user/.bash_history 75 76 cat > $d/home/user/.bash_profile << EOF 77 # .bash_profile 78 # User specific environment and startup programs 79 80 unset USERNAME 81 EOF 82 83 cat > $d/home/user/.bashrc << EOF 84 # .bashrc 85 # User specific aliases and functions 86 EOF 87 88 mkdir -p $d/home/$uid 89 touch $d/home/$uid/.bash_history 88 90 89 91 # Temp … … 94 96 95 97 mkdir -p $d/lib $d/usr/lib $d/usr/bin $d/usr/lib/ssh $d/usr/share/rdesktop/keymaps $d/usr/X11R6/bin $d/usr/X11R6/lib 96 obins="/usr/bin/rdesktop /usr/bin/scp /usr/bin/sftp /usr/bin/ssh" 97 xbins="/usr/X11R6/bin/xauth" 98 lbins="/usr/lib/ssh/sftp-server" 99 cp -a $obins $d/usr/bin 98 cp -a $ubins $d/usr/bin 100 99 (cd $d/usr/bin ; ln -sf ssh slogin) 101 100 cp -a $lbins $d/usr/lib/ssh … … 103 102 cp -a $xbins $d/usr/X11R6/bin 104 103 105 bins="$sbins $ obins $xbins $lbins"104 bins="$sbins $ubins $xbins $lbins $obins" 106 105 107 106 # Librairies … … 114 113 cp -a $i $d/$dir 115 114 done 116 # Rights for libs117 for i in $libs; do118 chmod 644 $d/$i119 done120 115 121 116 # X11R6/lib is not in the default search path for libs => moved to usr/lib … … 127 122 find $d -type d | xargs chmod 755 128 123 for i in $bins; do 129 chmod 755 $d/$i 124 # obins are put under /bin 125 j=`echo $i | sed 's~/usr/local/bin~/bin~'` 126 chmod 755 $d/$j 130 127 done 131 128 chown -R chroot:chroot $d 129 chown -R ${uid}:chroot $d/home/$uid 132 130 chmod 4777 $d/tmp 133 131 done
Note: See TracChangeset
for help on using the changeset viewer.
