Todo usuário Linux que já saiu do básico, sabe o quanto o terminal é uma ferramenta incrível, dá para fazer tanta coisa com ele, que é impossível de listar! Selecionamos várias ferramentas que podem ser muito úteis no seu fluxo de trabalho, mas que a gente não conseguiu reunir a algum tema específico.
Algumas delas são usadas no meio hacker, temos também dicas de configurações, além de alguns truques que você pode usar. Você ainda conhecerá alguns arquivos de configuração do sistema que só quem tem certa experiência com Linux ou é profissional costuma conhecer.
Veja metadados de arquivos com o exiftool
Você pode pensar em metadados como dados sobre algum tipo de dado. O exiftool
é uma ferramenta ótima para encontrar informações ocultas sobre os arquivos, por exemplo, recentemente utilizamos em nossa investigação sobre o Lux, o Linux da Lenovo para encontrar o método de compilação da ISO.
O uso do exiftool
não poderia ser mais simples, você digita exiftool
acompanhado do nome do arquivo que você quer examinar. Funciona para qualquer arquivo, e dependendo dos meta-dados que eles contenham, podem relevar diversas informações úteis.
Analisando os arquivos dessa maneira, podemos descobrir diversas coisas indiretamente. Por exemplo, numa foto tirado por um smartphone cuja localização estava ativa, dá para ver até as coordenadas de GPS de onde foi tirada, uma ferramenta bem poderosa.
Bloqueie o acesso a sites no Linux com o arquivo Hosts
Um arquivo muito interessante que você pode conhecer no Linux é o hosts
, ele fica na pasta /etc/
e você pode alterá-lo usando algum editor de textos, como o nano. Ele funciona como um DNS local, então você pode ser usado para bloquear um site, basta apontar uma URL para um IP local, por exemplo, diolinux.com.br para o 127.0.0.1 que é o localhost.
Agora, se a gente tentar acessar o site do Diolinux pelo Firefox, dará o seguinte erro:
Basta apagar a linha para retornar ao normal.
Outra coisa interessante que podemos fazer usando esse arquivo, é criar domínios para os nossos servidores e outros PCs locais, sem precisar fazer um registro válido. Utilizando um Ubuntu Server rodando no Virtualbox, por exemplo, ele tem o endereço de IP com final 112.
Se ele estiver rodando, por exemplo, um servidor web, como o nginx
, podemos acessar a página pelo IP local no navegador. Utilizando o hosts, conseguimos direcionar um domínio local ao IP do servidor, muito mais fácil de lembrar do que um número.
Liberte o terminal com o &
Você já deve ter reparado que alguns comandos prendem o terminal enquanto ele estão rodando. Uma alternativa é abrir outra aba, mas sabia que existe um argumento que joga o processo para segundo plano? Basta após o comando, adicionar um espaço e um &
no final!
Se você usar o comando ps
, dá para ver quais processos estão rodando nessa sessão do terminal, incluindo o ID do processo em python que a gente iniciou.
Para colocar ele de volta para primeiro plano, usamos o comando fg
e o nome ou o ID do processo, nesse caso poderia ser fg python3
. Por fim, podemos cancelar a execução dele com um control+C.
Execute um comando repetidas vezes com o watch
Você já deve ter usado vários comandos no terminal que retornam uma saída estática. Um exemplo é o free -h
, que retorna o uso de RAM do sistema no momento em que ele é executado, mas a gente sabe que este dado está sempre oscilando, por isso ferramentas como o htop ou o btop são melhores.
Mas também podemos deixar o free -h
dinâmico, tudo o que precisa para ter resultados constantes é rodar ele em conjunto com o comando watch:
watch -n1 ‘free -h'
Isso fará com que o comando seja rodado a cada 1 segundo, trazendo resultados atualizados.
Para cancelar é só dar um control+c. Para monitorar um comando que recebe argumentos, como o free -h
, basta colocar entre aspas.
Trocando o shell do seu terminal
Qual os shells que tenho instalado no meu computador?
cat /etc/shells
Como saber qual é o shell padrão do sistema?
echo $SHELL
Como faz para trocar o shell padrão?
Agora que a gente sabe onde estão todos os shells, podemos usar o comando chsh
, de “change shell” para fazer a mudança, com um sudo chsh
, podemos trocar o endereço do shell de login para o zsh por exemplo.
Isso terá efeito no próximo login de shell que você fizer, mas usando outro comando chamado finger
, podemos ver detalhes do usuário que indicam o shell padrão dele, já que a variável shell não foi alterada ainda.
Usamos o comando finger diolinux
, para ver detalhes do usuário, incluindo o shell padrão, que virou o zsh. Para voltar ao padrão é só alterar de volta usando o mesmo comando chsh
.
Quem sou eu? Onde estou?
Se qualquer dia você se perguntar quem é você e não souber a resposta, o terminal provavelmente sabe, escreva whoami
e ele vai te retornar o seu nome de usuário. Se você não souber onde está, experimente digitar pwd
, e o terminal vai te mostrar em que pasta você está.
O que é ou onde está algum determinado arquivo?
Se você não souber onde um programa está, pergunte para o terminal, whereis firefox
e ele vai te mostrar os caminhos onde você pode encontrar o Firefox.
Descubra quem é o dono de um site pelo terminal Linux
Se você um dia quiser saber quem está por trás de um site, ou tentar descobrir pelo menos, digite um whois
no terminal, tipo whois amazon.com.br
, muitas vezes você encontra os nomes e e-mails de responsáveis pelos sites dessa forma.
Crie atalhos para comandos no Linux
Você já deve saber que você pode listar os seus flatpaks usando o comando flatpak list
, essa é muito útil, mas infelizmente você não consegue abrir os aplicativos usando o nome deles, tipo, VLC, não abre o VLC.
A sintaxe correta é, na verdade, flatpak run e depois o ID do programa. Nesse caso, para abrir o VLC o comando seria flatpak run org.videolan.VLC
.
Isso pode ser bem problemático, especialmente quando o nome do programa é muito grande, sem falar que é muito difícil de lembrar o ID completo deles.
Uma solução para isso: acessar o arquivo de aliases do BASH por um editor de textos como o Nano, onde podemos criar comandos personalizados, com o comando:
nano ~/.bash_aliases
Note a função que criamos no final da imagem acima, ela se chama “flatrun”, pega o ID dos flatpaks e permite que você execute o software sempre precisar digitar todo aquele endereço. Basta salvar e aplica com o comando:
source ~/.bash_aliases
E agora podemos digitar apenas flatrun VLC, bem mais prático. Colocamos essa função num post do nosso fórum, o Diolinux Plus, inclusive se tiver alguma dúvida, quiser compartilhar algum comando de terminal, ou conversar sobre Linux e tecnologia, este é o lugar certo!