#language de = Installation von moin auf druck = == Vorbereitungen == Es werden python und moin installiert. Außerdem bekommt der Rechner per ntp-client die genaue Zeit. Die ganze Installation und Konfiguration wird als root durchgeführt. Die tarballs werden nach der Installation in /root/src abgelegt. === Kompilation von python === {{{ su; cd ~ tar -xjf Python-2.5.tar.bz2 cd Python-2.5 ./configure make make install # aufräumen cd ..; rm -r Python-2.5; mv Python-2.5.tar.bz2 /root/src/ }}} === Installation von moin === {{{ cd ~; tar -xzf moin-1.5.7.tar.gz cd moin-1.5.7 python setup.py install --prefix='/usr/local' # aufräumen cd ..; rm -r moin-1.5.7; mv moin-1.5.7.tar.gz /root/src/ }}} === Kompilation, Installation und Konfiguration von ntp === Die Konfigurationsdatei [attachment:ntp.conf /etc/ntp.conf] wird im wesentlichen von clyde übernommen, aber ein wenig editiert. Das init-script, [attachment:ntpd ntpd], wird von google gefunden, google(ntpd debian start stop). Die start- und stopp-links müssen unter debian händisch gesetzt werden. {{{ gunzip ntp-4.2.4p0.tar.gz tar -xf ntp-4.2.4p0.tar cd ntp-4.2.4p0 ./configure --disable-debugging --disable-all-clocks --disable-parse-clocks make make install cd ..; rm -r ntp-4.2.4p0 # ntp.conf und ntpd anpassen vi /etc/ntp.conf vi /etc/init.d/ntpd # initsys scripts chmod +x /etc/init.d/ntpd cd /etc/rc2.d ln -s ../init.d/ntpd S22ntpd cd /etc/rc0.d ln -s ../init.d/ntpd K19ntpd cd /etc/rc6.d ln -s ../init.d/ntpd K19ntpd # aufräumen cd; bzip2 ntp-4.2.4p0.tar && mv ntp-4.2.4p0.tar.bz2 /root/src/ }}} == Synchronisation mit clyde == Der gesamte web-Auftritt, d.h., die moin-engine sowie der wiki-Quelltext der einzelnen Seiten werden von www (alias clyde) auf druck gespiegelt. Erst einmal wird das ganze wiki per rsync auf druck kopiert. User und group sind auf clyde und druck unterschiedlich. Auf clyde gehören die wiki Dateien dem user wwwrun, group www, die Dateien unter/usr/local/share/moin und auch moin und moin.py unter /usr/local/var/www besitzt allerdings root. Per rsync werden die web-Seiten kopiert. Siehe auch [attachment:rsyncd.conf /etc/rsyncd.conf] auf clyde. Die option --numeric-ids um user:group auf druck auf die ids 33:33 (www-data:www-data), statt wwwrun:www auf clyde, zu setzen schlug fehl. Es werden deshalb statt der Optioon -a die Optionen -rtlpW gesetzt. Zuerst werden die web-Seiten einmal übertragen, dann wird der entsprechende crontab-Eintrag gesetzt. Um 2:44 bzw. 2:54 werden die web-Daten von clyde auf druck übertragen. {{{ # einmal kopiert rsync -rtlpz --delete --exclude cache --exclude '*.pyc' clyde::www /usr/local/var/www # crontab-Eintrag für www-data crontab -u www-data -e # im root-crontab steht der rsync-Eintrag fuer /usr/local/share/moin 44 2 * * * /usr/bin/rsync -rtlpzW --delete --exclude cache --exclude 'cryptedemail*.jpg' --exclude '*.pyc' clyde::www /usr/local/var/www # crontab-Eintrag für root crontab -e # im www-data-crontab steht der rsync-Eintrag fuer /usr/local/var/www 54 2 * * * /usr/bin/rsync -rtlpzW --delete clyde::htdocs /usr/local/share/moin/htdocs }}} Der daemon schreibt ein .pid-file. Dafür muss ein directory vorbereitet werden, das für www-data schreibbar ist. Siehe allerdings auch den [:installmoinaufclyde#hackdaemon: hack] von daemon.py. Auch wird ein für www-data scheibbares cache-directory angelegt. Schließlich wird im initsys ein link auf den daemon gesetzt. {{{ # directory für .pid-file mkdir /var/run/moin chown www-data:www-data /var/run/moin # cache-directory mkdir /usr/local/var/www/data/cache chown www-data:www-data /usr/local/var/www/data/cache # link in /etc/init.d auf den daemon ln -s /usr/local/var/www/moin /etc/init.d/moin }}} [[Anchor(starten)]] == Starten des web-servers auf druck == Es müssen in moin.py wwwrun und www beide auf www-data korrigiert werden und in init.d start- und stopp-links gesetzt werden. Dann wird der daemon gestartet. Es sollte nun http://druck.fluid.tuwien.ac.at funktionieren. {{{ # in moin.py wwwrun und www auf www-data korrigieren vi /usr/local/var/www/moin.py # start-links in /etc/rc2.d sowie stopp-links in /etc/rc0.d, /etc/rc1.d und /etc/rc6.d erzeugen cd /etc/rc2.d; ln -s ../init.d/moin S23moin cd /etc/rc0.d; ln -s ../init.d/moin K19moin cd /etc/rc1.d; ln -s ../init.d/moin K19moin cd /etc/rc6.d; ln -s ../init.d/moin K19moin # start /etc/init.d/moin start }}} == Deinstallation == Hier sind die Angaben um moin und python zu deinstallieren, nicht ntp. Auf clyde sollten in /etc/rsyncd.conf die Module [www] und [htdocs] gelöscht werden. {{{ # moin restlos entfernen rm -r /etc/init.d/moin /etc/rc*/*moin /var/run/moin rm -r /usr/local/var/www rm -r /usr/local/share/moin rm -r /usr/local/lib/python2.5/site-packages/MoinMoin rm -r /usr/local/lib/python2.5/site-packages/moin-1.5.7-py2.5.egg-info #die rsync-Zeilen in den crontabs löschen crontab -u www-date -e crontab -e # python entfernen rm -r /usr/local/lib/python2.5 /usr/local/bin/py* # tarballs entfernen cd /root/src && rm moin-1.5.7.tar.gz Python-2.5.tar.bz2 }}}