SlideShare uma empresa Scribd logo
1 de 62
linux4all#1
d4n1
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Como tudo começou...
Richard Stallman funda a FSF (Free
Software Foundation)
FSF cria a licença GPL (GNU Public
Licence)
Qualquer programa que pode ser
usado, copiado, estudado e
redestribuído sem restrinções
Softwarelivre
4 liberdades
A liberdade para executar o programa,
para qualquer propósito
A liberdade de estudar como o programa
funciona, e adaptá-lo para as suas
necessidades
A liberdade de redistribuir, inclusive
vender, cópias de modo que você possa
ajudar ao seu próximo
A liberdade de modificar o programa, e
liberar estas modificações, de modo que
toda a comunidade se beneficie
Softwarelivre
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
A revolução
1984, Richard Stallman cria o
Projeto GNU
1991, Linus Torvalds cria o Kernel
O Compilador gcc da GNU foi usado
para compilar o kernel
Vários softwares GNU funcionavam
desde o 1º dia no Kernel Linux
Gnu/Linux
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Por dentro da fera...
Árvore de diretórios
/
/bin /boot /dev /etc /home ...
/ - Diretório raiz do sistema
Hierarquia
Por dentro da fera...
/bin - Arquivos binários de comandos
essenciais do sistema
/boot - Arquivos de boot
(inicialização; Linux Loader; Grub);
kernel do Linux
/dev - Dispositivos (devices) de
entrada/saída: floppy, hardisk,
cdrom, modem, dentre outros
/etc - Arquivos de configuração
(scripts) e inicialização.
Hierarquia
Por dentro da fera...
/home - Diretório local (home) de
usuários
/lib - Bibliotecas e módulos(drives):
compartilhadas com freqüência
/mnt - Diretório de montagem de
dispositivos, sistemas de arquivos e
partições
/opt - Para instalação de programas
não oficiais da distribuição
Hierarquia
Por dentro da fera...
/proc - Diretório virtual (RAM)
onde rodam os processos ativos
/root - Diretório local do
superusuário (root)
/sbin - Arquivos de sistema
essenciais (binários do
superusuário)
/tmp - Arquivos temporários gerados
por alguns utilitários
Hierarquia
Por dentro da fera
/usr - Arquivos de usuários nativos
da distribuição
/usr/local - Para instalação de
programas não oficiais da
distribuição
/usr/src - Arquivos fontes do
sistema necessários para compilar o
kernel
/var - Arquivos de log e outros
Hierarquia
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Interface
Interface humana
Interpreta comandos executando-os
produzindo algum resultado
Shell significa “Casca”
Shell
Shells
Existem vários Shells, cada um com
suas configurações e funções
especificas
S.R. Bourne cria o Bourne Shell
Surge o C Shell criado por Bill Joy
e o Korn Shell desenvolvido por
David Korn
Bash (Bourne Again Shell) é criado
pela GNU
Shell
Símbolos
O sinal “$” significa o usuário
normal
O sinal “#” significa o super-
usuário, root
Root é o administrador do sistema
O super-usuário pode fazer qualquer
coisa no sistema
Shell
Variáveis...
Variáveis de ambientes PS1 e PS2
(Prompt String)
PS1 guarda o conteúdo do prompt do
bash
PS2 guarda o conteúdo do prompt para
várias linhas (“”)
Variável PATH
Visualizar PS1, PS2 e PATH usando o
comando echo
Shell
Variáveis
Segue uma ordem para achar e
executar os comandos
Visualizar todas variáveis do shell
com o comando set
Criar uma nova variável do shell
usando o comando export:
slack=”slackware_linux”
export slack
Uma variável exportada é global
Shell
Sintaxe
Palavras reservadas: case, do, done,
elif, else, esac, fi, for, function,
if, in, select, then, until, while e
time
Alguns comandos requerem parâmetros
especiais, usando “-” ou “--”
Para obter uma ajuda use --help
Vários comandos devem ser separado
por “;”
Shell
Argumentos
Nem todos os comandos aceitam
argumentos usando o “-” ou “--”,
como por exemplo: dd if=/dev/sda1
of=/dev/sdb1
Se o comando não estiver na variável
PATH, teremos que explicitar o
caminho completo
“~” significa diretório home do
usuário
Shell
Atalhos...
O bash escreve os comando digitados
em um arquivo chamado .bash_history
!! - executa o último comando
!n – executa o comando na linha n no
arquivo .bash_history
!linux – executa o comando linux
!?linux – executa o comando que
contém o texto linux
Shell
Atalhos
Ctrl rlinux- procura o comando linux
do último para o primeiro
Alt m< – vai para o início do
arquivo .bash_history
Alt m> – vai para o final do arquivo
.bash_history
Variável ambiente $SHELL
Shell
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Núcleo
Núcleo do sistema
operacional
Responsável pelas
funções de baixo nível
Pode ser compilado e
customizado de acordo
ao tipo de máquina
Suporta as mais
diversas arquiteturas
Kernel
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Projetando o sistema
Partição Swap
Planejar as partições de acordo com
o sistema a ser instalado
Escolher uma distribuição linux
Instalação
Lilo
Lilo é o mais antigo gerenciador de
boot do linux
Dividido em 2 partes, uma fica na
MBR e a outra em uma partição. Onde
é oferecido uma linha de comando
(prompt), para escolher qual imagem
do kernel carregar ou qual sistema
operacional
Seu arquivo de configuração fica
em /etc/lilo.conf
Instalação
Grub
Grub é uma alternativa como
gerenciador de boot do linux
Não há dinstinção entre dispositivos
IDE e SCSI, todos são hd(x,y)
Seus arquivo de configuração fica em
/boot/grub/menu.lst
Grub oferece algumas funcionalidades
a mais que o lilo
Instalação
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Comandos...
ls – lista diretório
clear – limpa a tela
cd – muda de diretório
pwd – mostra o caminho corrente
cat – concatena e visualiza arquivo
less – visualiza arquivo
find – procura arquivo
Comandosbásicos
Comandos...
free – mostra a memória livre
shutdown – desliga o computador
reboot – reinicia o computador
startx – inicia um ambiente X
lspci – lista dispositivos pci
lsusb – lista dispositivos usb
lsmod – lista módulos do kernel
Comandosbásicos
Comandos...
mkdir – cria diretório
rmdir – remove diretório
rm – apaga arquivo
cp – copia arquivo
mv – move arquivo
touch – cria arquivo
file – descreve um arquivo
Comandosbásicos
Comandos...
useradd – adiciona um usuário
userdel – remove um usuário
groupadd – adiciona um grupo
groupdel – remove um grupo
passwd – modifica a senha do usuário
cal – visualiza calendário
date – visualiza data e hora
Comandosbásicos
Comandos...
lynx – navegador web via shell
who – mostra quem está logado
w – informações de quem está logado
uname – informações do computador
vim – editor de texto
emacs – editor de texto
Comandosbásicos
Comandos
su – transforma em root
ps – relata processos
top – processos em hierarquia
kill – encerra processos
history – comandos já digitados
df – informações sobre partições
du – informações sobre arquivos
man – manuais on-line
Comandosbásicos
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Boot...
No boot, a BIOS
(Basic Input Output
System) realiza
vários teste usando
o POST (Power-On
Self Test)
No setor de boot é
gravado o software
para a carga dos
sistemas
operacionais
Booterunlevels
Boot
Podemos passar parâmetro no boot ou
no arquivo de configuração
As informações são passadas para o
kernel
O gerenciador de boot permite várias
opções
Ao carregar o Kernel no boot, são
exibidas várias informações úteis
como cpu, memória, hardwares,
serviços, dentre ouros
Booterunlevels
Runlevels...
Runlevels é a execução de processos
em ordem programada
Há 7 Runlevels, de 0 a 6
Runlevel 0 é a sequência de
desligamento (shutdown) e runlevel 6
reinicialização (reboot)
Runlevel 3 a 5 para carga normal do
sistema
Booterunlevels
Runlevels...
Runlevel 1 (single user) é usado
para manutenção do sistema
Runlevel 2 é o modo multi-usuário
sem o compartilhamento de arquivo
NFS
Runlevel 3 é o modo multi-usuário
sem interface gráfica
Runlevel 4 não é ultilizado
Runlevel 5 é o modo multi-usuário
com interface gráfica
Booterunlevels
Runlevels...
Podemos alterar o runlevel usando o
comando init
O boot segue a seguência
/etc/rc.d/rc.sysinit →
/etc/rc.d/rc.local /etc/rc.d/rc→
/etc/init.d,→ variando de
distribuição para distribuição o
nome e local dos arquivos
Em /etc/inittab podemos definir o
runlevel padrão entre ouros
Booterunlevels
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Estrutura do sistema
Sistema de arquivos
robusto e flexível, que
posibilita manter
arquivos em diferente
partições, discos,
dispositivos e até em
computadores remoto
Suporta diversos
dispositivos e sistema
de arquivos
Sistemade
arquivos
Partições
As partições servem como um
contêiner
Cada disco podem ter 4 partição
primária, de 1 a 4, e 1 estendida
Pelo menos 1 primária deve ser
criada como ativa (boot)
A partição estendida serve como
contêiner para as partições lógicas,
suportando até 12
Sistemade
arquivos
Definições
/dev/hda1 (primária)
/dev/hda2 (estendida)
/dev/hda5 (lógica)
/dev/hda6 (lógica)
/dev/hda7 (lógica)
…
/dev/hda16 (lógica)
Sistemade
arquivos
Ultilitarios
Partição Swap (troca de arquivo)
Os programas fdisk e cfdisk são
responsáveis por criar as partições
O fdisk e cfdisk são particionadores
em modo texto, sendo o último mais
amigável
Sistemade
arquivos
Montagem do sistema
Pontos de montagens
mount e umount
Sistema de arquivos suportados:
ext3, ext4, reiserfs, vfat, iso9660
O arquivo /etc/fstab
Sistemade
arquivos
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Definições...
Sistema operacional
multi-usuário precisa
de permissões especiais
Permissão de usuário
Permissão de grupo
Permissão para outros
usuários
Acesso de leitura (r),
escrita (w), execução
(x)
Permissões
Definições
| dono | grupo | outros
d | r w x | r – x | r - -
d = tipo de arquivo: diretório (d),
arquivo (-), link (l), dispositivo
de bloco (b), dispositivo de
caractere
Permissões hierarquica
Permissões
Bits especiais...
Bit de SUID afeta arquivo
executáveis. Geralmente usado para
dar a um programa permissão de root
Bit de SGID funciona como o SUID
mas executa a permissão do grupo do
dono do arquivo
Bit Sicky permanece na memória mesmo
depois de terminado
Permissões
Bits especiais
0 0 0 0 000 000 000
SUID SGID Sticky dono grupo outro
0 1 2 3 4 5 6 7
000 001 010 011 100 101 110 111
--- --x -w- -wx r-- r-x rw- rwx
Permissões
Ultilitários...
O comando umask mostra a máscara das
permissões, aceitando número inteiro
de 3 dígitos
As permissões padrão para os
usuários são 666 (rw-rw-rw-) e 777
(rwxrwxrwx)
Com o comando umask as permissões
são alteradas tendo como base a
permissão padrão
Permissões
Ultilitários...
O comando chmod modifica as
permissões dos arquivos, usando a
letra u (user), g (group), o
(others) e a (all), + (adicionar), -
(retirar), = (igualdade para as
operações), r (read), w (write), x
(execute), X (execute for all) s
(SUID/SGID) e t (Sticky)
Permissões
Ultilitários
O comando chown e chgrp altera o
dono ou grupo de arquivo ou
diretório
O comando chattr modifica os
atributos de arquivo ou diretório
O comando lsattr visualiza os
atributos de arquivo ou diretório
Link simbólico e hard links, o
comando ln cria os links
Permissões
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Formato
Os arquivos de extensão .tar.gz
ou .gz, bz2 e tbz2 são uma estrutura
de arquivos e diretórios compactados
denominado tarball
Descompactando um arquivo .tar.gz
com o comando tar
Descomapcatando um arquivo .tar.bz2
com bzip
Instalaçãoe
compilação
Compilação
Depois de extrair é necessário
compilar e instalar
Um compilador é um programa que
processa instruções escrita em uma
linguagem de programação de alto
nivel, e gera código de máquina, ou
executável
Compilador GCC, compila códigos em
C, C++, Java, Fortran e etc
Make e configure
Instalaçãoe
compilação
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
Referência
Howtos – documentos que detalham os
procedimentos detalhadamente
Man – manuais on-line do sistema
Info – documentação fornecida pela
Gnu
Faq – informações fornecidas por
perguntas e respostas
Mailing list – lista de discusão
Documentação
Agenda
Software Livre
GNU/Linux
Hierarquia
Shell
Kernel
Instalação
Comandos básicos
Boot e Runlevels
Sistema de
arquivos
Permissões
Instalação e
compilação
Documentação
conclusão
d4n1h4ck3r
d4n1h4ck3r@gmail.com
d4n1h4ck3r.blogspot.com

Mais conteúdo relacionado

Mais procurados

Trabalhando na Linha de comando
Trabalhando na  Linha de comandoTrabalhando na  Linha de comando
Trabalhando na Linha de comandoSoftD Abreu
 
Comandos Linux
Comandos LinuxComandos Linux
Comandos Linuxlol
 
YUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMYUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMSoftD Abreu
 
Sistema Operacional GNU/Linux
Sistema Operacional GNU/LinuxSistema Operacional GNU/Linux
Sistema Operacional GNU/LinuxPedro Neto
 
Complemento rodrigo f ormatado
Complemento rodrigo f ormatadoComplemento rodrigo f ormatado
Complemento rodrigo f ormatadoNeon Online
 
Minicurso Slackware - Alexsandro Henrique
Minicurso Slackware - Alexsandro HenriqueMinicurso Slackware - Alexsandro Henrique
Minicurso Slackware - Alexsandro HenriquePotiLivre Sobrenome
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxVirgínia
 
Dicas e Princípios Básicos do Linux
Dicas e Princípios Básicos do LinuxDicas e Princípios Básicos do Linux
Dicas e Princípios Básicos do LinuxWellington Oliveira
 
Minicurso Comando Básicos
Minicurso Comando BásicosMinicurso Comando Básicos
Minicurso Comando Básicostonbada
 
Linux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosLinux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosFrederico Madeira
 
Linux permissoes de arquivos e diretorios
Linux   permissoes de arquivos e diretoriosLinux   permissoes de arquivos e diretorios
Linux permissoes de arquivos e diretoriosDanilo Filitto
 
Cap1 exercicios comandos linux resolucao part i
Cap1 exercicios comandos linux   resolucao part iCap1 exercicios comandos linux   resolucao part i
Cap1 exercicios comandos linux resolucao part iportal_Do_estudante
 

Mais procurados (19)

So trabalho
So trabalhoSo trabalho
So trabalho
 
Trabalhando na Linha de comando
Trabalhando na  Linha de comandoTrabalhando na  Linha de comando
Trabalhando na Linha de comando
 
Comandos Linux
Comandos LinuxComandos Linux
Comandos Linux
 
Comandos Linux Parte 2
Comandos Linux Parte 2Comandos Linux Parte 2
Comandos Linux Parte 2
 
YUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPMYUM, APT-GET, DPKG, RPM
YUM, APT-GET, DPKG, RPM
 
Sistema Operacional GNU/Linux
Sistema Operacional GNU/LinuxSistema Operacional GNU/Linux
Sistema Operacional GNU/Linux
 
OpenSuse
OpenSuseOpenSuse
OpenSuse
 
Complemento rodrigo f ormatado
Complemento rodrigo f ormatadoComplemento rodrigo f ormatado
Complemento rodrigo f ormatado
 
Comandos Linux Parte 1
Comandos Linux Parte 1Comandos Linux Parte 1
Comandos Linux Parte 1
 
Introdução Linux
Introdução LinuxIntrodução Linux
Introdução Linux
 
Minicurso Slackware - Alexsandro Henrique
Minicurso Slackware - Alexsandro HenriqueMinicurso Slackware - Alexsandro Henrique
Minicurso Slackware - Alexsandro Henrique
 
Comandos, Permissões e Partições Linux
Comandos, Permissões e Partições LinuxComandos, Permissões e Partições Linux
Comandos, Permissões e Partições Linux
 
Dicas e Princípios Básicos do Linux
Dicas e Princípios Básicos do LinuxDicas e Princípios Básicos do Linux
Dicas e Princípios Básicos do Linux
 
725
725725
725
 
Minicurso Comando Básicos
Minicurso Comando BásicosMinicurso Comando Básicos
Minicurso Comando Básicos
 
Linux - Shell e Comandos Básicos
Linux - Shell e Comandos BásicosLinux - Shell e Comandos Básicos
Linux - Shell e Comandos Básicos
 
Linux permissoes de arquivos e diretorios
Linux   permissoes de arquivos e diretoriosLinux   permissoes de arquivos e diretorios
Linux permissoes de arquivos e diretorios
 
Cap1 exercicios comandos linux resolucao part i
Cap1 exercicios comandos linux   resolucao part iCap1 exercicios comandos linux   resolucao part i
Cap1 exercicios comandos linux resolucao part i
 
Comandos linux
Comandos linuxComandos linux
Comandos linux
 

Destaque

Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nívelIgor Sobreira
 
Introdução a Linguagem de Programação Python
Introdução a Linguagem de Programação PythonIntrodução a Linguagem de Programação Python
Introdução a Linguagem de Programação PythonFlávio Ribeiro
 
Fundamentos de Logica de Programação | Linguagem C
Fundamentos de Logica de Programação | Linguagem CFundamentos de Logica de Programação | Linguagem C
Fundamentos de Logica de Programação | Linguagem CRogerio de Moraes
 
2016/01/27 - Aprendendo a programar com Python
2016/01/27 - Aprendendo a programar com Python2016/01/27 - Aprendendo a programar com Python
2016/01/27 - Aprendendo a programar com PythonJardel Weyrich
 
Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Marcelo Barros de Almeida
 
Introdução a estrutura de dados josé lucas rangel - raulzinho.cb@hotmail.com
Introdução a estrutura de dados   josé lucas rangel - raulzinho.cb@hotmail.comIntrodução a estrutura de dados   josé lucas rangel - raulzinho.cb@hotmail.com
Introdução a estrutura de dados josé lucas rangel - raulzinho.cb@hotmail.comRaul Batalha
 
Fundamentos da programação de computadores 2ª edição
Fundamentos da programação de computadores   2ª ediçãoFundamentos da programação de computadores   2ª edição
Fundamentos da programação de computadores 2ª ediçãoLeandro Rocha de Oliveira
 

Destaque (9)

Comandos linux
Comandos linux Comandos linux
Comandos linux
 
Python - Programando em alto nível
Python - Programando em alto nívelPython - Programando em alto nível
Python - Programando em alto nível
 
Introdução a Linguagem de Programação Python
Introdução a Linguagem de Programação PythonIntrodução a Linguagem de Programação Python
Introdução a Linguagem de Programação Python
 
Fundamentos de Logica de Programação | Linguagem C
Fundamentos de Logica de Programação | Linguagem CFundamentos de Logica de Programação | Linguagem C
Fundamentos de Logica de Programação | Linguagem C
 
Ensinando OO com Python
Ensinando OO com PythonEnsinando OO com Python
Ensinando OO com Python
 
2016/01/27 - Aprendendo a programar com Python
2016/01/27 - Aprendendo a programar com Python2016/01/27 - Aprendendo a programar com Python
2016/01/27 - Aprendendo a programar com Python
 
Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)Python para desenvolvedores - material apoio (parte I)
Python para desenvolvedores - material apoio (parte I)
 
Introdução a estrutura de dados josé lucas rangel - raulzinho.cb@hotmail.com
Introdução a estrutura de dados   josé lucas rangel - raulzinho.cb@hotmail.comIntrodução a estrutura de dados   josé lucas rangel - raulzinho.cb@hotmail.com
Introdução a estrutura de dados josé lucas rangel - raulzinho.cb@hotmail.com
 
Fundamentos da programação de computadores 2ª edição
Fundamentos da programação de computadores   2ª ediçãoFundamentos da programação de computadores   2ª edição
Fundamentos da programação de computadores 2ª edição
 

Semelhante a Introdução ao Linux

Linux System Administrator | Curso de Redes | 3Way Networks
Linux System Administrator | Curso de Redes | 3Way NetworksLinux System Administrator | Curso de Redes | 3Way Networks
Linux System Administrator | Curso de Redes | 3Way Networks3Way Networks
 
Aula 3 - Sistemas operacionais - Linux
Aula 3 - Sistemas operacionais - LinuxAula 3 - Sistemas operacionais - Linux
Aula 3 - Sistemas operacionais - LinuxLucasMansueto
 
Aspectos do kernel Linux e Instalação
Aspectos do kernel Linux e InstalaçãoAspectos do kernel Linux e Instalação
Aspectos do kernel Linux e InstalaçãoMauro Tapajós
 
Linux - Sobre a Disciplina + Introdução ao Linux
Linux - Sobre a Disciplina + Introdução ao LinuxLinux - Sobre a Disciplina + Introdução ao Linux
Linux - Sobre a Disciplina + Introdução ao LinuxFrederico Madeira
 
Semana da computacao - Linux Day
Semana da computacao - Linux DaySemana da computacao - Linux Day
Semana da computacao - Linux DayFábio Albuquerque
 
(01) intro+inicializacao+boot loader+fhs
(01) intro+inicializacao+boot loader+fhs(01) intro+inicializacao+boot loader+fhs
(01) intro+inicializacao+boot loader+fhsAnderson Lago
 
Linux-formatado.pdf
Linux-formatado.pdfLinux-formatado.pdf
Linux-formatado.pdfssuserf964b1
 
Curso de Introdução ao Software Livre - Aula de 29/10/2009
Curso de Introdução ao Software Livre - Aula de 29/10/2009Curso de Introdução ao Software Livre - Aula de 29/10/2009
Curso de Introdução ao Software Livre - Aula de 29/10/2009Antônio Arapiraca
 
Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilli...
Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilli...Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilli...
Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilli...Tchelinux
 
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling LandgrafDesenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling LandgrafTchelinux
 
Funcionamento kernel
Funcionamento kernelFuncionamento kernel
Funcionamento kernelSENAC RIO
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linuxeliezer
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linuxeliezer
 

Semelhante a Introdução ao Linux (20)

IntroduçãO Ao Linux
IntroduçãO Ao LinuxIntroduçãO Ao Linux
IntroduçãO Ao Linux
 
Aprendendo linux
Aprendendo linuxAprendendo linux
Aprendendo linux
 
O kernel do linux
O kernel do linuxO kernel do linux
O kernel do linux
 
Lab so-abertos-unidade3
Lab so-abertos-unidade3Lab so-abertos-unidade3
Lab so-abertos-unidade3
 
Linux System Administrator | Curso de Redes | 3Way Networks
Linux System Administrator | Curso de Redes | 3Way NetworksLinux System Administrator | Curso de Redes | 3Way Networks
Linux System Administrator | Curso de Redes | 3Way Networks
 
Aula 3 - Sistemas operacionais - Linux
Aula 3 - Sistemas operacionais - LinuxAula 3 - Sistemas operacionais - Linux
Aula 3 - Sistemas operacionais - Linux
 
Unidade 3.6 Introdução ao Shell
Unidade 3.6 Introdução ao ShellUnidade 3.6 Introdução ao Shell
Unidade 3.6 Introdução ao Shell
 
Aspectos do kernel Linux e Instalação
Aspectos do kernel Linux e InstalaçãoAspectos do kernel Linux e Instalação
Aspectos do kernel Linux e Instalação
 
Linux - Sobre a Disciplina + Introdução ao Linux
Linux - Sobre a Disciplina + Introdução ao LinuxLinux - Sobre a Disciplina + Introdução ao Linux
Linux - Sobre a Disciplina + Introdução ao Linux
 
S.o iuras
S.o iurasS.o iuras
S.o iuras
 
Semana da computacao - Linux Day
Semana da computacao - Linux DaySemana da computacao - Linux Day
Semana da computacao - Linux Day
 
Sistema operacional-1-ano-de-informatica-completa
Sistema operacional-1-ano-de-informatica-completaSistema operacional-1-ano-de-informatica-completa
Sistema operacional-1-ano-de-informatica-completa
 
(01) intro+inicializacao+boot loader+fhs
(01) intro+inicializacao+boot loader+fhs(01) intro+inicializacao+boot loader+fhs
(01) intro+inicializacao+boot loader+fhs
 
Linux-formatado.pdf
Linux-formatado.pdfLinux-formatado.pdf
Linux-formatado.pdf
 
Curso de Introdução ao Software Livre - Aula de 29/10/2009
Curso de Introdução ao Software Livre - Aula de 29/10/2009Curso de Introdução ao Software Livre - Aula de 29/10/2009
Curso de Introdução ao Software Livre - Aula de 29/10/2009
 
Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilli...
Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilli...Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilli...
Introdução ao Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilli...
 
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling LandgrafDesenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
Desenvolvimento do Kernel Linux Versões 2.6.X - Douglas Schilling Landgraf
 
Funcionamento kernel
Funcionamento kernelFuncionamento kernel
Funcionamento kernel
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 
Apostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em LinuxApostila Treinamento AvançAdo Em Linux
Apostila Treinamento AvançAdo Em Linux
 

Introdução ao Linux

  • 2. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 3. Como tudo começou... Richard Stallman funda a FSF (Free Software Foundation) FSF cria a licença GPL (GNU Public Licence) Qualquer programa que pode ser usado, copiado, estudado e redestribuído sem restrinções Softwarelivre
  • 4. 4 liberdades A liberdade para executar o programa, para qualquer propósito A liberdade de estudar como o programa funciona, e adaptá-lo para as suas necessidades A liberdade de redistribuir, inclusive vender, cópias de modo que você possa ajudar ao seu próximo A liberdade de modificar o programa, e liberar estas modificações, de modo que toda a comunidade se beneficie Softwarelivre
  • 5. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 6. A revolução 1984, Richard Stallman cria o Projeto GNU 1991, Linus Torvalds cria o Kernel O Compilador gcc da GNU foi usado para compilar o kernel Vários softwares GNU funcionavam desde o 1º dia no Kernel Linux Gnu/Linux
  • 7. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 8. Por dentro da fera... Árvore de diretórios / /bin /boot /dev /etc /home ... / - Diretório raiz do sistema Hierarquia
  • 9. Por dentro da fera... /bin - Arquivos binários de comandos essenciais do sistema /boot - Arquivos de boot (inicialização; Linux Loader; Grub); kernel do Linux /dev - Dispositivos (devices) de entrada/saída: floppy, hardisk, cdrom, modem, dentre outros /etc - Arquivos de configuração (scripts) e inicialização. Hierarquia
  • 10. Por dentro da fera... /home - Diretório local (home) de usuários /lib - Bibliotecas e módulos(drives): compartilhadas com freqüência /mnt - Diretório de montagem de dispositivos, sistemas de arquivos e partições /opt - Para instalação de programas não oficiais da distribuição Hierarquia
  • 11. Por dentro da fera... /proc - Diretório virtual (RAM) onde rodam os processos ativos /root - Diretório local do superusuário (root) /sbin - Arquivos de sistema essenciais (binários do superusuário) /tmp - Arquivos temporários gerados por alguns utilitários Hierarquia
  • 12. Por dentro da fera /usr - Arquivos de usuários nativos da distribuição /usr/local - Para instalação de programas não oficiais da distribuição /usr/src - Arquivos fontes do sistema necessários para compilar o kernel /var - Arquivos de log e outros Hierarquia
  • 13. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 14. Interface Interface humana Interpreta comandos executando-os produzindo algum resultado Shell significa “Casca” Shell
  • 15. Shells Existem vários Shells, cada um com suas configurações e funções especificas S.R. Bourne cria o Bourne Shell Surge o C Shell criado por Bill Joy e o Korn Shell desenvolvido por David Korn Bash (Bourne Again Shell) é criado pela GNU Shell
  • 16. Símbolos O sinal “$” significa o usuário normal O sinal “#” significa o super- usuário, root Root é o administrador do sistema O super-usuário pode fazer qualquer coisa no sistema Shell
  • 17. Variáveis... Variáveis de ambientes PS1 e PS2 (Prompt String) PS1 guarda o conteúdo do prompt do bash PS2 guarda o conteúdo do prompt para várias linhas (“”) Variável PATH Visualizar PS1, PS2 e PATH usando o comando echo Shell
  • 18. Variáveis Segue uma ordem para achar e executar os comandos Visualizar todas variáveis do shell com o comando set Criar uma nova variável do shell usando o comando export: slack=”slackware_linux” export slack Uma variável exportada é global Shell
  • 19. Sintaxe Palavras reservadas: case, do, done, elif, else, esac, fi, for, function, if, in, select, then, until, while e time Alguns comandos requerem parâmetros especiais, usando “-” ou “--” Para obter uma ajuda use --help Vários comandos devem ser separado por “;” Shell
  • 20. Argumentos Nem todos os comandos aceitam argumentos usando o “-” ou “--”, como por exemplo: dd if=/dev/sda1 of=/dev/sdb1 Se o comando não estiver na variável PATH, teremos que explicitar o caminho completo “~” significa diretório home do usuário Shell
  • 21. Atalhos... O bash escreve os comando digitados em um arquivo chamado .bash_history !! - executa o último comando !n – executa o comando na linha n no arquivo .bash_history !linux – executa o comando linux !?linux – executa o comando que contém o texto linux Shell
  • 22. Atalhos Ctrl rlinux- procura o comando linux do último para o primeiro Alt m< – vai para o início do arquivo .bash_history Alt m> – vai para o final do arquivo .bash_history Variável ambiente $SHELL Shell
  • 23. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 24. Núcleo Núcleo do sistema operacional Responsável pelas funções de baixo nível Pode ser compilado e customizado de acordo ao tipo de máquina Suporta as mais diversas arquiteturas Kernel
  • 25. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 26. Projetando o sistema Partição Swap Planejar as partições de acordo com o sistema a ser instalado Escolher uma distribuição linux Instalação
  • 27. Lilo Lilo é o mais antigo gerenciador de boot do linux Dividido em 2 partes, uma fica na MBR e a outra em uma partição. Onde é oferecido uma linha de comando (prompt), para escolher qual imagem do kernel carregar ou qual sistema operacional Seu arquivo de configuração fica em /etc/lilo.conf Instalação
  • 28. Grub Grub é uma alternativa como gerenciador de boot do linux Não há dinstinção entre dispositivos IDE e SCSI, todos são hd(x,y) Seus arquivo de configuração fica em /boot/grub/menu.lst Grub oferece algumas funcionalidades a mais que o lilo Instalação
  • 29. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 30. Comandos... ls – lista diretório clear – limpa a tela cd – muda de diretório pwd – mostra o caminho corrente cat – concatena e visualiza arquivo less – visualiza arquivo find – procura arquivo Comandosbásicos
  • 31. Comandos... free – mostra a memória livre shutdown – desliga o computador reboot – reinicia o computador startx – inicia um ambiente X lspci – lista dispositivos pci lsusb – lista dispositivos usb lsmod – lista módulos do kernel Comandosbásicos
  • 32. Comandos... mkdir – cria diretório rmdir – remove diretório rm – apaga arquivo cp – copia arquivo mv – move arquivo touch – cria arquivo file – descreve um arquivo Comandosbásicos
  • 33. Comandos... useradd – adiciona um usuário userdel – remove um usuário groupadd – adiciona um grupo groupdel – remove um grupo passwd – modifica a senha do usuário cal – visualiza calendário date – visualiza data e hora Comandosbásicos
  • 34. Comandos... lynx – navegador web via shell who – mostra quem está logado w – informações de quem está logado uname – informações do computador vim – editor de texto emacs – editor de texto Comandosbásicos
  • 35. Comandos su – transforma em root ps – relata processos top – processos em hierarquia kill – encerra processos history – comandos já digitados df – informações sobre partições du – informações sobre arquivos man – manuais on-line Comandosbásicos
  • 36. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 37. Boot... No boot, a BIOS (Basic Input Output System) realiza vários teste usando o POST (Power-On Self Test) No setor de boot é gravado o software para a carga dos sistemas operacionais Booterunlevels
  • 38. Boot Podemos passar parâmetro no boot ou no arquivo de configuração As informações são passadas para o kernel O gerenciador de boot permite várias opções Ao carregar o Kernel no boot, são exibidas várias informações úteis como cpu, memória, hardwares, serviços, dentre ouros Booterunlevels
  • 39. Runlevels... Runlevels é a execução de processos em ordem programada Há 7 Runlevels, de 0 a 6 Runlevel 0 é a sequência de desligamento (shutdown) e runlevel 6 reinicialização (reboot) Runlevel 3 a 5 para carga normal do sistema Booterunlevels
  • 40. Runlevels... Runlevel 1 (single user) é usado para manutenção do sistema Runlevel 2 é o modo multi-usuário sem o compartilhamento de arquivo NFS Runlevel 3 é o modo multi-usuário sem interface gráfica Runlevel 4 não é ultilizado Runlevel 5 é o modo multi-usuário com interface gráfica Booterunlevels
  • 41. Runlevels... Podemos alterar o runlevel usando o comando init O boot segue a seguência /etc/rc.d/rc.sysinit → /etc/rc.d/rc.local /etc/rc.d/rc→ /etc/init.d,→ variando de distribuição para distribuição o nome e local dos arquivos Em /etc/inittab podemos definir o runlevel padrão entre ouros Booterunlevels
  • 42. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 43. Estrutura do sistema Sistema de arquivos robusto e flexível, que posibilita manter arquivos em diferente partições, discos, dispositivos e até em computadores remoto Suporta diversos dispositivos e sistema de arquivos Sistemade arquivos
  • 44. Partições As partições servem como um contêiner Cada disco podem ter 4 partição primária, de 1 a 4, e 1 estendida Pelo menos 1 primária deve ser criada como ativa (boot) A partição estendida serve como contêiner para as partições lógicas, suportando até 12 Sistemade arquivos
  • 45. Definições /dev/hda1 (primária) /dev/hda2 (estendida) /dev/hda5 (lógica) /dev/hda6 (lógica) /dev/hda7 (lógica) … /dev/hda16 (lógica) Sistemade arquivos
  • 46. Ultilitarios Partição Swap (troca de arquivo) Os programas fdisk e cfdisk são responsáveis por criar as partições O fdisk e cfdisk são particionadores em modo texto, sendo o último mais amigável Sistemade arquivos
  • 47. Montagem do sistema Pontos de montagens mount e umount Sistema de arquivos suportados: ext3, ext4, reiserfs, vfat, iso9660 O arquivo /etc/fstab Sistemade arquivos
  • 48. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 49. Definições... Sistema operacional multi-usuário precisa de permissões especiais Permissão de usuário Permissão de grupo Permissão para outros usuários Acesso de leitura (r), escrita (w), execução (x) Permissões
  • 50. Definições | dono | grupo | outros d | r w x | r – x | r - - d = tipo de arquivo: diretório (d), arquivo (-), link (l), dispositivo de bloco (b), dispositivo de caractere Permissões hierarquica Permissões
  • 51. Bits especiais... Bit de SUID afeta arquivo executáveis. Geralmente usado para dar a um programa permissão de root Bit de SGID funciona como o SUID mas executa a permissão do grupo do dono do arquivo Bit Sicky permanece na memória mesmo depois de terminado Permissões
  • 52. Bits especiais 0 0 0 0 000 000 000 SUID SGID Sticky dono grupo outro 0 1 2 3 4 5 6 7 000 001 010 011 100 101 110 111 --- --x -w- -wx r-- r-x rw- rwx Permissões
  • 53. Ultilitários... O comando umask mostra a máscara das permissões, aceitando número inteiro de 3 dígitos As permissões padrão para os usuários são 666 (rw-rw-rw-) e 777 (rwxrwxrwx) Com o comando umask as permissões são alteradas tendo como base a permissão padrão Permissões
  • 54. Ultilitários... O comando chmod modifica as permissões dos arquivos, usando a letra u (user), g (group), o (others) e a (all), + (adicionar), - (retirar), = (igualdade para as operações), r (read), w (write), x (execute), X (execute for all) s (SUID/SGID) e t (Sticky) Permissões
  • 55. Ultilitários O comando chown e chgrp altera o dono ou grupo de arquivo ou diretório O comando chattr modifica os atributos de arquivo ou diretório O comando lsattr visualiza os atributos de arquivo ou diretório Link simbólico e hard links, o comando ln cria os links Permissões
  • 56. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 57. Formato Os arquivos de extensão .tar.gz ou .gz, bz2 e tbz2 são uma estrutura de arquivos e diretórios compactados denominado tarball Descompactando um arquivo .tar.gz com o comando tar Descomapcatando um arquivo .tar.bz2 com bzip Instalaçãoe compilação
  • 58. Compilação Depois de extrair é necessário compilar e instalar Um compilador é um programa que processa instruções escrita em uma linguagem de programação de alto nivel, e gera código de máquina, ou executável Compilador GCC, compila códigos em C, C++, Java, Fortran e etc Make e configure Instalaçãoe compilação
  • 59. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão
  • 60. Referência Howtos – documentos que detalham os procedimentos detalhadamente Man – manuais on-line do sistema Info – documentação fornecida pela Gnu Faq – informações fornecidas por perguntas e respostas Mailing list – lista de discusão Documentação
  • 61. Agenda Software Livre GNU/Linux Hierarquia Shell Kernel Instalação Comandos básicos Boot e Runlevels Sistema de arquivos Permissões Instalação e compilação Documentação conclusão