Celem aktualizacji Nextcloud do wyższej wersji jest poprawa zabezpieczeń samej aplikacji, a także poprawa interakcji z użytkownikiem. Poprzez wydanie nowej wersji Nextcloud oraz jej aktualizację zwiększono bezpieczeństwo całego kodu, uodporniając go na wszelakie potencjalne ataki. Wyeliminowano wszystkie znalezione błędy, a także upewniono się, że aktualizacja nie popsuje obecnego stanu.

Aktualizację należy rozpocząć od zalogowania się do systemu jako root, a następnie należy przejść do katalogu, w którym znajduje się obecnie zainstalowany Nextcloud. W tym celu należy wydać polecenie:

# cd /var/www/html/nextcloud

Natomiast aby upewnić się, co do posiadanej obecnie wersji Nextcloud-a należy wydać polecenie:

# sudo -u www-data php occ -V 
Nextcloud version 15.0.0

Aktualizację należy przeprowadzić do ostatniej wersji stabilnej, czyli jeżeli aktualnie posiadana wersja to 15.0.0, a ostatnia wersja stabilna z grupy 15 to 15.0.8 to do tej wersji należy w pierwszej kolejności zaktualizować Nextcloud. Natomiast aktualizację należy rozpocząć od kolejno następującej po sobie wersji, czyli jeżeli posiadana wersja to 15.0.0, to należy zaktualizować do wersji 15.0.1, aż do ostatniej wersji stabilnej, czyli 15.0.8

Kolejnym krokiem jest zatrzymanie usługi Apache2 poleceniem:

# systemctl stop apache2
Sprawdzenie statusu poleceniem:
# systemctl status apache2

Następnie można przenieść katalog obecnie zainstalowanej wersji Nextcloud do katalogu tymczasowego:

# mv /var/www/html/nextcloud /var/www/html/nextcloud-old

Aby pobrać kolejną wydaną wersję Nextcloud, należy przejść na stronę: Nextcloud – Changelog oraz wybrać odpowiednią kolejną wersję dla danej grupy wersji aplikacji Nextcloud.

# wget https://download.nextcloud.com/server/releases/nextcloud-[version].zip

Następnie nowo pobraną wersję należy rozpakować oraz przenieść do nowego katalogu Nextcloud:

# unzip nextcloud-[version].zip
# mv nextcloud /var/www/html/nextcloud

Plik konfiguracyjny Nextcloud config.php, należy skopiować z poprzednio utworzonego katalogu tymczasowego do nowego katalogu Nextcloud.

 # cp /var/www/html/nextcloud-old/config/config.php /var/www/html/nextcloud/config/

Również pliki znajdujące się w folderze /data, należy przenieść z poprzednio utworzonego katalogu tymczasowego do nowego katalogu Nextcloud.

# mv /var/www/html/nextcloud-old/data /var/www/html/nextcloud/

Jeżeli były zainstalowane aplikacje dodatkowe Nextcloud, to także ich zawartość z folderu /apps, należy przenieść z poprzednio utworzonego katalogu tymczasowego do nowego katalogu Nextcloud.

# mv /var/www/html/nextcloud-old/apps/[nazwa_apps] /var/www/html/nextcloud/apps

Następnie niezbędne jest nadanie odpowiednich praw dostępu do zapisu oraz odczytu danych katalogu Nextcloud:

Należy przejść do wyższego katalogu nad tym, gdzie znajduje się folder główny Nextcloud:

# cd /var/www/html

a następnie wydać polecenia:

# chown -R www-data:www-data nextcloud
# find nextcloud/ -type d -exec chmod 750 {} \;
# find nextcloud/ -type f -exec chmod 640 {} \;

Kolejnym krokiem jest ponowne uruchomienie usługi Apache2, która została wcześniej wyłączona:

# systemctl start apache2

Niezbędne jest teraz uruchomienie procesu aktualizacji Nextcloud poleceniem:

# su - -s /bin/bash  www-data -c 'php /var/www/html/nextcloud/occ upgrade'

Starting code integrity check…
Finished code integrity check
Update successful
Maintenance mode is kept active
Reset log level
...

Po zakończonym procesie aktualizacji, można się upewnić, że nowa wersja została zainstalowana:

# sudo -u www-data php /var/www/html/nextcloud/occ -V
 Nextcloud version 15.0.1