19Aug

Como configurar seu Pi de framboesa para Shell remoto, área de trabalho e transferência de arquivos

Então, você tem um Raspberry Pi e você gostaria de maximizar sua pegada minúscula, transformando-se em uma caixa totalmente independente - sem monitor, teclado ou outros periféricos de entrada. Leia mais como mostramos como configurar o acesso remoto de shell, desktop e transferência de arquivos no seu Pi.

Por que eu quero fazer isso?

O Pi, mesmo vestido com uma caixa robusta, é um pequeno computador.É perfeito para afastar algum lugar fora da vista sem uma manobra de fios que escapem a isso - para muitos projetos você simplesmente não precisa de um monitor permanente e acompanhamento periférico.

que não significa , no entanto, você não precisará se conectar à caixa para fazer alterações, atualizar coisas, transferir arquivos e assim por diante. Um exemplo perfeito disso é o pequeno e legal indicador de chuva que construímos como parte do nosso Construir um indicador LED com um artigo de framboesa Pi( para e-mail, tempo ou qualquer coisa).Não precisa de todas essas coisas anexadas, mas ainda gostaríamos de entrar no dispositivo e fazer mudanças facilmente ou experimentar novas experiências com o módulo LED sem ter que arrastá-lo de volta para a oficina, eligue-o a um monitor, teclado, mouse, etc. Ao configurá-lo para shell remoto, área de trabalho remota e transferência remota de arquivos, tornamos super simples sempre interagir com nossa unidade Pi a partir do conforto do nosso computador desktop como se nósEnxergou a unidade até uma estação de trabalho completa.

O que eu preciso?

Se você é novo para trabalhar com o Raspberry Pi, sugerimos que consulte o Guia HTG para começar com o Raspberry Pi para obter informações sobre o básico do dispositivo e se atualizar.

Para este tutorial, você precisará das seguintes coisas:

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

Primeiro, a maioria das etapas neste tutorial deve funcionar com outras distribuições de Pi baseadas em Linux , mas , 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 nosso melhor para vincular a tutoriais e sugerimos ler sobre a realização de tarefas e ferramentas paralelas no OS X e Linux.

Configuração e conexão ao servidor SSH

O acesso à linha de comando remota à sua instalação Raspbian é sobre o pequeno ajuste ajustável que você pode fazer no seu sistema, e é correto o simples de habilitar.

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

sudo raspi-config

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

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

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

Uma vez que estamos usando uma caixa do Windows para gerenciar remotamente o nosso Pi, PuTTY, é.Instale uma cópia do PuTTY ou extraia a versão portátil e aça-a. Há 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 da sessão principal, basta digitar o endereço IP do seu Pi e selecionar SSH abaixo:

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

Uma vez que sua conexão SSH é funcional, você poderia concluir tecnicamente o resto deste tutorial remotamente no conforto da sua mesa - embora aconselhemos deixar a cabeça eo tecladono seu sistema até você terminar o projeto inteiro e ter tudo funcionando sem problemas.

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

Nós iremos procurar mais técnicas de transferência de arquivos mais fáceis de usar e baseadas em GUI mais tarde no tutorial.

Configuração e configuração da área de trabalho remota

O acesso remoto à linha de comando é impressionante, mas também é ter acesso à área de trabalho para atividades com foco em GUI.Vamos trazer os poderes da linha de comando e os poderes da área de trabalho juntos.

Embora estivéssemos nos referindo como "área de trabalho remota" até este ponto, a ferramenta que estamos instalando é conhecida como Virtual Network Computing( VNC) - as qualidades de que muitos estão familiarizados, como o RealVNC e o TightVNC.Para este tutorial, estaremos instalando 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 ou Unix
  • Cliente de desktop RealVNC para OSX

Pegue uma cópia agora eNós estaremos trocando isso mais tarde 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

Isso irá baixar e descompactar os arquivos de instalação;quando solicitado a continuar, pressione Y. Após a conclusão da instalação, você será retornado ao prompt. Você pode iniciar o VNC uma das duas maneiras. Simplesmente executando o comando para o servidor, então:

tightvncserver

solicitará que você insira uma senha para acessar sua área de trabalho do VNC, como visto na captura de tela acima. A senha precisa ter 4-8 caracteres. Depois de confirmar a senha, você será solicitado a definir uma senha somente de visualização( você pode sair da etapa, como fizemos).

Alternativamente, você pode usar um comando muito mais preciso, embora mais longo para digitar, que lhe dá mais controle sobre como o computador remoto verá a área de trabalho - o mais importante, que resolução a área de trabalho exibirá para que você possa desfrutar de uma visualização em tela cheiano computador remoto. Para especificar a resolução da área de trabalho do VNC, use o seguinte comando, trocando o valor da resolução( o quarto item no comando) para a resolução da área de trabalho remota:

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

Se, em qualquer ponto, comete um erro ao configurar a instância do servidor VNC e / ou quiser desligar o servidor VNC, basta digitar o seguinte( alterando o número após o cólon para o número da instância do VNC que desejakill):

vncserver -kill: 1

Agora que temos o servidor VNC instalado e funcionando, vamos nos conectar a partir de nossa área de trabalho remota. Aumente o visor TightVNC no seu computador e conecte o endereço IP da unidade Raspberry Pi, seguido de: 1, como:

E aqui está a nossa recompensa pela configuração bem-sucedida do nosso servidor VNC - uma ótima visualização em tela cheia de nossa unidade remota Raspberry Pi:

Há um problema conhecido com TightVNC e Rasbian que, graças a uma mudança de permissão wonky, causará problemas com a área de trabalho atual monitor-on-attached( enquanto deixa intocada a interface de desktop remota fornecida pelo servidor VNC).Para corrigir esse problema antes mesmo de se tornar um problema para você, dirija-se diretamente para a linha de comando e digite o seguinte comando:

sudo chown pi /home/pi/. Xautoridade

Este comando altera a propriedade do arquivo. Xauthority para o usuário pi-forO curioso, o arquivo. Xauthority é usado pelo sistema X-Windows em Rasbian e , algo que o durante o processo de instalação e configuração do servidor TightVNC faz com que o pequeno soluço de permissões.

Com esse pequeno desvio para fora do caminho, voltemos ao acabamento da nossa configuração de área de trabalho remota.

Agora que temos acesso completo à linha de comando e desktop 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 você precisar, mas estamos tentando tornar isso tão fácil quanto possível para uso futuro. Vamos demorar um minuto agora e criar um arquivo de inicialização para o servidor VNC.

Para iniciar automaticamente o servidor VNC, precisamos configurar um arquivo de inicialização ou inicialização que o Raspbian usará para iniciar e desligar o servidor durante o processo de inicialização e encerramento. Vamos criar o arquivo de inicialização 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 nano editor para que possamos colar no nosso script. No nano editor, cole o seguinte código( certifique-se de alterar o valor de resolução 1600 × 900 para coincidir com a tela do seu computador remoto:

#! /bin/ sh
### COMEÇAR INICIAR INFO
# Fornece: tightvncserver
# Necessário-Início:
# Obrigatório-Parar:
# Padrão-Iniciar: 2 3 4 5
# Padrão-Parar: 0 1 6
# Descrição curta: iniciar o servidor vnc
# Descrição:
### END INIT INFO

caso "$ 1 "no início do
)
su pi -c 'vncserver: 1 -geometria 1600 × 900 -depth 16 -pixelformat rgb565:'
echo" VNC Iniciado "
; ;Parada
)
pkill Xtightvnc
eco "VNC Terminado"
; ;
*)
echo "Uso: /etc/init.d/ tightvnc{ start | stop}"
saída 1
; ;
esac

Além de modificar a porção de resolução de tela do script, há uma 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 desejar VNC para a área de trabalho específica para essa conta.

Depois de ter colado e modificado o código, é hora de salvá-lo. Pressione CTRL + X para sair e salve seu trabalho em nano. Uma vez que você está de volta à linha de comando, precisamos fazer algumas mudanças 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 parar

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

sudo update-rc.d apertando os padrões de segurança

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 ser preparado com o seu cliente VNC para testar a conexão em um momento:

sudo reiniciar

Uma vez que o sistema tenha finalizado a reinicialização, faça o login com o seu cliente VNC.Se a sua sessão do VNC falhar, visite o prompt de comando e execute o comando de início do tightvnc( da seção de teste acima) novamente para verificar se o arquivo é executável e que a senha foi guardada corretamente.

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

Configuração e configuração de ferramentas de transferência de arquivos

Uma vez que já temos a configuração do SSH, a maneira mais fácil de configurar a transferência simples de arquivos simples entre o Pi e os computadores remotos é reter uma interface GUI na conexão SSH.Lembre-se de como falamos sobre usar SCP sobre SSH no início do tutorial? Executá-lo a partir da linha de comando fica realmente tedioso, muito rápido. Com um invólucro GUI, poderemos gastar mais tempo movendo arquivos e jogando com o Pi e menos tempo picando no teclado.

Embora haja uma variedade de wrappers de GUI para o comando SCP, iremos com uma ferramenta de plataforma cruzada que muitas pessoas já conhecem, têm e adoram( e podem até não saber que as 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, dispare e vá para Arquivo - & gt;Gerenciador do site. Crie uma nova entrada do site, nomeie-a e conecte o nome de usuário e a senha para o seu Pi.

Finalmente, certifique-se de configurar a porta para 22 e o protocolo Servertype para SFTP - SSH File Transfer Protocol. Clique em se conectar na parte inferior e você será tratado com uma visão semelhante a esta:

Seus diretórios locais estão no painel esquerdo e os diretórios remotos no Pi estão no painel da direita. Mover arquivos entre os dois é tão simples quanto arrastá-los e soltá-los.

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

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

Tenha uma ideia para o projeto Raspberry Pi e você está morrendo de vontade de escrever um tutorial para isso? Sentir nos comentários ou nos enviar um e-mail para [email protected] e faremos o nosso melhor para ajudar.