PříručkaːÚdržbářské skripty

From MediaWiki.org
Jump to navigation Jump to search
This page is a translated version of the page Manual:Maintenance scripts and the translation is 98% complete.
Other languages:
Deutsch • ‎English • ‎Türkçe • ‎dansk • ‎español • ‎français • ‎magyar • ‎polski • ‎português • ‎português do Brasil • ‎čeština • ‎русский • ‎हिन्दी • ‎中文 • ‎日本語 • ‎한국어
Community Noun project 2280.svg Uživatelé Octicons-terminal.svg Správci wikiserverů Source code project 1171.svg Vývojáři OOjs UI icon language-ltr.svg Překladatelé

Údržbářské skripty se používají pro různé administrativní úlohy, import dat, údržbu, generování reportů a také při aktualizaci. Jsou napsány v PHP a u nainstalované MediaWiki je najdete v podadresáři maintenance.

Jsou to desítky skriptů, které mají různou kvalitu zpracování i užitnou hodnotu. Než nějaký skript použijete, tak byste si měli pozorně přečíst jeho dokumentaci. Pokud není řádně zdokumentován, nejprve ho řádně prostudujte, abyste věděli co udělá, dřív než ho spustíte.

Konfigurace

Aby bylo možné spouštět údržbářské skripty, které potřebují sáhnout na databázové schéma (jako např. Manuál:Update.php ) a udělat změny ke kterým uživatel nastavený v konfigurační proměnné Manual:$wgDBuser nemusí mít dostatečná práva, tak by měly být nastaveny také konfigurační proměnné $wgDBadminuser a $wgDBadminpassword . Obejdete se bez nich, pokud skriptu při spouštění na příkazové řádce předáte uživatele s těmito právy a jeho heslo přes parametry --dbuser a --dbpass. Předávaná hodnota, resp. hodnota těchto proměnných se může lišit, podle toho jakou databázi jste použili pro svou MediaWiki. Pokud tyto proměnné nejsou nastavené, tak skript použije uživatele z $wgDBuser.

MySQL

Některé skripty údržby vyžadují databázová oprávnění, která by z bezpečnostních důvodů hlavní databázový účet MediaWiki neměl mít. Měl by být vytvořen samostatný databázový účet s oprávněními „superuživatele“ pouze pro databázi MediaWiki (pokud již neexistuje). Pokud se databáze, kterou používáte pro MediaWiki, nazývá wikidb, pak by následující SQL vytvořit takového uživatele, který může vykonávat privilegia superuživatele na localhost .:

GRANT ALL PRIVILEGES ON wikidb.* TO 'wikidbadmin'@'localhost' IDENTIFIED BY 'strong-password';

Jakmile účet existuje, měl by být název účtu nastaven v konfigurační proměnné $wgDBadminuser . Stejně jako ostatní konfigurační proměnné by měl být $wgDBadminuser nastaven na LocalSettings.php . V konfigurační proměnné $wgDBadminpassword musí být nastaveno heslo pro $wgDBadminuser.

PostgreSQL

PostgreSQL používá jiný bezpečnostní model než MySQL a stejný serverový účet PostgreSQL používaný pro každodenní provoz instalace MediaWiki musí být také použit pro spouštění skriptů údržby. To je nezbytné k zajištění správného nastavení vlastníka nových tabulek vytvořených skripty údržby. Není třeba nastavovat $wgDBadminuser nebo $wgDBadminpassword.

Spouštění skriptů

Příklad adresy IP a uživatelského jména a hesla FTP na hostitelském webu Godaddy.com.

Skripty údržby pak musí být spuštěny z příkazového řádku. Uživatelé, kteří nemají přístup k serveru přímo z jeho terminálu, obvykle naváží spojení pomocí ssh. Pro uživatele Linux / Unix je to pomocí ssh klienta ve shellu. For Windows users, one can use the SSH command line tool introduced in Windows 10 or alternatively use a third-party tool such as PuTTY shown below or use Windows Subsystem for Linux.

Požadovaný program pro uživatele Windows: PuTTY nebo jakýkoli emulátor terminálu

Do Host Name (nebo IP address) zadejte IP Address vašeho webhostingového webu.
  • Krok 2: Do pole PuTTy zadejte Hostitelský název (nebo IP adresu) IP Address vašeho webhostingového serveru (v případě potřeby kontaktujte poskytovatele webových stránek) a klikněte na Open.
Na řádku přihlášení jako: zadejte uživatelské jméno FTP.
  • Krok 3: Objeví se obrazovka s příkazy. Na řádku přihlášení jako: zadejte uživatelské jméno FTP.
Na řádku hesla FTP user name@IP Address's password line: zadejte heslo FTP.
  • Krok 4: Zadejte heslo FTP.
Příkazový řádek putty.
  • Krok 5: Změňte aktuální adresář do podadresáře údržby (maintenance). Zadáním pwd zobrazíte složku, ve které se právě nacházíte. Složka údržby je v kořenové složce Mediawiki.
$ cd maintenance
  • Krok 6: Spusťte skript údržby:
$ php rebuildall.php
Pokud se zobrazí chyba (například: php.exe není platná aplikace Win32), zkuste následující:
$ php-cgi rebuildall.php
Ve Windows je to příkaz:
$ C:\path\to\php\php-win.exe C:\path\to\mediawiki\maintenance\rebuildall.php
Pokud se skript nepodaří spustit a vypíše spoustu chybových zpráv, je třeba nejprve zkusit nastavit proměnnou prostředí MW_INSTALL_PATH tak, aby ukazovala na kořen vaší instalace MediaWiki. To pomůže skriptům najít potřebné soubory a je to zvláště důležité při spouštění skriptů údržby poskytovaných rozšířeními třetích stran.

Standardní možnosti příkazového řádku

Téměř každý skript PHP v /maintenance podporuje několik standardních možností:

--help
Zobrazí zprávu nápovědy
--conf <path>
Umístění LocalSettings.php, není-li výchozí (v nadřazeném adresáři skriptu)
--dbuser <username>
Databázový účet, který se má použít namísto účtu uvedeného v LocalSettings.php. Nepoužívá se pro skripty, které nevyžadují připojení k databázi nebo pokud se používá backend databáze SQLite
--dbpass <password>
Heslo databáze, které se má použít místo hesla uvedeného v LocalSettings.php. Nepoužívá se pro skripty, které nevyžadují připojení k databázi nebo pokud je použito backend databáze SQLite
--globals
Výstup globálů na konci zpracování pro ladění
--memory-limit <value>
Nastavuje limit paměti pro skript. Přijímá běžná čísla, standardní zkratky php.ini (1024K, 20M, 1G), max bez omezení (ve výchozím nastavení bude použito, pokud bude vynecháno) a default beze změny. (zavedeno od 1.17)
--quiet
Potlačí výstup bez chyb
--wiki <id>
Wiki ID pro wiki farmy. Může být ve formě dbname nebo dbname-prefix. LocalSettings.php bude spuštěn s konstantami MW_DB a MW_PREFIX.
--profiler
Výstupní formát profilu (obvykle „text“). (zavedeno od 1.22)
--mwdebug
Povolí vestavěné nastavení vývoje MediaWiki. (zavedeno od 1.31)

Instalace MediaWiki používající symlinks

V případech, kdy jsou soubory php MediaWiki sloučeny s centrální instalací, budete muset do skriptu údržby zadat cestu souboru LocalSettings.php. Například:

php maintenance/importImages.php --conf /var/wwwdata/website.org/wiki/LocalSettings.php /tmp/wikiimages .jpg .png .svg

Jinak se zobrazí tato chyba:

A copy of your installation's LocalSettings.php
must exist and be readable in the source directory.

Instalace MediaWiki, které používají sdílená nastavení (typ rodiny)

Někdy je MediaWiki nainstalovaná jako rodina pro mnoho jazyků a nastavení (LocalSettings.php) je rozděleno na společné části a jazykové části (viz Příručka: Rodina Wiki # Sdílené nastavení ), kde je společná část umístěna mimo adresář /w a je k ní přístup pomocí relativního odkazu (require_once "../ExtensionSettings.php";). V takovém případě nebudou skripty údržby při spuštění v adresáři /w/maintenance fungovat. Místo toho je spusťte z adresáře /w:

$ php maintenance/rebuildall.php

Žádný přístup do shellu

Na mnoha sdílených hostitelích nebudete mít přístup do shellu. Následující rozšíření mohou být užitečná pro spuštění skriptů údržby přes web: Maintenance a MaintenanceShell .

Přehled údržbářských skriptů

Místo tohoto pravděpodobně zastaralého seznamu

Zde je seznam souborů obsažených v podadresáři maintenance, který se nachází v kořenovém adresáři instalace MediaWiki. K této příručce můžete přispět aktualizací tohoto seznamu, přidáním popisu specifického účelu těchto souborů a způsobu, jakým by je měl správce používat (příklady příkazového řádku atd.). Mějte na paměti, že tyto byly vytvořeny a pojmenovány ad hoc, takže mají některé problémy s použitelností.

maintenance/

maintenance/archives

maintenance/benchmarks

maintenance/dev/includes

maintenance/language

maintenance/oracle

maintenance/storage

maintenance/term

Viz též