Instalação e configuração Nextcloud Hub – Parte 2

Devem criar um novo ficheiro de configuração do Apache2 em /etc/apache2/sites-available/nextcloud.conf e editá-lo. Coloquem a informação do caminho onde o site estará alojado, bem como as variáveis internas de ambiente, que vão ficar disponíveis para serem lidas pelos módulos do Apache.

  • sudo su
  • nano /etc/apache2/sites-available/nextcloud.conf

Alias /nextcloud “/var/www/nextcloud/”

<Directory /var/www/nextcloud/>

Require all granted

AllowOverride All

Options FollowSymLinks MultiViews

<IfModule mod_dav.c>

Dav off

</IfModule>

SetEnv HOME /var/www/nextcloud

SetEnv HTTP_HOME /var/www/nextcloud

</Directory>

Activar o site, os módulos do apache e limites de memoria do PHP

  • a2ensite nextcloud – Activa o o site
  • a2enmod rewrite headers env dir mime – Activa os módulos
  • sed -i ‘/^memory_limit =/s/=.*/= 512M/’ /etc/php/7.4/apache2/php.ini – Aumenta os limites de memoria do php
  • reboot – Reinicia o sistema

Testar o acesso
Abram o site com o IP que definiram (192.168.1.5/nextcloud, no nosso caso). Se tudo estiver correcto vão ver a página do Nextcloud, onde têm de definir uma conta de administrador, o caminho para os dados que vão ser armazenados (/var/www/nextcloud/data) e o utilizador da base de dados. Esta primeira configuração padrão é fundamental, para depois alterar caminho para o Raid 1.

Reconfigurar o ficheiro PHP e a base de dados

Na edição de Julho (294), foi configurado o Raid 1 no caminho /mnt/md0/data e é esse caminho que tem de ser definido em substituição do padrão /var/www/nextcloud/data/.

  • sudo -u www-data php /var/www/nextcloud/occ maintenance:mode –on – Coloca em modo manutenção
  • cp -a /var/www/nextcloud/data/. /mnt/md0/data/ – Copia tudo da pasta data, para a pasta data que está no raid 1
  • chown -R www-data:www-data /mnt/md0/ – Altera o dono e o grupo da pasta md0 para www-data
  • nano /var/www/nextcloud/config/config.php – Substitui no ficheiro php o campo ‘datadirectory’ => ‘/mnt/md0/data/’, com o novo caminho.

Por fim, é preciso alterar na base de dados MariaDb o caminho padrão /var/www/nextcloud/data/ para o novo /mnt/md0/data/.

  • mysql -uroot -p
  • use nextcloud
  • select * from oc_storages;
  • update oc_storages set id=’local::/mnt/md0/data/’ where id=’local::/var/www/nextcloud/data/’;
  • quit;
  • sudo -u www-data php /var/www/nextcloud/occ maintenance:mode –off
  • systemctl stop apache2
  • reboot

Conclusão
Se não quiserem ter todo este trabalho, podem usar o Snap do Nextcloud ou usar o Docker. Esta série de artigos mostrou a forma mais demorada de configuração, com o objectivo de perceberem a lógica por trás e o que é necessário para tudo funcionar.