Ik heb in mijn /etc/skel een .htaccess file aangemaakt met de bedoeling, dat bij elke nieuwe gebruiker die inlogt, automatisch deze .htaccess file in zijn homefolder staat. Nu is dit niet het geval zie ik net, wat doe ik hier verkeerd?
Likes: 0
Ik heb in mijn /etc/skel een .htaccess file aangemaakt met de bedoeling, dat bij elke nieuwe gebruiker die inlogt, automatisch deze .htaccess file in zijn homefolder staat. Nu is dit niet het geval zie ik net, wat doe ik hier verkeerd?
de /etc/skel wordt alleen gebruikt tijdens het aanmaken van een gebruiker met 'adduser'. Het login process doet daar dus niets mee.
Afhankelijk van je shell moet je dan een stukje script opnemen in je /etc/profile
even uit me hoofd:
Code:if [ ! -e ~/.htaccess ] ; cp -f /etc/skell/.htaccess ~/.htaccess fi
# /etc/profile
# System wide environment and startup programs, for login setup
# Functions and aliases go in /etc/bashrc
pathmunge () {
if ! echo $PATH | /bin/egrep -q "(^|$1($|
" ; then
if [ "$2" = "after" ] ; then
PATH=$PATH:$1
else
PATH=$1:$PATH
fi
fi
}
# htaccess
if [ ! -e ~/.htaccess ] ;
cp -f /etc/skel/.htaccess ~/.htaccess
fi
# ksh workaround
if [ -z "$EUID" -a -x /usr/bin/id ]; then
EUID=`id -u`
UID=`id -ru`
fi
# Path manipulation
if [ "$EUID" = "0" ]; then
pathmunge /sbin
pathmunge /usr/sbin
pathmunge /usr/local/sbin
fi
# No core files by default
ulimit -S -c 0 > /dev/null 2>&1
if [ -x /usr/bin/id ]; then
USER="`id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"
fi
HOSTNAME=`/bin/hostname`
HISTSIZE=1000
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
INPUTRC=/etc/inputrc
fi
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC
for i in /etc/profile.d/*.sh ; do
if [ -r "$i" ]; then
. $i
fi
done
unset i
unset pathmunge
En dan krijg ik de volgende error: Last login: Tue Apr 8 09:35:03 2008 from localhost.localdomain
-sh: /etc/profile: line 19: syntax error near unexpected token `fi'
-sh: /etc/profile: line 19: `fi'
ok merci hij kopieert het .htaccess bestand
enkel leest hij deze nog niet. Ik doe ergens iet fout, ik heb gewoon document root van apache op /home/ gezet zodat alle users aan hun space kunnen. Maar dit doet hij niet hij vind er enkel 2? straks nog wat testen
Weet je toevallig ook hoe je met etc/profile mappen aanmaakt? Bijvoorbeeld jan heeft nu een home/jan folder, en ik wil automatisch 2 mappen laten aanmaken /home/jan/downloads en /home/jan/uploads
Hoe doe ik dit?
mkdir
if [ ! -e ~/download/ ] ; then
mkdir /download/
fi
Zoiets? of
if [ ! -e ~/home/download/ ] ; then
mkdir /home/download/
fi
of?
als je wil testen of de FILE ~/download/ niet bestaat moet je -e gebruiken...
zie 'man test'
Zodus als een gebruiker inlogd, dan word gekeken of de download map al bestaat zoniet word hij gemaakt ofniet?
Kan je tevens ook al rechten meegeven aan die map met het commando mkdir?
ja, mkdir kan dat!
Ik heb hetvolgende gebruikt:
if [ ! -e ~/download/ ] ; then
mkdir /download/
fi
mkdir: kan map `/download/' niet aanmaken: Bestand bestaat al
terwijl als ik ga kijken in de map /home/jan dan bestaat er geen map download?
even goed je code bekijken... vooral welke map je precies probeert aan te maken!
ok bedankt
Trouwens bij de check moet ik daar de / ook weghalen?