Ir para o conteúdo

Nextcloud: mudanças entre as edições

De RJGSWiki
Criou página com '= NextCloud = == Instalação == Atualiza: sudo apt update apt list --upgradable sudo apt upgrade -y Instalando o Vim sudo apt install vim -y Instalando o zip e unzip sudo apt install zip unzip -y Trocando o HOSTNAME do Server. echo "nextcloud" | tee /etc/hostname Instalando os pacotes necessários. sudo apt install apache2 -y sudo apt install mariadb-server -y sudo apt install libapache2-mod-php7.4 -y sudo apt install php7.4-gd -y sudo a...'
Etiqueta: wikieditor
 
 
(7 revisões intermediárias por um outro usuário não estão sendo mostradas)
Linha 1: Linha 1:
= NextCloud =
= NextCloud =


== Instalação ==
== NextCloud Client ==
 
Para instalar o client do Nextcloud você deve recorrer ao site oficial da empresa.
 
https://nextcloud.com/install/
 
Escolha o instalador conforme seu Sistema Operacional.
 
== NextCloud Server ==
 
=== Via APT ===


Atualiza:
Atualiza:
Linha 39: Linha 49:


Operação do Daemon
Operação do Daemon
Status do Servidor


  sudo systemctl status apache2  
  sudo systemctl status apache2  
Reinicia o Servidor
  sudo systemctl restart apache2  
  sudo systemctl restart apache2  
Inicia o Servidor
  sudo systemctl start apache2  
  sudo systemctl start apache2  
sudo systemctl stop apache2


Para do Servidor
==== Banco de Dados ====
 
sudo systemctl stop apache2
 
== Banco de Dados ==


  sudo /etc/init.d/mysql start  
  sudo /etc/init.d/mysql start  
Linha 66: Linha 65:
  quit;  
  quit;  


== Download ==
==== Download ====


  sudo mkdir .nextcloud/  
  sudo mkdir .nextcloud/  
Linha 77: Linha 76:
  sudo chown -R www-data:www-data nextcloud/  
  sudo chown -R www-data:www-data nextcloud/  
  sudo chmod -R 775 nextcloud/  
  sudo chmod -R 775 nextcloud/  
=== Via Snap ===
==== Instalação ====
Atualiza:
sudo apt update
apt list --upgradable
sudo apt upgrade -y
Instalando o suporte ao snap
sudo apt install snapd -y
Instalando o Nextcloud
sudo snap install nextcloud
Após isso basta acessar o servidor, com o IP pelo navegador. Você será direcionado á pagina de login, solicitando que crie seu usuario.
== Troubleshooting ==
=== Erro no primeiro acesso ===
Logo no primeiro acesso, depois da instalação,
Acessar através de um domínio inseguro
Por favor contacte seu administrador. Se você for o administrador, edite a configuração "trusted_domains" em config/config.php como o exemplo em config.sample.php.
Mais informações de como configurar isso podem ser encontradas na documentação.
Como diz no aviso, você deve editar o arquivo *config/config.php* que estará na pasta de instalação do Nextcloud tendo sua localização dependendo da forma que foi instalado.
vim config/config.php
Neste arquivo, inclua o ip
<pre>
'trusted_domains' =>
  [
    'demo.example.org',
    '10.111.112.113',
    '[2001:db8::1]'
  ],
</pre>
ou
<pre>
'trusted_domains' =>
  array (
    0 => '192.168.0.123', // IP do host que foi instalado o Nextcloud
    1 => 'seudominio.com.br', // Domínio da rede ou DDNS.
  ),
</pre>
Depois, reinicie o servidor:
sudo reboot
=== Indexar arquivos ===
  php "caminho_do_nextcloud/occ" files:scan --path="usuario/files/"
=== Diretório de dados acessível pela Internet ===
Erro:
Seu diretório de dados e arquivos provavelmente estão acessíveis pela Internet. O arquivo .htaccess não está funcionando.
==== Solução ====
Verifique onde está configurado o diretório de dados no arquivo <code>config.php</code> do Nextcloud:
sudo vim /var/www/nextcloud/config/config.php
Procure por:
'datadirectory' => '/var/www/nextcloud/data'
Recomenda-se mover o diretório de dados para fora da raiz do servidor web, por exemplo:
sudo mv /var/www/nextcloud/data /home/nextcloud-data
sudo chown -R www-data:www-data /home/nextcloud-data
Atualize no <code>config.php</code>:
'datadirectory' => '/home/nextcloud-data',
=== Arquivos inválidos na verificação de integridade ===
Erro:
Alguns arquivos não passaram na verificação de integridade.
==== Solução ====
Execute a verificação e repare:
sudo -u www-data php /var/www/nextcloud/occ integrity:check-core
sudo -u www-data php /var/www/nextcloud/occ maintenance:repair
=== Problema com /ocm-provider/ ===
Erro:
Seu servidor web não está configurado corretamente para resolver <code>"/ocm-provider/"</code>.
==== Solução Apache ====
Se usa Apache, verifique se o <code>.htaccess</code> está habilitado:
sudo a2enmod rewrite
sudo systemctl restart apache2
==== Solução Nginx ====
Se usa Nginx, adicione no server { }:
nginx  location ^\~ /ocm-provider/ {      return 404;  }
=== Problema com .well-known ===
Erro:
Seu servidor web não está configurado corretamente para resolver URLs <code>.well-known</code>.
==== Solução Nginx ====
<pre>
location ^~ /.well-known {
    location = /.well-known/carddav { return 301 /remote.php/dav/; }
    location = /.well-known/caldav  { return 301 /remote.php/dav/; }
    try_files $uri $uri/ =404;
}
</pre>
==== Solução Apache ====
No <code>.htaccess</code>:
Redirect 301 /.well-known/carddav /remote.php/dav
Redirect 301 /.well-known/caldav  /remote.php/dav
=== Janela de manutenção não configurada ===
Erro:
O servidor não tem horário de início da janela de manutenção configurado.
==== Solução ====
Adicione no config.php:
'maintenance_window_start' => 1,  // 1 = 01:00h da madrugada
=== Migração de mimetypes pendente ===
Erro:
Uma ou mais migrações de mimetype estão disponíveis.
==== Solução ====
sudo -u www-data php /var/www/nextcloud/occ maintenance:repair --include-expensive
=== Cabeçalhos HTTP incorretos (HSTS) ===
Erro:
O cabeçalho HTTP Strict-Transport-Security não está definido.
==== Solução Nginx ====
add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;
==== Solução Apache ====
<pre>
<IfModule mod_headers.c>
    Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>
</pre>
=== Cache de memória não configurado ===
Erro:
Nenhum cache de memória foi configurado.
==== Solução ====
Instale APCu:
sudo apt install php-apcu -y
sudo systemctl restart apache2
No <code>config.php</code>:
'memcache.local' => '\\OC\\Memcache\\APCu',
Para setups maiores, também configure Redis:
sudo apt install redis-server php-redis -y
sudo systemctl enable redis-server --now
E no <code>config.php</code>:
<pre>
'memcache.distributed' => '\OC\Memcache\Redis',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => [
  'host' => 'localhost',
  'port' => 6379,
],
</pre>
=== Região padrão de telefone não configurada ===
Erro:
Sua instalação não tem uma região padrão de telefone definida.
==== Solução ====
No <code>config.php</code>:
'default_phone_region' => 'BR',
=== Servidor de e-mail não configurado ===
Erro:
Você ainda não definiu ou verificou a configuração do seu servidor de e-mail.
==== Solução ====
No <code>config.php</code>, configure SMTP, exemplo com Gmail:
<pre>
'mail_from_address' => 'seuemail',
'mail_smtpmode' => 'smtp',
'mail_sendmailmode' => 'smtp',
'mail_domain' => 'gmail.com',
'mail_smtphost' => 'smtp.gmail.com',
'mail_smtpport' => 587,
'mail_smtpauth' => 1,
'mail_smtpsecure' => 'tls',
'mail_smtpname' => '[email protected]',
'mail_smtppassword' => 'suasenha',
</pre>
Depois, no painel do Nextcloud, teste o envio de e-mail.


== Fonte ==
== Fonte ==


* https://docs.nextcloud.com/server/23/admin_manual/installation/example_ubuntu.html
* https:/#/docs.nextcloud.com/server/23/admin_manual/installation/example_ubuntu.html
 
* https://help.nextcloud.com/t/this-problem-is-usually-solved-by-giving-the-web-server-write-access-to-the-config-directory/26322
* https://help.nextcloud.com/t/this-problem-is-usually-solved-by-giving-the-web-server-write-access-to-the-config-directory/26322

Edição atual tal como às 14h07min de 17 de fevereiro de 2026

NextCloud[editar]

NextCloud Client[editar]

Para instalar o client do Nextcloud você deve recorrer ao site oficial da empresa.

https://nextcloud.com/install/

Escolha o instalador conforme seu Sistema Operacional.

NextCloud Server[editar]

Via APT[editar]

Atualiza:

sudo apt update 
apt list --upgradable 
sudo apt upgrade -y 

Instalando o Vim

sudo apt install vim -y 

Instalando o zip e unzip

sudo apt install zip unzip -y 

Trocando o HOSTNAME do Server.

echo "nextcloud" | tee /etc/hostname 

Instalando os pacotes necessários.

sudo apt install apache2 -y 
sudo apt install mariadb-server -y 
sudo apt install libapache2-mod-php7.4 -y 
sudo apt install php7.4-gd -y 
sudo apt install php7.4-mysql -y 
sudo apt install php7.4-curl -y 
sudo apt install php7.4-mbstring -y 
sudo apt install php7.4-intl -y 
sudo apt install php7.4-gmp -y 
sudo apt install php7.4-bcmath -y 
sudo apt install php-imagick -y 
sudo apt install php7.4-xml -y 
sudo apt install php7.4-zip -y 

Operação do Daemon

sudo systemctl status apache2 
sudo systemctl restart apache2 
sudo systemctl start apache2 
sudo systemctl stop apache2

Banco de Dados[editar]

sudo /etc/init.d/mysql start 
sudo mysql -uroot -p 
CREATE USER 'rjgs'@'localhost' IDENTIFIED BY 'R0b150nJ03l'; 
CREATE DATABASE IF NOT EXISTS nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; 
GRANT ALL PRIVILEGES ON nextcloud.* TO 'rjgs'@'localhost'; 
FLUSH PRIVILEGES; 
quit; 

Download[editar]

sudo mkdir .nextcloud/ 
cd .nextcloud/ 
sudo wget https://download.nextcloud.com/server/releases/latest.zip 
unzip latest.zip 
sudo cp -vur nextcloud /var/www 
sudo chown -R www-data:www-data /var/www/html/nextcloud/config/ 
sudo chmod -R 770 /var/www/html/nextcloud/config/ 
sudo chown -R www-data:www-data nextcloud/ 
sudo chmod -R 775 nextcloud/ 

Via Snap[editar]

Instalação[editar]

Atualiza:

sudo apt update 
apt list --upgradable 
sudo apt upgrade -y 

Instalando o suporte ao snap

sudo apt install snapd -y 

Instalando o Nextcloud

sudo snap install nextcloud 

Após isso basta acessar o servidor, com o IP pelo navegador. Você será direcionado á pagina de login, solicitando que crie seu usuario.

Troubleshooting[editar]

Erro no primeiro acesso[editar]

Logo no primeiro acesso, depois da instalação,

Acessar através de um domínio inseguro

Por favor contacte seu administrador. Se você for o administrador, edite a configuração "trusted_domains" em config/config.php como o exemplo em config.sample.php.

Mais informações de como configurar isso podem ser encontradas na documentação.

Como diz no aviso, você deve editar o arquivo *config/config.php* que estará na pasta de instalação do Nextcloud tendo sua localização dependendo da forma que foi instalado.

vim config/config.php

Neste arquivo, inclua o ip

'trusted_domains' =>
   [
    'demo.example.org',
    '10.111.112.113',
    '[2001:db8::1]'
  ],

ou

'trusted_domains' =>
  array (
    0 => '192.168.0.123', // IP do host que foi instalado o Nextcloud
    1 => 'seudominio.com.br', // Domínio da rede ou DDNS.
  ),

Depois, reinicie o servidor:

sudo reboot

Indexar arquivos[editar]

 php "caminho_do_nextcloud/occ" files:scan --path="usuario/files/"

Diretório de dados acessível pela Internet[editar]

Erro:

Seu diretório de dados e arquivos provavelmente estão acessíveis pela Internet. O arquivo .htaccess não está funcionando.

Solução[editar]

Verifique onde está configurado o diretório de dados no arquivo config.php do Nextcloud:

sudo vim /var/www/nextcloud/config/config.php

Procure por:

'datadirectory' => '/var/www/nextcloud/data'

Recomenda-se mover o diretório de dados para fora da raiz do servidor web, por exemplo:

sudo mv /var/www/nextcloud/data /home/nextcloud-data
sudo chown -R www-data:www-data /home/nextcloud-data

Atualize no config.php:

'datadirectory' => '/home/nextcloud-data',

Arquivos inválidos na verificação de integridade[editar]

Erro:

Alguns arquivos não passaram na verificação de integridade.

Solução[editar]

Execute a verificação e repare:

sudo -u www-data php /var/www/nextcloud/occ integrity:check-core
sudo -u www-data php /var/www/nextcloud/occ maintenance:repair

Problema com /ocm-provider/[editar]

Erro:

Seu servidor web não está configurado corretamente para resolver "/ocm-provider/".

Solução Apache[editar]

Se usa Apache, verifique se o .htaccess está habilitado:

sudo a2enmod rewrite
sudo systemctl restart apache2

Solução Nginx[editar]

Se usa Nginx, adicione no server { }:

nginx   location ^\~ /ocm-provider/ {       return 404;   }

Problema com .well-known[editar]

Erro:

Seu servidor web não está configurado corretamente para resolver URLs .well-known.

Solução Nginx[editar]

location ^~ /.well-known {
    location = /.well-known/carddav { return 301 /remote.php/dav/; }
    location = /.well-known/caldav  { return 301 /remote.php/dav/; }
    try_files $uri $uri/ =404;
}

Solução Apache[editar]

No .htaccess:

Redirect 301 /.well-known/carddav /remote.php/dav
Redirect 301 /.well-known/caldav  /remote.php/dav

Janela de manutenção não configurada[editar]

Erro:

O servidor não tem horário de início da janela de manutenção configurado.

Solução[editar]

Adicione no config.php:

'maintenance_window_start' => 1,  // 1 = 01:00h da madrugada

Migração de mimetypes pendente[editar]

Erro:

Uma ou mais migrações de mimetype estão disponíveis.

Solução[editar]

sudo -u www-data php /var/www/nextcloud/occ maintenance:repair --include-expensive

Cabeçalhos HTTP incorretos (HSTS)[editar]

Erro:

O cabeçalho HTTP Strict-Transport-Security não está definido.

Solução Nginx[editar]

add_header Strict-Transport-Security "max-age=15552000; includeSubDomains" always;

Solução Apache[editar]

<IfModule mod_headers.c>
    Header always set Strict-Transport-Security "max-age=15552000; includeSubDomains"
</IfModule>

Cache de memória não configurado[editar]

Erro:

Nenhum cache de memória foi configurado.

Solução[editar]

Instale APCu:

sudo apt install php-apcu -y
sudo systemctl restart apache2

No config.php:

'memcache.local' => '\\OC\\Memcache\\APCu',

Para setups maiores, também configure Redis:

sudo apt install redis-server php-redis -y
sudo systemctl enable redis-server --now

E no config.php:

'memcache.distributed' => '\OC\Memcache\Redis',
'memcache.locking' => '\OC\Memcache\Redis',
'redis' => [
   'host' => 'localhost',
   'port' => 6379,
],

Região padrão de telefone não configurada[editar]

Erro:

Sua instalação não tem uma região padrão de telefone definida.

Solução[editar]

No config.php:

'default_phone_region' => 'BR',

Servidor de e-mail não configurado[editar]

Erro:

Você ainda não definiu ou verificou a configuração do seu servidor de e-mail.

Solução[editar]

No config.php, configure SMTP, exemplo com Gmail:

'mail_from_address' => 'seuemail',
'mail_smtpmode' => 'smtp',
'mail_sendmailmode' => 'smtp',
'mail_domain' => 'gmail.com',
'mail_smtphost' => 'smtp.gmail.com',
'mail_smtpport' => 587,
'mail_smtpauth' => 1,
'mail_smtpsecure' => 'tls',
'mail_smtpname' => '[email protected]',
'mail_smtppassword' => 'suasenha',

Depois, no painel do Nextcloud, teste o envio de e-mail.

Fonte[editar]

  • https:/#/docs.nextcloud.com/server/23/admin_manual/installation/example_ubuntu.html