← Back to team overview

sslug-teknik team mailing list archive

Re: Et lille script til test

 

Hej Thomas,
  Hvad ønsker du hjælp til ?
  Jeg tror kraftigt at du skal koncentere dig om at få
scriptet til at virke korrekt, som det første.

  Jeg vil prøve at få tid i morgen til at sende en liste over
en del åbenlyse fejl.

Mvh
Martin

On 13 April 2011 17:49, Thomas Rosendal Jensen <tarj1974@xxxxxxxxxxx> wrote:
> Her er så et spæd forsøg på at lave følgende:
>
> Jeg har brug for et script til at opsætte hver enkelte elev subdomain
> således:
>
> http://<Elevens Valgte Prefix>.<Elevens Brugernavn>.<Webstedets
> Hostname>.<Top Level Domain>/
>
> fx: http://test1.tony.wbhotl.dk/
>
> test1 ligger så i /home/tony/PUBLIC_HTML/test1/
>
> Det skal så med ssh kunne lade sig gøre at komme i kontakt med:
> ”/home/tony/www/test1.tony.wbhotl.dk/index.php”
>
> Desuden er det nødvendigt af der opsættes en MySQL database for hvert
> subdomain, med at valgt password 'mkpasswd qwerty'
>
> fx. navn på MySQL databasen: “test1.tony.wbhotl.dk” fx. med ellevens
> password valgt
>
> Mit system er for skrøbeligt, synes jeg, til at jeg kan køre det selv endnu.
> (Det er endnu uden, en mulighed for at fjerne en konto indbygget.)
> Måske nogle af jer der fx. har en virtual machine med Linux, Apache, PHP og
> MySQL, som det ikke gør så meget går i stykker, kan køre det.
>
> Her koden.
>
> Thomas :)
>
>
> #!/bin/bash
> set -x
>
> USERARRAY=$(ls -l --format=single-column /home/)
> for USRNME in ${USERARRAY[@]}
> do
>  USRDOMNARRAY=$(ls -l --format=single-column /home/$USRNME/PUBLIC_HTML/)
>  for USRDOMN in ${USRDOMNARRAY[@]}
>  do
>  echo $USRDOMN $USRNME
>  DOT='.'
>  MNDOMN='juac.dk'
>  LNK=$(echo ${USRDOMN}${DOT}${USRNME}${DOT}${MNDOMN})
>  IP=$(echo 90${DOT}184${DOT}106${DOT}85)
>  DIR=home/$USRNME/PUBLIC_HTML
>  if [ ! -d ${DIR} ];
>  then
>    mkdir ${DIR}
>  done
>  done
> exit
>  fi
>  if [ ! -d /usr/lib/cgi-bin/${LNK}];
>  then
>    mkdir "/usr/lib/cgi-bin/${LNK}"
>  fi
>  if [ ! -d /etc/apache2/sites-available/${LNK}];
>  then
>   echo '<VirtualHost *:80>
>  ServerAdmin ${USRNME}@${MNDOMN}
>  ServerName www.${LNK}
>  ServerAlias ${LNK}
>  DocumentRoot ${DIR}/${USRDOMN}
>  # Set Document Root directory options
>  <Directory />
>    Options FollowSymlnks -Indexes Includes
>    # Allow use of .htaccess file
>    AllowOverride Limit FileInfo
>  </Directory>
> ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/${LNK}
>  # Set CGI-BIN directory options
>  <Directory /cgi-bin>
>    AllowOverride None
>    Options +ExecCGI -Multiviews +SymlnksIfOwnerMatch
>    Order allow,deny
>    Allow from all
>  </Directory>
>  CustomLog /var/log/apache2/access.log common
>  ErrorLog /var/log/apache2/error.log
> </VirtualHost>' > '/etc/apache2/sites-available/${LNK}'
>  exec /usr/sbin/a2ensite ${LNK}
>  SPACE=' '
>  WWW='www'
>  echo $(echo ${IP}${SPACE}${WWW}${DOT}${LNK}${SPACE}${LNK}) >> /etc/hosts
>  exec /etc/init.d/apache2 reload
>  dbpasswd=`mkpasswd qwerty`
>  mysqladmin create ${LNK} -uroot -p${dbpasswd}
>  echo 'The username of the database ${LNK} is root. And the password for the
> database is ${dbpasswd}' > '${DIR}/${LNK}.database.txt'
>  fi
>  done
>  done
>
> # end script
>
>
>


Follow ups

References