Académique Documents
Professionnel Documents
Culture Documents
Contedo
Sistema operacional
Kernel do Sistema
Histrico Unix
Kernel do Linux
Movimento GNU e a licena GPL
Movimento Open Source
Padronizao
Sistema Operacional
Os computadores modernos so construdos com milhes de
circuitos
Kernel do Sistema
Kernel uma pea do sistema operacional, que serve para
isolar os programas executados do hardware onde ele roda
O kernel gerencia os recursos disponveis no seu computador:
Memria, processador, discos, CD,
vdeo, teclado, mouse, modem,
placa de rede, ...
Histrico - Unix
Sistema desenvolvido no fim da dcada de 60 nos Laboratrios
Bell (AT&T) por Ken Thompson e Dennis Ritchie
Nos meados da dcada de 70 o Unix ainda no era visto como
um produto comercial
Muitas universidades americanas adotaram o Unix, e o
aprimoraram
Histrico - Unix
O Linux teve sua primeira verso oficial (v-0.02) anunciada em
5 de outubro de 1991, na Internet.
Desenvolvido por Linus Torvalds, um universitrio finlands, o
Linux era a princpio um software de emulao de terminal
para acessar o mainframe da universidade
A base para o desenvolvimento do Linux foi o
sistema minix, que tambm era um sistema do
tipo Unix
Histrico - Unix
Linus escreveu o kernel do sistema, que o ncleo central
sobre o qual os programas so executados
Aps escrever o kernel, vrios softwares do projeto GNU foram
compilados para o Linux
Foi distribudo sob a GPL desde o incio
Histrico - Unix
O kernel do Linux tem verses com 3 nmeros:
1.2.17
2.3.115
2.4.18
2.6.1
O primeiro nmero a major version, ou seja, a verso principal
O segundo nmero, se for par, uma verso estvel e mais
testada, se for mpar uma verso instvel, de desenvolvimento
19
Kernel do Linux
Informaes atualizadas sobre o kernel podem
ser encontras em http://www.kernel.org/
O responsvel por aceitar modificaes na
famlia 2.7 ainda o prprio Linus Torvalds
O responsvel pela famlia 2.4 at 2006 foi o
brasileiro Marcelo Tosatti, da Antiga Conectiva
hoje na Red Hat.
O responsvel pela famlia 2.2 Alan Cox
GNU!!!!!
Padronizao
Linux Standard Base (LSB)
Movimento de padronizao do Linux
Conta com a participao de vrios distribuidores Linux
Para hierarquia de diretrios, adotado o FHS verso 2.2
Filesystem Hierarchy Standard (FHS)
Padronizao da organizao de diretrios e contedo
Permitir predizer a localizao dos arquivos em qualquer
distribuio
Distribuies
Distribuies - Empacotamentos
Mandriva
Ubuntu
RedHat
CentOS
SuSE
Kurumin
Caldera
Etc...
Debian
Slackware
Outras distribuies
Distribuies
Como o Linux livre, qualquer pessoa pode criar uma
distribuio de Linux, mais adequada sua necessidade
Existem dezenas (ou mais) de distribuies de Linux
disponveis
O diferencial entre elas : ferramentas adicionais, facilidade de
instalao, facilidade de gerenciamento
O sistema de pacotes, que podem ser instalados e gerenciados
de forma padronizada, criou linhagens de distribuies
Distribuies Conectiva/Mandriva
Principal distribuio Linux da Amrica Latina
Usa pacotes RPM e sistema de atualizao APT (Advanced
Package Tool)
Foi distribudo pela primeira vez em 1997
Sediada em Curitiba, esta distribuio teve um grande esforo
em traduzir os programas e grande parte da documentao do
Linux para o portugus
Possui uma edio para servidores e outra para desktop .
Distribuies - RedHat
O RedHat Linux surgiu em 1994
Inventou o formato de pacotes RPM (RedHat Package
Manager), que foi depois utilizado em outras distribuies
Linux
Hoje existem vrias edies do RH Linux para desktop,
pequenos escritrios, empresas de pequeno e mdio porte at
para grandes corporaes
Distribuies - SuSE
Distribuio sediada na Alemanha, o SuSE Linux surgiu em 1992
Tradues para diversos idiomas europeus
o principal Linux da Europa e tambm utiliza pacotes RPM
Distribuies - Slackware
O Slackware teve o seu primeiro release em 1993
a distribuio que sempre buscou se aproximar o mximo
possvel do Unix
At 1994-1995 foi uma das distribuies Linux mais famosas,
principalmente no Brasil
Sua principal caracterstica a simplicidade e pouca
sofisticao
Distribuies - SCO
Antiga distribuio Caldera que teve o seu nome alterado para
SCO em agosto de 2002.
Existe desde, pelo menos, 1996 e sempre teve um forte apelo
comercial, pois foi uma das primeiras distribuies a
estabelecer parcerias com grandes corporaes
Usa pacotes RPM e sua distribuio est disponvel nas
edies Workstation e Server
Distribuies - Debian
O Debian Linux comeou em 1993 com a proposta de manter
uma distribuio o mais livre possvel
a maior distribuio de Linux no associada a uma empresa
Usa pacotes no formato DEB disponibilizando um enorme
nmero de pacotes
Desenvolveu o sistema APT (Advanced Package Tool), para
atualizao de pacotes pela Internet
Distribuies Turbolinux
Fundada em 1992, fornece solues para
ambientes operacionais Linux
Turbolinux o fornecedor principal do sistema
operacional Linux na sia e Pacfico
Seus produtos incluem softwares
multiplataforma e de sistema distribudo
Outras distribuies
Existem muitas outras distribuies Linux no
mercado, tais como:
Ubuntu
Tech Linux
entre outras
Fundamentos do Sistema
Contedo
Entrar e sair do sistema
Desligar o sistema
O administrador do sistema (root)
ou
exit
ou
^D (Control-D)
Desligando o Sistema
Procedimento de desligamento do sistema:
login: root
Password: ******
# shutdown -h now
Fundamentos do Sistema
Estrutura de diretrios
Captulo 04 Contedo
Estrutura de diretrios
/
/bin
/boot
/dev
/etc
/home
/lib
/sbin
/tmp
/usr
/var
Estrutura de diretrios
/ (tambm chamado de raiz)
No h drives, tudo fica dentro do diretrio raiz /
/bin
Comandos essenciais
Necessrio para completar boot e ter um ambiente mnimo
/boot
Kernel(s) do Linux (vmlinuz) para boot
Arquivos estticos do loader
/dev
Arquivos de acesso aos dispositivos do sistema
Dispositivos do tipo caractere e bloco.
Estrutura de diretrios
/etc
Configurao de parties e sistemas de arquivos
Configurao para o processo init(8)
Inicializao dos shells para todo o sistema
Configurao de rede (protocolos, endereos IP, nomes,
servios conhecidos)
Arquivo de usurios e grupos ( /etc/passwd,
/etc/group )
Configurao do sistema de log ( /etc/syslog.conf )
/home
Por conveno, onde ficam os diretrios dos usurios
Estrutura de diretrios
/lib
Bibliotecas dinmicas para os comandos em /bin e /sbin
Mdulos do kernel
/sbin
Comandos de sistema essenciais
Geralmente usado pelo root
Tambm necessrio para ambiente mnimo
/tmp
Arquivos temporrios, usados durante a execuo de um
programa
Estrutura de diretrios
/usr
Hierarquia secundria com bin, sbin, lib, etc, ...
/var
Dados variveis
Arquivos de log do sistema e especficos
Caixas de mensagens de e-mail
Fila de impressora
Na pgina de manual hier(7) h uma descrio completa da
hierarquia de sistema de arquivos do Linux
Fundamentos do Sistema
Primeiros Comandos
Contedo
Primeiros Comandos
Utilizar a ajuda
O comando help mostra informaes de ajuda sobre o
comando especificado, sendo um comando do bash(1)
O comando man formata e apresenta a pgina de manual (man
page) de um comando ou arquivo
uma referncia rpida e disponvel para consultar sintaxes,
opes, semntica, etc...
Execute os comandos
$ man bash
$ man man
$ man csh
$ man login
Fundamentos do Sistema
Ligaes ou Links
Contedo
Ligaes
Absolutas (Hardlink)
Simblicas (Softlink)
Ligaes absolutas
Criamos ligaes com o comando ln(1)
um nome para um arquivo
um arquivo pode ter vrios nomes
Deve estar no mesmo sistema de arquivos
No pode ser usado com diretrios
ln [origem]/[arquivo] [destino]/[link]
No comando ls -l mostrado quantos links existem para
cada arquivo:
-drwx-----rw-r--r--rw-r--r--rw-r--r--rw-r--r--
3
3
3
3
3
root
root
root
root
root
root
4096
root
6332
root
1546
root
1546
root 270336
Ago
Ago
Ago
Ago
Ago
19
19
19
19
14
15:48
15:59
15:58
15:58
11:29
Desktop
Sucesso.txt
arvore.txt
arv.txt
foto.gif
Ligaes simblicas
Uma ligao simblica um arquivo que contm o caminho
para outro arquivo, ou seja, um atalho
Uma ligao simblica permite apontar para diferentes tipos
de sistema de arquivos
Geralmente cria-se ligaes simblicas da seguinte maneira:
ln -s [origem] [destino]
ln -s [arquivo] [link]
Fundamentos do Sistema
Permisses e Propriedades de
Arquivos
Contedo
Definir o proprietrio do arquivo
Definir permisses de acesso ao:
Usurio (dono) do arquivo
Grupo do arquivo
Outros usurios
Permisses especiais:
SUID
SGID
Stick bit
Definir o proprietrio
Todo arquivo pertence a algum dono e grupo
O comando chown(1) permite alterar o dono de um ou mais
arquivos
O mesmo se aplica ao grupo do arquivo
Sua utilizao :
chown [dono]:[grupo] arquivo(s)
Para alterar somente o grupo de arquivos pode-se utilizar o
comando chgrp(1). A sinopse :
chgrp [grupo] arquivo(s)
Tipos de arquivos
Do ponto de vista do sistema, existem 7 tipos
de arquivos diferentes:
Caractere
-
Tipo de Arquivo
Arquivo regular
Diretrio ou pasta
Ligao simblica
Definir permisses
O comando chmod(1) serve para mudar as permisses de
acesso um arquivo
drwx------ 3 root root 4096Ago 19 15:48
Desktop
-rw------- 1 root root 270336 Ago 14 11:29
foto.gif
drwxrwxr-x 2 root root 4096Ago 22 13:44
textos
u g o
A sintaxe na representao simblica :
chmod go+rx arquivo(s)chmod u-w arq(s)
chmod u=rw,go=r arquivo(s) chmod a+x
arq(s)
Na representao octal :
chmod 755 arquivo(s)
O comando umask define as permisses padro de arquivos
criados pelos usurios
Permisses especiais
SUID bit (u+s ou 4000 no chmod)
O programa ser executado com as permisses do dono do
arquivo ao invs das permisses do usurio que o chamou.
SGID bit (g+s ou 2000 no chmod)
Este bit aplicado a um diretrio, far com que qualquer
arquivo criado dentro do mesmo tenha o mesmo grupo do
diretrio.
Sticky bit (+t ou 1000 no chmod)
Quando aplicado a um diretrio, juntamente com as
permisses de leitura/escrita/execuo para todos os
usurios, somente os donos dos arquivos podero removlos.
Na forma octal seria:
chmod 4664 arquivo(s)
Fundamentos do Sistema
Metacaracteres
Contedo
Metacaracteres:
Uso do smbolo ?
Uso do smbolo *
Uso dos colchetes [ ]
Uso das chaves { }
Metacaracteres
Utilizao:
Listagem de arquivos
Busca de arquivos
Uso do smbolo ?
Exemplos de uso do smbolo ?
$ ls /etc/cro?tab
$ ls /etc/rc.d/rc?.d
$ cp /etc/rc?.d /home/aluno
Uso do smbolo *
Exemplos de uso do smbolo *
$
$
$
$
ls
ls
ls
cp
/etc/smb*
/etc/wine.*
/etc/yp*.conf
/etc/*.conf /home/aluno
ls
ls
ls
ls
/lib/li[af]*
/lib/li[c-k]*
-d /etc/rc.d/rc[0-2].d
-d /etc/[abc]*
ls
ls
ls
ls
d /etc/{conf, apt}*
d /etc/*{conf, apt}*
/lib/lib{panel,proc}*
-R /*.{doc,txt}
Fundamentos do Sistema
Paginao e Concatenao de
Arquivos
Contedo
Concatenar arquivos
Uso do comando cat
Uso do comando tac
Concatenar arquivos
O comando cat(1) serve para concatenar
arquivos e listar o resultado na sada padro.
Se for informado apenas um arquivo, ento
este apenas ser mostrado na sada padro.
O comando tac(1) serve para concatenar
arquivos e listar o resultado na sada padro
em reverso
exatamente o inverso do comando cat
Fundamentos do Sistema
Contedo
Verificar o tempo de uso e o acesso ao sistema:
Verificar os usurios que esto acessando o sistema
Verificar o tempo de uso do sistema
Fundamentos do Sistema
Canalizao e redirecionamento
Contedo
Canalizao
Redirecionamento
Uso do sinal >
Uso do sinal <
Uso do sinal >>
Uso do sinal <<
Canalizao
Canalizar colocar dados de um resultado para
outro comando como entrada padro.
Utilizao do smbolo pipe |
Redirecionamento
Pode-se redirecionar resultados ou mensagens de
erro para um arquivo
Quando se deseja armazenar os resultados (sada padro)
em um arquivo, por exemplo:
$ ls /etc > arq1
Redirecionamento
Em alguns casos pode-se desejar redirecionar a
entrada padro
Para direcionar a entrada padro para um comando
qualquer:
$ cat < arq1
$ cat < arq1 | more
Fundamentos do Sistema
Localizar arquivos
Contedo
Localizar arquivos:
Fundamentos do Sistema
Comandos teis
Contedo
Comandos teis
tee
2 Comando
Arquivo
Ordenar linhas
O comando sort(1) ordena linhas de arquivos
texto
$ sort [opo] arquivo
$ sort lista-de-compras
Fundamentos do Sistema
Pacotes RPM e atualizao APT
Contedo
Pacotes RPM
Instalar pacotes
Atualizar pacotes
Consultar e Verificar pacotes
Remover pacotes
Sistema APT
Pacotes RPM
O formato RPM (Redhat Package Manager) foi
lanado como um padro aberto pela RedHat, bem
como a ferramenta principal de manipulao dos
pacotes, o utilitrio rpm(8) da linha de comando.
O rpm uma ferramenta simples, porm poderosa,
para gerenciar os pacotes instalados no sistema.
Pacotes so arquivos cujos nomes parecem com:
programa-1.0-0.i386.rpm
Instalar pacotes
Para instalar um software s utilizar o
comando:
# rpm -i programa-1.0-0.i386.rpm
Atualizar pacotes
Para atualizar um software, deve-se utilizar o
comando com outras opes
Remover pacotes
Para remover um software, utiliza-se o
comando
# rpm -e programa
Sistema APT
O APT (Advanced Package Tool) um conjunto
de ferramentas de gerenciamento de pacotes
apt-get(8)
apt-cdrom(8)
apt-cache(8)
apt-config(8)
Crditos
Lder do projeto: Rodrigo Stulzer Lopes (Conectiva)
Coordenador do Projeto: Alexei Znamensky (IBTA)
Conteudistas: Alexei Znamensky (IBTA)