Aprenda Linux

  • Página Inicial
  • Contato!
  • Tudo sobre Linux Parte 1!
  • Tudo sobre Linux Parte 2!
  • Tudo sobre Linux Parte 3!
  • Tudo sobre Linux Parte 4!
  • Tudo sobre Linux Parte 5!
  • Tudo sobre Linux Parte 6!
  • Tudo sobre Linux Parte 4

    Comandos Básicos - tail, tac e wc

    O comando tail é usado para ver as últimas linhas de um arquivo. Por exemplo:

    
    tail frutas.txt # Mostra as 10 últimas linhas de arq1
    
    tail -n 20 frutas.txt # Mostra as 20 últimas linhas de arq1
    
    tail -n 2 /etc/passwd # Mostra as 2 últimas linhas do arquivo
    
    tail -f /etc/passwd # Mostra as 10 últimas linhas dinamicamente, enquanto são geradas.
    
    

    O comando tac é o inverso do comando cat: Ele envia os arquivos de texto para a saída padrão, com as linhas em ordem reversa. Basta usar o comando tac frutas.txt.

    O comando wc exibe contagem de caracteres, palavras e linhas em arquivos, com as opções -c (contagem de caracteres), -l (contagem de linhas)-w (contagem de palavras). Por exemplo:

    
    wc -l frutas.txt
    
    wc -w frutas.txt
    
    wc -c frutas.txt
    
    wc -l /etc/group
    
    

    Comandos Básicos - uniq (Eliminar Linhas Repetidas Adjacentes)

    O comando uniq escreve em stdout uma entrada, eliminando linhas duplicadas adjacentes. A opção -d processa apenas as linhas que se repetem, enquanto a opção -u processa apenas as linhas que não se repetem.

    Para eliminar linhas duplicadas não-adjacentes, primeiro organize o arquivo com sort.

    Primeiro baixe um arquivo de texto clicando aqui, depois digite esses comandos:

    
    cat vegetais.txt
    
    uniq vegetais.txt
    
    

    Pode ver que ele eliminou todas as repetições, exibindo todas as linhas apenas uma vez.

    Digite isso:

    
    uniq -d vegetais.txt # Visualiza apenas as linhas que se repetem
    
    uniq -u vegetais.txt # Visualiza apenas as linhas que não se repetem
    
    

    Comandos Básicos - cp (Copiar Arquivos) e rm (Remover Arquivos)

    O comando cp copia um arquivo ou diretório para outro local, como por exemplo:

    
    cp /home/user/arq1 /home/eu/arq1
    
    

    As opções disponíveis para esse comando são:

    O comando rm pode ser usado para excluir tanto arquivos como diretórios.

    Para excluir arquivos ou diretórios vazios:

    
    rm arquivooudiretorio
    
    

    Para excluir ou diretórios ocupados:

    
    rm -r diretorio
    
    

    Comandos Básicos - mv (Mover Arquivos), cp e rm (Outras Opções)

    Outras opções do comando cp são essas:

    
    cp /home/eu/arq2 . # Copia o arquivo arq2 do diretório home do usuário para o diretório atual
    
    cp /root/a* /home # Copia todos os arquivos que se iniciam com a letra a do diretório root para o home
    
    

    O comando mv move o arquivo ou diretório para o destino especificado.

    As opções disponíveis para esse comando são:

    Veja um exemplo:

    
    mv /root/arq1 /home # Move o arquivo arq1 de /root para /home
    
    

    Outro uso para o comando mv é o de renomear arquivos e diretórios, como por exemplo:

    
    mv /home/eu/arq1 /home/eu/arq2
    
    

    Comandos Básicos - mkdir, rmdir, rm -rf - Manipulação de Diretórios

    O comando mkdir cria um ou mais diretórios, como por exemplo:

    
    mkdir nomedodiretorio
    
    

    As opções disponíveis para esse comando são:

    O comando rmdir remove um diretório vazio. Usamos ele assim:

    
    rmdir nomedodiretorio
    
    

    Como visto anteriormente, o comando rm pode ser usado para excluir tanto arquivos como diretórios, e sabemos que para excluir um diretório ocupado usamos rm -r nomedodiretorio

    O comando rm -rf / remove recursivamente todos os arquivos e diretórios do seu sistema Linux, até a raiz. NUNCA o execute.

    Comandos top e uptime - Monitoramento e Performance de Sistemas Linux

    O comando top fornece uma visão em tempo real do sistema em execução. Essas são as opções dele:

    Digite esses comandos:

    
    top # Modo interativo, use q para sair
    
    top -i # Ignora processos ociosos
    
    top -n 3 # Roda 3 vezes
    
    

    As opções do modo interativo são essas:

    Descrição dos campos de TOP:

    O comando uptime mostra o tempo atual, há quanto tempo o sistema está rodando, quantos usuários estão logados atualmente e as médias de carga do sistema nos últimos 1, 5 e 15 minutos. Use apenas uptime no terminal.

    Comandos vmstat e free - Monitoramento e Performance do Sistema Linux

    O comando vmstat reporta informações sobre processos, memória, paginação, blocos de I/O, traps e atividades de CPU. Usa a sintaxe vmstat opções. As opções são essas:

    Digite esses comandos:

    
    vmstat
    
    vmstat -S M
    
    

    Os campos do vmstat são esses:

    Digite esses comandos:

    
    vmstat -a
    
    vmstat -d
    
    vmstat -p /dev/sda1
    
    vmstat -s
    
    

    O comando free exibe a quantidade de memória livre e usada no sistema. Usa-se o comando free opcoes, que são essas:

    Digite esses comandos:

    
    free
    
    free -b
    
    free -k
    
    free -m
    
    free -t
    
    free -s 1
    
    

    Comando iostat e dstat - Monitoramento e Performance do Sistema Linux

    O comando iostat mostra informações sobre o uso da CPU e várias estatísticas sobre E/S do sistema. A sintaxe é iostat opções, que são essas:

    Digite esses comandos:

    
    iostat -c
    
    iostat -d
    
    iostat -p sda # Não precisa colocar o caminho completo
    
    

    O comando dstat permite efetuar monitoramento e verificar performance do sistema Linux, possuindo características dos comandos top, vmstat, free e iostat combinadas. Instale ele com sudo apt install dstat. A sintaxe é dstat opções, que são essas:

    Digite esses comandos:

    
    dstat
    
    dstat -m
    
    dstat -c
    
    dstat -d
    
    dstat -i
    
    dstat -n
    
    dstat --fs
    
    

    PS: Temos também uma ferramenta gráfica para o dstat, digitando sudo apt install gnome-system-monitor.

    Como Criar Array RAID por Software no Linux

    RAID é um arranjo redundante de discos independentes. O dispositivo RAID é um dispositivo virtual criado a partir de dois ou mais dispositivos de blocos reais no Linux, como HDs.

    A função do RAID é combinar dois ou mais dispositivos em um único dispositivo que contém um sistema de arquivos padrão.

    Para configurar o RAID no Linux usamos a ferramenta mdadm, que é usada para administrar conjuntos de multi-dispositivos. Para instalar ele no Debian e derivados use o comando sudo apt install mdadm.

    A sintaxe básica do comando é mdadm [modo] [nomearray] [opções] [componentesarray]

    PS: Para criar o array RAID devemos ter mais de uma partição ou discos no computador. E não mexa nas partições onde o Linux ou outros sistemas estejam instalados, geralmente a /dev/sda. É recomendado usar um sistema em máquina virtual para isso.

    Para listar os discos disponíveis, digite sudo fdisk -l.

    Os discos a serem usados no exemplo serão /dev/sdb e /dev/sdc.

    Primeiramente, crie partições no disco rígido, podemos fazer via linha de comandos digitando esses comandos:

    
    sudo fdisk /dev/sdb
    
    sudo fdisk /dev/sdc
    
    

    Daí é só seguir as instruções para criar as novas partições. Escolha o tipo fd.

    Para criar o array RAID usamos esse comando:

    
    sudo mdadm --create /dev/md0 --verbose --level=1 --raid-device=2 /dev/sdb1 /dev/sdc1
    
    # O md0 é o array RAID, seguido por md1, md2, etc.
    # O level 1 é o RAID por espelhamento.
    # O raid-device é a quantidade de discos que farão parte do array.
    
    

    Para ver o status do array use esse comando:

    
    cat /proc/mdstat
    
    

    Para ver os detalhes do array, digite isso:

    
    sudo mdadm --detail /dev/md0
    
    

    Para adicionar o array ao arquivo de configuração do mdadm (/etc/mdadm/mdadm.conf):

    
    sudo mdadm -Es | grep md >> /etc/mdadm/mdadm.conf # São dois >> para adicionar, NUNCA use um só >
    
    

    Para formatar o array, fazemos assim:

    
    sudo mkfs.ext4 /dev/md0
    
    

    Para montar o array, montamos como um disco comum, assim:

    
    sudo mkdir /raid
    
    sudo mount -t ext4 /dev/md0 /raid
    
    df -h # Para verificar o ponto de montagem
    
    

    RAID por Software o Linux - Simular Falhas, Reparar e Destruir Array

    Para verificar o status do array, usamos esse comando:

    
    sudo mdadm --detail /dev/md0
    
    # Ou também:
    
    cat /proc/mdstat
    
    

    Para simular uma falha no array:

    
    mdadm --manage --set-faulty /dev/md0 /dev/sdc1
    
    

    Vamos remover e colocar um novo disco no lugar do defeituoso:

    
    sudo mdadm /dev/md0 -r /dev/sdc1
    
    sudo mdadm /dev/md0 -a /dev/sdc1
    
    sudo mdadm --detail /dev/md0 # Dê alguns segundos e rode este comando novamente, pode levar horas, dependendo do tamanho do disco
    
    

    Para excluir esse array, fazemos assim:

    
    sudo mdadm --stop /dev/md0
    
    sudo mdadm --remove /dev/md0
    
    sudo mdadm --zero-superblock /dev/sd[bc]1 # O que está entre [] é uma expressão regular
    
    mdadm --detail /dev/md0
    
    cat /proc/mdstat
    
    sudo fdisk /dev/sdb # Use as opções d e p para excluir as partições.
    
    

    RAID 5 no Linux - Configuração e Adição ao FSTAB

    O RAID 5 tem ao menos três discos e funciona armazenando os dados distribuídos pelos discos com informações de paridade, que são bits que são armazenados em cada um dos discos, que permitem a recuperação de dados caso algum dos discos tenham algum problema.

    No nosso exemplo teremos 3 discos, /dev/sdb, /dev/sdc e /dev/sdd.

    Primeiro vamos criar partições específicas para RAID nos discos:

    
    sudo fdisk -l
    
    sudo fdisk /dev/sdb # Use as opções d e p para excluir as partições, e n e t para recriar as mesmas
    
    sudo fdisk /dev/sdc # Mesmo caso acima
    
    sudo fdisk /dev/sdd # Só crie a partição
    
    sudo fdisk -l
    
    

    Crie a matriz RAID 5:

    
    sudo mdadm --create --force --assume-clean /dev/md0 --verbose --level=5 --raid-devices=3 /dev/sd[bcd]1
    
    cat /etc/mdadm/mdadm.conf
    
    

    Para adicionar o array ao arquivo de configuração mdadm.conf:

    
    sudo mdadm -Es | grep md >> /etc/mdadm/mdadm.conf # São dois >>
    
    

    Para formatar o array:

    
    sudo mkfs.ext4 /dev/md0
    
    sudo mkdir /raid # Crie caso nã otenha criado anteriormente
    
    # Para montar o dispositivo:
    
    sudo mount -t ext4 /dev/md0 /raid
    
    # Informações:
    
    df -h
    
    sudo mdadm --detail /dev/md0
    
    

    Para usar o array depois de reinicalizar o computador, faça isso para montar ele automaticamente:

    
    sudo blkid # Para descobrir o UUID do array
    
    sudo nano /etc/fstab
    
    

    No arquivo fstab, adicione essas linhas:

    
    # RAID 5
    uUID=c9a487ed-032b-48a9-b4ef-b8a6db93ea74   /raid   ext4    defaults    0   0
    
    

    Reinicialize a máquina, veja que nas mensagens da inicialização aparecerá os discos criados pelo RAID.