Quer saber como fazer uma distribuição linux do Zero?? Quer aprender de fato com grandes distribuições como Redhat, Ubuntu e Debian fazem seus Linux?
O projeto Linux From Scratch (LFS) publicou a versão 7.1 de seu manual para construção de uma instalação Linux personalizada. O novo guia tem 345 páginas e usa mais componentes atualizados do que versões anteriores, por exemplo, o Linux kernel 3.2.6 e GNU Compiler Collection 4.6.2 (GCC).
Fazer o Internet Banking do BB funcionar agora é simples, basta instalar o browser plugin do icedtea. Numa instalação padrão do ubuntu, executar:
# sudo apt-get install icedtea6-plugin
e correr pro abraço.
Icedtead é uma implementação da VM Java 100% Open Source. Como o OpenJDK virou a implementação de referência do Java, faz sentido tudo começar a funcionar perfeitamente no icedtea, que é baseado no OpenJDK.
Use da seguinte forma: more nome_do_arquivo (com pausa)
ou
Use da seguinte forma: less nome_do_arquivo (com pausa) - Para sair = q
Exemplo:
# cat /etc/services
ou
# more /etc/services
ou
# less /etc/services
Para Filtrar Comandos - Use o caracter pipe |
Use da seguinte forma: Comando1 | Comando2 | Comando3 | Comando_n
# cat nome_do_arquivo | more
# cat nome_do_arquivo | less
Exemplo:
# cat /etc/services | more (para sair: q)
# cat /etc/services | less (para sair: q)
Para exibir as estatísticas de um arquivo como:
Quantidade de Letras, linhas e palavras de um arquivo.
Use da seguinte forma:
wc nome_do_arquivo (exibe quantidade de letras, palavras e linhas)
wc -c nome_do_arquivo (letras)
wc -l nome_do_arquivos (linhas)
wc -w nome_do_arquivo (palavras)
Exemplo:
# wc nome_do_arquivo
# wc -c /etc/services (exibe a quantidade de letras)
# wc -l /etc/services (exibe a quantidade de linhas)
# wc -w /etc/services (exibe a quantidade de palavras)
Para Ordenar um Arquivo na tela
Use da seguinte forma: sort nome_do_arquivo
Exemplo:
# sort /etc/services
# sort -r services (ao contrario)
Para Exibir o inicio de um arquivo (10 primeiras linhas)
Use da seguinte forma: head nome_do_arquivo
Exemplo:
# head /etc/services
Para exibir o fim de um arquivo (10 ultimas linhas)
Use da seguinte forma: tail nome_do_arquivo
tail -f nome_do_arquivo (lê o fim do arquivo em tempo real - Ideal para ler Logs em tempo real)
Exemplo:
# tail /etc/services
Para ler um log em tempo real
# tail -f /var/log/messages (Em distribuições baseadas em Redhat)
ou
# tail -f /var/log/syslog (Em distribuições baseadas em Debian)
Para Filtrar/Pesquisar expressões em arquivo
Use da seguinte forma: grep "expressão" nome_do_arquivo
Exemplo:
# grep "FTP" /etc/services
# grep -v "FTP" /etc/services (inverso)
# grep -n "FTP" /etc/services (numero da linha)
# grep -i "FTP" /etc/services (maiúscula ou minúscula)
Para Filtrar saida de comando
Use da seguinte forma: cut opções nome_do_aquivo
Principais Opções:
-c = qtd de caracter
-f = campo
-d = delimitador
Exemplo:
# cut -c1 /etc/passwd
# cut -f1 -d: /etc/passwd (Exibir apenas o nome dos usuários do sistema)
Para exibir Mensagens na tela:
Use da seguinte forma: echo "Mensagem"
Exemplo:
# echo "Exibe uma msg na tela"
Para usar Redirecionadores de Saída de comandos
> Sobrescreve o arquivo destino
>> Adiciona ao arquivo destino
< ou << Input
Exemplo:
# date (Exibe a data na tela)
# date > data.txt (Grava o resultado do comando date no arquivo data.txt)
# tr 'a-z' 'A-Z' < /etc/services
# tr 'a-z' 'A-Z' < /etc/services > resultado.txt
# echo "Meu nome é João" > nome.txt
Utilizando Expressão Regular:
* --> Quer dizer todos
? --> Substitui um caracter
*.* --> Arquivos com extensão
Exemplo:
cp /etc/* /tmp (Copia todos os arquivos de /etc para /tmp)
cp /etc/*.* /tmp (Copia todos os arquivos de /etc que tenham extensão para /tmp)
cp /etc/??? /tmp (Copia todos os arquivos que tenham 3 letras no nome para /tmp)
Para criar variáveis
Use da seguinte forma: export NOME_VARIAVEL=CONTEUDO
Exemplo:
# export ALUNO=José
export NOME_COMPLETO="José da Silva"
Para exibir conteúdo de Variáveis:
# echo $ALUNO
# echo $NOME_COMPLETO
Para exibir conteúdo de Variáveis junto com alguma mensagem:
# echo "O Primeiro nome do Aluno é $ALUNO"
# echo "O Nome completo do Aluno é $NOME_COMPLETO"
Para exibir variáveis do SHELL Atual:
# env
ou
# export
Para exibir resultados de comandos junto com possíveis mensagens:
Exemplo:
# echo A Data e Hora atual é: `date`
# echo "A Data e Hora atual é: $(date)"
# echo "A Data e Hora atual é: $(date)" > data.txt (Grava o conteúdo deste comando no arquivo data.txt
Segue o resumo de comandos e conceitos vistos em Sala de Aula. Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.
.. =
diretório anterior
../.. = dois diretórios anteriores (e assim por diante)
Exibir o
diretório atual (também chamado de diretório de trabalho)
#
pwd
Para Acessar
diretórios
#
cd / (acessa a raiz do disco)
#
cd /etc (vai para o diretório /etc)
#
cd /tmp (vai para o diretório /tmp)
#
cd /usr/local/share/docs (vai para o diretório /usr/local/share/docs)
#
cd .. (volta um nível)
#
cd ../.. (volta dois níveis)
#
cd ou cd ~ (vou para o meu diretório home)
#
cd - (vai para o último diretório de trabalho)
Criar
diretórios (pasta)
Use da
seguinte forma: mkdir nome-do-diretório
Exemplo:
#
mkdir vazio
Criar
diretórios com dependencia
#
mkdir -p numeros/1/2/3/4/5/6
O Resultado:
Apagar
diretórios vazios
Use da
seguinte forma: rmdir nome-do-diretorio
Exemplo:
#
rmdir vazio
Renomear
diretórios
Use da
seguinte forma: mv nomeatual novonome
Exemplo:
#
mv numeros letras
Mover
diretórios
Use da
seguinte forma: mv nomeatual novodestino
Exemplo:
#
mv letras /tmp (move o diretório letras para dentro do diretório /tmp)
#
mv /tmp/letras . (move o diretório letras que estava dentro de /tmp para o
diretório atual)
Copiar
Diretórios
Use da
seguinte forma: cp -Rv nome-diretorio-origem destino
Dica:
A opção -R
indica Recursividade, ou seja, copiar diretórios e seus subdiretórios e
arquivos.
A opção -v
indica que exiba detalhes (Verbose em inglês)
Exemplo:
#
cp -Rv /root /tmp (copia o diretório /root para dentro do diretório /tmp)
#
cp -Rv /etc /tmp (copia o diretório /etc para dentro do diretório /tmp)
#
cp -Rv /root/backup / (Copia o diretório backup que está dentro de /root para a
raiz do disco)
#
cp -Rv /usr/local/share/docs . (Copia o diretório docs que está dentro de
/usr/local/share para o diretório que estou no momento)
O caracter .
(ponto) quer dizer para o local que estou
Copiar
Diretórios Renomeando o destino.
Use da
seguinte forma: cp diretorio-origem diretorio-destino/novo-nome
Exemplo:
#
cp -Rv /root /tmp/root-renomeado (copia o diretório /root para dentro do
diretório /tmp com o nome de root-renomeado)
#
cp -Rv /etc /tmp/etc-novo (copia o diretório /etc para dentro do diretório /tmp
com o nome de etc-novo)
#
cp -Rv /root/backup /backup2 (Copia o diretório backup que está dentro de /root
para a raiz do disco com o nome de backup2)
#
cp -Rv /usr/local/share/docs ./documentos (Copia o diretório docs que está
dentro de /usr/local/share para o diretório que estou no momento com o nome de
documentos)
Apagar
diretórios com conteúdo
Use da seguinte
forma: rm -Rvf nome-do-diretorio
A opção -f
quer dizer forçar, ou seja, exclui sem perguntas
#
rm -Rvf numeros (apaga o diretório numeros)
#
rm -Rvf /numeros (apaga o diretório numeros que está na raiz)
#
rm -Rvf ../numeros (apaga o diretório numeros que está na no diretório
anterior)
#
rm -Rvf ../../numeros (apaga o diretório numeros que está dois diretórios
anteriores)
#
rm -Rvf /tmp/backup (apaga o diretório backup que está dentro do diretório /tmp)
Observação:
Existem duas
formas possíveis de criar diretório com espaço:
1 - Usando
aspas
# mkdir
"Arquivos de Programas"
2 -
Utilizando a barra invertida para fazer o "escape" do caracter
espaço:
# mkdir
Arquivos\ de\ Programas
Da mesma
forma que foram criados, podem ser apagados ou movidos com os devidos comandos.
rmdir
"Arquivos de Programas"
# rmdir
Arquivos\ de\ Programas
Exibindo o
tamanho de um diretório
Use da
seguinte forma: du diretório
Exemplo:
#
du /etc (Mostra o tamanho individual de cada arquivo em bytes)