Curso Raspberry Pi – #8 – O Básico do Linux
A grande maioria dos leitores usa o Windows e está acostumado a ambientes gráficos. No caso do Linux, no entanto, o trabalho a partir do nível do texto é mais importante.
É hora de começar o básico do Linux. Os comandos, funções e programas mais importantes que são necessários para trabalhar com o Raspberry Pi.
Programas criados para o Windows são principalmente baseados na interface gráfica. No caso do Linux , as ferramentas gráficas são de alguma forma uma adição. As janelas podem parecer diferentes após cada atualização do programa. No modo de texto, não há espaço para essas mudanças, portanto, aprender a usar programas é “atemporal”.
O que é shell e bash?
O curso é dedicado a pessoas que estão começando a sua aventura com o Raspberry e o Linux, portanto, alguns termos podem ser novos. No começo, “duas palavras” sobre os termos usados. A maioria dos usuários do Windows certamente encontrou o aplicativo Prompt de Comando. Esta ferramenta permite entrar e executar comandos no modo de texto:
Um lugar onde o Linux introduz comandos e executa scripts às vezes também é chamado de shell. Várias versões do shell estão disponíveis. A versão básica é sh, mais recente csh, e provavelmente o mais popular é o bash. Claro que existem mais, por exemplo, o Ubuntu usa dash por padrão.
Os comandos básicos funcionam independentemente da versão do shell.
Quando nos conectamos com o Raspberry Pi usando PuTTy, os comandos inseridos são executados apenas pelo shell.
Como verifica a versão do shell?
Para o teste após o login, podemos emitir o comando export. Vamos ver então as variáveis que são definidas no nosso shell. A variável SHELL contém o tipo de shell, como você pode ver, neste caso, é um bash popular.
O que é um terminal?
Uma vez, um terminal foi usado para trabalhar com o sistema, ou seja, um dispositivo equipado com um monitor e um teclado. O computador era do tamanho de um guarda-roupa e ficava numa sala separada (com ar condicionado).
A história repete-se e na nossa situação temos um retorno a tal configuração. O computador é um pequeno Raspberry e o PC (ou laptop) funciona como um terminal.
Acesso ao terminal no Raspberry Pi
No nosso caso, estamos conectados ao Raspberry Pi remotamente via ssh, então usamos o terminal virtualmente imediatamente “da máquina”. Para poder trabalhar usando o terminal, não precisamos abandonar completamente o modo gráfico. Se ligamos o nosso Raspberry ao monitor, podemos executar o emulador de terminal. O mesmo será para uma conexão VNC.
Independentemente do tipo de terminal escolhido, a forma como trabalhamos será a mesma. Isso nos mostra a primeira vantagem dessa abordagem, que é sua universalidade.
Primeiros passos – mudando a senha
Num dos episódios anteriores, alteramos a senha de acesso em raspi-config. Este é um programa que vamos encontrar apenas numa pequena maçã. Durante o trabalho padrão com o Linux, podemos realizar tal operação com o seguinte comando:
passwd
Depois de digitar o comando e confirmá-lo com a tecla Enter, o sistema solicitará a senha atual e, em seguida, teremos que digitar a nova senha duas vezes.
Ao inserir senhas, nenhum caractere (até mesmo asteriscos) aparece na tela, que é um recurso de segurança adicional.
Atualização do programa
O software no Linux é atualizado com muita frequência. Vale a pena fazer download das novas versões do sistema operacional e programas, mesmo que apenas por motivos de segurança. As vulnerabilidades encontradas são rapidamente corrigidas, mas se não atualizarmos o sistema, poderemos estar vulneráveis.
Antes de atualizar, precisamos de fazer download das informações sobre as versões mais recentes. O comando é usado para isso:
sudo apt update
Como já sabemos de artigos anteriores, o sudo é o equivalente da opção “Executar como administrador” conhecida do Windows. Apt é um gerenciador de programas usado no sistema Debian e derivados, ou seja, também em nosso Raspbiana.
O próximo passo é instalar as atualizações encontradas:
sudo apt upgrade
Depois de um momento, seremos solicitados a confirmar a atualização. Devemos digitar a letra y (sim) e pressionar Enter. O download e o upload da atualização serão iniciados.
Todo o processo pode levar até 30 minutos! Tudo depende do número de atualizações e do link disponível.
Como você verifica a lista de programas instalados no Raspberry Pi?
Podemos verificar quais programas já estão instalados, emitindo o seguinte comando:
apt list --installed
Documentação do sistema – man
Se quisermos aprender mais sobre as possibilidades do programa apt, a ajuda do Google e, claro, a documentação do sistema que veremos depois de chamar o comando nos ajudará a:
man apt
Vale a pena lembrar o comando man. Basta escrever um comando ou função que nos interessa e teremos acesso à documentação. Fechamos esta visão pressionando a tecla q.
Apenas uma parte da documentação é visível na tela.
Curiosamente, você também pode verificar qual é a documentação para o comando man, para este propósito digite man man:
Esta maneira de ver a documentação é particularmente útil quando queremos usar um determinado comando, e esquecemos quais argumentos devem ser chamados.
Equivalente a “Task Manager” em Raspberry Pi
Vamos começar verificando como funciona o programa principal. Digite o seu nome no terminal e pressione Enter. Ele exibe uma lista de programas em execução (processos) e o seu uso de recursos. Este é o equivalente do gerenciador de tarefas do Windows. Para sair do programa, pressione q.
Instalando um novo “Gerenciador de Tarefas”
Há também uma versão mais extensa do “Gerenciador de Tarefas” chamado htop. Nós o instalamos emitindo o comando:
sudo apt install htop
Os programas são instalados dessa maneira – em vez de htop, podemos fornecer qualquer outro pacote disponível.
Após uma breve instalação,o htop deve estar disponível. Começamos digitando htop e pressionando Enter. A primeira coisa que chama a atenção é uma tela colorida. No entanto, o que é visto no canto superior esquerdo é definitivamente o mais interessante. Podemos ver o uso de qualquer núcleo Raspberry Pi:
Remover programas
Se pensarmos que não precisamos mais de um programa, podemos desinstalá-lo com um dos dois comandos . O primeiro desinstala o pacote de software, o segundo exclui o programa e todos os seus arquivos de configuração.
sudo apt remove htop sudo apt purge htop
Ao remover o programa, seremos solicitados a confirmar esta operação:
O sistema de arquivos da Linux
Antes de começarmos a trabalhar, precisamos de conhecer o sistema de arquivos do Linux. Nos sistemas Unix, a abordagem é que tudo é um arquivo – é muito importante familiarizar-se com o suporte a arquivos.
Os arquivos também serão cruciais ao conectar componentes eletrónicos adicionais, por exemplo, diodos, botões e sensores!
O Linux usa uma árvore de diretórios. A Microsoft copiou essa solução digitando a opção “Meu Computador” e, no passado, cada disco vivia sua a própria vida (C:, D:, E:, etc). No caso do Linux, o diretório principal é marcado com um único caractere / (barra). Esta é a raiz da árvore de diretórios, por isso é chamada de raiz.
Anteriormente, vimos a árvore de diretórios usando o WinSCP:
Verificando o catálogo atual
Após o login, o diretório padrão é o diretório inicial/home/pi. Para ver isso, podemos executar o comando pwd, que imprime o diretório atual (pwd – print working directory):
Verificando o conteúdo do diretório
Para verificar o conteúdo do diretório, podemos usar o comando ls. Claro, todas as informações relacionadas a este comando podem ser obtidas graças ao homem ls. É um desperdício de tempo para mergulhar em todas as opções disponíveis agora. Vamos dar uma olhada nos mais populares:
- ls – exibe uma lista de arquivos no diretório local
- ls -l – exibe uma longa lista com direitos de acesso para todos os arquivos e diretórios
- ls -a – exibe arquivos ocultos (com um nome que começa com um ponto)
- ls -1 – lista de arquivos numa coluna
- ls <caminho> – por exemplo, ls /, mostra os arquivos na pasta especificada
Lugares que valem a pena ver:
- ls / – diretório principal
- ls / dev – contém drivers de dispositivo, por exemplo, / dev / ttyAMA0 é uma porta serie à qual podemos conectar nosso adaptador UART-USB
- ls / home – existem diretórios de usuários (todos têm seu próprio subdiretório)
- ls / root – diretório raiz , nós não temos acesso a ele (mas vale a pena tentar)
- ls / proc – um diretório virtual com informações sobre o sistema
- ls / sys – mais novo equivalente / por cento
- ls / boot – aqui encontrará os arquivos necessários para inicializar o sistema e os arquivos de configuração, eles também são visíveis para o Windows (quando inserimos o cartão SD no PC)
Existem muitos outros lugares interessantes no sistema – nós vamos lidar com eles quando necessário!
Completando nomes, memorizando comandos
Nós escrevemos o início do nome, pressione tab e completará o nome (se for um nome não ambíguo e correto). Podemos escrever ls / pr e pressionar tab – shell irá completar o nome para ls / proc /
A história dos comandos emitidos é lembrada. Pode retornar para os anteriores usando os cursores. A seta para cima é o comando anterior (desce a próxima enquanto nos movemos para trás). Além disso, as setas esquerda e direita permitem mover o cursor e modificar comandos. Pressionar Enter executará o comando novamente.
Vamos ver uma lista de todos os comandos previamente emitidos, digitando o comando:
history
Visualizar arquivos
Nós já aprendemos sobre ls que mostra o conteúdo do diretório. Agora vamos ver como ler o conteúdo do arquivo. O comando cat <nome do arquivo> é usado para isso. Então vamos escrever:
cat /proc/meminfo
Como podemos ver, este “arquivo” contém informações sobre a memória disponível no sistema. Este é um arquivo virtual, não vamos encontrá-lo no SD. No Linux, tudo é um arquivo, então podemos ler as informações de um arquivo normal. É muito mais conveniente do que procurar em gerenciadores de dispositivos (embora seja provavelmente uma questão de gosto).
Verificando a versão do seu sistema, processadores disponíveis
Vamos verificar a versão do sistema instalado, digitando o comando:
cat /etc/os-release
Outro arquivo que vale a pena visualizar é cat / proc / cpuinfo. Graças a isso, vamos descobrir quantos e quais processadores o Raspberry Pi tem:
cat /proc/cpuinfo
Aliás, descobrimos uma desvantagem do comando cat. Se o arquivo contiver mais dados, todos eles serão exibidos ao mesmo tempo. Se quisermos navegar pelo conteúdo inteiro do arquivo, é melhor usar o comando less. Ele permite que pare a exibição em cada página (e retorne à anterior).
Combinando vários comandos – menos na prática
Em sistemas “semelhantes ao Unix”, que incluem o Linux, é comum combinar vários comandos simples. Comandos subsequentes aceitam entrada do programa anterior como entrada. Então, vamos conectar a saída do cat com a entrada less, para termos tempo de ler o conteúdo:
cat /proc/cpuinfo | less
Sinal de linha vertical | é apenas para juntar comandos. É uma ferramenta muito conveniente e poderosa. No começo, pode não parecer. Para cat e less, também pode escrever less / proc / cpuinfo , mas use | vale a pena lembrar-se no futuro.
Sair do redirecionamento
Também é possível redirecionar a saída. Vamos tentar o comando tree , que exibe a árvore de diretórios. O comando a seguir fará com que a árvore de diretórios (a partir da raiz) seja exibida com uma limitação ao nível 1.
tree / -L 1
Se um nível funcionar, porque não verificar o que acontecerá com dois: tree / -L 2. Infelizmente, é pior aqui porque a informação será horrível. Sabemos como conectar comandos com less, graças aos quais poderemos visualizar os dados da tela. No entanto, e se, por exemplo, gostaríamos de enviar a nossa árvore de diretórios para alguém, por exemplo, com um pedido de ajuda? Claro, pode tirar 100 capturas de tela ou gravar um vídeo… No entanto, a maneira mais fácil é redirecionar a saída do comando para um arquivo.
O operador > é usado para isso (a maioria dos caracteres):
tree / -L 2 > drzewko.txt
Este comando será executado muito mais rápido – a exibição de dados leva mais tempo do que gravar num arquivo. Agora podemos usar ls e ver que há um novo arquivo no diretório atual: tree.txt.
Este arquivo pode ser escrito com o comando cat, mas não será muito conveniente. Você também pode baixá-lo usando o WinSCP e visualizar o computador num processador de texto. No próximo artigo, vamos verificar como usar os editores de texto disponíveis.
Como você verifica a temperatura atual do processador?
Finalmente, um comando curto, graças ao qual vamos verificar se o nosso processador não está muito quente. Podemos verificar a indicação da temperatura atual com o seguinte comando:
vcgencmd measure_temp
Depois de chamá-lo, receberemos a medição atual:
Sumário
Discutimos a primeira parte dos fundamentos mais importantes do trabalho no terminal. Os comandos descritos aqui são usados praticamente o tempo todo, então precisa conhecê-los de cor. Vale a pena experimentar o máximo possível agora, porque o possível dano será pequeno – no pior dos casos, basta carregar um novo sistema no cartão.
No próximo artigo, veremos outros aspectos do trabalho com o Linux. Entre outras coisas, falar-se-á de editores de texto de terminal e operações em arquivos e catálogos. Também discutiremos o sistema de permissões de arquivos, que a princípio pode parecer menos intuitivo.
___________
O que achou deste artigo? Deixe o seu comentário abaixo, e partilhe nas Redes Sociais que certamente será útil e interessante para os seus amigos!
Curso Raspberry Pi – #1 – Introdução, Índice
Curso Raspberry Pi – #2 – O que é o Raspberry Pi?
Curso Raspberry Pi – #3 – Caixa, Dissipadores de Calor
Curso Raspberry Pi – #4 – Instalação do Sistema, Raspberry Pi como PC
Curso Raspberry Pi – #5 – Instalação / Comunicação Via UART
Curso Raspberry Pi – #6 – Instalação / Comunicação Através da Rede
Curso Raspberry Pi – #7 – Acesso Remoto VNC, Chaves SCP, RSA
Curso Raspberry Pi – #8 – O Básico do Linux
Curso Raspberry Pi – #9 – Processadores de Texto
Curso Raspberry Pi – #10 – Câmara, Fotos, Transmissão de Imagem
Curso Raspberry Pi – #11 – Filmes, Slowmotion, Timelapse
Curso Raspberry Pi – #12 – Noções Básicas sobre GPIO, Scripts
Curso Raspberry Pi – #13 – PWM, Entradas, Scripts com uma Câmara