Você está na página 1de 38

Fundamentos bsicos de Linux

Marcos Flvio Arajo Assuno


Fundamentos de Ethical Hacking

1.SURGIMENTO DO LINUX

O Linux foi originalmente desenvolvido como um passatempo de Linus Torvalds.


Ele queria um sistema operacional que fosse semelhante a um Unix, com todas as suas
funcionalidades e, ainda, que pudesse utiliz-lo num PC. A partir dessa idia, Linus
comeou a trabalhar nesse que seria o futuro kernel do sistema operacional que hoje
chamado de Linux.

1.2 KERNEL

O kernel o ncleo do sistema operacional, a parte que controla o hardware da


mquina. Quando falamos de Linux, estamos nos referindo apenas ao kernel do sistema.
Tudo que existe ao redor do kernel so aplicativos que compem uma distribuio do
Linux.

2. DISTRIBUIES LINUX

Pelo fato de o Linux ser um software livre, muitas empresas ou mesmo pessoas
fsicas se empenham em organizar pacotes que contm o kernel e mais uma srie de
aplicativos e manuais para que o sistema atenda a demandas especficas..
A esse conjunto de aplicativos mais o kernel d-se o nome de distribuio Linux.
Algumas distribuies Linux so maiores que outras, dependendo da quantidade de
aplicativos e a finalidade a que se propem.

Entre as "grandes" distribuies pode-se citar: Debian, Red Hat, Fedora, Suse, CentOS,
Ubuntu, etc.... O que diferencia uma distribuio de outra a maneira como so
organizados e pr-configurados os aplicativos que cada uma contm

3. MODO TEXTO X MODO GRFICO


No Linux a responsabilidade pelo ambiente grfico no do kernel e sim de um
programa especial, o XFree86. No entanto, este programa prov apenas as funes de
desenho de elementos grficos e interao com a placa de vdeo. A interao final do
usurio com a interface grfica se d atravs de programas gerenciadores de janelas,
como o KDE, o WindowMaker e o GNOME, e so eles os responsveis pela "aparncia"
do seu Linux.

A separao do ambiente grfico do resto do sistema apresenta muitas vantagens.


Como o ambiente grfico consome recursos do sistema, possvel desativ-lo,
principalmente em servidores, resultando assim em um melhor desempenho de outras
aplicaes, uma vez que a quantidade de processamento da CPU que seria utilizado para
o XFree86, poder ser utilizada para essas aplicaes. Alm do mais, o desenvolvimento
do ambiente grfico pode ocorrer de maneira independente ao do kernel.

O Linux tambm pode funcionar em modo texto. Nesse caso a interao com o
usurio se d por meio de um shell, como o Bash, que capaz de interpretar e executar
comandos digitados pelo usurio.
4. COMANDOS DE NAVEGAO.

Assim como no Prompt de Comando do Windows, podemos utilizar o shell do Linux para
navegar no sistema, criando diretrios, arquivos, configurando permisses, dentre vrias
outras possibilidades.

necessrio entender o significado de simbologias comuns no Shell:

/ : Representa a Raiz do Sistema


~: usado para representar a pasta pessoal do usurio.

$ : Identifica o usurio comum logado no sistema.


# : Identifica o usurio root logado no sistema.

No primeiro exemplo, estamos localizados na raiz do Linux, utilizando o usurio root. J


no segundo exemplo, estamos na pasta home, utilizando o usurio root.

Vamos explicar sobre os diretrios do Linux:

/: Raiz do sistema
/BIN : Comandos e utilitrios usados por todos os usurios .
/SBIN: Comandos e utilitrios que s podem ser utilizados pelo root
/BOOT: Contem os arquivos necessrios para a inicializao do sistema.
/LIB: Contem as bibliotecas essenciais que o sistema necessita.
/PROC :Contem informaes sobre hardware e o S.O da mquina.
/VAR: Contm arquivos com contedo muito variado:
/ROOT: Arquivos ou diretrios pessoais do usurio root (ou super usurio)
/HOME: Arquivos e diretrios pessoais dos usurios ( com exceo do root)
/USR: Contm todas as configuraes e programas instalados pelos usurios.
/ETC: Contm os arquivos de configurao de quase tudo no Linux.
/DEV: Arquivos de dispositivos de hardware:
Ex.: FD0 disquete
HDC cd-rom
/MNT : Contm o ponto de montagem dos dispositivos que esto em DEV ( onde voc
acessa os arquivos dos dispositivos

Alguns comandos necessrios:

- startx: inicia o Linux no modo grfico;


- logout: sai do usurio atual e volta tela de login;
- clear: limpa a tela.

4.1 Comando cd

O comando cd, torna corrente o diretrio especificado. Vejamos o exemplo:

Logamos com o usurio root, e camos no diretrio home do usurio (no caso do root, a
pasta /root). Ns queremos nos transferir para a raz ( o C: no Windows), ento usamos o
comando cd para entrar na raz. Note que logo abaixo a barra que representa a raz entra
dentro do colchetes, significando que o diretrio est corrente.

Portanto, a sintaxe do comando faz-se:

cd <diretrio>

4.1.1 Comando cd..

O comando cd.. volta ao diretrio anterior. Note:

Estando na raz, entraremos na pasta /etc/ggi. Observamos, que na linha abaixo, o


diretrio ggi, tornou-se corrente. Porm, ao digitar cd.., eu volto ao diretrio anterior ao
ggi, nesse caso o etc.

4.2 Comando whoami


Comando utilizado para verificar o usurio logado na mquina local.

4.3 Comando pwd

Comando pwd, exibe na tela a localizao exata do diretrio corrente. Veja:

Estamos dentro do diretrio run, mais no sabemos exatamente de onde essa pasta, ou
subpasta. Entrando com o comando pwd, exibir-se a localizao exata do diretrio logo
abaixo, que nesse caso, pertence ao diretrio /var.

4.4 Comando ls

O comando ls, lista diretrios e arquivos dentro do diretrio. Veja:

Dica: Para executar o comando, no necessrio t-lo corrente. Basta usar a sintaxe ls
<diretrio>.

4.4.1 Comando ls l
A opo -l do comando ls, permite listar os arquivos de forma que se possa ver as
permisses, grupo, data de criao. Veja.

4.4.2 Comando ls la

A opo -a, permite a visualizao de arquivos ocultos.

Note que todos os arquivos .nomedoarquivo significa que oculto.

4.5 Comando man

Esse comando permite visualizar o manual do comando.


A sintaxe :

man <comando>

Para sair do manual, aperta-se a tecla q.

4.6 Comando file

Identifica o tipo de arquivo.

6. COMANDO DE MANIPULAO

6.1 Comando cat e tac

O comando cat permite visualizar o arquivo, e o comando tac permite visualizar ao


contrrio. Veja no exemplo:

A sintaxe :

cat <arquivo>
cat /ect/passwd

tac <arquivo>

tac /etc/passwd

6.3 Direcionadores e Separadores

Usamos ambos para auxiliar os comandos principais

6.3.1 Maior (>)

um direcionador. Ele envia a sada do comando para um arquivo ou dispositivo. Se


houver algo armazenado, ele sobrescreve o contedo. Exemplo:

Nesse caso estamos jogando o resultado do comando tree para um arquivo chamado
resultado. Logo abaixo, usando o comando ls, podemos ver que ele foi criado.

6.3.2 Maior Maior (>>)

Tambm um direcionador. Envia a sada do comando para um arquivo ou dispositivo. Se


houver algo armazenado, essa opo adiciona o contedo.
6.3.3 Dois pontos (;)

um separador. Usado para entrar outro comando na mesma linha. Veja o exemplo:

Na primeira linha, estamos copiando o texto1 para a pasta1 e texto2 na pasta2, ambos
criados na raiz, numa nica linha.
Abaixo, utilizando o comando tree ( esse comando visualiza os diretrios e arquivos em
formato rvore), vemos os devidos arquivos em suas devidas pastas.

6.4 Comando head e tail

O comando head (que significa cabea) permite ver as n primeiras linhas do arquivo. J
o comando tail (significa cauda) permite ver as n ltimas linhas do arquivo.

A sintaxe d-se:

head <n de linhas> <arquivo>

tail <n de linhas> <arquivo>

Vejamos o exemplo:

No primeiro comando, vemos as primeiras 5 linhas do arquivo. No segundo, vemos as 5


ltimas linhas.

6.5 - Comando mkdir

Permite criar pastas no linux. Usando a opo p, criamos toda a estrutura hierrquica de
pastas de uma s vez.

Sintaxe utilizada:

Mkdir <opo> <nomedapasta>

Exemplo:
Usando o comando mkdir, criamos a pasta denominada carol localizada no diretrio
corrente.

Vejamos outro exemplo:

Nesse caso estamos criando a estrutura hierrquica toda de uma vez. Com o comando ls,
podemos notar a criao da pasta aluno, e com o comando tree, podemos exibir as
pastas trabalhos e pessoal dentro da pasta aluno.

6.6 Comando rmdir

Esse comando usado para apagar apenas diretrios vazios. A opo p permite
remover toda a estrutura. Veja um exemplo:

Ainda utilizando a pasta criada no tpico 6.5, vamos apag-la, utilizando rmdir. Logo na
prxima linha podemos verificar que a pasta foi realmente removida.

Dica: Esse um comando obsoleto e restrito. Para apagar geralmente utilizamos o


comando rm.

6.7 Comando rm

O comando rm apaga diretrios cheios ou no.


Opes:
- f : formao a remoo;
- r : excluso recursiva (apaga subdiretrios)

Podemos notar no exemplo acima, a excluso da pasta /aluno e todos os subdiretrios.

Portanto a sintaxe :

rm <opes> <nomedoarquivo>

6.8. Comando cp

Copia arquivos e pastas.


Opes:

- r : copia subdiretrios e seus arquivos


- f: fora a substituio dos arquivos.

Nesse exemplo estamos copiando da pasta texto, um documento chamado teste para a
pasta BACKUP.

A sintaxe :

cp <opo> <origem> <destino>


6.9 Comando mv

usado para copiar e renomear arquivos e diretrios.

A sintaxe :

mv <origem> <destino> - para mover

mv <nomevelho> <nomenovo> - para renomear

Exemplo:

Agora estamos movendo um arquivo da raiz, chamado texto para a pasta BACKUP.
Observe que na linha seguinte, no vemos esse arquivo na raiz.
Outro exemplo:

Agora estamos renomeando a pasta BACKUP para backup.

Dica: Perceba que o linux diferencia letras minsculas de MAISCULAS.


6.10 Comando cut

6.11 Comando VI

O vi o editor de texto do shell.


Podemos dividir o vi em dois:

Modo de INSERO ou SUBSTITUIAO

Modo MENU (pode ser acessado ao se pressionar a tecla ESC para sair do modo de
insero.
Comandos mais utilizados
:e Nome Abre novo arquivo
:w _Salvar
:q _sair
:q! _sai sem salvar
H um terceiro modo chamado de VISUAL que pode ser acessado atravs da tecla V (A
partir do modo menu)
v: Marca texto
y : Copia
d : recorta
p : cola
u : desfazer
7. DESLIGANDO O SISTEMA

7.1 Comandos Utilizados pelo usurio comum:

- Ctrl+Alt+Del

- Halt : Delisga a mquina

- REBOOT : Reboota a mquina

7.2 Comando utilizado pelo ROOT

Para desligar o sistema, o ROOT pode utilizar todos os comandos citados acima, e dispe
de um comando que usado mais para fins administrativos.

Sintaxe:

SHUTDOWN <opo> <horrio> <mensagem opcional>

Opes

-h : desliga a maquina
-r : reinicia a maquina
Horrio
Now : agora
00:00 : 23:59

Exemplo
Shutdown r now

8.0 COMANDOS DE BUSCA

8.1 Comando FIND

Encontra arquivos no Linux. Sua sintaxe :

FIND <onde><opes><o que>

onde diretrio a ser pesquisado


opoAs mais comuns so:
-name nome
-user usurio

Ex:
Find / -name *.conf

8.2 Comando GREP

Filtra 'strings' e expresses em arquivos e exibe na tela. Permite filtrar um contedo em


texto com base em uma expresso. muito utilizado com o pipe (|). Sua sintaxe :

grep 'expresso' <entrada>


Exemplos:

grep 'linux' /etc/passwd


cat /etc/passwd | grep [a-z]in
9. LINKS

Apesar de o principio ser o mesmo, a criao dos atalhos no Linux, so totalmente


diferentes do Windows.Temos dois tipos de links:

9.1 Links Simblicos


Funciona como um atalho apenas uma referncia ao outro arquivo. Se o arquivo for
apagado, o link ficar intil. Um atalho do arquivo origem.

9.2 Links Fsicos

a criao de outro arquivo independente do original, mas que possui uma ligao
simbitica com oprimeiro. como se um srquivo tivesse dois nomes.

9.3 Comando ln

Ln <opo><arquivo><link>

Opo:
-s cria um link simblico.
*quando omitido o -s cria-se um link fsico

Arquivo: localizao do arquivo que queremos linkar.


Link: O nome do link que ser criado

10. DISPOSITIVOS NO LINUX

A maioria dos dispositivos no Windows so reconhecidos por letras (por exemplo: A: , C:


, D: , etc).J no Linux diferente.
Veja abaixo:

HDDisco IDE
SDDisco SCSI / SATA

APrimeira porta mster


BPrimeira porta slave
CSegunda porta mster

1Primeira partio
2 Segunda partio
3Terceira partio
4Quarta partio
5Primeira partio lgica
6Segunda partio lgica
7Terceira partio lgica

Outros
FD0 / FD1 Referem-se ao disquete (floppy disk ) em duas portas diferentes.
CDROM Refere-se ao drive de CD, indepedente de que porta ele esta instalado.
(Mesmo que /DEV/HDC)

10.1 Montando dispositivos

No Linux, para acessar o contedo dos dispositivos antes obrigatrio sua montagem.
Normalmente, a montagem feita no diretrio dele.
Comando:
Mount <opo><dispositivo> <pasta>
Opo:
-t <sistema de arquivos>
Exemplos
Mount t vfat /dev/hdb1 /mnt/x
Mount t iso 9660 /dev/hdc /mnt/cdrom
Mount /dev/hdc /mnt/cdrom

Mount mostra os dispositivos j montados

10.2 Desmontando dispositivos


Umount <pasta ou dispositivo>

Exemplos:
Umount /dev/hdc
Umount /mnt/cdrom
Umount a Desmonta todos os dispositivos montados.

10.3 Formatando disquete


10.3.1 Criando sistema de arquivos

*obs: para formatar o disquete, este deve estar desmontado.

FDFORMAT<dispositivo>

Fdformat /dev/fd0
Formata o disquete destruindo todos os dados. No cria o sistema de arquivos.
A opo n permite formatao mais rpida no fazendo verificao nas trilhas.

MKE2FS <dispositivo>
Exemplo MKE2FS /dev/fd0
Cria o sistema de arquivo EXT2 no dispositivo.

11. PERMISSES NO LINUX


O sistema operacional Linux trabalha com permisses relacionadas a trs sujeitos. So
eles:
uDono
gGrupo(do dono)
oOutros

H uma forma de trabalhar com os trs sujeitos ao mesmo tempo:


a Todos
As permisses existentes no Linux so:

rleitura
wgravao
xexecuo
11.1 Mudando Permisses
CHMOD <permisso><arquivo>
Permisso A nova permisso que ser adicionada ou removida.
Arquivo A arquivo/pasta que ter suas permisses alteradas.

12. ChownModifica usurio (e grupo) de um arquivo ou pasta.


Sintaxe:
CHOWN<usurio:grupo><arquivo>
Exemplo:
Chown linux /root

13. Usurios e Grupos

Comandos:

Adduser: Adiciona usurio no Linux


(o comando useradd tambm pode ser usado)

Groupadd: Adiciona grupos no Linux


Passwd: troca a senha de um usurio

Userdel: Apaga um usurio.


Opo:
-r: Apaga o diretrio Home do usurio

Groupdel: Apaga um grupo


Groupmod: Modifica nome do grupo
Opo:
-n: Modifica o grupo especificado

Usermod: Adiciona usurio ao grupo


Opo:
-G: Indica o nome do grupo que o usurio ser adicionado

16. Processos
Bg: fora um processo suspenso a ser executado em segundo plano
Jobs: Permite visualizar jobs em execuo
Split: Fragmenta arquivos em vrios segmentos
Join: Junta os arquivos cortados linha por linha
Dv : Fornece o tamanho do sub diretrio
Ps : Lista processos em andamento
Kill: Encerra processos em andamento
Top: exibe a lista dos processos
Who: Mostra quem esta usando o sistema
Mkfs: constri um sistema de arquivo

Trabalhando com processos

Trabalhar com processos no linux envolve alguns aspectos. necessrio saber


-Iniciar e parar processos
-Rodar processos
-visualizar e encerrar processos
Executando um processo em segundo plano
Comando &
Ex: vi teste.txt &

Passar um processo de primeiro plano (foreground) para segundo plano (background)

Basta digitar CTRL + Z


Como listar os processos em background
Comando JOBS

Como trazer o processo para o primeiro plano


FG<nmero do JOBS>
Listando os processos em execuo na memria
PS [-A]
PS

Opo
-A : Exibe todos os processos, inclusive aqueles iniciados pelo sistema.
TOP : Mostra os processos com atualizaes em tempo real ; digite CTRL+C para sair.
Kill : Mata um processo
Modo de usar:
KILL<numero do pid>
Caso o programa no seja encerrado pode-se forar o encerramento deste
Opo:
-9 :
Ex: KILL 9
Informaes sobre memria
DF : Mostra informaes sobre as parties

Free: Mostra informaes sobre o uso da memria RAM

DU [-s] <pasta>
Exibe o tamanho de todos os arquivos de uma pasta
-s : sumrio

Visualizando os usurios conectados


Who (sem argumentos)

Alterar a data de criao e modificao do arquivo ou pasta para a atual:


TOUCH<ARQUIVO>
Exibindo calendrio:

CAL Exibe o ms atual

CAL 2010 Exibe o calendrio de todo o ano de 2010.


CAL 04 2014Exibe os ms de abril de 2014.

Ver e alterar a data e hora do sistema.


Opes
-sMuda a hora
-dMuda a data
Contando arquivos de texto:
WC<argumento><arquivo>
Opes
-mConta caracteres

-lconta linhas

-wconta palavras

Instalando e Removendo Pacotes (Debian-like)


No Kali (e distribuies baseadas em Debian em geral), a forma mais simples de se
instalar um programa ou remove-lo atravs do conjunto de comandos APT.
Instalar Pacote
apt-get install <pacote>
Instala um novo pacote:
Ex: apt-get install metasploit

Remover Pacote
apt-get remove <pacote>
Remove pacote instalado
Ex: apt-get remove nmap
A opo purge permite apagar arquivos adicionais instalados.
Ex: apt-get purge remove nmap

Pesquisar nome de Pacote


apt-cache search <pacote> Pesquisa os pacotes com o nome
Ex: apt-cache search ssl
Atualizando a lista de pacotes:
apt-get update

Atualizando os pacotes/sistema:
apt-get upgrade
apt-get dist-upgrade

Vendo Informaes no Sistema


Uname<opo>
Opo
-aMostra todos os dados

-rMostra o nmero do
Kernel

-oMostra o S.O

-mMostra a arquitetura da mquina

-pMostra o processador

Vendo o histrico de comandos digitados


HISTORY<nmero>
NumeroQuantos comandos digitados voc quer ver.

Compactando e descompactando arquivos


TAR - <opo><arquivo compactado><dados>
Opes:
VFSempre utilizado.Fora a substituio de arquivos
Ccompacta
Xdescompacta
Zcompacta
Exemplos:
COMPACTANDO :
Tar cvf temporarios.tar /tmp/gconfd-linux

Pode-se tambm compactar em formato gz o que far com que o arquivo fique ainda
mais pequeno.
Tar zcvf temporarios.tar.gz /tmp/gconfd-linux

DESCOMPACTANDO :
Tar -xvf textos.tar
Tar zxvf textos.tar.gz

Você também pode gostar