Atualizar um servidor Nextcloud: guia pelo atualizador web e pela linha de comando

O que é Nextcloud e por que as atualizações são importantes?

O Nextcloud é uma solução de nuvem auto-hospedada para arquivos, calendários, contatos, notas, tarefas e muito mais. Você pode instalá-lo no próprio servidor, em uma máquina virtual, em um contêiner LXC ou em uma hospedagem, mantendo o controle dos seus dados.

Atualizações regulares para o servidor Nextcloud são importantes porque eles:

  • corrigem falhas de segurança
  • trazem novos recursos e melhorias
  • corrigem erros e incompatibilidades
  • mantêm a compatibilidade com versões atuais do PHP e dos bancos de dados

Neste artigo, mostro como atualizar seu servidor Nextcloud, quais comandos são importantes e quando usar o atualizador web ou a linha de comando.

Preparação: backup antes de cada atualização do Nextcloud

Antes de atualizar o Nextcloud, faça sempre um backup recente. É raro uma atualização parar no meio, mas isso pode danificar a instalação. Com um backup, você consegue restaurá-la.

Opções de backup

nextcloud-update-01-proxmox

nextcloud-update-01-proxmox

nextcloud-update-02-proxmox

nextcloud-update-02-proxmox

nextcloud-update-03-proxmox

nextcloud-update-03-proxmox

nextcloud-update-04-proxmox

nextcloud-update-04-proxmox

nextcloud-update-05-proxmox

nextcloud-update-05-proxmox

  • Snapshot da máquina virtual ou do contêiner LXC no hipervisor (por exemplo, Proxmox)
  • Backup completo do contêiner ou da máquina virtual
  • Backup manual de:
    • Diretório de instalação do Nextcloud (por exemplo, /var/www/html ou /var/www/nextcloud)
    • Diretório de dados (data ou armazenamento externo/NAS)
    • Banco de dados (MariaDB, MySQL ou PostgreSQL)

Por exemplo, um simples backup MySQL/MariaDB poderia ser assim:

mysqldump -u nextcloud -p nextcloud > /root/nextcloud.sql

Se você usa Proxmox, fazer um snapshot ou backup completo do contêiner antes de cada atualização costuma ser a opção mais prática.

Atualizar o Nextcloud pelo atualizador web

O atualizador web é a forma mais simples de atualizar o Nextcloud. Basta acessar a interface pelo navegador com uma conta de administrador.

Atualização pela web: passo a passo

nextcloud-update-06

nextcloud-update-06

nextcloud-update-07

nextcloud-update-07

nextcloud-update-08

nextcloud-update-08

nextcloud-update-09

nextcloud-update-09

nextcloud-update-10

nextcloud-update-10

  1. Entre no Nextcloud com uma conta de administrador.
  2. Na barra lateral, clique em “Administração” e depois em “Visão geral”.
  3. Se uma nova versão estiver disponível, ela aparecerá lá. Clique no botão. Abrir o atualizador.
  4. A atualização da web abre com uma lista de passos planejados.
  5. Clique em Iniciar atualização.
  6. O atualizador baixa a nova versão, verifica os arquivos, cria um backup e instala a nova versão.
  7. No final, um botão aparece como Disable maintenance mode and continue in the web based updaterClique nele para desativar o modo de manutenção.
  8. Depois disso, entre na Nextcloud de novo e verifique se tudo funciona.
  9. Abra a seção Aplicativos e instale as atualizações disponíveis.

O atualizador web é adequado para instalações privadas pequenas, com poucos usuários e volume moderado de dados. Em instalações grandes, limites de tempo do PHP ou discos lentos podem causar problemas; nesse caso, a CLI costuma ser mais confiável.

Atualizar o Nextcloud pela linha de comando (atualizador CLI e occ)

Atualizar seu servidor Nextcloud via linha de comando é um pouco mais técnico, mas muito mais robusto e mais adequado para instalações maiores.

1. Acessar o diretório do Nextcloud

Normalmente a instalação está abaixo /var/www/html ou /var/www/nextcloud:

cd /var/www/html

Adapte o caminho ao seu ambiente.

2. Iniciar o atualizador pela linha de comando

Por padrão, o servidor web roda no Debian/Ubuntu sob o usuário www-dataCom o seguinte comando você começa o updater no CLI:

sudo -E -u www-data php updater/updater.phar

Se quiser dispensar o backup integrado do atualizador (por exemplo, porque já tem um snapshot no hipervisor), use a opção --no-backup:

sudo -E -u www-data php updater/updater.phar --no-backup

O atualizador pede que você confirme a operação, baixa a nova versão, verifica os arquivos e os substitui. No fim, geralmente sugere executar o occ upgrade comando.

3. Atualizar o banco de dados

Depois de substituir os arquivos, é preciso adaptar o banco de dados à nova versão. Para isso, use occ upgrade:

sudo -E -u www-data php --define apc.enable_cli=1 occ upgrade

A opção apc.enable_cli=1 Ativa o cache APCu na linha de comando, que acelera alguns comandos.

4. Desativar o modo de manutenção

Se Nextcloud ainda estiver em modo de manutenção após a atualização, você pode desligá-lo como segue:

sudo -E -u www-data php --define apc.enable_cli=1 occ maintenance:mode --off

Agora você deve ser capaz de entrar na interface web normalmente novamente.

5. Limpar o banco de dados e o armazenamento

Após uma atualização importante, vale fazer uma limpeza:

# fehlende Indizes anlegen
sudo -E -u www-data php --define apc.enable_cli=1 occ db:add-missing-indices

# Papierkorb und Dateiversionen eines Users aufräumen (Beispiel Benutzer "cosci")
sudo -u www-data php --define apc.enable_cli=1 occ trashbin:cleanup cosci
sudo -u www-data php --define apc.enable_cli=1 occ versions:cleanup cosci

Você também pode atualizar todos os aplicativos diretamente via CLI:

sudo -E -u www-data php occ app:update --all

Atualizador web ou CLI: quando usar cada um?

Os dois métodos atualizam o Nextcloud tecnicamente da mesma forma, mas cada um é mais adequado a situações diferentes.

MétodoVantagensDesvantagensRecomendação
Atualizador webmuito simples, tudo no navegador, sem terminalsujeito a limites de tempo do PHP; mensagens de erro menos clarasadequado para instalações privadas pequenas
CLI com updater.pharestável, rápido, automatizável por scripts e com registros clarosexige acesso SSH e conhecimentos básicos de terminalrecomendado para instalações grandes ou em produção
Atualização manualControle máximo de arquivos e processos.mais trabalhosa, mais etapas e maior risco de errosomente se o atualizador não funcionar

Para instalações Homelab, nuvens de empresa ou servidores Nextcloud com muitos usuários, atualização via CLI é muito menos estressante. Para uma pequena nextcloud privada, o atualizador da web geralmente é suficiente.

Atualizar a versão do PHP no servidor Nextcloud

Mais cedo ou mais tarde, você também precisará atualizar o PHP. A versão compatível depende da versão do Nextcloud. Antes de fazer isso, confira sempre a recomendação na visão geral da administração.

Em princípio:

  • Uma versão atual do PHP 8.x geralmente é uma boa escolha.
  • Versões mais antigas do PHP não serão mais suportadas.
  • Use uma nova versão do PHP somente quando houver suporte oficial para ela

Por exemplo, uma mudança típica de PHP 8.3 para PHP 8.4 em um servidor Ubuntu com Apache pode ser assim:

sudo apt update
sudo apt upgrade -y

sudo apt install -y \
  php8.4-cli php8.4-common php8.4-curl php8.4-gd php8.4-mbstring \
  php8.4-xml php8.4-zip php8.4-intl php8.4-bcmath php8.4-gmp \
  php8.4-apcu php8.4-redis php8.4-imagick \
  php8.4-mysql

sudo apt install -y libapache2-mod-php8.4

sudo a2dismod php8.3
sudo a2enmod php8.4
sudo systemctl restart apache2

sudo update-alternatives --set php /usr/bin/php8.4

sudo -u www-data php8.4 /var/www/html/occ status

O último comando verifica se o servidor Nextcloud continua funcionando corretamente com a nova versão do PHP.

Comandos occ úteis para atualizar o Nextcloud

Por fim, estes são alguns comandos occ úteis para atualizar o Nextcloud:

ComandoFinalidade
sudo -E -u www-data php occ statusmostra versão, estado da instalação e caminhos
sudo -E -u www-data php occ update:checkverifica novas versões do Nextcloud e atualizações dos aplicativos
sudo -E -u www-data php occ upgradeRealiza migrações de banco de dados para a nova versão
sudo -E -u www-data php occ maintenance:mode --on/--offativa ou desativa o modo de manutenção
sudo -E -u www-data php occ db:add-missing-indicescria índices ausentes no banco de dados
sudo -E -u www-data php occ app:update --allAtualizar todos os aplicativos
sudo -E -u www-data php occ trashbin:cleanup <user>esvazia a lixeira de um usuário específico
sudo -E -u www-data php occ versions:cleanup <user>exclui versões antigas dos arquivos de um usuário

Este artigo foi traduzido com a ajuda de IA.

Durchschnittliche Bewertung 0 / 5. Bewertungen: 0

Leave a Comment

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Scroll to Top