Como configurar seu Raspberry Pi para shell remoto, desktop e transferência de arquivos

Índice:

Como configurar seu Raspberry Pi para shell remoto, desktop e transferência de arquivos
Como configurar seu Raspberry Pi para shell remoto, desktop e transferência de arquivos

Vídeo: Como configurar seu Raspberry Pi para shell remoto, desktop e transferência de arquivos

Vídeo: Como configurar seu Raspberry Pi para shell remoto, desktop e transferência de arquivos
Vídeo: Aprenda tudo sobre RegEx em menos de 10 minutos! Com exemplos práticos! - YouTube 2024, Abril
Anonim
Então você tem um Raspberry Pi e gostaria de maximizar sua minúscula pegada transformando-se em uma caixa totalmente independente - sem monitor, teclado ou outros periféricos de entrada. Continue lendo enquanto mostramos como configurar o acesso remoto a shell, desktop e transferência de arquivos em seu Pi.
Então você tem um Raspberry Pi e gostaria de maximizar sua minúscula pegada transformando-se em uma caixa totalmente independente - sem monitor, teclado ou outros periféricos de entrada. Continue lendo enquanto mostramos como configurar o acesso remoto a shell, desktop e transferência de arquivos em seu Pi.

Por que eu quero fazer isso?

O Pi, mesmo vestido em um estojo robusto, é um pequeno computador. É perfeito para colocar em algum lugar fora da vista sem um bando de fios saindo dele - para muitos projetos, você simplesmente não precisa de um monitor permanente e acompanhamento periférico.

que não significa, no entanto, que você não precisará se conectar à caixa para fazer alterações, atualizar itens, transferir arquivos e assim por diante. Um exemplo perfeito disso é o pequeno indicador de chuva que construímos como parte do nosso Construir um Indicador LED com um artigo de Raspberry Pi (para E-mail, Tempo ou Qualquer Coisa). Ele não precisa de todas essas coisas anexadas a ele, mas ainda assim gostaríamos da capacidade de pular no dispositivo e fazer mudanças facilmente ou experimentar novos experimentos com o módulo LED sem ter que arrastá-lo de volta para a oficina, e conecte-o a um monitor, teclado, mouse, etc. Ao configurá-lo para shell remoto, desktop remoto e transferência remota de arquivos, tornamos super simples sempre interagir com nossa unidade Pi a partir do conforto de nosso computador de mesa como se Conectei a unidade a uma estação de trabalho completa.

O que eu preciso?

Se você é novato em trabalhar com o Raspberry Pi, sugerimos que você consulte o Guia do HTG Getting Started with Raspberry Pi para obter informações sobre os fundamentos do dispositivo e conhecer a velocidade.
Se você é novato em trabalhar com o Raspberry Pi, sugerimos que você consulte o Guia do HTG Getting Started with Raspberry Pi para obter informações sobre os fundamentos do dispositivo e conhecer a velocidade.

Para este tutorial, você precisará do seguinte:

  • Um Raspberry Pi correndo Raspbian.
  • Um computador desktop ou laptop.
  • Uma rede local com fio ou Wi-Fi para conectar o Pi e seu computador.

Primeiro, a maioria das etapas deste tutorial deve funcionar com outras distribuições Pi baseadas em Linux. mas nós vamos usar o Raspbian. Você deve ter poucos problemas para adaptar o tutorial a outras distribuições.

Em segundo lugar, estamos usando uma máquina Windows como nosso computador em rede para interagir com a unidade Raspberry Pi como a cabeça / interface remota. Quando apropriado, faremos o melhor possível para criar links para tutoriais e sugestões de leitura relacionadas à execução de tarefas e ferramentas paralelas no OS X e no Linux.

Configurando e conectando-se ao servidor SSH

O acesso da linha de comando remota à sua instalação Raspbian é o pequeno ajuste que você pode fazer em seu sistema, e é bem simples ativá-lo.
O acesso da linha de comando remota à sua instalação Raspbian é o pequeno ajuste que você pode fazer em seu sistema, e é bem simples ativá-lo.

Abra o terminal em Rasbian, o atalho é o LXTerminal na área de trabalho e digite o seguinte comando:

sudo raspi-config

Navegue até ssh e aperte enter. Quando solicitado sobre o servidor SSH, selecione Habilitar e aperte enter novamente. Você retornará ao painel Raspi-config; navegue até Terminar e aperte enter para fechar a ferramenta de configuração. Isso é tudo que você precisa fazer para ativar o acesso SSH ao seu Pi. O login SSH e a senha padrão são pi e framboesa, respectivamente.

Enquanto você ainda está na linha de comando, agora é um ótimo momento para verificar o IP da sua unidade Raspberry Pi na rede local. Tipo ifconfig no prompt e, em seguida, observe a saída do comando. Se você está usando a porta Ethernet, você quer procurar init addr no eth0 seção; se você estiver usando Wi-Fi, você quer procurar o init addr no wlan0 seção. Além de verificar e anotar o endereço IP, esse também é um ótimo momento para configurar uma entrada de IP estático em seu roteador, para que você não precise procurar o IP no futuro.

Agora que temos o servidor SSH ativado, sabemos o login e sabemos o endereço IP da máquina, é hora de se conectar via SSH e testá-lo. Para fazer isso no Linux e no OS X, você pode simplesmente usar o ssh comando no terminal. Usuários do Windows, no entanto, precisarão de um cliente SSH como o PuTTY.

Como estamos usando uma caixa do Windows para gerenciar remotamente nosso Pi, o PuTTY é. Instale uma cópia do PuTTY ou extraia a versão portátil e inicie-a. tem muito de configurações que você pode mexer no PuTTY, mas só precisamos nos preocupar com uma única coisa para se conectar ao nosso Pi. Na interface principal da Session, basta digitar o endereço IP do seu Pi e selecionar SSH abaixo dela:

Image
Image

Acertar Abrir na parte inferior e o PuTTY iniciará uma janela de terminal para você, conecte-se ao seu Pi e solicite que você faça login. Vá em frente e faça o login com pi / framboesa:

Uma vez que sua conexão SSH esteja funcional, você pode tecnicamente concluir o restante deste tutorial remotamente a partir do conforto de sua mesa, embora seja aconselhável deixar a cabeça e o teclado em seu sistema até que você termine o projeto inteiro e tenha tudo funcionando perfeitamente.
Uma vez que sua conexão SSH esteja funcional, você pode tecnicamente concluir o restante deste tutorial remotamente a partir do conforto de sua mesa, embora seja aconselhável deixar a cabeça e o teclado em seu sistema até que você termine o projeto inteiro e tenha tudo funcionando perfeitamente.

Antes de prosseguirmos, há algumas funcionalidades extras que podemos extrair do SSH. Além de gerenciar a linha de comando remotamente, você também pode transferir arquivos remotamente usando a cópia protegida. Sua linha de comando é intensiva e não é particularmente conveniente para transferir um grande número de arquivos provenientes de vários diretórios, mas para uma transferência de arquivo de configuração única ou outro pequeno despejo, é bastante útil. Confira nosso guia para copiar arquivos por SSH usando o comando SCP aqui.

Analisaremos mais de perto as técnicas de transferência de arquivos fáceis de usar / baseadas em GUI, mais adiante no tutorial.

Configurando e configurando sua área de trabalho remota

O acesso à linha de comando remota é impressionante, mas também está tendo acesso à área de trabalho para atividades focadas na GUI. Vamos trazer os poderes da linha de comando e os poderes da área de trabalho juntos.
O acesso à linha de comando remota é impressionante, mas também está tendo acesso à área de trabalho para atividades focadas na GUI. Vamos trazer os poderes da linha de comando e os poderes da área de trabalho juntos.

Apesar de estarmos nos referindo a ele como "área de trabalho remota" até o momento, a ferramenta que estamos realmente instalando é conhecida como VNC (Virtual Network Computing, computação em rede virtual) - com as quais muitos estão familiarizados, como RealVNC e TightVNC. Para este tutorial, vamos instalar o TightVNC no Pi. Para acessar a sessão TightVNC baseada em Pi, você precisará de um cliente remoto como:

  • Cliente de desktop TightVNC para Windows
  • Cliente de desktop TightVNC para sistemas Linux / Unix-like
  • Cliente de desktop RealVNC para OSX

Pegue uma cópia agora e nós a divulgaremos mais adiante nesta seção. Por enquanto, vamos começar a instalar o servidor TightVNC no seu Raspberry Pi. Abra o terminal. Digite o seguinte comando para começar:

sudo apt-get install tightvncserver

Isto irá baixar e descompactar os arquivos de instalação; quando solicitado, continue pressionando Y. Após a conclusão da instalação, você retornará ao prompt. Você pode iniciar o VNC de duas maneiras. Simplesmente executando o comando para o servidor da seguinte forma:

tightvncserver

Solicitará que você digite uma senha para acessar a área de trabalho do VNC, como mostra a imagem acima. A senha precisa ter 4 a 8 caracteres. Depois de confirmar a senha, você será solicitado a definir uma senha somente para visualização (você pode optar por sair da etapa, como fizemos).
Solicitará que você digite uma senha para acessar a área de trabalho do VNC, como mostra a imagem acima. A senha precisa ter 4 a 8 caracteres. Depois de confirmar a senha, você será solicitado a definir uma senha somente para visualização (você pode optar por sair da etapa, como fizemos).

Como alternativa, você pode usar um comando muito mais preciso, embora mais demorado, que lhe dê mais controle sobre como o computador remoto verá a área de trabalho - o mais importante, qual resolução a área de trabalho exibirá para que você aproveite a exibição em tela inteira o computador remoto. Para especificar a resolução da área de trabalho VNC, use o comando a seguir, trocando o valor de resolução (o quarto item no comando) pela resolução da área de trabalho remota:

vncserver:1 -geometry 1600×900 -depth 16 -pixelformat rgb565:

Se em algum momento você cometer um erro ao configurar sua instância do servidor VNC e / ou quiser desligar o servidor VNC, basta digitar o seguinte (mudando o número após os dois pontos para o número da instância VNC que você quer matar):

vncserver –kill:1

Agora que temos o servidor VNC em funcionamento, vamos nos conectar a ele em nossa área de trabalho remota. Abra o visualizador TightVNC no seu computador e conecte o endereço IP da unidade Raspberry Pi seguido por: 1 como:

E aqui está nossa recompensa por configurar com sucesso o nosso servidor VNC - uma boa visualização em tela cheia da nossa unidade remota Raspberry Pi:
E aqui está nossa recompensa por configurar com sucesso o nosso servidor VNC - uma boa visualização em tela cheia da nossa unidade remota Raspberry Pi:
Há um problema conhecido com o TightVNC e o Rasbian que, graças a uma alteração de permissão inválida, causará problemas na área de trabalho real monitorada (deixando a interface da área de trabalho remota fornecida pelo servidor VNC inalterada). Para corrigir esse problema antes que ele se torne um problema para você, vá direto para a linha de comando e digite o seguinte comando:
Há um problema conhecido com o TightVNC e o Rasbian que, graças a uma alteração de permissão inválida, causará problemas na área de trabalho real monitorada (deixando a interface da área de trabalho remota fornecida pelo servidor VNC inalterada). Para corrigir esse problema antes que ele se torne um problema para você, vá direto para a linha de comando e digite o seguinte comando:

sudo chown pi /home/pi/.Xauthority

Esse comando altera a propriedade do arquivo.Xauthority de volta para o usuário pi - para os curiosos, o arquivo.Xauthority é usado pelo sistema X-windows em Rasbian e alguma coisa durante o processo de instalação e configuração do servidor TightVNC faz com que poucas permissões sejam solucionadas.

Com esse pequeno desvio menor, vamos retomar a configuração da área de trabalho remota.

Agora que temos acesso de linha de comando e área de trabalho ao Raspberry Pi, há um ajuste não tão trivial que precisamos fazer. A ferramenta Raspi-config configura o servidor SSH para iniciar automaticamente na inicialização para nós, mas o servidor VNC ainda não está configurado dessa maneira. Você pode pular esta etapa e iniciar manualmente o servidor na linha de comando via SSH quando precisar, mas estamos tentando tornar isso o mais fácil possível para uso futuro. Vamos tirar um minuto agora e criar um arquivo de inicialização para o servidor VNC.

Para iniciar automaticamente o servidor VNC, precisamos configurar um arquivo init ou de inicialização que o Raspbian use para iniciar e encerrar o servidor de forma limpa durante o processo de inicialização e desligamento. Vamos criar o arquivo init agora. Na linha de comando, digite o seguinte comando:

sudo nano /etc/init.d/tightvnc

Isso criará um arquivo no diretório de inicialização chamado “tightvnc” e abrirá o editor nano para que possamos colar nosso script. No editor nano, cole o código a seguir (lembre-se de alterar o valor de resolução de 1600 x 900 para corresponder à tela do seu computador remoto:

#!/bin/sh ### BEGIN INIT INFO # Provides: tightvncserver # Required-Start: # Required-Stop: # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: start vnc server # Description: ### END INIT INFO

case “$1” in start) su pi -c ‘vncserver:1 -geometry 1600×900 -depth 16 -pixelformat rgb565:’ echo “VNC Started”;; stop) pkill Xtightvnc echo “VNC Terminated”;; *) echo “Usage: /etc/init.d/tightvnc {start|stop}” exit 1;; esac

Além de modificar a parte de resolução de tela do script, há outra coisa que você pode modificar. Na linha 14, você pode alterar o comando “su pi -c” para qualquer outra conta de usuário além de “pi” se você desejar VNC para a área de trabalho específica para essa conta.

Depois de colar e modificar o código, é hora de salvá-lo. Pressione CTRL + X para sair e salvar seu trabalho no nano. Quando estiver de volta à linha de comando, precisamos fazer algumas alterações rápidas nas permissões do arquivo:

sudo chmod 755 /etc/init.d/tightvnc

Agora o arquivo de inicialização é executável. Podemos testá-lo a partir do prompt:

sudo /etc/init.d/tightvnc start

sudo /etc/init.d/tightvnc stop

A última alteração que vamos fazer é atualizar o arquivo rc.d (que rastreia quais scripts de inicialização estão na pasta /init.d/):

sudo update-rc.d tightvnc defaults

Depois de inserir esse comando, você receberá uma confirmação de que o arquivo foi atualizado. Agora é hora do teste real: o arquivo é carregado corretamente após a reinicialização? Digite o seguinte na linha de comando para reiniciar e estar preparado com o seu cliente VNC para testar a conexão em um momento:

sudo reboot

Quando o sistema terminar de reinicializar, faça o login com o seu cliente VNC.Se a sua sessão VNC falhar, visite o prompt de comando e execute o comando tightvnc start (da parte de teste acima) novamente para verificar novamente se o arquivo é executável e se a senha foi salva corretamente.

Neste ponto, estamos ainda mais longe em nossa missão de controlar totalmente remotamente nossa unidade Raspberry Pi. Com o acesso à linha de comando remota via SSH e acesso remoto à área de trabalho via VNC em nossos cintos, vamos simplificar o processo de transferência de arquivos entre o Pi e o computador de mesa.

Configurando e configurando ferramentas de transferência de arquivos

Como já temos o SSH configurado, a maneira mais fácil de configurar a transferência de arquivos mortos simples entre nossos computadores Pi e remotos é usar uma interface GUI na conexão SSH. Lembre-se de como falamos sobre o uso do SCP sobre o SSH anteriormente no tutorial? Executá-lo a partir da linha de comando fica realmente entediante, muito rápido. Com um invólucro gráfico, poderemos passar mais tempo movendo arquivos e tocando com nosso Pi e menos tempo bicando no teclado.
Como já temos o SSH configurado, a maneira mais fácil de configurar a transferência de arquivos mortos simples entre nossos computadores Pi e remotos é usar uma interface GUI na conexão SSH. Lembre-se de como falamos sobre o uso do SCP sobre o SSH anteriormente no tutorial? Executá-lo a partir da linha de comando fica realmente entediante, muito rápido. Com um invólucro gráfico, poderemos passar mais tempo movendo arquivos e tocando com nosso Pi e menos tempo bicando no teclado.

Embora haja uma variedade de wrappers GUI para o comando SCP, vamos usar uma ferramenta multiplataforma que muitas pessoas já conhecem, têm e amam (e podem até mesmo desconhecer que faz transferências SCP): FileZilla. Está disponível para Windows, OS X e Linux - você pode pegar uma cópia aqui.

Depois de instalar o FileZilla, ligue-o e vá para Arquivo -> Gerenciador de sites. Crie uma nova entrada de site, nomeie-a e insira o nome de usuário e a senha para seu Pi.

Por fim, certifique-se de definir a porta como 22 e o tipo de servidor como SFTP - SSH File Transfer Protocol. Clique em conectar na parte inferior e você terá uma visualização semelhante a esta:
Por fim, certifique-se de definir a porta como 22 e o tipo de servidor como SFTP - SSH File Transfer Protocol. Clique em conectar na parte inferior e você terá uma visualização semelhante a esta:
Seus diretórios locais estão no painel esquerdo e os diretórios remotos no Pi estão no painel direito. Mover arquivos entre os dois é tão simples quanto arrastá-los e soltá-los.
Seus diretórios locais estão no painel esquerdo e os diretórios remotos no Pi estão no painel direito. Mover arquivos entre os dois é tão simples quanto arrastá-los e soltá-los.

Aproveitar a transferência de arquivos SSH existente é a maneira mais fácil de obter os arquivos no Pi sem nenhuma configuração adicional necessária mas Se você quiser configurar seu Pi para receber e compartilhar arquivos sem que o usuário remoto exija ferramentas sofisticadas (como um cliente FTP compatível com SCP, como o FileZilla), é altamente recomendável verificar a parte de configuração do Samba em nosso guia: Como transformar uma framboesa Pi em um dispositivo de armazenamento de rede de baixa potência. Lendo sobre isso irá familiarizá-lo com a criação de um compartilhamento básico do Samba no Pi para criar uma pasta compartilhada facilmente acessível por praticamente qualquer pessoa em sua rede sem quaisquer ferramentas adicionais.

Você configurou o SSH, configurou o VNC e configurou o acesso SFTP e / ou Samba simples ao seu Pi - nesse ponto, você pode inicializar seu Raspberry Pi, remover o monitor, o teclado e o mouse, e guarde-a como uma máquina silenciosa e sem cabeça.

Tem uma ideia para o projeto Raspberry Pi e você está morrendo por nós para escrever um tutorial para isso? Entre nos comentários ou envie-nos um e-mail para [email protected] e faremos o possível para ajudar.

Recomendado: