Underhåll av tekniska system/Uppdatera MediaWiki på servrar
För att uppdatera en version av MediaWiki på våra servrar finns det några steg som kan vara bra att känna till, som komplement till Manual:Upgrading samt Manual:Backing up a wiki. Detta har visat sig vara nyttigt, då våra servermiljöer kan skilja sig åt från andra MediaWiki standardmiljöer.
Steg
1. Logga in på servern med:
ssh <servernamn>.wikispeech.eqiad1.wikimedia.cloud
2. Lokalisera var MediaWiki-installationen finns, vanligtvis under /var/www/html/w
3. Ta backup på databas och nuvarande MediaWiki-installation, för att säkerställa att inget går förlorat.
Databas-backup: mysqldump
Wiki-backup: File system backup
4. Ladda ner och packa upp den nya versionen du vill installera, förslagsvis i /var/www. Exempel:
Ladda ner:
sudo wget https://releases.wikimedia.org/mediawiki/1.43/mediawiki-1.43.3.tar.gz
Packa upp:
sudo tar -xvzf mediawiki-1.43.3.tar.gz
5. I producent-wikin använder vi symboliska länkar (symlänkar) för att separera MediaWikis versionerade kataloger från dess aktiva webbrotsväg. Vi placerar varje version av MediaWiki i en separat katalog, t.ex.:
@producer-bookworm:/var/www$ ls
html mediawiki mediawiki-1.43.1 mediawiki-1.43.3
Sedan skapar vi en symlänk som alltid pekar på den aktiva versionen: /var/www/mediawiki → /var/www/mediawiki-1.43.3 som i sin tur länkas in i webbroten: /var/www/html/w → ../mediawiki
Istället tas den gamla versionen bort och ersätts av den uppackadede nya versionen som flyttas till /var/www/html/w
6. Skapa rätt rättigheter för den nya versionen. För att minska risken för säkerhetsproblem bör www-data inte äga hela MediaWiki-installationen, utan endast de kataloger som behöver vara skrivbara, som t.ex. images/. Läs mer på: MediaWiki Security – File permissions
7. Kopiera över LocalSettings.php samt resurser såsom loggor m.m från den gamla versionen till den nya.
Exempel LocalSettings.php:
cp /var/www/mediawiki-1.43.1/LocalSettings.php /var/www/mediawiki-1.43.3/
Exempel på andra resurser:
cp /var/www/mediawiki-1.43.1/resources/assets/*.svg /var/www/mediawiki-1.43.3/resources/assets/
8. Ladda ner de senaste kompatibla versionerna av de extensions som ska användas via
Extension Distributor
9. För loggning, se till att mappen /var/log/mediawiki/ finns. Om den inte finns, skapa den: sudo mkdir /var/log/mediawiki/.
Denna ska också kunna vara skrivbar av www-data, så ändra rättigheterna här också.
Övriga noteringar
Vi har identifierat ett kompatibilitetsproblem med extensionen PluggableAuth på vissa servrar i samband med uppgradering till nyare versioner av MediaWiki.
Symptom:
- Extensionen kraschar vid inladdning.
- Felmeddelande om att AuthManager eller relaterade komponenter inte hittas korrekt.
- Problem relaterade till olika versioner av PSR HTTP Message-biblioteket (psr/http-message).
Referens och lösning:
Byt namn på biblioteket så att MediaWikis egen version används, exempelvis:
mv extensions/WSOAuth/vendor/psr/http-message extensions/WSOAuth/vendor/psr/http-message-disabled
Phabricator-tråd med bakgrund och lösning: T337827#8938778