Handbuch:Wartungsskripte/Die Skripte ausführen
Die Wartungsskripte müssen derzeitig von der Kommandozeile ausgeführt werden. Benutzer, die den Server nicht direkt von seinen Terminal aus zugreifen, werden üblicherweise eine Verbindung über SSH herstellen.
- Für Linux/Unix-Benutzer ist dies die Verwendung des SSH-Clients in einer Shell.
- Windows-Nutzer können das mit Windows 10 eingeführte SSH Kommandozeilentool verwenden oder alternativ ein Fremdanbietertool wie z.B. PuTTY oder das Windows Subsystem für Linux.
Am Server anmelden
Linux/MacOS Nutzer
MacOS und die meisten Linux-Systeme verfügen über einen eingebauten SSH-Client. Somit wird kein weiterer SSH-Client benötigt. Das Vorhandensein eines SSH-Client kann mit Eingabe des folgenden Befehls in die Kommandozeile überprüft werden.
$ ssh -V OpenSSH_8.6p1, LibreSSL 2.8.3
Gibt dieser Befehl eine Fehlermeldung zurück, ist die Installation eines SSH-Clients notwendig.
Debian/Ubuntu - sudo apt install openssh-client
MacOS - brew install openssh
Ist ein SSH-Client vorhanden, erfolgt die Anmeldung am Server mit folgendem Befehl:
$ ssh -p 22 root@examplewiki.com Welcome to Ubuntu 18.04.5 LTS (GNU/Linux 4.15.0-161-generic x86_64) * Documentation: https://help.ubuntu.com * Management: https://landscape.canonical.com * Support: https://ubuntu.com/advantage System information as of Tue Feb 15 10:32:00 UTC 2022 System load: 0.0 Processes: 106 Usage of /: 29.8% of 24.06GB Users logged in: 0 Memory usage: 51% IP address for eth0: XXX.XXX.XXX.XXX Swap usage: 0% IP address for eth1: 10.116.0.2 Last login: Tue Feb 15 10:27:28 2022 from XX.XXX.XX.XXX root@-s-1vcpu:~#
Der voreingestellte Port für SSH ist 22
und der Benutzer ist root
.
Allerdings geben die Hosting Provider ihren Kunden den Benutzer und Port vor.
Die Werte sind dann entsprechend anzupassen.
Nun kann das MediaWiki Wartungsskript auf dem Server ausgeführt werden.
Windows Nutzer
Für Windows-Nutzer gibt es zwei Wege zur Server-Anmeldung.
Nativer SSH-Client
Der SSH-Client kann in den Windows-Einstellungen installiert bzw. aktiviert werden. SSH wird dann nativ unterstützt. Siehe die Offizielle Dokumentation (englisch).
Um die OpenSSH-Komponente zu installieren:
- Erst
Settings
öffnen, dannApps
>Apps & Features
auswählen, anschließendOptional Features
wählen. - Die Liste überprüfen, ob OpenSSH schon installiert ist, falls nicht am Seitenanfang
Add a feature
auswählen:- Den
OpenSSH
Client finden, dannInstall
anklicken.
- Den
Der SSH-Client wird nun auf dem System installiert. Nun kann mit PowerShell eine SSH-Verbindung zum Server hergestellt werden.
$ ssh -p 22 root@examplewiki.com
Der voreingestellte Port für SSH ist 22
und der Benutzer ist root
. Allerdings geben die Hosting Provider ihren Kunden den Benutzer und Port vor. Die Werte sind dann entsprechend anzupassen.
Nun kann das MediaWiki Wartungsskript auf dem Server ausgeführt werden.
Putty (oder ein anderer SSH-Client)
Auf einem Windows-Rechner kann PuTTY oder ein anderer SSH-Client verwendet werden:
- Schritt 1: PuTTY, oder einen andern Terminal Emulator herunterladen und ausführen.
- Schritt 2: In PuTTy, unter Host Name (oder IP-Addresse) die IP-Addresse der Web-Hosting Site eingeben (ggf. den Web-Hoster kontaktieren) und auf Öffnen klicken.
- Schritt 3: Es erscheint ein Kommandozeilenfenster. In der login as: Zeile den FTP Benutzernamen eingeben.
- Schritt 4: Eingabe des FTP-Passworts.
Nun kann das MediaWiki Wartungsskript auf dem Server ausgeführt werden.
Ein Script ausführen
Nach der Anmeldung am Server (siehe "Am Server anmelden" oben) können die folgenden Schritte ausgeführt werden.
Schritt 1: Wechsel in den MediaWiki Wurzelordner. In den meisten Fällen wird dies /var/www/html
sein
root@-s-1vcpu:~# cd /var/www/html/
Schritt 2: Ausführung des Skriptes
root@-s-1vcpu:/var/www/html# php maintenance/showSiteStats.php Total edits : 11 Number of articles: 3 Total pages : 6 Number of users : 2 Active users : 0 Number of images : 0
Bei Nutzung eines Windows Servers und Erhalt einer Fehlermeldung (z.B.: php.exe is no valid Win32 application) empfiehlt sich folgendes:
$ php-cgi maintenance/showSiteStats.php
Oder:
$ C:\path\to\php\php-win.exe C:\path\to\mediawiki\maintenance\showSiteStats.php
MW_INSTALL_PATH
so gesetzt werden, dass sie auf den Wurzelordner der MediaWiki Installation zeigt. Das hilft den Skripten die notwendigen Dateien zu finden und ist besonders wichtig, wenn Wartungsskripte für Erweiterungen von Drittanbietern verwendet werden.
Standard Kommandozeilen-Optionen
Fast alle PHP-Skripte in /maintenance
unterstützen die Standard-Optionen:
Option | Beschreibung |
---|---|
--help | Zeige die Hilfenachricht an |
--conf <path> | Ort der LocalSettings.php falls nicht Standard (Das Elternverzeichnis des Skriptes) |
--dbuser <username> | Database account to use instead of the one specified in LocalSettings.php, not used for scripts that don't require a database connection or when SQLite database backend is used |
--dbpass <password> | Database password to use instead of the one specified in LocalSettings.php, not used for scripts that don't require a database connection or when SQLite database backend is used |
--globals | Output globals at the end of processing for debugging |
--memory-limit <value> | Set memory limit for the script. Accepts ordinary numbers, standard php.ini abbreviations (1024K, 20M, 1G), max for no limit (will be used by default if omitted) and default for no change. (eingeführt in 1.17)
|
--quiet | Suppress non-error output |
--wiki | Wiki ID for wiki farms. This may be of the form dbname or dbname-prefix . LocalSettings.php will be run with the MW_DB and MW_PREFIX constants defined accordingly.
|
--profiler | Profiler output format (usually "text"). (eingeführt in 1.22) |
--mwdebug | Enable built-in MediaWiki development settings. (eingeführt in 1.31) |
MediaWiki installs that use symlinks
In cases where the MediaWiki PHP files are symlinked to a central installation, you will need to specify to the maintenance script the path of the LocalSettings.php file. For example:
php maintenance/importImages.php --conf /var/www/html/LocalSettings.php /tmp/wikiimages .jpg .png .svg
Sometimes MediaWiki is installed as a family for many languages and settings (LocalSettings.php) are split to common part and language parts (see Wiki family#Shared Settings ) where common part is located outside of /w
directory and accessed using relative link (require_once "../ExtensionSettings.php";
). In this case maintenance scripts will not work when running them in /w/maintenance
directory. Run them from /w
directory instead.
No shell access
On many shared hosts, you won't have shell access. The following extensions may be useful to run maintenance scripts via the web.