Servidor de arquivos com Raspberry Pi e Nextcloud 2

Como já vimos, a Raspberry Pi é uma placa muito poderosa para seu tamanho, que permite rodar o sistema operacional Linux. É de se esperar que várias aplicações diferentes surjam, levando recursos antes somente do desktop para a diminuta peça. Dessa vez, porém, vamos além do desktop, mirando nas nuvens com a criação de um servidor de arquivos usando Nextcloud!

Quem já usou serviços como Google Drive, Microsoft OneDrive e Dropbox, frequentemente deve se perguntar se os serviços se preocupam com a privacidade dos dados. Por mais que as empresas responsáveis garantam que a privacidade é a primeira premissa em seu desenvolvimento, muitos usuários se sentem inseguros em deixar os arquivos nas mãos de terceiros. Afinal de contas, “não existe nuvem, é apenas o computador de outra pessoa”

Apresentando Nextcloud

O Nextcloud vem justamente resolver esse problema. Ele é um servidor de arquivos que permite acesso externo e seguro, basicamente um servidor de arquivos em nuvem privada! Foi criado a partir de outro servidor, o Owncloud. A escalabilidade dele é muito consistente, permitindo a utilização desde à uma interface web para arquivos de um cartão SD, até um cluster de arquivos privados de qualquer lugar do mundo, dependendo apenas da sua conexão com a Internet. Se você tiver a intenção de trafegar/sincronizar vários arquivos fora da rede simultaneamente, e ininterruptamente, a velocidade total vai depender quase em sua totalidade da própria conexão.

Nextcloud

Além de uma interface web, o Nextcloud conta com aplicativos mobile (Android e iOS), e um cliente desktop (Windows, macOS e Linux) que lhe permite usá-lo como sincronizador de arquivos, dependendo somente da rede local.

Instalação Apache e PHP

Como dito anteriormente, o Nextcloud possui versões para Windows, macOS e Linux. Nesse exemplo iremos utilizar a distribuição Raspbian Stretch para instalação do Nextcloud na Raspberry Pi 3 Model B. Para tal, precisamos que o cartão SD rodando na placa esteja com o Raspbian Stretch configurado e conectado à rede. Antes de mais nada, atualizar o sistema é sempre uma boa prática, com os comandos a seguir executados no Terminal:

O Nextcloud roda em cima de um servidor web, pois ele provê uma interface via browser para gerenciamento dos arquivos. Como é desenvolvido usando linguagem PHP, precisaremos instalar o servidor web Apache para sua execução satisfatória. Em teoria, qualquer servidor web que rode PHP suporta a instalação do Nextcloud, mas nesse tutorial seguiremos com o Apache.

É necessário verificar se o Apache foi instalado corretamente. Para isso, no browser, devemos digitar o endereço IP ao qual a Raspberry está vinculada. O comando ifconfig permite descobrir o IP de maneira mais fácil. Se a placa estiver conectada via cabo, retornaremos o IP através do comando

Para conexões sem fio, através do adaptador wireless, teremos

Em ambos os casos, o endereço IP atribuído estará próximo à palavra “inet”, na segunda linha. Informando o endereço no browser, teremos a seguinte tela, caso o Apache tenha sido instalado corretamente.

Página web padrão

Precisamos agora instalar o PHP7 e demais componentes para que se integrem ao Apache, permitindo que aplicações web escritas em linguagem PHP (como o Nextcloud!) possam rodar sem problemas. Vamos instalar diversos pacotes, por isso o processo pode ser demorado

Após a instalação dos pacotes do PHP, reiniciamos o servidor apache através do comando

Instalação Nextcloud

O Apache possui uma pasta onde as aplicações rodam nativamente. Antes de baixar/instalar o Nextcloud, mudamos para ela

Agora sim, fazemos o download da última versão do Nextcloud, descompactando-o em seguida

Mudamos para a pasta do Nextcloud, criada após o download

Criamos uma pasta de data

E alteramos as permissões da pasta para que o Nextcloud possa escrever nela

Tudo instalado, agora vamos à configuração

Configurando Nextcloud na primeira execução

Para acessar o Nextcloud, vamos diretamente ao browser, informando o endereço http://MEUENDERECOIP/nextcloud, o que nos retorna a seguinte página

Configuração Nextcloud

Informe um usuário e senha que você se lembre, e estamos prontos para concluir a configuração, exibindo uma lista de arquivos e pastas previamente configurados!

Servidor de arquivos com Nextcloud

Considerações Finais sobre o servidor de arquivos com Nextcloud

Essa é apenas a interface web do Nextcloud. É possível abrí-lo para acesso externo através de configurações do roteador e servidos de DNS específicos, além de expandir o armazenamento para uso com HDs externos, pen drives e demais dispositivos USB. A utilização de aplicativos mobile para controle de arquivos e sincronia de fotos também é amplamente utilizada no servidor de arquivos, levando realmente um pedaço da nuvem para sua placa Raspberry Pi. Nos próximos artigos vamos abordar também alguns desses recursos, juntamente com um servidor de mídia.

Gostou do post do servidor de arquivos com Raspberry Pi? Deixe seu comentário logo abaixo. Em caso de dúvidas, caso queira trocar uma ideia, ou até mesmo dividir seu projeto, acesse nosso Fórum!

Posts Relacionados

Deixe uma resposta

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

2 Comentários

  1. Alliston, muito bom post, meus parabéns!

    Tenho somente dois complementos que gostaria de fazer ao artigo:

    1) Somente a partir das versões mais novas do Raspbian (versões acima da Jessie) que o php7 está disponível para download via gerenciador de pacotes (apt-get). Eu experimentei utilizar o php5 (que está presente no gerenciador de pacotes da versão Jessie e anteriores) e funcionou bem! Para instalar todos os módulos de php5 necessários, utilize o comando abaixo:

    sudo apt-get install -y php5 php5-gd sqlite php5-sqlite php5-curl

    2) Fiz testes com o nextcloud utilizando como banco de dados o SQLite e vi que ele é muito suscetível a corromper-se. Consegui corromper só de mandar a placa dar shutdown enquanto acessava o nextcloud via navegador.
    Portanto, recomendo fortemente o uso do MySQL coo banco de dados (fiz testes e se mostrou muito mais robusto e estável. Para mais informações de como utiizá-lo, veja esse site: http://unixetc.co.uk/2016/11/20/simple-nextcloud-installation-on-raspberry-pi/

    Espero ter contribuído para seu post. Novamente, parabéns pelo post!

    Atenciosamente,
    Pedro Bertoleti

    1. Grande Pedro!

      Muito obrigado, pelos parabéns e pelos complementos. Enriqueceu ainda mais o post, o que dá mais capacidade de escolha para os leitores que estão querendo customizar o servidor. Sempre bom poder contar com um apoio desse nível!

      Um grande abraço!