You are on page 1of 22

Linux

Professional
SUMÁRIO
EXAME 101...........................................................................................................................3
Arquitetura do Sistema......................................................................................................3
Iniciar o Sistema ...............................................................................................................4
Mudar Runlevels e Desligar o Sistema ............................................................................5
Desenhar o Layout do Disco Rígido..................................................................................6
Instalar um Gerenciador de Boot.......................................................................................7
Gerenciando Bibliotecas Compartilhadas.........................................................................8
Gerenciador de Pacotes do Debian..................................................................................8
Trabalhar com a Linha de Comandos ............................................................................10
Processar Fluxos de Texto Usando Filtros .....................................................................11
Gerenciamento Básico de Arquivos................................................................................12
Pipes e Redirecionamentos ............................................................................................14
Criar, Monitorar e Matar Processos ................................................................................14
Modificar as Prioridades dos Processos ........................................................................16
Buscar Arquivos Com Expressões Regulares ................................................................16
Edição de Arquivos Usando Vi .......................................................................................17
Criar Partições e Sistemas de Arquivos .........................................................................18
Integridade dos Sistemas de Arquivos ...........................................................................19
Montagem de Sistemas de Arquivos ..............................................................................20
Gerenciar Quotas de Disco ............................................................................................21
Gerenciar Permissões e Donos ......................................................................................22
Criar e Mudar Links ........................................................................................................23
Procurar Arquivos ...........................................................................................................23

2
EXAME 101
Arquitetura do Sistema
Hotplug é a característica de um hardware que pode ser conectado com a máquina
ligada, como um mouse PS2.

Coldplug é a incapacidade de um sistema de computador de adicionar ou remover


hardware sem desligar o sistema.

Universal serial bus (USB):


• www.usb.org
• www.linux-usb.org/usb-guide/book1.html
• O driver de dispositivo de armazenamento em massa (mass storage) é uma
interface entre um objeto usb e a camada SCSI.
• /proc/scsi/usb/devices
• /sys/bus/usb
• /var/lib/usbutils/usb.ids : Lista de todos os dispositivos conhecidos

USB permite 127 dispositivos conectados ao mesmo tempo em um único sistema.


• USB 1.1 – 12 MB/s (2,5 watts)
• USB 2.0 – 480 MB/s (2,5 watts)
• USB 3.0 – 4.8 Gb/s (4,5 watts)

O sistema de arquivos sysfs enumera os dispositivos e barramentos conectados a um


sistema em uma hierarquia que pode ser acessada do espaço do usuário.
• Montado em /sys

O módulo usbcore se encarrega de detectar novos dispositivos USB conforme eles são
conectados, criando uma lista dentro da pasta /proc/bus/usb ou /sys/bus/usb.

O hotplug (utiliza sysfs) tem a função de detectar novos dispositivos. Responsável por
carregar os módulos apropriados e ajustar permissões.
• Arquivos de configuração em /etc/hotplug
• Adicionar regras em /etc/hotplug/usb.usermap
• Mapeia todos os dispositivos que o kernel aceita

O udev (utiliza sysfs) substitui o hotplug, criando devices em /dev/ conforme os periféricos
são conectados.
• É possível definir devices fixos para cada periférico
• Provê um diretório de dispositivos dinâmico que contém somente os arquivos para
os dispositivos presentes no momento.
• /etc/udev

Hald é um daemon que mantem um banco de dados dos dispositivos conectados ao

3
sistema em tempo real.

Procfs, diminuto de process file system, consiste em um pseudo sistema de arquivos


usado para acessar informações de processos do kernel.
• /proc/interrupts : IRQs dos dispositivos
• /proc/ioports : Endereços I/O
• /proc/pci : Dispositivos pci instalados (lspci), também em /proc/bus/pci/devices
• /proc/cpuinfo : Características da cpu
• /proc/filesystems : Sistemas de arquivos suportados
• /proc/meminfo : Memória usada pelo sistema (free -m)
• /proc/modules : Módulos carregados (lsmod)
• /proc/mounts : Partições existentes (cat /etc/mtab / df -h)
• /proc/version : versão do kernel (uname -r)

lsmod : Mostrar o status dos módulos no kernel do linux.


• Utiliza /proc/modules

lspci : Listar todos os dispositivos pci


• -t : Mostrar diagrama em forma de árvore
• -v : Modo verbose
• -vv e -vvv : Mais informações
• -k : Mostrar drivers do kernel para o dispositivo

lsusb : Listar dispositivos usb conectados ao sistema.


• -v : Modo verbose
• Utiliza /proc/bus/usb ou /sys/bus/usb

Iniciar o Sistema
dmesg : Exibir as mensagens do kernel.
• -c : Limpar depois de exibir.
• Mensagens em /proc/kmsg

/var/log/messages : Mensagens enviadas pelo kernel ao syslog.

logger : Criar entradas no log do sistema (/var/log/messages).


• -f file : Registrar um arquivo específico.
• -t tag : Criar registros com uma tag específica.
• -p facilidade.nivel : Define a prioridade do registro.
• Ex: logger -t YURI “Isso é um teste” / cat /var/log/messages

/etc/rsyslog.conf : Arquivo de configuração do syslog.

Facilidades Níveis
Auth Mail Alert Notice
Authpriv News Crit Panic

4
Cron Syslog Debug Warning
Daemon User Emerg
Ftp Uucp Err
Kern Local[0-7] Info
Lpr

Mudar Runlevels e Desligar o Sistema


Init é o pai de todos os processos.
• Seu principal papel é criar processos de um script guardado em /etc/inittab
• Um runlevel é uma configuração de softwares do sistema que permite que apenas
um grupo selecionado de processos exista.
• Existem 8 runlevels, de 0 a 6 e S.
• O programa telinit permite alterar o runlevel em execução.
• Os runlevels S, 0, 1 e 6 são reservados.
◦ S : Inicializar o sistema.
◦ 1 : Modo usuário único
◦ 0 : Parar e desligar o sistema
◦ 6 : Parar e reiniciar o sistema
◦ 2 a 5 : Modo multi-usuário

Depois que o init é invocado na última fase da sequência de boot do kernel, ele procura o
arquivo /etc/inittab e busca uma entrada do tipo initdefault que determina o runlevel inicial
do sistema.

Uma entrada no /etc/inittab tem o seguinte formato:


• ID : RUNLEVELS : ACTION : PROCESS

telinit : Controle do processo de inicialização utilizado para alterar o init atual do sistema.

shutdown : Traz o sistema abaixo de forma segura.


• Faz o seu trabalho através da indicação do processo init, pedindo-lhe para alterar
o runlevel.
• -r : Reiniciar o sistema
• -h : Desligar o sistema
• -f : Pular o fsck na reinicialização
• time : Hora do desligamento. Hh:mm ou +30 (minutos) ou now

halt : Desligar o computador.

reboot : Reiniciar o computador.


• -p : desligar o sistema.

No Debian, para adicionar ou remover scripts da inicialização utiliza-se o comando


update-rc.d (o script deve estar em /etc/init.d).
• Adicionar : update-rc.d script defaults

5
• Remover : update-rc.d script remove

Desenhar o Layout do Disco Rígido


File System Hierarchy Standad (FHS)
• Habilita softwares a predizerem a localização de arquivos e diretórios.
• Existem duas distinções importantes entre arquivos.
◦ Compartilhável e não-compartilhável
◦ Dinâmico e estático

O sistema de arquivos root deve ser adequado para iniciar, restaurar, reparar e recuperar
o sistema.
• /usr, /opt e /var são designados para poderem se localizar em outras partições.
• /bin : Comandos binários essenciais.
• /boot : Arquivos estáticos do gerenciador de boot
• /dev : Arquivos de dispositivos
• /etc : Arquivos de configuração do host
• /lib : Bibliotecas compartilhadas e módulos
• /media : Ponto de montagem para mídias removíveis
• /mnt : Ponto de montagem para sistemas de arquivos
• /opt : Pacotes de aplicativos do usuário
• /sbin : Binários essenciais do sistema
• /srv : Dados dos serviços do sistema
• /tmp : Arquivos temporários
• /usr : Hierarquia secundária
• /var : Dados variáveis
◦ Diretórios opcionais:
▪ /home : Diretórios home dos usuários
▪ /root : Diretório home do usuário root

Páginas de manual em /usr/share/man

Instalar um Gerenciador de Boot


MBR (Master Boot Record)
• Os 512 bytes do início de um disco rígido são reservados à inicialização do
sistema.

Gerenciador de Boot Master Partition Table Assinatura


446 bytes 16 bytes | 16 bytes | 16 bytes | 16 2 bytes
bytes

O gerenciador de boot (bootloader) é o primeiro software que executa quando o


computador inicia.
• Responsável por carregar e transferir o controle para um software do kernel do
sistema operacional.

6
• Nomes dos dispositivos seguem a seguinte nomenclatura:
• (fd0) : Floopy disk
• (hd0,1) : Hard Disk 0 Partition 1

Para instalar o grub em um disco invoque o comando grub-install


• grub-install (hd0)

O grub tem dois métodos de boot distintos:


1. Carregar o sistema operacional diretamente
2. Encadear o carregamento de outro gerenciador de boot

Para carregar um sistema operacional diretamente


1. Defina o dispositivo root do grub para o disco onde as imagens do sistema
operacional estão armazenadas.
• Comando : root
2. Carregue a imagem do kernel
• Comando : kernel
3. Carregue a imagem de memória initrd
• Comando : initrd
4. Rode o comando boot

Para encadear o carregamento de outro gerenciador de boot:


1. Defina o dispositivo root para a partição
• Comando : rootnoverify
2. Defina a opção active para a partição
• Comando : makeactive
3. Carregue o gerenciador de boot
• Comando : chainloader +1
4. Rode o comando boot

/boot/gru/menu.lst : Arquivo de configuração do grub.

update-grub : Atualiza o menu.lst de forma automática.

Gerenciando Bibliotecas Compartilhadas


ldd : Exibir as dependências de bibliotecas compartilhadas.
• -v : Modo verbose
• Utiliza o caminho completo do executável (which comando)

ldconfig : Cria, atualiza e remove os links necessários para as bibliotecas compartilhadas


mais recentes encontradas no diretório especificado em /etc/ld.so.conf
• Utilizado depois de atualizar o arquivo de configuração
• Atualiza o arquivo /etc/ld.so.cache

/etc/ld.so – Carrega as bibliotecas compartilhadas necessárias a um programa, prepara o


programa para a execução e executa-o.
• As bibliotecas necessárias são procuradas em:

7
1. Variável de sistema LD_LIBRARY_PATH
2. No carquivo de cache /etc/ld.so.cache
3. No diretório /lib

/etc/ld.so.conf : Arquivo de configuração que contém os caminhos para as bibliotecas


compartilhadas.

Gerenciador de Pacotes do Debian


dpkg – Gerenciador de pacotes para o Debian
• -i / --install : Instala o pacote
• --unpack : Descompacta o pacote sem configurá-lo
• --configure : Reconfigurar um pacote descompactado
• -r / --remove : Reconfigura um pacote instalado
• Arquivo de configuração em /etc/dpkg/dpkg.cfg
• Arquivo de log em /var/log/dpkg.log
• Status dos pacotes disponíveis em /var/log/dpkg/status

dpkg-query : Ferramenta para consultar o banco de dados do dpkg.


• -l / --list : Lista os pacotes do sistema
• -s / --status : Mostra o status de um pacote específico
• -L / --listfiles : Lista os arquivos utilizados por um determinado pacote.

dpkg-deb : Ferramenta de manipulação do arquivador de pacotes debian.


• -b / --build : Cria um arquivo debian de uma árvore de diretórios armazenados em
um determinado diretório.
• -I / --info : Informações sobre um arquivo de pacote binário.
• -c / --contents : Lista o conteúdo de um pacote.
• -x / --extract : Extrai o conteúdo de um pacote.

dpkg-reconfigure : Reconfigurar um pacote já instalado.


• -a / --all : Reconfigurar todos os pacotes instalados.

apt-get : Ferramenta para manipular pacotes que resolve as dependências


automaticamente.
• update : Sincronizar o índice de pacotes disponíveis a partir das fontes.
• upgrade : Instalar a nova versão de todos os pacotes instalados ou de um em
específico.
• dist-upgrade : Atualiza a versão do sistema operacional.
• install : Instala um pacote disponível.
• remove : Remove um pacote instalado.
• purge : Remove o pacote e arquivos de configuração.
• clean : Limpa o repositório local de pacotes obtidos.
• -d : Faz apenas o download, sem instalar.
• -f : Arruma dependências quebradas.
• -y : Sim para todas questões.

Arquivos do apt-get:

8
• /etc/apt/sources.list : Locais para obtenção de pacotes.
• /etc/apt/apt.conf : Arquivo de configuração do apt.
• /var/cache/apt/archives : Área de armazenamento para pacotes obtidos.
• /var/lib/apt/lists : Área de armazenamento para os recursos de todos os pacotes.

apt-cdrom : Adicionar um cdrom à lista de fontes do apt.


• add : Usado para adicionar um novo disco ao sources.list
• -m / --no-mount : não montar o cd-rom

apt-cache : Ferramenta para manipular o cache do apt


• showpkg : Mostra informações sobre um determinado pacote.
• stats : estatísticas sobre o cache
• search : Buscar por pacotes a partir de uma string
• depends : Lista as dependências de um pacote
• pkgnames : Lista o nome de todos os pacotes do sistema

aptitude : Interface de alto nível para o gerenciador de pacotes.


• install : Instalar um pacote
• remove : Remover um pacote
• purge : Remove o pacote e arquivos de configuração
• update : Atualizar lista de pacotes disponíveis
• search : Buscar um pacote dentre os disponíveis
• show : Mostrar informações sobre um pacote
• clean : Limpar o cache

Trabalhar com a Linha de Comandos


echo : Mostrar uma linha de texto

Para executar comandos em seqüência, separe-os por um ponto e vírgula.


• Ex: ls ; date

A principal função do shell é interpretar comandos.


• Termina-se o uso do shell com o comando exit
• O shell padrão é especificado em /etc/passwd
• Shells disponíveis em /etc/shells

Algumas variáveis de sistema comuns:


• USER | UID | HOME | PWD | SHELL | PATH | PS1

chsh : Mudar o shell de login. (Ex: chsh -s /bin/sh yuri)

env : Mostra as variáveis de sistema atuais.


• -u variável : remover uma variável

unset : Remover uma variável do shell

set : Mostra todas as variáveis e seus valores, ainda que não sejam variáveis de sistema.

9
• Também reconhece as variáveis feitas pelo usuário.

exec : Rodar outro programa que substitua o shell corrente.

history : Mostra o histórico completo.


• !! : Comando mais recente
• !-3 : Terceiro comando anterior

PATH : Variável de sistema que contém os diretórios com arquivos binários.

man : Páginas de manual de um sistema.

apropos : Procurar por páginas de manual e descrições.

whatis : Buscar uma descrição básica de programa

uname : Exibir informações do sistema


• Sem argumentos imprime o nome do kernel (-s).
• -a : Todas as informações
• -s : Nome do kernel
• -n : Nome do host
• -r : Versão do kernel
• -m : Nome da máquina
• -p : Tipo do processador
• -i : Plataforma de hardware
• -o : Sistema operacional

pwd : Print work directory. Exibir o diretório atual.

Processar Fluxos de Texto Usando Filtros


cat : Exibir o conteúdo de um arquivo na saída padrão.
• -n : Numerar as linhas
• -b : Numerar somente as linhas não vazias.

tac : Exibir o conteúdo de um arquivo ao contrário.

od : Transforma um arquivo em octal.


• -j : Pular n bytes.

cut : Remover (recortar) seções de um arquivo na visualização.


• -c : Por quantidade de caracteres.
• -d : Por um delimitador específico
• -f : Por campos específicos

expand : Converter tabs em espaços


• -t : Tabs com número de espaços personalizados.

10
fmt : Formatador de textos simples. Por padrão delimita as linhas para 75 caracteres.
• -c : Ajustar a margem
• -s : Dividir linhas longas
• -u : Uniformizar os espaços

head : Imprimir as 10 primeiras linhas de um arquivo na tela.


• -n : Número de linhas a imprimir.

join : Juntar as linhas de dois arquivos em um mesmo campo.


• -t : Usar um caractere entre as linhas unidas
• O primeiro campo do arquivo deve ser igual em ambos.

nl : Numerar as linhas de um arquivo.

paste : Juntar múltiplos arquivos linha por linha.


• -d : Usar um caractere delimitador entre as junções.

pr : Converter arquivos de texto para impressão.


• -h : Definir o cabeçalho das páginas.
• -c : Omitir o cabeçalho
• -l : Número de linhas

sed : Editor de fluxos para filtrar e transformar textos.


• -l : Tamanho das linhas

sort : Classificar linhas de arquivos de texto


• -d : Ordem de dicionário
• -f : Ignorar caixa
• -R : Classificação aleatória
• -r : Classificação ao contrário
• -n : Classificação numérica

split : Dividir um arquivo em partes


• -b : Definir i tamanho (bytes) das partes
• -l : Definir o tamanho das linhas

tail : Imprimir as últimas 10 linhas de um arquivo na tela.


• -n : Definir o número de linhas.

tr : Traduzir caracteres
• -d : Deletar caracteres.

unexpand : Converter espaços para tabs.

uniq : Omitir linhas repetidas.


• -d : Imprimir somente linhas duplicadas
• -i : Ignorar caixa

wc : Contar linhas, palavras e bytes de um arquivo.

11
• -c : Número de bytes
• -m : Caracteres
• -l : Linhas
• -w : Palavras

Gerenciamento Básico de Arquivos


cp : Copia arquivos e diretórios (origem > destino).
• -f : Remove destinos existentes.
• -i : Interativo, pergunta antes de sobre-escrever
• -p : Preserva permissões
• -r : Copia de forma recursiva

mkdir : Cria diretórios

mv : Move (ou renomeia) arquivos.


• -f : Não solicita confirmações
• -i : De forma interativa

ls : Lista o conteúdo do diretório


• -C : Lista em colunas
• -R : Recursivamente
• -a : Inclui arquivos ocultos (.)
• -l : Informações detalhadas sobre os arquivos
• -r : Inverte a ordem de exibição
• -t : Ordena por rótulo de tempo

rm : Apaga arquivos e diretórios


• -r : Apaga diretórios de forma recursiva
• -i : Pede por confirmação
• -f : Não pede por confirmação

rmdir : Remove diretórios vazios

touch : Altera o rótulo de tempo do arquivo ou cria um arquivo


• -c : Não cria o arquivo
• -a : Altera a data de acesso
• -m : Altera a data de modificação
• -r : Usa o rótulo de tempo de um arquivo de referência

cpio : Copiar arquivos de e para repositórios


• -A / --append : Adicionar a um repositório existente
• -F / --file : Arquivo de repositório usado
• -i / --extract : Extrai um arquivo

dd : Direct Copy
• Usado para copiar e converter arquivos, simultaneamente para um formato

12
diferente.
• If=file : Definir arquivo de entrada
• Of=file : Definir arquivo de saída
• Ibs=bytes : Número de bytes lido por vez
• Obs=bytes : Número de bytes escritos por vez
• bs=bytes : Número de bytes lido e escrito por vez
• skip=blocks : Número de blocos a pular do arquivo de entrada antes de copiar
• seek=blocks : Número de blocos a pular do arquivo de saída antes de sobre-
escrever
• count=blocks : Especificar o número de blocos a copiar do arquivo de entrada ao
invés do arquivo inteiro.

file : Determinar o tipo do arquivo

gzip : Comprimir arquivos


• Utiliza o algoritmo de lempel-ziv
• -d : Descomprimir
• -l : Listar campos de arquivo comprimido
• -r : Comprimir um diretório de forma recursiva

gunzip : Descomprimir arquivos gzip

bzip2 : Compactador e descompactador de arquivos


• Utiliza o algoritmo burrows-wheeler
• -z : Comprime
• -d : Descomprime

bunzip2 : Descompacta arquivos bzip2

Pipes e Redirecionamentos
2> : Redirecionar o erro padrão.
• Ex: comandoinexistente 2> erro

tee : Lê a entrada padrão, escreve na saída padrão e em um arquivo.


• Exemplo: cat arquivo | tee arquivo.bck

| : Pipe redireciona a saída de um programa para a entrada de outro.

< : Redirecionar a entrada padrão.

xargs : Construir e executar linhas de comando da entrada padrão.


• ls arq1 arq2 | xargs cat
• ls * | xargs tar –create –file bck.tar

Criar, Monitorar e Matar Processos

13
Para executar um processo em background basta adicionar o caractere & após a linha
de comando.

bg : Retoma um job suspenso para executar em background.

fg : Retoma um job suspenso para executar em primeiro plano.

Crtl+z : Suspende um programa rodando em primeiro plano.

jobs : Lista os processos suspensos.


• -l : Lista também o PID
• -r : Exibir somente jobs ativos
• -s : Exibir somente jobs parados

pidof : Procura o PID de um programa em execução.

kill : Enviar um sinal a um processo.


• O sinal padrão do comando kill é TERM.
• -l : Lista os sinais disponíveis
• -9 : SIGKILL
• -1 : SIGHUP
• -15 : SIGTERM

nohup : Rodar um comando imune a interrupções.

ps : Relatório de um instantâneo dos processos atuais.


• A : Listar todos os processos pertencentes a um terminal.
• R : Apenas processos em execução.
• X : Listar todos processos, mesmo que não pertençam a um terminal.
• U : Mostrar formato orientado a usuário, com informações detalhadas.
• -u : Definir um usuário.

top : Visão dinâmica, em tempo real, dos processos em execução.


• -d : Tempo de atualização (delay)
• -u : Processos de um determinado usuário
• -s : Modo seguro.
• Comandos dentro do programa
◦ Enter / Espaço : Atualizar a exibição
◦ U : Selecionar um usuário
◦ K : Matar um processo
◦ Q : Quit
◦ R : Redefinir a prioridade

free : Exibe os níveis de utilização e disponibilidade da memória do sistema.


• -b : Exibição em bytes
• -t : Mostra os totais
• -m : Exibe em megabytes
• -g : Exibe em gigabytes

14
• Dados obtidos de /proc/meminfo

uptime : Dizer a quanto tempo o sistema está rodando.


• Informações obtidas de /var/run/utmp

killall : Matar processos por nome.


• Sinal padrão: SIGTERM (15)
• -I : Ignorar caixa
• -i : Interativo, pede confirmação
• -l : Listar os sinais
• -s : Enviar outro sinal

Modificar as Prioridades dos Processos


Processos são criados com prioridade 0.
• Prioridades vão de -20 a +19
• -20 : Mais prioritário

nice : Especificar a prioridade de um programa na inicialização


• -n : Nível de prioridade

renice – Altera a prioridade de um programa em execução


• -u : Mudar a prioridade de todos os processos de um determinado usuário.
• -p : Padrão. Definir a prioridade de um processo pelo PID.

Buscar Arquivos Com Expressões Regulares


grep : Imprime linhas que correspondam a um padrão.
• -e : Procurar por um padrão.
• -i : Ignorar caixa
• -v : Inverter. Exibe somente linhas que não correspondam ao padrão.
• --color : Diferenciar o padrão.
• -n : Mostrar o número da linha.
• Ex: grep -e teste -ni –color arquivo

egrep : Interpretar padrões com uma expressão regular extendida.


• O mesmo que grep -E

fgrep : Interpreta padrões como uma lista de strings fixas, separadas por linhas.
• O mesmo que grep -F

Edição de Arquivos Usando Vi


O vi é um editor modal. Ele irá se comportar diferente de acordo com o modo em que
você estiver.
• Modo command

15
• Modo insert
• Modo visual

Para inserir textos é necessário estar no modo insert


• Para entrar no modo insert aperte i
• Esc sai do modo insert

No modo command, para navegar.


• H : Esquerda ⇐
• J : Baixo ⇓
• K : Cima ⇑
• L : Direita ⇒

No modo command, para deletar um caractere, aperte x sobre o mesmo.


• U desfaz a última alteração.

Para sair e salvar, digite ZZ maiúsculo no modo comando.

Para sair sem salvar, no modo command digite :q!

Para inserir caracteres no fim de uma linha, ao invés de usar i para entrar no modo insert,
use a (append), que coloca o cursor no próximo caractere.

Para deletar uma linha no modo comando digite dd

Para inserir uma linha, pressione o no modo command.


• Irá inserir uma linha abaixo do cursor

Para subir o cursor duas linhas no modo command, digite 2k


• Também aceita outras direções, inclusive deleções (3x deleta 3 caracteres).

Para mover o cursor uma palavra para frente, aperte w


• Uma palavra para trás, aperte b

O comando $ move o cursor para o fim da linha.


O comando ^ move o cursor para o início da linha.

Para buscar um caractere na linha atual, aperte f e o caractere.


• Para buscar o primeiro x, digite fx.
• O F maiúsculo buscará à esquerda.

Para mostrar o número das linhas, digite o comando :set number


• Parar tirar a numeração, use :set nonumber

O comando Crtl+g mostra no status em qual linha você está.

Para rolar a página


• Para baixo: Crtl+D
• Para cima: Crtl+U

16
O comando dw deleta uma palavra

:w – Salvar

Para substituir uma palavra pressione cw sobre ela

O comando . (ponto) repete o última comando de deleção.


O comando J (maiúsculo) junta a linha atual com a próxima.
O comando r substitui o caractere atual.
O comando ~ muda a caixa do caractere atual.

Para buscar uma palavra digite /palavra


• Digitando / e apertando para cima consulta-se o histórico de buscas
• Para buscar para trás, use ?

O comando p cola a última coisa deletada no local atual.


• Se por último deletou-se uma vírgula, ele cola uma vírgula.

O comando yy copia a linha inteira


• Para colar digite p.

Criar Partições e Sistemas de Arquivos


mkfs : Construir um sistema de arquivos Linux em um dispositivo, usualmente um disco
rígido.
• -t : Tipo do sistema de arquivos
• -c : Procurar por badblocks antes de construir o sistema de arquivos.
• mk2fs : Cria sistemas de arquivo ext2

mkswap : Criar uma área de troca linux em um dispositivo.


• Partições swap devem estar listados no /etc/fstab
• -c : Procurar por badblocks
• -L : Especificar um label

fdisk : Manipulador da tabela de partições para linux.


• -l : Listar as tabelas de partições para os dispositivos encontrados.

Integridade dos Sistemas de Arquivos


du : Relata a quantidade de espaços de disco usado pelos arquivos especificados.
Sem argumentos mostra o espaço usado pelo diretório atual.
• -h : Human redable
• -s : Sumarizar, exibir somente um total.
• -a : Exibe a contagem para todos arquivos
• -c : Exibe um total geral
• -k : Tamanho em kilobytes

17
• -m : Tamanho em megabytes

df : Relata o espaço de disco usado pelo sistema de arquivos


• -h : Human redable
• -i : Lista informações do uso de inodes
• -l : Lista informações para o sistema de arquivos local

fsck : Verificar e reparar um sistema de arquivos Linux.


• -A : Checa todos os sistemas do arquivo /etc/fstab
• -a : Reparar automaticamente, sem perguntar
• -r : Reparar de forma interativa
• -t : Especifica o tipo do sistema a ser checado

e2fsck : Verificar um sistema de arquivos ext2 ou ext3


• -c : Buscar por badblocks antes de verificar.
• -d : Otimizar diretórios no sistema de arquivos
• -f : Forçar checagem mesmo se não precisar
• -p : Reparar automaticamente
• -t : Imprimir estatísticas de tempo

debugfs : Depurador de sistemas de arquivos ext2 e ext3


• -w : Abrir com modo de escrita. O padrão é apenas leitura.
• -c : Modo catastrófico, para sistemas de arquivos muito corrompidos.
• -i : Especificar um arquivo de imagem feito com o e2image

dumpe2fs : Imprime informações de blocos e super blocos presentes no dispositivo.


• -b : Mostra somente blocos marcados como defeituosos

tune2fs : Ajustar parâmetros ajustáveis de sistemas de arquivos ext2 e ext3


• -c : Número de montagens antes de executar uma checagem com fsck na
inicialização
• -C : Definir o número de vezes que um dispositivo foi montado
• -i : Ajustar o intervalo entre as checagens. Utilizar d (dias), m(meses) e
w(semanas).
• -j : Adicionar um jornal ext3 ao sistema de arquivos
• -l : Listar o conteúdo
• -L : Definir o label de sistema de arquivos.

e2label : Mudar o label de um sistema de arquivos ext2 ou ext3.

Montagem de Sistemas de Arquivos


/etc/fstab : Informações descritivas sobre os vários sistemas de arquivos. Sistemas de
arquivos incluídos no fstab são carregados automaticamente no boot
1. O primeiro campo descreve o bloco de dispositivo especial ou sistema de
arquivos a ser montado.
2. O segundo campo descreve o ponto de montagem do sistema de arquivos.
3. O terceiro campo descreve o tipo do sistema de arquivos.

18
4. O quarto campo descreve as opções de montagem associados ao sistema de
arquivos.
5. O quinto campo é usado pelo comando dump. 0 indica que o sistema de arquivos
não precisa do dump.
6. O sexto campo é usado pelo comando fsck e indica a ordem de checagem do
sistema de arquivos.

mount : Serve para anexar (montar) o sistema de arquivos encontrado em um dispositivo


à hierarquia de árvores do sistema.
• mount -t tipo dispositivo diretório
• Se o sistema de arquivos já constar no /etc/fstab, basta indicar o dispositivo ou o
ponto de montagem (ex: mount /media/disk).
• -a : Montar todos dispositivos de /etc/fstab
• -r : Montar em modo de somente leitura
• -w : Montar com permissão de escrita.
• -o : Opções.

Tipos comuns do mount : ext2, ext3, vfat, nfs, ntfs, iso9660 e reiserfs.

Opções comuns do mount:


• Defaults : rw, suid, dev, exec, nouser
• Exec : Permitir a execução de binários.
• Noauto : Não montar automaticamente.
• Nouser : Proibir usuários de montar o dispositivo.
• Ro : Montar em modo somente leitura
• Rw : Montar em modo de leitura e escrita
• User : Permitir que usuários montam o sistema de arquivos.
• Sync : Sincronizar dados com o dispositivo.

umount : Desmontar um sistema de arquivos.


• -a : Todos os sistemas de arquivos descritos em /etc/mtab
• -f : Forçar a desmontagem

/etc/mtab : Lista dos sistemas de arquivos atualmente montados no sistema.


• Também exibidos em /proc/mounts

/media é o ponto de montagem para mídias removíveis


/mnt é o ponto de montagem para arquivos temporários.

Gerenciar Quotas de Disco


quota : Mostrar a utilização dos limites de disco.
• Por padrão apenas a quota do usuário é mostrada.
• -s : Human readable
• -l : Mostrar somente quotas de discos locais.

edquota : Editar as quotas dos usuários.


• Usuários são permitidos a excederem seus limites soft por um certo período de

19
tempo especificado por sistema de arquivos.
• -f : Editar informações de quota para um sistema de arquivos específico.
• -t : Editar o tempo soft para cada sistema de arquivos.
• Arquivos usados são quota.user e quota.group na raíz do sistema de arquivos.

repquota : Sumarizar as quotas para um sistema de arquivos.


• -a : Reportar quotas de todos os sistemas de arquivos.
• -s : Human readable

quotaon : Ativa as quotas de sistemas de arquivos.

quotaoff : Desativa as quotas de sistemas de arquivos.

Passos para a implementação:


1. Adicionar as opções usrquota e grpquota no fstab para o sistema de arquivos
desejado.
2. Criar os arquivos quota.user e quota.group no diretório raíz do sistema.
3. Quotacheck para verificar as quotas do sistema.
4. Quotaon para ativar as quotas
5. Edquota -u usuário para editar as quotas de um usuário.

quotacheck : Escanear um sistema de arquivos pela utilização de discos, criar, checar e


reparar arquivos de quota.
• -u : Usuário
• -c : Criar arquivos

Gerenciar Permissões e Donos


chmod : Altera as permissões de acesso aos arquivos.
• Chmod [opções] modo arquivo
• -R : Recursivamente

Modos do chmod
• Literal: [ugo] [+-=] [rwx]
• Octal: 4-Leitura, 2-Escrita, 1-Execução, 5-Leitura/Execução, 6-Leitura/Escrita, 3-
Escrita/Execução, 7-Leitura/Escrita/Execução.

Exemplos chmod:
• chmod u=rwx,g=r,o=r arquivo
• chmod -x arquivo
• chmod 764 arquivo

chown : Mudar o proprietário e o grupo do arquivo.


• -R : Altera recursivamente
• Chown user.group arquivo
• Uso primário para alteração de dono de arquivos e diretórios.

chgrp : Altera a propriedade de grupo dos arquivos.

20
• -R : Recursivamente
• Chgrp -R grupo arquivo

umask : Definir o filtro padrão para a criação de novos arquivos.


• 0 – rw
• 2–r
• 4–w
• Configuração de umask padrão para todos usuários fica em /etc/profile

Suid e Sgid : Qualquer usuário que execute o arquivo tem as permissões do dono ou do
grupo.
• Suid : o+s ou 4 (4777)
• Sgid : g+s ou 2 (2777)

Sticky bit : Todos usuários podem escrever no diretório, mas somente o dono pode
apagá-lo.
• u+t ou 1 (1777)

Criar e Mudar Links


ln : Cria uma ligação simbólica entre arquivos.
• Hard Link : Ligação forte, correponde a criar um outro nome para o arquivo com o
mesmo inode e as mesmas permissões (ln origem destino).
• Simbolic Links : Ligação fraca corresponde a um pequeno arquivo especial que
simboliza o arquivo original (ln -s origem destino).

Links simbólicos, quando listados pelos comando ls -l começão com o caractere L.


• -d : Permite criar ligações fortes para diretórios.
• -f : Remove o arquivo de destino existente.

Procurar Arquivos
find : Procura por arquivos em uma hierarquia de diretórios.
• -L : Aceitar links simbólicos.
• -mount : Não buscar em diretórios de outros sistemas de arquivos
• -empty : Buscar arquivos vazios
• -executable : Buscar arquivos executáveis
• -group : Arquivos pertencentes a um determinado grupo
• -name : Procurar arquivos pelo nome
• -perm : Arquivos com determinada permissão
• -readable : Arquivos com permissão de leitura
• -size : Definir o tamanho do arquivo. Pode ser antecedido por + ou – para indicar
maior que ou menor que o tamanho especificado. find / -size +10M (k | M | G)
• -type : Arquivos por tipo. D – diretórios, F – Regurar e L – link simbólico
• -writable : Arquivos com permissão de escrita

locate : Procurar arquivos pelo nome. Lê databases preparadas pelo updatedb.

21
• -c : Exibe somente n resultados
• -d : Database
• -i : Ignore case

updatedb : Atualizar a database para o locate


• -o : Output file, arquivo de saída diferente.
• Arquivo de configuração em /etc/updatedb.conf

whereis : Localizar binários, fontes e páginas de manual para um comando.


• -b : Procurar apenas binários.
• -m : Procurar apenas manuais
• -s : Procurar apenas fontes

which : Localizar um comando.

22

You might also like