O comando chroot muda o diretório root do processo corrente e de seus processos filhos.
A partir daí, você tem um prompt de comando da distribuição instalada, que pode ser usado para
recuperar o sistema. Pode ser usado para recuperar o boot do Linux, caso o tenha perdido instalando
outro Sistema Operacional, troca de senha..
Exemplo de uso:
Situação grub com problema, com um live-cd monte o hd do sistema linux na pasta /mnt/lnt “mount
/dev/sda1 /mnt/lnt”, execute o comando a baixo e apartir desse ponto podemos recuperar o grub
como se estivesse como root no sistema operacional com problema
chroot {diretório}{comando}
chroot /mnt/lnt mkdir bin boot dev etc home libe media mnt opt proc root sbin selinux srv sys tmp
usr var
O comando acima muda o diretório do root para a pasta /mnt/lnt e criar as pastas dentro do mesmo
diretório.
chroot /mnt/lnt /bin/bash
/mnt/lnt = ponto de montagem
/bin/bash = o bash do sistema.
O comando acima passa o raiz “/” do root para “/mnt/lnt” e assim podemos recuperar o sistema,
grub, troca de senha ou até mesmo para a instalação de um sistema operacional manualmente.
Ao entrar como chroot:
o bash vai mudar para.
bash-3.2#
Outro Exemplo prático:
Criação de uma distribuição linux, para poder instalar as ferramentas necessárias de
desenvolvimento sem prejudicar o sistema operacional utilizamos o comando chroot, passando a
raiz do root para o sistema operacional em desenvolvimento.
Novo site
www.networkadmins.com.br
sábado, 7 de abril de 2012
Comando route
Route: O comando route serve para exibição e alteração da tabela de roteamento.
Route aceita dois comandos: add, para adicionar uma rota, e del, para apagar
uma rota.
O comando têm a seguinte sintaxe:
add [-net |-host] endereço [gw gateway]
Exemplos:
route add -net 192.56.76.0 netmask 255.255.255.0 eth0
adiciona uma rota para a rede através de 192.56.76.x em "eth0".
route del -net 192.168.80.0 netmask 255.255.255.0 dev eth1
adiciona uma rota para a rede através de 192.168.80..x em "eth1".
route add default gw 172.16.3.1
Adiciona um gateway padrão
route -n | awk '$2 ~/[1-9]+/ {print $2;}'
Imprime a rota padão
route -n | grep "^0\." | awk '{print "Gateway to the World: "$2", via "$NF""}'
Imprime a rota padão via interface.
Route aceita dois comandos: add, para adicionar uma rota, e del, para apagar
uma rota.
O comando têm a seguinte sintaxe:
add [-net |-host] endereço [gw gateway]
Exemplos:
route add -net 192.56.76.0 netmask 255.255.255.0 eth0
adiciona uma rota para a rede através de 192.56.76.x em "eth0".
route del -net 192.168.80.0 netmask 255.255.255.0 dev eth1
adiciona uma rota para a rede através de 192.168.80..x em "eth1".
route add default gw 172.16.3.1
Adiciona um gateway padrão
route -n | awk '$2 ~/[1-9]+/ {print $2;}'
Imprime a rota padão
route -n | grep "^0\." | awk '{print "Gateway to the World: "$2", via "$NF""}'
Imprime a rota padão via interface.
Comando bz2
Introdução:
O bz2 é o formato de compatação no qual o software bzip2 compacta arquivos. O bzip2
comprime arquivos utilizando um algoritimo e também oferece vários níveis de
compressão variando o tamanho dos blocos de compactação.
Utilização:
O comando básico para a compactação no formato bz2 é o bzip2:
$ bzip2 -d arquivo.bz2 para descompactalçao
$ bzip2 -z arquivo para compactação
Existem outras variáveis da compactação como por exemplo o -k, que mantem o arquivo
original e cria um novo arquivo compactado:
$bzip2 -k arquivo
Outra variável possível é para o teste de integridade do arquivo. Podemos adicionar
também um nível de compressão maior a qualquer momento:
$bzip2 -t9 arquivo
Abaixo o menu de ajuda do bzip2 com todos os parametros do compactador:
• -d --decompress : força descompactação do arquivo
• -z --compress : força compactação do arquivo
• -k --keep : mantém (não deleta) os arquivos de entrada
• -f --force : sobrescreve se exitir arquivos de saída
• -t --test : testa a integridade do arquivo compactado
• -c --stdout : saída para saída padrão
• -q --quiet : omite mensagens de erro não críticas.
• -v --verbose : verboso (um segundo -v aumenta ainda mais)
• -L --license : exibe a versão do software e a licença
• -V --version : exige a versão do software e a licença
• -s --small : usa menos memória (no máximo 2500k)
• -1 .. -9 : seta o tamanho do bloco de 100k .. 900k
• --fast : alias para -1
• --best : alias para -9
O bz2 é o formato de compatação no qual o software bzip2 compacta arquivos. O bzip2
comprime arquivos utilizando um algoritimo e também oferece vários níveis de
compressão variando o tamanho dos blocos de compactação.
Utilização:
O comando básico para a compactação no formato bz2 é o bzip2:
$ bzip2 -d arquivo.bz2 para descompactalçao
$ bzip2 -z arquivo para compactação
Existem outras variáveis da compactação como por exemplo o -k, que mantem o arquivo
original e cria um novo arquivo compactado:
$bzip2 -k arquivo
Outra variável possível é para o teste de integridade do arquivo. Podemos adicionar
também um nível de compressão maior a qualquer momento:
$bzip2 -t9 arquivo
Abaixo o menu de ajuda do bzip2 com todos os parametros do compactador:
• -d --decompress : força descompactação do arquivo
• -z --compress : força compactação do arquivo
• -k --keep : mantém (não deleta) os arquivos de entrada
• -f --force : sobrescreve se exitir arquivos de saída
• -t --test : testa a integridade do arquivo compactado
• -c --stdout : saída para saída padrão
• -q --quiet : omite mensagens de erro não críticas.
• -v --verbose : verboso (um segundo -v aumenta ainda mais)
• -L --license : exibe a versão do software e a licença
• -V --version : exige a versão do software e a licença
• -s --small : usa menos memória (no máximo 2500k)
• -1 .. -9 : seta o tamanho do bloco de 100k .. 900k
• --fast : alias para -1
• --best : alias para -9
Comando AWK
Introdução:
Awk é uma linguagem com muitas funcionalidades, excelente na manipulação de strings e
arquivo texto, muito útil pra usar na linha de comando, em scripts.
Utilização:
Para manipular strings o awk possui inúmeros parâmetros. Como contador de linhas,
retorna o numero total de linhas do arquivo informado (arquivo.txt), incluindo as linhas em
branco.
NR = numero de registros, ou numero de linhas quando contando as linhas como registro
de um arquivo.
awk 'END { print NR }' arquivo.txt
Lista arquivo sem as linhas linhas em branco
awk 'NF>0' arquivo.txt
Eliminar linhas em branco e redirecionar resultado para outro arquivo.
awk 'NF>0' arquivo.txt > arqlimpo.txt
Numerar todas as linhas de arquivo:
awk '{print NR" "$0}' arquivo.txt
Se quisermos imprimir a contagem do numero de campos de um arquivo:
awk '{print NF}' arquivo.txt
Ou, se quisermos imprimir apenas as linhas que possuam exatamente 10 campos:
awk -F: 'NF == 10 {print}' arquivo.txt
Awk é uma linguagem com muitas funcionalidades, excelente na manipulação de strings e
arquivo texto, muito útil pra usar na linha de comando, em scripts.
Utilização:
Para manipular strings o awk possui inúmeros parâmetros. Como contador de linhas,
retorna o numero total de linhas do arquivo informado (arquivo.txt), incluindo as linhas em
branco.
NR = numero de registros, ou numero de linhas quando contando as linhas como registro
de um arquivo.
awk 'END { print NR }' arquivo.txt
Lista arquivo sem as linhas linhas em branco
awk 'NF>0' arquivo.txt
Eliminar linhas em branco e redirecionar resultado para outro arquivo.
awk 'NF>0' arquivo.txt > arqlimpo.txt
Numerar todas as linhas de arquivo:
awk '{print NR" "$0}' arquivo.txt
Se quisermos imprimir a contagem do numero de campos de um arquivo:
awk '{print NF}' arquivo.txt
Ou, se quisermos imprimir apenas as linhas que possuam exatamente 10 campos:
awk -F: 'NF == 10 {print}' arquivo.txt
Comando tee
A ferramenta tee é utilizada para copiar o conteúdo da entrada padrão para um arquivo e para saída
padrão simultaneamente ou seja, quando necessitamos enviar o resultado da execução de um aplicativo
ou fluxo de dados para um arquivo e para a tela (monitor) ao mesmo tempo.
Opções de uso:
-a, --append
concatena os dados no arquivo especificado (não sobrescreve)
-i, --ignore-interrupts
ignora sinais de interrupção (kill)
--help mostra a ajuda
--version
mostra as informações sobre a versão e sai
Autores: Mike Parker, Richard M. Stallman, and David MacKenzie.
Exemplos de uso:
cat /etc/squid/squid.conf | grep -v ^# | tee meusquid.conf.
find /dados -name “souzacruz” | tee -a resultados.txt
Mais informações: man tee, info tee
padrão simultaneamente ou seja, quando necessitamos enviar o resultado da execução de um aplicativo
ou fluxo de dados para um arquivo e para a tela (monitor) ao mesmo tempo.
Opções de uso:
-a, --append
concatena os dados no arquivo especificado (não sobrescreve)
-i, --ignore-interrupts
ignora sinais de interrupção (kill)
--help mostra a ajuda
--version
mostra as informações sobre a versão e sai
Autores: Mike Parker, Richard M. Stallman, and David MacKenzie.
Exemplos de uso:
cat /etc/squid/squid.conf | grep -v ^# | tee meusquid.conf.
find /dados -name “souzacruz” | tee -a resultados.txt
Mais informações: man tee, info tee
Comando screen
O Screen atua como um gerenciador de janelas em modo texto, onde você consegue
dividir a janela, compartilhar a sessão em tempo real, além de várias outras
funcionalidades. Abaixo irei mostrar apenas algumas delas:
Para executá-lo basta digitar:
[root@tiaomacale2 ~]#screen
Se você quiser compartilhar sua sessão com um amigo para ele te ajudar a
resolver um problema, por exemplo, faço o seguinte:
Peça para ele acessar sua máquina com o mesmo usuário que você está e digite:
[root@tiaomacale2 ~]#screen -x
E apartir de agora a sessão já está sendo compartilhada com seu colega. Tudo
que ele digitar você enxerga e vice-versa.
Colocando relógio no terminal: Pressione as teclas Ctrl+a, solte e depois ":",
sem aspas. Aparecerá no canto inferior esquerdo de sua tela um prompt, então
digite: hardstatus alwayslastline "%c %w"
É só teclar enter e temos uma barra permanente (até que saia do screen) com
os nomes das janelas abertas e a hora atual.
Saindo do Screen e recuperando a tela onde você estava: pressione Ctrl+a,
solte depois "d", para recuperar a tela onde estava digite:
[root@tiaomacale2 ~]#screen -r
Agora você está no mesmo local que estava antes de fechar o screen.
Para listar as "janelas" criadas pelo screen digite:
[root@tiaomacale2 ~]#screen -ls
Criar nova sessão: [CTRL]+A c
Visualizar o nome das janelas: [CTRL]+A w
Sair sem fechar a sessão: [CTRL]+A d (desvincular)
Navegar entre as sessões:
[CTRL]+A n (próxima sessão)
[CTRL]+A p (sessão anterior)
[CTRL]+A (numero da sessão)
Para entrar novamente na sessão desvinculada:
[root@tiaomacale2 ~]#screen -r
Para substituir o nome da sessão corrente, digite: [CTRL]+A A
No modo de edição, altere o nome da sessão atual para um de sua preferência,
pode ser qualquer nome para diferenciá-las.
Dividindo a janela:
[CTRL]+A S (pressione o número de vezes desejado)
[CTRL]+[TAB] (alterna entre as divisões criadas)
[CTRL]+A Q (Maximiza o console corrente)
Matando a sessão corrente (kill): [CTRL]+A k
Salvando a tela em modo texto: [CTRL]+A h
Será gerado um arquivo chamado hardcopy.0 no diretório corrente.
Comando find
Find: Procura por arquivos/diretórios recursivamente no disco. Find pode procurar arquivos
através de sua data de modificação, tamanho, etc através do uso de opções. Find.
-size [num ] Procura por arquivos que tiverem o tamanho [num].
-maxdepth [num ] Faz a procura até [num] sub-diretórios dentro do diretório que está sendo
pesquisado.
Obs.: Diretório raiz conta um nível.
-name [expressão ] Procura pelo nome [expressão] nos nomes de arquivos e diretórios
processados.
Exemplos:
Procura no diretório atual e sub-diretórios um arquivo comtamanho maior que 50000
kbytes (50Mbyte).
[root@tiaomacale2 /]# find / -size +50000k
/sys/devices/pci0000:00/0000:00:0f.0/resource1
/sys/devices/pci0000:00/0000:00:00.0/resource0
/usr/lib/locale/locale-archive
/proc/kcore
Procura no diretório raíz e sub-diretórios até o 3o. nível, um arquivo/diretório chamado
iptables.
[root@tiaomacale2 /]# find / -maxdepth 4 -name iptables
/lib/iptables
/etc/rc.d/init.d/iptables
/sbin/iptables
Procura no diretório raíz e sub-diretórios um arquivo/diretório
chamado host.
[root@tiaomacale2 /]# find / -name host
/lib/modules/2.6.18-194.el5/kernel/drivers/usb/host
/lib/modules/2.6.19/kernel/drivers/usb/host
/lib/modules/2.6.18-194.32.1.el5/kernel/drivers/usb/host
/usr/bin/host
/usr/src/linux-2.6.19/drivers/usb/host
/usr/src/kernels/2.6.18-194.el5-i686/drivers/usb/host
/usr/src/kernels/2.6.18-194.32.1.el5-i686/drivers/usb/host
find . -name '*.xml' -type f -print | xargs du -ch
Soma o uso do disco para arquivos do tipo .xml, imprimindo a soma de uso do disco e a
árvore de diretórios.
através de sua data de modificação, tamanho, etc através do uso de opções. Find.
-size [num ] Procura por arquivos que tiverem o tamanho [num].
-maxdepth [num ] Faz a procura até [num] sub-diretórios dentro do diretório que está sendo
pesquisado.
Obs.: Diretório raiz conta um nível.
-name [expressão ] Procura pelo nome [expressão] nos nomes de arquivos e diretórios
processados.
Exemplos:
Procura no diretório atual e sub-diretórios um arquivo comtamanho maior que 50000
kbytes (50Mbyte).
[root@tiaomacale2 /]# find / -size +50000k
/sys/devices/pci0000:00/0000:00:0f.0/resource1
/sys/devices/pci0000:00/0000:00:00.0/resource0
/usr/lib/locale/locale-archive
/proc/kcore
Procura no diretório raíz e sub-diretórios até o 3o. nível, um arquivo/diretório chamado
iptables.
[root@tiaomacale2 /]# find / -maxdepth 4 -name iptables
/lib/iptables
/etc/rc.d/init.d/iptables
/sbin/iptables
Procura no diretório raíz e sub-diretórios um arquivo/diretório
chamado host.
[root@tiaomacale2 /]# find / -name host
/lib/modules/2.6.18-194.el5/kernel/drivers/usb/host
/lib/modules/2.6.19/kernel/drivers/usb/host
/lib/modules/2.6.18-194.32.1.el5/kernel/drivers/usb/host
/usr/bin/host
/usr/src/linux-2.6.19/drivers/usb/host
/usr/src/kernels/2.6.18-194.el5-i686/drivers/usb/host
/usr/src/kernels/2.6.18-194.32.1.el5-i686/drivers/usb/host
find . -name '*.xml' -type f -print | xargs du -ch
Soma o uso do disco para arquivos do tipo .xml, imprimindo a soma de uso do disco e a
árvore de diretórios.
Assinar:
Postagens (Atom)