[gelöst] Dokuwiki auf neuen Server übertragen

Debian macht sich hervorragend als Web- und Mailserver. Schau auch in den " Tipps und Tricks"-Bereich.
Antworten
croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

[gelöst] Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 16.11.2020 11:20:04

Servus @all,

ich habe meinen server neu aufgesetzt debian 10.6. Ein Fullbackup in einer img gemacht Debian Stretch.
Die Daten vom Dokuwiki lagen bei mir unter /var/www/ dort habe ich sie auch wieder eingefügt
Apache und sonstige Paket abhängigen Programme sollten installiert sein
Installation wie folgt:

Code: Alles auswählen

apt update
apt dist-upgrade

apt-get install dokuwiki

Die dateien wiki.conf wieder eingefügt in /etc/apache2/sites-available/
laut Anleitung soll in dem Ordner die default liegen, hier ist die 000-default.conf und ist über den port 80 http erreichbar

In /etc/apache2 sind auch die /ssl-certs mit eingetragen, die den verweis von wiki.conf wieder geben

Was mir da einfällt, ich muss die wiki.conf noch aktivieren, sprich mita2enmoder oder/und a2ensite?
Hier kommt der bash: a2ensite: Kommando nicht gefunden.

/var/log/apache2/error.log
[core:notice] [pid 15092] AH00094: Command line: '/usr/sbin/apache2'
Zuletzt geändert von croixaigle am 21.11.2020 18:51:06, insgesamt 4-mal geändert.

hec_tech
Beiträge: 1096
Registriert: 28.06.2007 21:49:36
Wohnort: Wien
Kontaktdaten:

Re: Dokuwiki auf neuen Server übertragen

Beitrag von hec_tech » 16.11.2020 11:29:31

Wenn a2ensite nicht funktioniert kannst du noch immer einfach einen symlink machen.

Ich habe aber wenn a2ensite nicht funktioniert so meine bedenken ob Apache2 überhaupt ordentlich installiert ist.

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 16.11.2020 11:49:34

da sas System noch recht neu war, habe ich es erneut installiert und folgende Schritte ausgeführt:

Code: Alles auswählen

apt update 
apt upgrade
apt update
apt dist-upgrade
apt install apache2
libapache2-mod-wsgi python-dev
chown -R www-data:www-data /var/www/
chmod -R 755 /var/www/
kopieren der wiki.conf in /etc/apache2/sites-available/wiki.conf
ssl-certs in /etc/apache2 kopieren
a2ensite .conf
Fehler:
bash: a2ensite: Kommando nicht gefunden.

wo soll der Fehler sein? Wenn die Befehle für apache2 richtig sind, muss ja, irgendwo ein Fehler sein und in der log müsste dies auch zu sehen sein?
Gibt es alternativen Befehl zu a2ensite?

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 17.11.2020 07:45:57

hier der auszug aus dem error.log

Code: Alles auswählen

[Mon Nov 16 15:43:30.799710 2020] [mpm_prefork:notice] [pid 26633] AH00163: Apache/2.4.38 (Debian) mod_python/3.3.1 Python/2.7.16 configured -- resuming normal operations
[Mon Nov 16 15:43:30.799748 2020] [core:notice] [pid 26633] AH00094: Command line: '/usr/sbin/apache2'
[Mon Nov 16 16:07:45.465005 2020] [mpm_prefork:notice] [pid 26633] AH00169: caught SIGTERM, shutting down
[Mon Nov 16 16:07:45.575482 2020] [:error] [pid 15092] python_init: Python version mismatch, expected '2.7.5+', found '2.7.16'.
[Mon Nov 16 16:07:45.575579 2020] [:error] [pid 15092] python_init: Python executable found '/usr/bin/python'.
[Mon Nov 16 16:07:45.575587 2020] [:error] [pid 15092] python_init: Python path being used '/usr/lib/python2.7:/usr/lib/python2.7/plat-x86_64-linux-gnu:/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-old:/usr/lib/python2.7/lib-dynload'.
[Mon Nov 16 16:07:45.575600 2020] [:notice] [pid 15092] mod_python: Creating 8 session mutexes based on 150 max processes and 0 max threads.
[Mon Nov 16 16:07:45.575607 2020] [:notice] [pid 15092] mod_python: using mutex_directory /tmp 
[Mon Nov 16 16:07:45.588599 2020] [mpm_prefork:notice] [pid 15092] AH00163: Apache/2.4.38 (Debian) mod_python/3.3.1 Python/2.7.16 configured -- resuming normal operations
[Mon Nov 16 16:07:45.588646 2020] [core:notice] [pid 15092] AH00094: Command line: '/usr/sbin/apache2'
[Mon Nov 16 16:10:33.139746 2020] [mpm_prefork:notice] [pid 15092] AH00171: Graceful restart requested, doing restart
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message
[Mon Nov 16 16:10:33.290541 2020] [:error] [pid 15092] python_init: Python version mismatch, expected '2.7.5+', found '2.7.16'.
[Mon Nov 16 16:10:33.298209 2020] [:error] [pid 15092] python_init: Python executable found '/usr/bin/python'.
[Mon Nov 16 16:10:33.298225 2020] [:error] [pid 15092] python_init: Python path being used '/usr/lib/python2.7:/usr/lib/python2.7/plat-x86_64-linux-gnu:/usr/lib/python2.7/lib-tk:/usr/lib/python2.7/lib-old:/usr/lib/python2.7/lib-dynload'.
[Mon Nov 16 16:10:33.298239 2020] [:notice] [pid 15092] mod_python: Creating 8 session mutexes based on 150 max processes and 0 max threads.
[Mon Nov 16 16:10:33.298250 2020] [:notice] [pid 15092] mod_python: using mutex_directory /tmp 
[Mon Nov 16 16:10:33.487336 2020] [mpm_prefork:notice] [pid 15092] AH00163: Apache/2.4.38 (Debian) mod_python/3.3.1 Python/2.7.16 configured -- resuming normal operations
[Mon Nov 16 16:10:33.487355 2020] [core:notice] [pid 15092] AH00094: Command line: '/usr/sbin/apache2'

Benutzeravatar
snyborg
Beiträge: 256
Registriert: 08.08.2007 22:07:32
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: 127.0.0.1

Re: Dokuwiki auf neuen Server übertragen

Beitrag von snyborg » 17.11.2020 08:15:27

hec_tech hat geschrieben: ↑ zum Beitrag ↑
16.11.2020 11:29:31
Ich habe aber wenn a2ensite nicht funktioniert so meine bedenken ob Apache2 überhaupt ordentlich installiert ist.
Oder es fehlt die PATH-Variable zu /usr/sbin/

gibt es dort a2ensite? Denn eigentlich ist das im Package Debianapache2 enthalten...

Oder du versuchst das als Benutzer?
Wenn deine Freunde Linux haben, wechsel zu Linux.
Wenn deine Freunde BSD haben, wechsel zu BSD.
Wenn deine Freunde Windows haben, wechsel deine Freunde.

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 17.11.2020 12:13:02

wie kann man den Fehler finden, ggf die Path-Variable zu /usr/sbin??

Ich weiß es nicht ob es dort diesen Befehl gibt, so noch zu sehr ein Anfänger.

Nein, Den unterschied kenne ich soweit, was ich als User und was als root auszuführen habe.
Da die scripts usw unter dem Ordner mit root rechten sind, kann man es gut ableiten, nur dort was zu ändern als root
Habs jetzt auch mal mit user probiert, es ist schon nicht passend, wenn der gleiche Fehler hier auch kommt, zumindest sollte erster Fehler kommen, das die root rechte fehlen und dann der bash, so würde man den Fehler schneller identifizieren können

hec_tech
Beiträge: 1096
Registriert: 28.06.2007 21:49:36
Wohnort: Wien
Kontaktdaten:

Re: Dokuwiki auf neuen Server übertragen

Beitrag von hec_tech » 17.11.2020 13:11:00

Wie gesagt das a2ensite erstellt nur einen Symlink von sites-enabled auf sites-available.

Also einfach den Symlink erstellen und Apache2 reloaden. Damit sollte die Konfig mal laufen.
Was ist wenn du den kompletten Pfad zu a2ensite angibst?

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 17.11.2020 15:26:30

ok, und wie mache ich das dann? Erklärungen helfen mir nicht viel. Bräuchte Befehle oder Wörter mit denen ich das passende googlen kann.

Wie ist das, kann ich auch von dem Backup die @wiki.conf von /apache2/sites-enabled in /etc/apache2/sites-enabled kopieren oder sollte dies über einen Befehl gehen, das es ausgeführt wird?

weiterer Schritt:
folgende Befehle habe ich eingeben:

Code: Alles auswählen

apt-get install devscripts dpkg-dev build-essential
apt-get build-dep apache2

wenn ich den Apache2 neustarte kommt jetzt das:

Code: Alles auswählen

systemd[1]: Reloading The Apache HTTP Server.
apachectl[16124]: AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'Se
systemd[1]: Reloaded The Apache HTTP Server.
systemd[1]: Reloading The Apache HTTP Server.
apachectl[30690]: AH00526: Syntax error on line 4 of /etc/apache2/sites-enabled/wiki.conf:
apachectl[30690]: Invalid command 'SSLEngine', perhaps misspelled or defined by a module not included in the server configuration
apachectl[30690]: Action 'graceful' failed.
apachectl[30690]: The Apache error log may have more information.
systemd[1]: apache2.service: Control process exited, code=exited, status=1/FAILURE
systemd[1]: Reload failed for The Apache HTTP Server.

die wiki.conf

Code: Alles auswählen

<VirtualHost webserveradresse.org:443>

DocumentRoot /var/www/wiki
SSLEngine on
SSLCertificateFile      /etc/apache2/ssl-certs/wiki/wiki.crt
SSLCertificateKeyFile /etc/apache2/ssl-certs/wiki/wiki.key

die 2 Zertifikate sind in dem Order /etc/apache2/ssl-certs/wik

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 18.11.2020 14:35:26

das ganze habe ich jetzt mit derAnleitung: https://www.howtoforge.de/anleitung/wie ... stalliert/
gemacht, was mich nur wundert, das die Befehle

Code: Alles auswählen

nginx -v
teilweise nichts bringen, hier kommt es zu dem fehler

Code: Alles auswählen

bash: nginx: Kommando nicht gefunden.
gibt man den genauen Pfad ein:

Code: Alles auswählen

/usr/sbin/nginx -v
erhält man die gewünschte Info

Somit wie am Anfang vom Beitrag dieser bash Fehler, lag da dran, das die zuordnung nicht eindeutig war.
Ich schätze das es an diesem /var/sbin/ liegt

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 18.11.2020 17:43:32

so, musste den Beitrag wieder öffnen, da mein Problem weiter besteht.
Zumindest lerne ich heute einiges dazu.
Erst bin ich von apache2 auf nginx gegangen. jetzt wieder reture, da ich jetzt weiß wie der Befehl für die a2ensite sein muss:

Code: Alles auswählen

/usr/sbin/a2ensite wiki.conf
da nur ein webserver apache2 oder nginx laufen kann, würde ich bei apache2bleiben.

Jetzt habe ich die Certifikate mit letsencrypt erstellt habe, muss dies auch richtig in die wiki.conf eingetragen werden:

Code: Alles auswählen

alt:
SSLEngine on
SSLCertificateFile      /etc/apache2/ssl-certs/wiki/wiki.crt
SSLCertificateKeyFile /etc/apache2/ssl-certs/wiki/wiki.key

neu????:
# RSA
ssl_certificate /etc/letsencrypt/zertifikat/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/zertifikat/private.key;
# ECC
ssl_certificate /etc/letsencrypt/zertifikat_ecc/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/zertifikat_ecc/private.key;
muss zu den letsencrypt zertifikate noch was dazu geschrieben werden (Verwendung unter apache2)

hec_tech
Beiträge: 1096
Registriert: 28.06.2007 21:49:36
Wohnort: Wien
Kontaktdaten:

Re: Dokuwiki auf neuen Server übertragen

Beitrag von hec_tech » 18.11.2020 21:43:50

Schön langsam glaube ich bei dir ist wirklich was mit der PATH Variable kaputt.

Du musst dir das mal genauer anschauen und fixen dann wird sowohl nginx wie auch apache2 richtig funktionieren.

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 18.11.2020 21:51:39

also der webserver läuft jetzt einwandfrei. Wenn man apache2 mit Let's Encrypt verwendet, muss dazu noch snap (certbot) installiert werden. Und dann mit den SSL Parameter in die wiki.conf eingetragen werden.
hec_tech hat geschrieben: ↑ zum Beitrag ↑
18.11.2020 21:43:50
Schön langsam glaube ich bei dir ist wirklich was mit der PATH Variable kaputt.

Du musst dir das mal genauer anschauen und fixen dann wird sowohl nginx wie auch apache2 richtig funktionieren.
Wie fängt man da am besten dann an mit der Path??
aber beide Dienste laufen nicht gleichzeitig? Entweder Apache2 oder nginx, da kann ich jetzt auch auf nginx verzichten. Muss ich die löschen oder kann ich die auch deaktiviert auf dem server belassen?

hec_tech
Beiträge: 1096
Registriert: 28.06.2007 21:49:36
Wohnort: Wien
Kontaktdaten:

Re: Dokuwiki auf neuen Server übertragen

Beitrag von hec_tech » 18.11.2020 22:02:13

Moment mal wie machst du dich zu root bzw führst die Befehle aus?

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 19.11.2020 09:10:02

zu root mit su und dann Passwort.
Als Benutzer mit sudo bringt nichts, da es heißt, keine Berechtigung:

Code: Alles auswählen

[sudo] Passwort für user-name: 
user-name ist nicht in der sudoers-Datei. Dieser Vorfall wird gemeldet.

eggy
Beiträge: 3334
Registriert: 10.05.2008 11:23:50

Re: Dokuwiki auf neuen Server übertragen

Beitrag von eggy » 19.11.2020 09:54:56

"su -"
Das Minus ist wichtig.

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 19.11.2020 10:39:30

entweder komme ich grad nicht drauf oder ich brauche Beispiele:

Code: Alles auswählen

su - update-rc.d -f nginx disable
su: Benutzer update-rc.d ist nicht vorhanden

Benutzeravatar
MSfree
Beiträge: 11806
Registriert: 25.09.2007 19:59:30

Re: Dokuwiki auf neuen Server übertragen

Beitrag von MSfree » 19.11.2020 11:24:07

croixaigle hat geschrieben: ↑ zum Beitrag ↑
19.11.2020 10:39:30

Code: Alles auswählen

su - update-rc.d -f nginx disable
So in einer Zeile kann das nicht funktionieren.

1. mußt du und das root-Paßwort eingeben, damit du überhaupt erstmal root-Rechte bekommst.

2. du hast dich wohl schon länger nicht mehr mit dem init-System beschäftigt. Seit 2013 läuft Debian mit systemd und nicht mehr mit SysV-Init. Damit einhergehend ist, daß Sachen wie update-rc.d inzwischen obsolet sind bzw. gar nicht mehr funktionieren. Dienste schaltet man inzwischen mit systemctl an bzw. ab.

Benutzeravatar
novalix
Beiträge: 1909
Registriert: 05.10.2005 12:32:57
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: elberfeld

Re: Dokuwiki auf neuen Server übertragen

Beitrag von novalix » 19.11.2020 11:27:51

Mit dem Befehl "su" (switch user) wechselt man in eine andere User-Rolle bis man diese wieder verlässt.
Will man su - ähnlich wie sudo - für die Durchführung eines Befehls nutzen, nimmt man dafür den Schalter "c".
croixaigle hat geschrieben: ↑ zum Beitrag ↑
19.11.2020 10:39:30

Code: Alles auswählen

su - update-rc.d -f nginx disable
su: Benutzer update-rc.d ist nicht vorhanden
Wäre also:

Code: Alles auswählen

su -c "update-rc.d -f nginx disable" root
Allerdings ist dieses Vorgehen aus verschiedenen Gründen nicht zu empfehlen.
Wenn Du nginx "disablen" willst, wirst Du mit sehr hoher Wahrscheinlichkeit mit "systemctl" arbeiten müssen. Wenn Du danach weiter mit Rootrechten arbeiten willst, machst Du es so:

Code: Alles auswählen

su - <enter>
systemctl disable nginx.service
Das Wem, Wieviel, Wann, Wozu und Wie zu bestimmen ist aber nicht jedermannns Sache und ist nicht leicht.
Darum ist das Richtige selten, lobenswert und schön.

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 19.11.2020 14:15:05

@ novalix
den Befehl habe ich aus dem internet, das der hier nicht hin gehört, und auch nicht funktionieren kann, war mir bis jetzt nicht klar.

@ all
ich habe das im Internet gefunden, zu su und su - das macht das ganze verständlicher
https://software.linuxnetz.de/su/

@ hec_tech
ist dann nach dem ganzen etwas mit der PATH Variable? oder ist diese doch in Ordnung!

Jedenfalls läuft der Server mit den wichtigsten Einstellungen, DokuWiki, Nextcloud, OpenVPN mit Let's Encrypt.
Das hat mir immer jemand für mich gewartet, somit war dies auch für mich sehr schwierig.

hec_tech
Beiträge: 1096
Registriert: 28.06.2007 21:49:36
Wohnort: Wien
Kontaktdaten:

Re: Dokuwiki auf neuen Server übertragen

Beitrag von hec_tech » 20.11.2020 13:39:27

Bei su hast du eben genau dieses Problem mit den Pfaden.

Entweder su - oder sudo -s verwenden wobei vorher dein User im sudoers file eingetragen sein muss oder der sudo Gruppe hinzugefügt sein muss.

lg
Gregor

croixaigle
Beiträge: 43
Registriert: 09.09.2017 14:19:57

Re: Dokuwiki auf neuen Server übertragen

Beitrag von croixaigle » 20.11.2020 15:05:21

ok, danke für die Info, wenn es das ist. Dann werde ich in Zukunft drauf schauen, das ich das so ausführe. Danke

Antworten