Escolar Documentos
Profissional Documentos
Cultura Documentos
2014
1
Ctrl+N Down
Ctrl+T troca de posio entre o caractere sob o cursor com o imediato a sua
esquerda.
Esc e U todas as letras a direita do cursor at o final da palavra, converte
Uppercase.
Esc e L todas as letras abaixo e a direita do cursor at o final da palavra, converte
Lowcase.
Esc e C letra sobre o cursor maiscula.
Ctrl+X+Ctrl+E chama o editor definido na varivel $FCEDIT ou $EDITOR,
usualmente o emacs.
xemacs inicia a verso grfica do emacs.
qemacs inicia o Quick Emacs a partir do prompt do shell.
$ history -c limpa o histrico.
O histrico fica no arquivo ~/.bash_history
Sees de man:
1. Programas executveis;
2. Chamadas de sistemas providas pelo kernel;
3. Chamadas de biblioteca providas pela biblioteca de programa;
4. Arquivos de dispositivos;
5. Formatos de arquivos;
6. Jogos;
7. Miscelnea (pacotes macro, convenes e mais);
8. Comandos de admin. do sistema (exclusivos do root);
9. Rotinas do Kernel.
As pginas Info usam o formato de hipertexto.
> : cria um novo arquivo contendo a sada padro, sobrescreve se j existe;
>> : adiciona sem sobrescrever, se no existir cria;
2> : cria novo arquivo contendo a sada de erros, sobrescreve;
2>> : adiciona a sada de erros, no sobrescreve;
&> : cria um novo arquivo contendo tanto a sada padro quanto a sada com erros,
sobrescreve;
< : muda o contedo do arquivo especificado para ser usado com entrada padro;
<< : aceita o texto sobre as seguintes linhas como entrada padro;
<> : faz com que o arquivo especificado seja tanto para entrada quanto para sada
padro;
<programa> 2> /dev/null dica para descartar erros;
[Armazena a sada padro num arquivo e a sada com erro no outro]
$ cat xab xac nofile > mystdoutput 2> mystderr
3
/boot
Processo de boot
1. Computador ligado;
2. BIOS inicializa o hardware e carrega o bootloader do MBR;
3. O bootloader carregar o kernel do SO a partir do disco;
4. SO gera o processo init que inicializa os demais processos.
1 setor do disco (partio de at 2 TiB). um setor de boot de
MBR
512 bytes. Abriga a tabela de parties primrias, inicializa SOs a partir de um
bootloader (ou bootstrap loader, armazenado em ROM).
Parties primrias: 1 4.
Lgicas: 5 ou +.
Ex: 1,3,5,6 e 7 Verdadeiro.
1,3,5 e 7 Falso.
Se a partio 7 existe ento deve existir uma 6. Parties lgicas no pulam
nmeros.
Bootloader ou IPL: 4466 bytes
Tabela de partio: 64 bytes
Assinatura: 2 bytes
IRQ (16 interrupes) interrupt request
0
1
2
Tempo do sistema
Teclado
Cascateamento IRQ8-15
3
4
5
6
7
8
9
10
11
12
13
14
15
2 RS-232
1 RS-232
Placa de som ou LPT2
Disquete
LPT1
Real Time Clock
Open interrupt
Open interrupt
Open interrupt
PS/2 mouse
Math processor
1 Controlador ATA
2 Controlador ATA
Compartilhado com a 4
Compartilhado com a 3
1 Controlador
SOMENTE
/lib/modules/version/kernel/drivers
armazenados.
$ ldd foo
ou $ ldd /bin/ls
ld-linux.so
ld.so o vinculador dinmico de objetos compartilhados. Procura pelos diretrios que
contem bibliotecas na varivel LD_LIBRARY_PATH
O Linux no l /etc/ld.so.conf cada vez que um programa executado. Em vez disso,
o sistema se baseia em uma lista em cache de diretrios e os arquivos que eles
contm, armazenados em formato binrio no /etc/ld.so.cache.
O ld.so.conf utilizado para linking dinmico, contm uma lista de diretrios que
contem bibliotecas dinmicas.
# ldconfig Faz essa converso/atualizao para manter o cache sempre
atualizado.
-v verbose;
-N no refaz o cache, atualiza somente os links simblicos;
-n atualiza somente diretrios especificados;
-X refaz somente o cache, no atualiza os links simblicos;
-f <conf_file> substitui o /etc/ld.so.conf;
-C <cache_file> substitui o arquivo de cache;
-r <dir> diz para tratar dir como nova raiz. (opo til quando se tem um SO
corrompido ou instalado novamente.
-p mostra o cache atual.
Procura por biblioteca compartilhadas nos diretrios: /lib, /usr/lib e diretrios listados
em /etc/ld.so.conf.
Somente no contedo desses arquivos de biblioteca voc encontrar
include...<apontamento para arquivo>.conf. O include s utilizado quando o final
do arquivo .conf.
/etc
/bin
/sbin NUNCA DEVEM SER MONTADOS FORA DA RAIZ.
/lib
/dev
Muitas distros geram log e guardam o kernel ring buffer em /var/log/dmesg, logo aps
o boot do sistema.
Outra fonte de log importante o system logger (syslogd)
/var/log/messages e /var/log/syslog
GRUB LEGACY (mais antigo)
Arquivo de configurao: /boot/grub/menu.lst ou /boot/grub/grub.conf.
title Nome (verso)
Suporte a BIOS, mas UEFI no;
GRUB no distingue: PATA, STA, SCSI e USB;
Define por hdx,x, comeando por hd0,0;
Floppy devices so: fd0, fd1,...;
Trata USB flash drives como disco rgido;
GRUBs root partition a partio que contm sua configurao;
default= diz ao boot que OS carregar;
timeout= quanto tempo esperar antes de carregar o boot;
11
Opes grficas:
e edita parmetros para o sistema selecionado antes de inicializa-lo;
c entra na linha de comandos especial do grub;
Esc para sair do editor.
GRUB 2 (mais recente)
Arquivo de configurao: /boot/grub/grub.cfg (somente leitura, substitui o menu.lst) ou
/boot/grub2.
menuentry nome {
opes
}
Agora parties comeam por (hd0,1);
H a utilizao de scripts e outras ferramentas que ajudam automaticamente a
manter o GRUB2 no /boot/grub/grub.cfg. A intenso que o Sys-Admin nunca
precisa editar esse arquivo;
O /etc/grub.d (contm diversos scripts, usados para construo do GRUB) e o
/etc/default/grub podem ser editados para mudar a configurao do GRUB2.
Aps isso deve ser refeita a construo do GRUB2.
GRUB_TimeOUT= o tempo de GRUB na tela antes da entrada do SO.
Atualizao do GRUB2:
o # update-grub ou # grub-mkconfig > /boot/grub/grub.cfg
O GRUB2 trabalha tanto com BIOS quanto com UEFI.
$ grub-install /dev/das necessrio para reinstalao do GRUB.
Caso efetue qualquer mudana no grub em /etc/default/grub, para surtir efeito use:
# update-grub
No OpenSUSE modifca-se o /etc/default/grub e depois utiliza-se o comando:
# grub2-mkconfig -o /boot/grub2/grub.cfg
Para visualizar um arquivo ($ less <arquivo>) e buscar nele, utilize /. Isso ativa a busca
dentro do less.
A palavra-chave initrd identifica um arquivo de disco RAM inicial no arquivo de
configurao no GRUB2.
Scripts de inicializao do SysV
/etc/init.d/rc ou /etc/rc.d/rc
Fazem a tarefa crucial de rodar todos os scripts associados com o runlevel.
Os scripts especficos para cada runlevel ficam em:
/etc/rc.d/rcx.d
/etc/init.d/rcx.d
/etc/rcx.d
init PID = 1
O programa rc roda os scripts em ordem numrica. Padro KNNnome e SNNnome.
Visualiza todos os scripts: $ ls /etc/rc* | less
/etc/rc.d
varia o local de acordo com a distro
(principais scripts esto nestes diretrios)
/etc/init.d
/etc/rc.d/init.d
Esses so utilizados para controlar a inicializao e o desligamento do sistema.
O /etc/rc.d/init.d o local mais comum, podendo ser armazenado em outros.
rc.local Onde podem ser adicionado comandos que se deseja executar
toda vez que o sistema iniciar.
/etc/init.d/smb start
chkconfig
update-rc.d
rc-update
# chkconfig --list
servio especfico.
# runlevel
Retorna: N 2
O N significa que o sistema no trocou de runlevel desde o boot. O 2 o atual.
/etc/inittab Diz ao init o que fazer.
Normalmente inclui linha quem controlam diversos mtodos de login, incluindo os
programas baseados em texto para login do tipo getty; e utilitrios de login baseados
em X (com interface grfica), como o XDMCP.
inetd e xinetd
Verificando se inetd ou xinetd est em operao:
$ ps ax | grep inetd
Procure por /etc/inetd.conf ou /etc/xinetd.d
/etc/xinetd.d contm os arquivos de configurao que o xinetd daemon usa para
gerenciar os outros daemons da rede.
0 sistema desligado
# init 1 Single user mode
2 Multiusurio (default no Debian)
13
-r (reboot)
-h (halt ou poweroff)
-H (halt)
mensagem (ultimo trecho do commando)
-P (power off) -c (cancela)
Podem ser utilizados de forma individual: # halt, # reboot, # poweroff .
hh:mm horrio para execuo.
+m minutos at a execuo.
now ou +0 execuo imediata.
halt
Restaurando backup.
0x0c
0x05
0x07
0x0f
0x82
0x83
FAT
Tipo antigo de partio estendida
NTFS
Tipo novo de partio estendida
Linux swap
Linux filesystem
# dpkg-reconfigure samba
# apt-cache dump
# apt-cache stats
APT
/etc/apt/apt.conf
/etc/apt/sources.list
# apt-get u dist-upgrade
dselect-upgrade
clean
autoclean
Limpeza
Remove info somente sobre pcts que no podem mais
ser baixados.
-d ou --download-only baixa o pacote sem instalar.
-f ou --fix-broken tenta consertar um sistema que as dependncias no funcionem.
-q ou --quiet omite info sobre o progresso
-s , --simulate, --just-print , --dry-run , --recon ou --no-act simula a instalao ou
remoo sem faze-la ou alterar algo.
Aptitude
$ aptitude (somente, modo interativo)
Menu: Ctrl + T
Opes: search, autoclean, clean
Aptitude = dselect + apt-get
Synaptic: GUI X-tool
Alien
$ alien [opes] arquivo[]
--to-slp (stampede); --to-deb; --to-rpm; --to-tgz;
Processo de transferncia pra rpm:
# tar xvfz program.tar.gz
# mv program-files usr
# tar cvfz program.tgz usr
# rm r usr
# alien --to-rpm program.tgz
Fazendo isso teremos os arquivos onde queremos ao ser instalados.
RPM
Modelo: nomedopacote-a.b.c-x.arquitetura.rpm
Arquivo principal de cfg: /usr/lib/rpm/rpmrc {recomendvel no edita-lo}
Opes editveis: /etc/rpmrc e ~/.rpmrc
Nesse arquivo pode ser otimizada a opo CPU para melhorar a performance do
sistema.
# rpm [operao] [opes] [package-files] [package-names]
-i instala;
-U instala um novo pacote; ou faz upgrade de um existente;
-F ou --freshen faz upgrade somente se existir uma nova verso;
-q query do pacote;
-V ou --verify verifica um pacote, se os arquivos esto presentes e inalterados
desde a instalao;
-e desinstala um pacote;
-b constri um pacote binrio, com arquivo fonte e de configurao;
--rebuilddb reconstri a base de dados do RPM para corrigir erros;
--root <dir> (qualquer) modifica o root para <dir>;
--force (-i, -U, -F) fora sobrescrever;
-h ou --hash (-i, -U, -F) mostra barra de progresso (#);
-v (-i, -U, -F) usar em conjunto com -h;
--nodeps (-i, -U, -F, -e) no deve checar dependncias durante instalao;
18
--test (-i, -U, -F) checa por dependncias, conflitos e outros problemas sem instalar
o pacote;
--prefix <path> (-i, -U, -F) seta o diretorio para instalao, funciona somente para
alguns pacotes;
-a ou --all (-q, -V) lista ou verifica todos pacotes;
-f <file> ou --file <file> (-q, -V) lista ou verifica o pacote que pertence o arquivo;
-p <package-file> (-q) queries os pacotes de arquivos RPM desinstalados;
-i (-q) mostra informaes sobre pacote, incluindo mantenedor, curta descrio, etc.
-R ou --requires (-q) mostra as dependncias necessrias;
-l ou list (-q) mostra os arquivos contidos no pacote.
(-q) --changelog examina o changelog.
Sempre usar $ rpm -qi samba para saber mais informaes sobre o pacote.
Para instalar verses anteriores por cima de novas com o RPM:
# rpm -Uvh --force foo-<verso>.rpm
# rpm -Uvh --oldpackage foo-<verso>.rpm
$ rpm -qf foo.conf Informa a que pacote pertence o arquivo.
$ rpm -ql foo-<verso>.rpm lista os arquivos contidos no pacote.
$ rpm -qa | grep lpr lista todos os pacotes no sistema relacionados ao lpr.
$ rpm -K arquivo<verso>.rpm testa a validade da assinatura digital, tambm faz
um teste MD5 do checksum para ver se o contedo no foi adulterado.
--force = --replacepkgs, --replacefiles e --oldpackage
Ordem de leitura dos arquivos rpmrc:
/usr/lib/rpm/rpmrc, /etc/rpmrc e ~/.rpmrc (ou por ultimo, qualquer arquivo especificado
usando a opo -rcfile).
RPMs so geralmente portveis entre distros, mas ocasionalmente elas contem
incompatibilidades.
A base de dados de pacotes instalados do RPM fica em /var/lib/rpm.
RPM2CPIO
Extraindo dados do RPM sem instalar o pacote:
$rpm2cpio samba...rpm > samba...cpio
Extraindo os dados usando cpio:
$ cpio -i --make-directories < samba...cpio
ou
$ rpm2cpio zsh...rpm | cpio -i make-directories
YUM
Principal cfg: /etc/yum.conf {talvez sua modificao no seja necessria}
Opes bsicas (onde os pacotes rpm baixados vo e as atividades gravadas em log)
Cfgs adicionais: /etc/yum.repos.d/<dir>
{no aconselhvel adicionar repositrios manualmente editando-o e sim baixar o
rpm com as configuraes e instalar}.
$ yum [opes] [comando] [package...]
19
install
update
upgrade
= update --obsoletes .
check-update
remove ou erase
list
= rpm -e .
provides ou whatprovides
search
Busca.
clean
shell
resolvedep
Resolve dependncias.
local_install
localupdate
yumdownloader
Editor de texto Vi
yn Copia a linha atual e mais n linhas abaixo;
yX
yy ou Y
dd
dw
3dd
D
cw
:digraphs
xG
0
:set number
:set nonumber
Ctrl-F
Cria uma nova linha abaixo da linha atual e entra no modo de insero;
n~
Ctrl-R
Sair
:q e :q!
Salvar
:w e :w!
Salvar e Sair
~/.inputrc
Esc, R
Esc, /
n
Esc, :e /<dir>
:%s/yahoo/google
:r /etc/passwd
exec
.bash_history
Lista
-i identifica o inode do arquivo;
-r organiza de forma reversa;
-a arquivos ocultos;
-l organiza em forma de lista;
-h dados em forma humana.
touch
Pode extrair para de uma linha de informao para processar depois, isso
til quando preciso extrair essas infos para um script a partir de um arquivo
estruturado. til quando preciso extrair essas infos para um script a partir de um
arquivo estruturado.
$ cut [opes] arquivo
-c posio de caractere;
-f [n] campos;
-d [d] delimitador;
Ex: Imprime as colunas de 1 at 6: $ cut -c1-6 arq1
Imprime as colunas 4 e 8: $ cut -c4,8 arq1
Imprime o campo 3 usando o caractere : como delimitador. Para usar o espao como
delimitador user (espao entre aspas simples).
Lista os usurios do sistema: # cut -d : -f1 /etc/passwd
Usuarios e diretrios padro: # cut -d : -f1,6 /etc/passwd
od
Usado para ler os primeiros 6 bytes dos arquivos e identificar qual o tipo
de arquivo.
$ file arquivo
Ex:
$ file face.png
27
Empacotamento de arquivos.
$ tar [parmetros] [nome_arquivo.tar] [arquivo_alvo(s)]
-c cria novo;
-t ou --list exibe o contedo;
-p mantem as permisses originais;
-r adiciona arquivos a um tar existente;
-v verbose;
-x extrai arquivos do tar;
-z comprime (com gzip);
-j comprime (bzip2);
-C especifica o diretrio dos arquivos a serem armazenados.
$ tar -cf fichrio.tar pg1.txt pg2.txt comprime 2 arquivos.
$ tar -rf fichrio,tar pg3.txt acrescenta mais um arquivo.
$ tar -f fichrio.tar -delete pg3.txt exclui um arquivo.
$ tar -cvf carros.tar pasta_carros empacota um diretrio.
Tar comprimido com bzip2 (vlidos) .tbz2, .tbz e .tar.bz2 .
gunzip
Remove diretrios
$ rm -r motos remove diretrio com contedo.
NUNCA executar: # rm Rf /
cp
-v verbose;
-d cria diretrios quando necessrio;
-m retm hora de modificao dos arquivos;
-H <formato> bin, tar, odc, outros
-t lista o contedo.
dd
k termina um processo;
q sai do programa;
r modifica a prioridade de um processo (renice), informe PID e valor nice (valores
positivos tem menor prioridade);
W salva a configurao corrente como padro;
s fresh screen em segundos.
m mostra ou no o uso de memria.
P mostra por uso de CPU;
M mostra por uso de memria.
E extenso da memria, altera a forma como a memria mostrada (KB, MB)
Top: Fornece Uptime, Uso de CPU e Tempo do Sistema.
$ top -p 115,225 mostra os processos selecionados.
uptime
2 Interromper (Ctrl + C)
-SIGQUIT
3 Fecha o processo.
30
-SIGKILL
-SIGTERM
TSTP
20 Parar/pausar (Ctrl + Z)
CONT
.
# renice <n_nice> [opes] alvo
-u interpreta alvos c/ nome de usurios;
-p alvo so PIDs (padro);
-g troca a prioridade dos processos de um grupo especfico;
# renice 15 6863
grep
whereis
6. Swap
8gb
(8%)
Ordem:
Todas ext4
/boot sda1 (primrio)
Swap sda5 (logico)
/home sda6 (logico)
/opt sda7 (logico)
/var sda8 (logico)
/ sda9 (logico)
Ext2
Ext4
XFS
Journaling: Sim,
Volume: 8 Exbibyte (x64) e 16 TiB (x86);
Setor: 512 bytes e 64 bytes;
Projetado para resistir a alta fragmentao;
Suporte nativo a RAID;
Utilitario de bkp e recuperao: xfsdump e xfsrestore;
Criado para sistemas de storage dedicados;
Utilitario de reorganizar parties: xfs_fsr.
xfsdump
xfs_check -v /dev/<fs> checa a consistncia do sistemas de arquivos (com modo
verbose);
Reiserfs v3
Journaling: Sim;
Volume: 16 TiB (mx.);
Arquivo: 1 EiB (x64) e 8 TiB (x86);
35
Indicado para lidar com arquivos pequenos (bloco menores que 4 KB);
/etc/fstab
Opes de montagem:
/dev/sda2
/
reiserfs
defaults
1
1
auto habilita na carga do sistema. Recomendado quando no se sabe o fs;
noauto desabilita na carga;
ro monta como somente leitura;
rw monta para leitura e gravao;
exec habilita a execuo de arquivos;
noexec desabilita a execuo;
user permite que qualquer usurio monte o dispositivo;
mas probe outros usurios de desmonta-lo;
users possibilita mount e unmount por qualquer usurio;
nouser somente superuser pode mount e unmount;
sync habilita a transferncia de dados sncrona;
async habilita a assncrona;
dev dispositivo especial de caracteres;
suid habilita que os executveis tenham bits do suid e sgid e execute como
superuser;
defaults habilita: rw, suid, exec, auto, nouser e async.
Os dois ltimos campos so: frequncia de bkp e checagem de disco.
dump: 1 (sim) e 0 (no). Se voc nunca usou o dump pra backup essa opo intil.
fsck: 0 (no ser checado), 1 (checado primeiro raiz) e 2 (checar depois do raiz).
Reiserfs 0.
/dev/cdrom /mnt/cdrom iso9660 noauto,user,ro 0 0 permisso usurio montar e l
CD.
Voc acrescenta o grpquota e usrquota na opo mount do /etc/fstab para habilitar
a opo cota para grupos e usurios, respectivamente, para determinado ponto de
montagem.
mount
fdisk
Remove a partio raiz pra ativar as mudanas no fstab: $ sudo mount o remount /
$sudo quotacheck -avugm (ler o fstab). Ele gravar informaes no quota.* listado
acima.
Use # edquota <usurio> para determinar as limitaes de uso de disco dele.
Gerando relatrio com # repquota /. / pois foi a unidade escolhida no fstab.
Adicionando o quotacheck no crontab vim /etc/cron.daily/quotacheck
Contedo: quotacheck -avugm
quota
Mudana de atributos
+i <nome_arquivo> altera pra imutvel (somente root) o atributo do arquivo. Nem o
Root pode alterar o arquivo.
+a <nome> append (s anexa). No pode alterar o que j estava, s acrescentar
-R recursivamente;
40
-V verbose;
-v version;
Hardlink
Criar links.
# ln [opes] <origem> <link>
-f remove links existentes (forando);
-i remove tambm, mas pergunta antes;
-d tentar criar hard links para diretrios;
-s criar um link simblico;
O comando ln cria hardlinks por padro.
$ ln -il para checar os inodes.
l rwxrwxrwx 1 root 4 Aug 16 14:20 awk -> gawk awk um link para gawk
$ ln is <alvo> <nome_do_link> substitui um link pr-existente de forma interativa.
$ ls l texto_simples
-rw-r--r-- 2 rodrigo users 29 2003-01-01 00:10 texto_simples
O n 2 na segunda coluna de informaes demonstra que h dois hardlinks para o
inode correspondente ao arquivo texto_simples. Um arquivo s de fato apagado do
sistema de arquivos quando o ultimo hardlink remanescente excludo.
type
42