Skip to content

Atividade Complementar - Introdução ao Linux

Infraestrutura Necessária

Linux

O desenvolvimento do Linux é um dos exemplos mais proeminentes de colaboração de software livre e de código aberto. O código fonte pode ser usado, modificado e distribuído, com fins comercias ou não, por toda a comunidade, respeitando as licenças.

Normalmente, o Linux é utilizado como plataforma de desenvolvimento em sistemas embarcados

Fonte

Existem diversas distribuições disponiveis, a distribuição Linux ou Sistema Operacional que vamos usar será o Ubuntu.

Sobre as distribuições disponíveis, deixamos alguns links aqui, mas não se restrinja apenas a eles:

Linux Fundation, Distribuições Linux, Manjaro, Ubuntu.

Conhecendo e utilizando o Terminal

O Terminal do Linux é uma ferramenta que facilita a manipulação do sistema, interpretando os comandos do usuário, fazendo a ponte com o hardware do seu computador

Abrindo o terminal

A forma mais facil de abrir o terminal é atraves do atalho:

Ctrl + Alt + T

Neste momento nos deparamos com a janela do terminal aberta no ambiente do usuário (home ou ~) pronta para receber os primeiros comandos.

Comando "apt"

APT é um conjunto de ferramentas usadas pelo Linux para administrar os pacotes .deb de forma automática, é possível instalar, atualizar e remover programas e suas dependências via apt;

Atualizar a "lista de pacotes"

Com o comando abaixo, usamos o apt para atualizar todos os programas instalados com essa ferramenta;

sudo apt update 

Atualizar pacotes "já instalados"

Se quiser atualizar um pacote especifico, é possivel determinar o programa a ser atualizado;

sudo apt --only-upgrade install google-chrome-stable
sudo apt --only-upgrade install firefox

Com o comando abaixo, é possível baixar e instalar a versão mais atual de todos os programas instalados anteriormente via apt;

sudo apt upgrade 

Instalar pacotes via apt

Com este comando, usamos o apt para encontrar, baixar e instalar o .deb do programa que queremos instalar no nosso computador;

sudo apt install -y geogebra 

Após finalizar a instalação do programa, podemos executar a nova ferramenta, apenas digitando o nome dela no terminal.

geogebra

Remover pacotes via apt

Tambem é possivel desinstalar um programa que foi baixado via apt, basta usar o comando remove, como no exemplo abaixo;

sudo apt remove geogebra

Instalar pacotes via Ubuntu Software

Podemos instalar pacotes via Ubuntu Software, basta clicar em Show Applications, no canto inferior direito da tela, e digitar Ubuntu Software na janela de busca;

Agora clique na lupinha e digite o programa que deseja instalar;

Clique no software escolhido, e depois, clique no botão Instalar;

Terminada a instalação, basta clicar no botão Launch para executar o programa, ou Remove para desinstalar;

Um pouquinho de GitHub

Antes começar a falar dos comandos via terminal, vamos configurar as nossas credenciais do GitHub, para isso, copie os comandos abaixo e cole no terminal:

git config --global --unset credential.helper
git config --global user.name "Seu Nome"
git config --global user.email "seunome@email.com"

Se você tentou usar Ctrl + C no texto e Ctrl + V no terminal, certamente não deu certo.

Para copiar e colar no terminal use:

Ctrl + Shift + C (Copiar) e Ctrl + Shift + V (Colar).

Sabendo disso, faça a configuração das suas credenciais do GitHub copiando e colando o comando no terminal.

Para verificar se funcionou, digite:

git config user.name
git config user.email

Este comando grava as suas credenciais do GitHub, para facilitar a sua vida na hora de enviar seus arquivos locais para o repositório remoto.

O Sistema Linux trabalha com dois elementos principais: Diretórios(pastas) e Arquivos.

  • Os arquivos armazenam dados(txt,md,doc...), executam ações (py,jar,bin...)
  • Diretórios agrupam os arquivos e organizam o sistema

Fonte

Comando "cd"

O comando cd é um dos comandos mais utilizados no terminal do Linux isso porque ele permite que acessemos um diretório especifico. Vamos acessar o nosso repositorio de Elementos de Sistemas, e atualizar ele via comandos git.

cd Z01.1
git pull

É uma boa prática manter os seus repositórios do GitHub sempre atualizados, antes de começar a trabalhar, não esqueça de dar um git pull, para ter certeza de que está trabalhando com a ultima versão dos arquivos no seu repositório!

Feita a atualização, vamos instalar uma ferramenta que permite visualizar toda a estrutaras de árvore da pasta,

sudo apt install tree

Agora digite o comando para visualizar a árvore do repositório de Elementos de Sistemas:

tree -d -L 4

Esta ferramenta é útil para navegar de forma mais eficiente dentro do sistema, se não sabemos aonde determinado repositório está, é possivel consultar a árvore para localizar o seu caminho visualmente.

os paramentros -d -L 2 indica que que queremos listar (-L )até o quarto (4) nível na hierarquia de pastas, apenas as pastas (-d)

para listar tudo digite apenas tree.

Na pasta em home, Z01.1 -> Projetos -> B-LogicaCombinacional -> src estão os arquivos .hdl da ultima aula, vamos dar uma olhada neles.

cd ~
cd Z01.1
cd Projetos
cd B-LogicaCombinacional
cd src

ou par ir direto para este diretorio digite:

cd /home/borg/Z01.1/Projetos/B-LogicaCombinacional/src

Dica:. Podemos apenas digitar o começo do comando e usar a tecla TAB para auto-completar.

Para acessar o diretório anterior podemos digitar:

cd ..

Comando "pwd"

Podemos verificar o caminho do diretório que estamos digitanto:

pwd

Para acessar o diretório home, basta digitar;

cd

Toda vez que abrimos um novo terminal, ele é inicializado na home do usuário.

Comando "ls"

O comando ls é utilizado pra visualizar o conteúdo de um diretório.

ls

Visualização de arquivos e pastas ocultos

O comando "ls" sozinho não exibe arquivos ocultos, que são arquivos e pastas que começam com ".". Talvez, em algum momento será necessário atualizar ou modificar as variáveis de ambiente, para isso, teremos que editar um arquivo oculto chamado ".bashrc", no momento precisamos apenas saber que este arquivo se encontra na home do usuario ~ e que após editado precisamos executar o source ~/.bashrc ou feche o terminal e abra um novo para recarregar as atualizações do arquivo.

cd ~
ls -a

ou para listar informações mais detalhadas:

ls -la

ou simplismente:

ll
cd ~
code .bashrc
source .bashrc

Comando "mkdir"

Para criar um novo diretório no ambiente em que você está, basta digitar o comando a seguir;

mkdir ~/Documents/nome_da_pasta/nome_da_pasta

Para criar um novo diretório em um local especifico, basta especificar o caminho que o diretório deverá ser criado;

Dica:. Você sempre pode usar a tecla TAB para auto-completar os comandos.

mkdir /home/borg/Documents/nome_da_pasta 

ou

mkdir ~/Documents/nome_da_pasta 

Comando "touch"

O comando touch cria arquivos vazios, na extensão que você definir;

touch /home/borg/Documents/nome_da_pasta/teste.py
touch /home/borg/Documents/nome_da_pasta/testando_outra_extensao.txt

O comando > funciona exatamente como o touch:

> /home/borg/Documents/nome_da_pasta/outro_teste.py
> /home/borg/Documents/nome_da_pasta/mais_um_teste.txt

Se você tentar abrir um arquivo que não existe, usando um editor de texto pelo terminal, o sistema cria o arquivo pra você, observe;

nano /home/borg/Documents/nome_da_pasta/usando_o_nano.py
code /home/borg/Documents/nome_da_pasta/usando_o_vscode.md
gedit /home/borg/Documents/nome_da_pasta/o_bloco_de_notas.txt

Comando "cp"

Para copiar arquivos e diretorios, basta digitar:

> /home/borg/Documents/nome_da_pasta/meu_programa_python.py 
cp -R /home/borg/Documents/nome_da_pasta/meu_programa_python.py /home/borg/Documents/

No exemplo acima foi criado um arquivo chamado meu_programa_python.py e uma copia do arquivo "meu_programa_python.py" dentro do diretório Documents.

Comando "mv"

Para mover arquivos e diretorios, o famoso Ctrl + X / Ctrl + V, basta digitar:

mv /home/borg/Documents/nome_da_pasta/testando_outra_extensao.txt /home/borg/Documents/

No exemplo acima o arquivo "testando_outra_extensao.txt" foi movido para dentro do diretório Documents (recortado e colado).

Comando "mv"

O comando mv tambem serve tanto para mover, com para renomear arquivos e diretorios:

mkdir /home/borg/Documents/nome_da_pasta/pastinha
mv /home/borg/Documents/nome_da_pasta/pastinha /home/borg/Documents/nome_da_pasta/nova_pastinha

Atenção!! Cuidado para não sobrescrever arquivos e pastas atuais na hora de executar estes comandos.

Comando "rm"

Para excluir arquivos e diretórios, o famoso Shift + Del basta digitar:

rm -rf /home/borg/Documents/nome_da_pasta/nova_pastinha

Atenção!!! Arquivos e pastas são apagados permanentemente, não vão para lixeira. No caso de diretórios, apaga o diretório e tudo que está dentro dele.

Super Usuário

Comando "sudo"

Por questões de seguraça, o Linux trabalha com permissões de usuários e para determinados arquivos ou comandos apenas o usuario administrador (root) pode executar. A titulo de curiosidade, "sudo" significa Super User DO. Quando executar comandos com sudo, será necessário informar a senha.

Comando "chmod"

As permissões servem para determinar se um usuario ou grupo terá permissões para ler, gravar, executar. Existem diversas configurações possiveis e a que mais utilizamos dá a permissão de execução a um codigo qualquer, como um python, por exemplo;

touch /home/borg/Documents/nome_da_pasta/teste.py
chmod a+x /home/borg/Documents/nome_da_pasta/teste.py

A concatenação de a+x significa que estamos permitindo para todos (a = all) usuarios e grupos executem (x = execution) o teste.py

Editando arquivos

Existem várias ferramentas para edição de texto, de um modo geral, podemos dizer que existem 2 grupos principais, os que rodam direto no console (terminal) e os que possuem uma interface gráfica.

Editor nano

O nano é um editor do modo console, ou seja, abre no proprio terminal.

Abrir

Digite no terminal nano e o nome do arquivo com a extensão, caso não exista um arquivo com esse nome um novo arquivo será criado.

nano /home/borg/Documents/nome_da_pasta/nano.md
nano /home/borg/Documents/nome_da_pasta/nano.txt

Localizar palavra

Para fazer uma busca no texto pressione Ctrl + W, digite a palavra e aperte Enter.

Salvar e Sair

Para salvar, precione Ctrl + S. Para sair Ctrl + X. Para sair sem salvar alteraçes, Ctrl + X e N.

Editor gedit

Muito parecido com o famoso bloco de notas do Windows.

Abrir

Digite no terminal gedit e o nome do arquivo com a extensão, caso não exista um arquivo com esse nome um novo arquivo será criado.

gedit /home/borg/Documents/nome_da_pasta/roda_tartaruga.py
gedit /home/borg/Documents/nome_da_pasta/roda_tartaruga.md

Localizar palavra

Para fazer uma busca no texto pressione Ctrl + F, digite a palavra e tecle Enter.

Salvar e Sair

Para salvar e sair, pressione Ctrl + S ou clique em salvar para salvar e para sair Alt + F4

Editor vscode

O editor vscode é uma ferramenta que possui mais recursos que auxiliam no desenvimento de codigo.

Abrir

Digite no terminal code e o nome do arquivo com a extensão, caso não exista um arquivo com esse nome um novo arquivo será criado.

code /home/borg/Documents/nome_da_pasta/roda_tartaruga.py

Localizar palavra

Para fazer uma busca no texto pressione Ctrl + F, digite a palavra e tecle Enter.

Salvar e Sair

Para salvar e sair, pressione Ctrl + S ou clique em salvar para salvar e para sair Alt + F4

BONUS

Comandos úteis para verificar informações do sistema, encontrar bugs, e matar programas travados;

Informações dos dispositivos conectados na USB

Se você não tem certeza se o dispositivo conectado a sua porta USB foi reconhecido, use este comando e verifique o log do sistema;

lsusb

Informações dos dispositivos conectados na USB

Se você não tem certeza se o dispositivo conectado a sua porta PCI foi reconhecido, use este comando e verifique o log do sistema;

lspci

O programa travou, e agora?

Para destravar uma tela, use "xkill" e clique na tela com o mouse.

xkill

Para matar um processo, digite o comando abaixo, e o nome do software que deseja assassinar;

pkill terminal

Preparamos um desafio para você, navega até a proxima página e divirta-se com a tartaruga do ROS