Comandos Essenciais do Linux para Gerenciamento de Processos, Instalação e Busca

  1. Gerenciamento de Pacotes no Debian/Ubuntu

O utilitário dpkg é uma ferramenta de baixo nível para manipular pacotes .deb. Exemplos de uso:

# Verificar se o pacote 'ssh' está instalado
dpkg -s ssh

# Listar todos os arquivos associados ao pacote 'ssh'
dpkg -L ssh

# Instalar o editor vim a partir de um arquivo .deb local
dpkg -i vim.deb

# Instalar via repositório online
apt-get install vim

# Remover o pacote 'vim' (mantém arquivos de configuração)
dpkg -r vim

# Remover completamente o pacote 'vim' (inclui arquivos de configuração)
dpkg -P vim

  1. Gerenciamento de Pacotes no Red Hat/CentOS (YUM)

O yum é o gerenciador de pacotes para distribuições baseadas em Red Hat.

# Verificar se o vim está disponível nos repositórios
yum list vim

# Listar todos os pacotes instalados no sistema
yum list installed

# Instalar o vim
yum install vim

# Instalar a partir de um arquivo .rpm local
yum localinstall vim.rpm

# Atualizar o vim para a versão mais recente
yum update vim

# Remover o vim
yum remove vim

# Remover o vim e todos os arquivos relacionados (remove dependências)
yum erase vim

# Limpar o cache do yum
yum clean all

  1. Alteração de Senha do Root

Para definir ou alterar a senha do superusuário, utilize:

sudo passwd
# Digite a nova senha quando solicitado

# Para mudar para o usuário root
su root
# Insira a senha recém-criada

  1. Parada do Sistema

Para desligar a máquina imediatamente:

shutdown -h now

Observação: Se um serviço como o ActiveMQ apresentar um arquivo locked, verifique se não há duas instâncias do serviço em execução.

  1. Remoção de Pacotes via APT

Para remover um software no Ubuntu/Debian:

sudo apt-get remove nome_do_pacote

Exemplo prático:

sudo apt-get remove gitlab

  1. Verificação de Comandos (Internos vs Externos)

O comando type indica se um comando é nativo do shell ou um binário externo.

type kill
# Saída: kill é um shell embutido

type -P kill
# Saída: /bin/kill

type -P reboot
# Saída: /sbin/reboot

  1. Busca de Arquivos com find

# Procurar por "xx.txt" a partir do diretório atual
find . -name "xx.txt"

# Buscar por "a.txt" em todo o sistema
find / -name "a.txt"

# No diretório "clession", buscar arquivos com dois underscores (ex: test_a)
find clession -name \*\_\*

# Buscar todos os arquivos terminados em ".c"
find / -name \*.c

  1. Localização de Binários com which

O which exibe o caminho completo de um comando dentro dos diretórios listados em $PATH.

which find
# Saída: /usr/bin/find

which touch
# Saída: /usr/bin/touch

8.1 Informações Detalhadas de um Arquivo

Para obter metadados completos de um arquivo (tamanho, permissões, timestamps, etc.), use stat:

stat a.c

Exemplo de saída:

  Arquivo: a.c
  Tamanho: 351          Blocos: 8          Bloco de E/S: 4096   arquivo regular
Dispositivo: 801h/2049d    Inode: 134946      Links: 1
Acesso: (0664/-rw-rw-r--)  Uid: ( 1000/   usuario)   Gid: ( 1000/   grupo)
Acesso: 2018-03-29 20:59:41.294967784 +0800
Modificação: 2018-03-29 20:59:37.390826584 +0800
Alteração: 2018-03-29 20:59:37.390826584 +0800
Criação: -

8.2 Busca de Conteúdo com grep

Para verificar se um termo específico existe dentro de um arquivo:

grep "main" a.txt

  1. Busca por Índice com locate

O locate utiliza um banco de dados indexado (mlocate) para realizar buscas rápidas.

locate mv
# Retorna todos os caminhos que contêm "mv"

  1. Gerenciamento de Processos

Visualização de Processos

# Listar processos associados ao terminal atual, filtrando por ssh
ps aux | grep ssh

# Listar todos os processos (formato completo)
ps -ef

# Filtrar a saída completa
ps -ef | grep ssh

# Exibir árvore de processos com IDs
pstree -p

Monitoramento com top

# Exibe todos os processos dinâmicos com uso de CPU
top

# Enquanto o top estiver rodando, pressione 'i' para ocultar processos inativos

# Monitorar um PID específico (ex: PID do shell atual)
top -p $$

# Monitorar um PID específico (ex: 12345)
top -p 12345

Finalização de Processos

# Encerrar processo pelo PID
kill -9 12345

# Encerrar todos os processos com o nome "gedit"
killall gedit

# Encerrar todos os processos que começam com "http" (Apache, httpd, etc.)
killall http\*

# Obter o PID de um programa em execução
pidof a.out
pidof vim

  1. Identificação de Tipo de Arquivo

O comando file analisa o cabeçalho do arquivo para determinar seu tipo real:

file a.out
# Saída: a.out: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux.so.2, for GNU/Linux 2.6.32

  1. Modifciação do Nome do Host

Para alterar o hostname de forma permanente, siga os passos abaixo:

Passo 1: Modifique o arquivo de configuração de rede:

vim /etc/sysconfig/network

Altere a linha HOSTNAME para o novo valor desejado.

Passo 2: Atualize o arquivo /etc/hosts para associar o novo nome ao IP local:

vim /etc/hosts

Adicione ou modifique as entradas:

127.0.0.1   novo-hostname novo-hostname.localdomain
192.168.10.88  novo-hostname novo-hostname.localdomain

Ou, de forma mais simplificada:

127.0.0.1   localhost
127.0.1.1   novo-hostname

  1. Relações entre Processos

Utilize pstree para visualizar a hierarquia entre processos:

# Mostrar a árvore de processos relacionada ao sshd
pstree -ulp | grep sshd

# Visualizar detalhes do processo sshd
ps -ef | grep sshd

  1. Criação de Aliases

Para simplificar comandos longos ou complexos, defina um alias:

alias myls='ls -l --color=auto'

Dessa forma, ao digitar myls, o sistema executará o comando ls -l --color=auto.

  1. Formatação de Data

O comando date permite exibir a data atual em diversos formatos. Exemplo:

date +%Y%m%d
# Saída: 20180403 (AnoMêsDia)

Tags: dpkg apt-get yum find grep

Publicado em 7-11 10:36