Nextcloud: upgrade

O víkendu jsem si vyzkoušel první upgrade Nextcloudu. Sice to bylo jen mezi menšími vydáními (9.0.51 -> 9.0.52), ale i tak se ukázalo, že je to oblast, kde má Nextcloud stále velké mezery.

nextcloud

Nextcloud umí sledovat nové vydání. Můžete si vybrat kanály od denních vývojových verzí až po produkční vydání a Nextcloud vám hlídá, jestli je k dispozici novější verze. Tedy měl by. V mém případě to nedělal. I několik dní po vydání nové stabilní verze hlásil, že mám tu aktuální. Nakonec se ukázalo, že v konfiguračním souboru nebyla URL distribučního kanálu. Jak jsem ji přidal, hned jsem byl o nové verzi informovaný.

Držet se nejnovějších vydání má smysl nejen kvůli novým funkcím, ale hlavně kvůli bezpečnosti, která je u softwaru, kterému svěřujete svá osobní data, velmi důležitá. I poslední vydání obsahuje několik oprav bezpečnostních problémů.

Existují tři metody, jak upgradovat Nextcloud:

  • balíčky – asi nejjednodušší metoda, bohužel zatím nevím o žádné distribuci, která by přímo Nextcloud nabízela, a není k dispozici ani repozitář s balíčky přímo od autorů Nextcloudu, jako je tomu v případě OwnCloudu,
  • webová aplikace Updater – pohodlně z rozhraní Nextcloudu,
  • manuální – nejpracnější, ale v mém případě se ukázala jako jediná fungující.

Aby dvě poslední metody fungovaly, musíte nastavit práva všech souborů v adresáři /nextcloud na uživatele reprezentujícícho webový server, v případě Fedory nebo CentOSu je to apache:apache. To neplatí, pokud si člověk nastaví bezpečnější práva podle doporučení autorů Nextcloudu, kde některé citlivé soubory webový server měnit nemůže a může je modifikovat jen root.

Stěžejní částí aplikace Updater je obrovský php skript, který  kontroluje všechny prerekvizity pro upgrade a samotný upgrade provede. Existuje starý skript z OwnCloudu, který je ale rozbitý, takže vývojáři Nextcloudu píší nový, ten je ale momentálně rozbitý také.  Mně hlásil, že nemůže zapisovat do některých souborů v /nextcloud, i když měl ke všem souborům práva. Tady jsem tedy nepochodil.

Jedinou možností tedy byl manuální upgrade. Ten spočívá v tom, že si člověk přenese instalaci Nextcloudu někam jinam, třeba do /nextcloud-old, a do /nextcloud nakopíruje novou instalaci. Pak jenom zkopíruje konfigurační soubor a případně adresář s daty, pokud je má v adresáři Nextcloudu, a spustí skript na upgrade z administračního nástroje occ. Ten udělá zbytek práce. Poté je rozumné opět nastavit bezpečnější práva k souborům. Nevýhodou manuálního upgradu je, že se vypnou doinstalované aplikace, které potom musíte ručně znovu zapnou.

U upgradu se nádherně ukázalo, jak je VPS pohodlný. vpsFree.cz umožňuje udělat si testovací VPS v tzv. playgroundu. Zkopíroval jsem si tedy produkční VPS, vyzkoušel si upgrade nanečisto a když vše po upgradu fungovalo, šel jsem to udělat na ostro na produčním VPS. Stejně tak člověk nemusí řešit zálohování, které je před každou takovou operací prakticky nutností. Prostě jsem před začátkem udělal snapshot VPS a kdyby se něco přece jenom pokazilo, mohl bych se okamžitě vrátit zpět.

Doufám, že vývojáři vyladí webovou aplikaci pro upgrade, protože to je přece jenom méně práce než manuální upgrade. Na mé straně bych chtěl zase zapracovat na automatizaci celého procesu.

Jeden komentář: „Nextcloud: upgrade“

  1. Petr Šabata avatar

    Re: „zatím nevím o žádné distribuci, která by přímo Nextcloud nabízela“ — třeba Gentoo 🙂

    https://packages.gentoo.org/packages/www-apps/nextcloud

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *