Ir para o conteúdo

Nextcloud: mudanças entre as edições

De RJGSWiki
Etiqueta: wikieditor
 
(5 revisões intermediárias por um outro usuário não estão sendo mostradas)
Linha 18: Linha 18:


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


Linha 36: Linha 35:


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


Linha 64: Linha 51:


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


sudo systemctl stop apache2
==== Banco de Dados ====
 
=== Banco de Dados ===


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


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


  sudo mkdir .nextcloud/  
  sudo mkdir .nextcloud/  
  cd .nextcloud/  
  cd .nextcloud/  
  sudo wget https://download.nextcloud.com/server/releases/latest.zip  
  sudo wget https://download.nextcloud.com/server/releases/latest.zip  
  unzip latest.zip  
  unzip latest.zip  
  sudo cp -vur nextcloud /var/www  
  sudo cp -vur nextcloud /var/www  
  sudo chown -R www-data:www-data /var/www/html/nextcloud/config/  
  sudo chown -R www-data:www-data /var/www/html/nextcloud/config/  
  sudo chmod -R 770 /var/www/html/nextcloud/config/  
  sudo chmod -R 770 /var/www/html/nextcloud/config/  
  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 ==
=== Via Snap ===


=== Instalação ===
==== Instalação ====


Atualiza:
Atualiza:


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


Linha 170: Linha 138:
  sudo reboot
  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 ==

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