Notícias sobre Ubuntu, Debian, Fedora, Linux, Android, Tecnologia, LibreOffice e muito mais!

Faça do terminal o seu amigo (parte 2)

Aprenda mais sobre o Terminal, e domine melhor o seu GNU/Linux!

Neste artigo daremos continuidade ao tutorial de comandos do terminal. Veremos o é que o comando “sudo”, o que são e como funcionam os gerenciadores de pacotes (Package Managers), o que são e como criar e executar arquivos .sh (Shell Script).

Se você perdeu a parte 1 então confira clicando no botão abaixo, depois volte aqui para continuar!

Faça do terminal seu amigo – parte 1

Faça do terminal Terminal Linux seu amigo Parte 2!

Se você é um usuário iniciante provavelmente está usando Ubuntu ou Linux Mint e os primeiros comandos deve ter aprendido são os clássicos “sudo apt-get update”, “sudo apt-get upgrade” e “sudo apt-get install <nome do pacote>”, você já sabe o que eles fazem, mas você sabe o significado de cada um deles?

Vamos analisa-los um a um para melhor entende-los!
sudo

O comando “sudo“ foi criado na década de oitenta por Bob Coggeshall e Cliff Spencer, sudo significa “Super User Do” ou “Super Usuário Faça”. Ele serve para executar comandos como super usuário (usuário root) ou como qualquer outro usuário sem a necessidade de logar como o mesmo. No Linux, bem como no Unix, apenas o usuário root pode modificar qualquer coisa dentro do sistema. Para instalar programas no Linux, por exemplo, seria necessário abrir o terminal e logar como root com o comando “su”, porem em distribuições como o Ubuntu o usuário root não está habilitado, então apenas o comando “su” não vai funcionar, você terá que usar o comando “sudo su” ou “sudo -i” para faze-lo.

[[email protected] ~]$ sudo su
[sudo] password for usuário:

ou

[[email protected] ~]$ sudo -i
[sudo] password for usuário:

Lembrando que enquanto você estiver digitando a sua senha não aparecerá nada, então digite a sua senha normalmente que o sistema fará o login.

[[email protected] ~]#

Você deve ter notado que no lugar de onde deveria aparecer o nome do seu usuário apareceu “root” e no lugar de “$” apareceu “#”. O “cifrão” aqui representa o seu usuário comum e o “jogo da velha” representa o usuário root. Tome muito cuidado agora, pois o sistema obedece o usuário root ao pé da letra, então todo o cuidado é pouco, só faça algo no sistema se você tiver certeza de que sabe o que está fazendo.

Agora você não precisa mais digitar “sudo” para usar o “apt-get”.
apt-get update

apt-get upgrade

apt-get install <nome do pacote>
Com o usuário root tudo é possível, você tem domínio total sobre seu sistema e pode fazer qualquer coisa com ele. Mas agora vamos fazer logoff digitando o comando “exit”.
[[email protected] ~]# exit

[[email protected] ~]$
Agora voltamos ao cifrão de nosso usuário comum.

Muitas vezes digitamos um comando que requer autorização de super usuário, mas esquecemos de digitar “sudo” antes do comando. Quando isso acontece não é necessário digitar todo o comando novamente, basta digitar “sudo !!” que o comando anterior é reexecutado como root.

$ apt-get update
Você precisa ser root para executar este comando.
$ sudo !!
sudo apt-get update
[sudo] password for usuário:

Conhecendo os gerenciadores de pacotes mais usados

apt-get-install

Os package managers (Gerenciadores de pacotes) são os instaladores / desinstaladores do Linux, eles variam dependendo de cada família de distribuição Linux, por exemplo, o Debian deu origem a varias outras distribuições como o Ubuntu, o Linux Mint, o Zorin OS, o Elementary OS, etc, já o Red Hat deu origem ao Fedora, ao CentOS, ao Oracle Linux, etc. Normalmente essas distribuições herdam o mesmo package manager de seus antecessores, mas isso não é uma regra.

Abaixo darei um exemplo de quais distribuições usam quais gerenciadores de pacotes.

dpkg

Usado originalmente pelo Debian e agora por outros sistemas como o Ubuntu, usa o formato .deb e foi o primeiro a ter uma ferramenta de resolução de dependências amplamente conhecido como APT (apt-get ou aptitude).

rpm

Criado pela Red Hat e utilizada por uma série de outras distribuições Linux. RPM é o formato de embalagem Linux Standard Base e possui ferramentas adicionais, incluindo o urpmi usado pelo Mandriva e pelo Majora, o Zypp (YaST) usado pelo OpenSUSE e YUM, que é usado pelo Red Hat, Fedora, CentOS e Oracle Linux. Recentemente foi criado também o DNS para o Fedora que deverá substituir o YUM.

slackpkg

Usado por Slackware Linux e seus derivados, há algumas ferramentas de nível superior que usam o mesmo formato de embalagem tgz, incluindo slapt-get, zendo, netpkg e swaret.

pacman

Usado pelo Arch Linux e Manjaro.

PETget

Usado pelo Puppy Linux .

emerge

Usado pelo Gentoo.

Vamos usar o dpkg para explicar o funcionamento de um package manager.

Cada package manager tem uma lista de endereços de repositórios onde ficam armazenados os todos os pacotes disponíveis, no caso de distribuições baseadas em Debian essa lista se localiza em “/etc/apt/sources.list”, ao digitar o comando “sudo apt-get update” o APT faz uma leitura desses repositórios e ao digitar “sudo apt-get upgrade” ele irá comparar as versões dos pacotes instalado no seu sistema com as versões dos pacotes dentro dos repositórios, caso haja pacotes a serem atualizados o APT vai resolver as dependências e baixar os pacotes, ai o dpkg entra em ação instalando, atualizando ou removendo pacotes.

Shell Scripts

Os Shell Scripts são arquivos executáveis de extensão .sh que contem comandos de terminal para realizar tarefas especificas como configurações de sistema com criação de outros arquivos e diretórios, regras de firewall e instalação de programas. Comandos como cd, touch, mkdir e outros são utilizados nos Shell Scripts.

Agora vamos criar um Shell Script para atualizar o sistema, no caso ainda utilizando o APT. Abra o terminal e como o comando “touch” crie um arquivo chamado “atualizar.sh”.

$ touch atualizar.sh

Após termos criado nosso arquivo com extensão “.sh” vamos usar um editor de texto do shell chamado nano, para isso basta chamar o “nano” e depois o nome do arquivo a ser editado.

$ nano atualizar.sh

Esse é o nano, é um editor de texto comum como o gedit, mas só pode ser usado dentro do terminal. Com o nano vamos digitar as seguintes instruções:

#!/bin/bash
sudo apt-get update
sudo apt-get upgrade

O primeiro comando “#!/bin/bash” indicará ao sistema que se trata de um arquivo executável e os outros comandos deveram ser executados em sequencia. Para salvar o decumento pressione <Ctrl+o> e para sair do nano pressione <Ctrl + x>.

Quando criamos um aquivo no Linux, por padrão, esse arquivo possui apenas permissão de leitura e escrita, por isso não podemos executa-lo assim que o criamos, vamos dar-lhe a permissão de execução com o comando “chmod”, caso você não esteja familiarizado com esse comando você pode ver um outro tutorial clicando aqui.

$ chmod u+x atualizar.sh

Agora já podemos executa-lo, para executar um arquivo .sh no Linux basta digitar “ ./ “ antes do nome do arquivo.

$ ./atualizar.sh

Ao executa-lo a senha de super usuário foi pedida, isso porque o sudo já foi chamado dentro do script, apenas digite a sua senha de usuário root e espere o sistema atualizar ou pressiona <Ctrl+c> para interromper o o processo.

Nota: o <Ctrl+c> pode ser utilizado para interromper qualquer processo dentro do terminal, mas ao atualizar o sistema NUNCA interrompa o dpkg, isso pode quebrar o seu sistema.
Comentários