MAD - Material de Apoio Didático

Transcrição

MAD - Material de Apoio Didático
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
MAD - Material de Apoio Didático
FATEC
Faculdade de Tecnologia de Carapicuíba/SP1
Controle de Versão
VERSÃO
RESPONSÁVEL
CONTATO
DATA
CONTRIBUIÇÃO
1.0
Prof. Rbns
[email protected]
04/08/06
Versão Inicial
1.1
idem
idem
10/09/06
- correções ortográficas
- criação de usuários
1.2
idem
idem
- correções ortográficas
- novo layout
20/09/06
- nova ordenação dos tópicos e distribuição por áreas de
interesse
1.3
idem
idem
29/04/07
1.4
idem
idem
05/02/08 - novos tópicos
2.0
idem
idem
- ampliação com material para a disciplina SO1
01/03/08 - novos exercícios
- revisões
- correções ortográficas
- novo layout
Se agradece ao usuário que encontrar imprecisões ou
erros, e puder ser gentil de os apontar no Fórum em
www.rbns.com.br para correção em futuras versões.
Igualmente se agradece ao usuário que queria sugerir
revisões ou reformulações no texto ou na abordagem deste
material.
1 Fatec Carapicuíba - Avenida Francisco Pignatari, 650 - Vila Gustavo Correia, CEP 06310-390 / Carapicuíba - SP
Tel/Fax: (11) 4185-3544 - [email protected]
sugestão de citação para este documento:
pg. 1 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
Na elaboração deste documento foram
Sobre este documento
Este
documento
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
começou
a
ser utilizados majoritariamente os softwares Gimp,
desenvolvido como uma apostila de introdução OpenOffice.org Writer, Ubuntu-Linux, Firefox e
ao Ubuntu/Linux, e era originalmente pensada Inkscape.
para ser utilizada nas disciplinas introdutórias
Informática I e II do curso de Logística com
ênfase em transportes da FATEC de Carapicuíba.
Mais tarde foi reformulada para servir como
material de apoio e como um guia de consulta
rápida para os meus alunos na disciplina de
Sobre o autor e Feedback
Rbns, o autor inicial deste documento é
Rubens
A.
Menezes. S. F. - Professor da
FATEC de Carapicuíba © 2006 e Todos os
direitos reservados.
Sistema Operacionais I do curso de Análise de
Sistemas e Tecnologia da Informação (ASTI),
também da FATEC de Carapicuíba.
Assim, o objetivo desta apostila não é
ser um guia minucioso da utilização do
GNU/Linux ou um “livro texto” para a disciplina
de Sistemas operacionais, mas sim servir como
introdução a distribuição Ubuntu e material paradidático para as aulas de SOI.
O público alvo deste documento é o
usuário
médio
de
computadores,
sem
conhecimentos prévios dos ambientes Unix like,
No endereço www.rbns.com.br existem
um Blog e um Fórum, ambos servem
como canal de comunicação com os
alunos.
Para contatar o autor inicial utilize o
sem grande apreço pela utilização do Shell, e site: http://www.rbns.com.br. O contato com o
sem os conhecimentos básicos do funcionamento autor inicial pode ser utilizado para apontar erros
interno de sistemas operacionais em geral, ou em neste documento ou encaminhar comentários e
outras
palavras,
meus
alunos
dos
cursos sugestões
introdutórios do curso ASTI.
sobre
o
conteúdo.
De
fato
agradecemos quem puder fazê-lo.
Nos exemplos que envolvam imagens
janelas Licenciamento
Este trabalho está licenciado, exceto
(interface gráfica) Gnome, mas em alguns
exemplos também poderá ser utilizando o KDE. onde indicado, sob uma Licença Creative
será
utilizando
o
gerenciador
de
sugestão de citação para este documento:
pg. 2 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
Commons
Atribuição-Uso
Não
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Comercial- Software Livre, quase sempre anonima e
Compartilhamento pela mesma licença 2.5 subversiva, que produz e compartilha estes
Brasil1. Para ver uma cópia desta licença, visite softwares maravilhosos, vencendo todo tipo de
http://creativecommons.org/licenses/by-nc-
barreiras e boicotes, dividindo com estranhos um
sa/2.5/br/ ou envie uma carta para Creative bem raro e precioso: o conhecimento.
Commons, 559 Nathan Abbott Way, Stanford,
California 94305, USA.
Agradecemos ainda ao Prof. Carlos
Alberto Maziero da PGIA CCET PUCPR pela
Todas as marcas registradas presentes iniciativa
neste documento pertencem a seus respectivos produzindo
proprietários.
de
partilhar
um
livro
seu
conhecimento,
sobre
Sistemas
Operacionais de forma aberta e sob uma licença
que permita a utilização por outros alunos e
Agradecimentos
Obrigado
a
professores.
toda
comunidade
do
sugestão de citação para este documento:
pg. 3 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Sumário
CONTROLE DE VERSÃO..............................................................................................................................1
SOBRE ESTE DOCUMENTO ......................................................................................................................2
SOBRE O AUTOR E FEEDBACK ................................................................................................................2
LICENCIAMENTO ..................................................................................................................................2
AGRADECIMENTOS ...............................................................................................................................3
PARTE I: SISTEMAS OPERACIONAIS: VISÃO GERAL.....................................................................................6
O QUE É UM SO..................................................................................................................................6
TIPOS DE SISTEMAS OPERACIONAIS.........................................................................................................6
FUNCIONALIDADES................................................................................................................................8
POLÍTICAS E MECANISMOS...................................................................................................................10
ESTRUTURA DE UM SISTEMA OPERACIONAL ...........................................................................................10
PARTE II – LINUX: HISTÓRIA E TRADIÇÃO..............................................................................................12
OS SISTEMAS UNIX..........................................................................................................................12
O GNU/LINUX E SUAS DISTRIBUIÇÕES..................................................................................................12
CERTIDÃO DE NASCIMENTO.............................................................................................................13
PARTE III – DO YOU UBUNTU?............................................................................................................15
UM LINUX MUITO FÁCIL DE USAR.........................................................................................................15
DISTRIBUIÇÕES: LINUX, GOSTOSO COMO SORVETE! (E COM MUITOS SABORES!).............................................15
O ESPÍRITO DO “UBUNTU”..............................................................................................................17
CONHECENDO A INTERFACE..................................................................................................................18
PROPRIEDADES DOS PAINÉIS SUPERIOR E INFERIOR..................................................................................19
COPY & PASTE..................................................................................................................................20
CRIANDO LINKS NO DESKTOP...............................................................................................................20
PASTAS OCULTAS...............................................................................................................................21
CRIANDO USUÁRIOS NO UBUNTU ..........................................................................................................22
PARTE IV – O SISTEMA DE ARQUIVOS...................................................................................................24
FHS (LINUS FILESYSTEM STANDARD)..................................................................................................24
A ESTRUTURA DE DIRETÓRIOS DO UBUNTU.........................................................................................25
TABELA COM OS PRINCIPAIS DIRETÓRIOS DE DISTRIBUIÇÃO LINUX TÍPICA.....................................................26
PARTE V – CONHECENDO O SHELL.......................................................................................................27
CRIANDO PACOTES TAR....................................................................................................................28
DIGITANDO RAPIDAMENTE...................................................................................................................28
COMANDOS MAIS COMUNS.................................................................................................................30
PERMISSÕES DE ARQUIVOS...................................................................................................................32
MÉTODO LETRAS...............................................................................................................................34
EXEMPLOS (MÉTODO LETRAS)........................................................................................................34
MÉTODO NÚMEROS............................................................................................................................34
EXEMPLOS (MÉTODO NÚMEROS).....................................................................................................36
EXERCÍCIOS DE FIXAÇÃO.......................................................................................................37
EXERCÍCIO 01...............................................................................................................................37
EXERCÍCIO 02...............................................................................................................................37
EXERCÍCIO 03...............................................................................................................................38
EXERCÍCIO 04...............................................................................................................................38
sugestão de citação para este documento:
pg. 4 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
EXERCÍCIO 05...............................................................................................................................38
EXERCÍCIO 06...............................................................................................................................38
EXERCÍCIO 07...............................................................................................................................38
EXERCÍCIO 08...............................................................................................................................39
EXERCÍCIO 09...............................................................................................................................39
EXERCÍCIO 09...............................................................................................................................39
EXERCÍCIO 10...............................................................................................................................39
EXERCÍCIO 11...............................................................................................................................39
EXERCÍCIO 12...............................................................................................................................40
EXERCÍCIO 13...............................................................................................................................40
EXERCÍCIO 14...............................................................................................................................40
EXERCÍCIO 15...............................................................................................................................40
EXERCÍCIO 16...............................................................................................................................40
EXERCÍCIO 17...............................................................................................................................41
CONHECENDO NOVOS COMANDOS........................................................................................................42
BIBLIOGRAFIA................................................................................................................................43
LIVROS MAIS USADOS...........................................................................................................................43
LIVROS CONSULTADOS..........................................................................................................................43
ATRIBUIÇÃO-USO NÃO-COMERCIAL-COMPARTILHAMENTO PELA MESMA LICENÇA 2.5 BRASIL............................44
sugestão de citação para este documento:
pg. 5 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
PARTE I: Sistemas Operacionais: Visão Geral
O que é um SO2
●
Abstração de recursos
○
Prover interfaces de acesso aos dispositivos, mais simples de usar que as
interface de baixo nível;
○
Tornar os aplicativos independentes do hardware;
○
Definir interfaces de acesso homogêneas para dispositivos com tecnologias
distintas;
●
Gerência de recursos
○
ex.: uso do processador distribuído entre os aplicativos definindo a velocidade
adequada para cumprir suas funções sem prejudicar os outros;
○
ex.: o mesmo ocorre com a memória RAM, que deve ser distribuída de forma
justa entre as aplicações;
○
Impressora gerenciada de forma mutuamente exclusiva (apenas um aplicativo
por vez) ;
○
Impedir que todos os recursos do sistema sejam monopolizados por um só
usuário (ou um pequeno grupo);
Tipos de Sistemas Operacionais3
Os sistemas operacionais podem ser classificados segundo diversos parâmetros e
perspectivas, muitos sistemas operacionais se encaixam bem em mais de uma das categorias
apresentadas:
●
Batch (de lote) : os sistemas operacionais mais antigos trabalhavam “por lote”, ou
seja, todos os programas a executar eram colocados em uma fila, com seus dados e demais
2 MAZIERO, Carlos Alberto. Sistemas Operacionais I - Conceitos Básicos. PGIA CCET PUCPR. Disponível em:
<http://www.ppgia.pucpr.br/~maziero/doku.php?id=so:livro_de_sistemas_operacionais>
Arquivo: so-cap01.pdf. Acesso em: 21/04/2008.
3 Idem.
sugestão de citação para este documento:
pg. 6 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
informações para a execução;
○
●
Exemplos desses sistemas incluem o OS/360 e VMS, entre outros.
De rede : um sistema operacional de rede deve possuir suporte à operação em rede,
ou seja, a capacidade de oferecer às aplicações locais recursos que estejam localizados em
outros computadores da rede, como arquivos e impressoras. Ele também deve disponibilizar
seus recursos locais aos demais computadores, de forma controlada;
●
Distribuído : em um sistema operacional distribuído, os recursos de cada máquina
estão disponíveis globalmente, de forma transparente aos usuários. Ao lançar uma aplicação,
o usuário interage com sua janela, mas não sabe onde ela está executando ou armazenando
seus arquivos: o sistema é quem decide, de forma transparente. Ainda não são uma realidade
de mercado;
●
Multi-usuário : um sistema operacional multi-usuário deve suportar a identificação
do “dono” de cada recurso dentro do sistema (arquivos, processos, áreas de memória,
conexões de rede) e impor regras de controle de acesso;
●
Desktop : um sistema operacional “de mesa” é voltado ao atendimento do usuário
doméstico e corporativo para a realização de atividades corriqueiras;
●
Servidor : um sistema operacional servidor deve permitir a gestão eficiente de
grandes quantidades de recursos (disco, memória, processadores), impondo prioridades e
limites sobre o uso dos recursos pelos usuários e seus aplicativos.
●
Embutido ou Embarcado : um sistema operacional é dito embutido (embedded)
quando é construído para operar sobre um hardware com poucos recursos de processamento,
armazenamento e energia.
●
Tempo real : ao contrário da concepção usual, um sistema operacional de tempo
real não precisa ser necessariamente ultra-rápido; sua característica essencial é ter um
comportamento temporal previsível (ou seja, seu tempo de resposta deve ser conhecido no
melhor e pior caso de operação). A estrutura interna de um sistema operacional de tempo
real deve ser construída de forma a minimizar esperas e latências imprevisíveis, como
tempos de acesso a disco e sincronizações excessivas.
○
Existem duas classificações de sistemas de tempo real: soft real-time systems,
nos quais a perda de prazos implica na degradação do serviço prestado. Um exemplo
seria o suporte à gravação de CDs ou à reprodução de músicas. Caso o sistema se atrase,
sugestão de citação para este documento:
pg. 7 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
pode ocorrer a perda da mídia em gravação ou falhas na música que está sendo tocada.
Por outro lado, nos hard real-time systems a perda de prazos pelo sistema pode perturbar
o objeto controlado, com graves conseqüências humanas, econômicas ou ambientais.
Exemplos desse tipo de sistema seriam o controle de funcionamento de uma turbina de
avião a jato ou de uma caldeira industrial.
○
Exemplos de sistemas de tempo real incluem o QNX, RT-Linux e VxWorks.
Muitos sistemas embutidos têm características de tempo real, e vice-versa.
Funcionalidades4
As principais funcionalidades implementadas por um sistema operacional típico são:
●
Gerência do processador : visa distribuir a capacidade de processamento de forma
justa entre as aplicações. O sistema operacional provê a ilusão de que existe um processador
independente para cada tarefa, o que facilita o trabalho dos programadores de aplicações e
permite a construção de sistemas mais interativos.
●
Gerência de memória : tem como objetivo fornecer a cada aplicação uma área de
memória própria, independente e isolada das demais aplicações e inclusive do núcleo do
sistema.
○
Uma importante abstração construída pela gerência de memória é a noção de
memória virtual, que desvincula os endereços de memória vistos por cada aplicação dos
endereços acessados pelo processador na memória RAM. Com isso, uma aplicação pode
ser carregada em qualquer posição livre da memória, sem que seu programador tenha de
se preocupar com os endereços de memória onde ela irá executar.
●
Gerência de dispositivos :
A função da gerência de dispositivos (também
conhecida como gerência de entrada/saída) é implementar a interação com cada dispositivo
por meio de drivers e criar modelos abstratos que permitam agrupar vários dispositivos
distintos sob a mesma interface de acesso.
●
Gerência de arquivos : esta funcionalidade é construída sobre a gerência de
4 MAZIERO, Carlos Alberto. Sistemas Operacionais I - Conceitos Básicos. PGIA CCET PUCPR. Disponível em:
<http://www.ppgia.pucpr.br/~maziero/doku.php?id=so:livro_de_sistemas_operacionais>
Arquivo: so-cap01.pdf. Acesso em: 21/04/2008.
sugestão de citação para este documento:
pg. 8 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
dispositivos e visa criar arquivos e diretórios, definindo sua interface de acesso e as regras
para seu uso.
○
É importante observar que os conceitos abstratos de arquivo e diretório são tão
importantes e difundidos que muitos sistemas operacionais os usam para permitir o
acesso a recursos que nada tem a ver com armazenamento.
○
Exemplos disso são as conexões de rede (nos sistemas UNIX e Windows, cada
socket TCP é visto como um descritor de arquivo no qual pode-se ler ou escrever dados)
e as informações do núcleo do sistema (como o diretório /proc do UNIX).
●
Gerência de proteção : com computadores conectados em rede e compartilhados
por vários usuários, é importante definir claramente os recursos que cada usuário pode
acessar, as formas de acesso permitidas (leitura, escrita, etc) e garantir que essas definições
sejam cumpridas.
Além dessas funcionalidades básicas oferecidas pela maioria dos sistemas operacionais,
várias outras vêm se agregar aos sistemas modernos, para cobrir aspectos complementares,
como a interface gráfica, suporte de rede, fluxos multimídia, gerência de energia, etc.
As funcionalidades do sistema operacional geralmente são inter-dependentes: por
exemplo, a gerência do processador depende de aspectos da gerência de memória, assim como a
gerência de memória depende da gerência de dispositivos e da gerência de proteção.
PARA REPRESENTAÇÃO GRÁFICA VIDE:
MAZIERO, Carlos Alberto. Sistemas Operacionais I Conceitos Básicos. PGIA CCET PUCPR. Disponível em:
<http://www.ppgia.pucpr.br/~maziero/doku.php?
id=so:livro_de_sistemas_operacionais>
Arquivo: so-cap01.pdf. Acesso em: 21/04/2008.
Alguns autores [SGG01, Tan03] representam a estrutura do sistema operacional conforme
indicado na figura 2. Nela, o núcleo central implementa o acesso de baixo nível ao hardware,
enquanto os módulos externos representam as várias funcionalidades do sistema.
sugestão de citação para este documento:
pg. 9 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Políticas e Mecanismos5
Uma regra importante a ser observada na construção de um sistema operacional é a
separação entre os conceitos de política e mecanismo. Como política consideram-se os aspectos
de decisão mais abstratos, que podem ser resolvidos por algoritmos de nível mais alto, como
por exemplo decidir a quantidade de memória que cada aplicação ativa deve receber, ou qual o
próximo pacote de rede a enviar para satisfazer determinadas especificações de qualidade de
serviço.
Por outro lado, como mecanismo consideram-se os procedimentos de baixo nível
usados para implementar as políticas, ou seja, atribuir ou retirar memória de uma aplicação,
enviar ou receber um pacote de rede, etc.
Os mecanismos devem ser suficientemente genéricos para suportar mudanças de política
sem necessidade de modificações.
Essa separação entre os conceitos de política e mecanismo traz uma grande flexibilidade
aos sistemas operacionais, permitindo alterar sua personalidade (sistemas mais interativos ou mais
eficientes) sem ter de alterar o código que interage diretamente com o hardware. Alguns sistemas,
como o InfoKernel [ADADB+ 03], permitem que as aplicações escolham as políticas do sistema
mais adequadas às suas necessidades.
Estrutura de um Sistema Operacional6
Um sistema operacional é composto de diversos componentes com objetivos e
funcionalidades complementares. Alguns dos componentes mais relevantes de um sistema
operacional típico são:
●
Núcleo : é o coração do sistema operacional, responsável pela gerência dos
recursos do hardware usados pelas aplicações. Ele também implementa as principais
abstrações utilizadas pelos programas aplicativos.
●
Drivers : módulos de código específicos para acessar os dispositivos físicos. Existe
5 MAZIERO, Carlos Alberto. Sistemas Operacionais I - Conceitos Básicos. PGIA CCET PUCPR. Disponível em:
<http://www.ppgia.pucpr.br/~maziero/doku.php?id=so:livro_de_sistemas_operacionais>
Arquivo: so-cap01.pdf. Acesso em: 21/04/2008.
6 Idem.
sugestão de citação para este documento:
pg. 10 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
um driver para cada tipo de dispositivo, como discos rígidos IDE, SCSI, portas USB, placas
de vídeo, etc. Muitas vezes o driver é construído pelo próprio fabricante do hardware e
fornecido em forma compilada (em linguagem de máquina) para ser acoplado ao restante do
sistema operacional.
●
Código de inicialização : a inicialização do hardware requer uma série de tarefas
complexas, como reconhecer os dispositivos instalados, testá-los e configurá-los
adequadamente para seu uso posterior. Outra tarefa importante é carregar o núcleo do
sistema operacional em memória e iniciar sua execução.
●
Programas utilitários : são programas que facilitam o uso do sistema
computacional, fornecendo funcionalidades complementares ao núcleo, como formatação de
discos e mídias, configuração de dispositivos, manipulação de arquivos (mover, copiar,
apagar), interpretador de comandos, terminal, interface gráfica, gerência de janelas, etc.
PARA REPRESENTAÇÃO GRÁFICA VIDE:
MAZIERO, Carlos Alberto. Sistemas Operacionais I Conceitos Básicos. PGIA CCET PUCPR. Disponível em:
<http://www.ppgia.pucpr.br/~maziero/doku.php?
id=so:livro_de_sistemas_operacionais>
Arquivo: so-cap01.pdf. Acesso em: 21/04/2008.
As diversas partes do sistema operacional se relacionam entre si conforme apresentado na figura acima.
A forma como esses diversos componentes são interligados e se relacionam varia de
sistema para sistema.
sugestão de citação para este documento:
pg. 11 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
PARTE II
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Linux: História e Tradição
Esta introdução (dividida entre as partes II e III deste documento) tem como objetivos
permitir que você:
●
Conheça a origem e a história do Linux
●
Saiba explicar o que é o GNU e o que é o Linux no GNU/Linux
●
Conheça mais profundamente o conceito de distribuições no Linux e seja capaz
de identificar as suas diversas partes.
●
Conheça a teoria por trás da inicialização do Linux (tópico a ser acrescentado na
próxima versão).
●
Conheça a base da estrutura de diretórios do Linux
●
Entenda a importância do root
●
Entenda a importância da pasta /home
●
Seja capaz de criar um usuário na interface gráfica
●
Seja capaz de ler e de alterar as permissões de arquivos e pastas em modo
gráfico e modo texto
●
Tenha alguma intimidade com o Shell e sua operação.
Os Sistemas UNIX
Criado nos Bell Laboratories o UNIX teve sua primeira versão compilada em
1969, e no que diz respeito a sua arquitetura e premissas o Linux é considerado
um “clone” do UNIX utilizando inclusive a mesma nomenclatura em seus comandos
operacionais principais .
O GNU/Linux e suas distribuições
Em 25 de agosto de 1991, uma mensagem postada por um então aluno da
Universidade de Helsinki,
em um
BBS,
inesperadamente
tornava-se um
documento
histórico, anunciando pela primeira vez, o nascimento de um modesto sistema operacional batizado
de Linux, outro clone do UNIX como o seu próprio nome denunciava
Com esta mensagem, Linus Torvalds deu início ao processo de construção coletiva do
sistema operacional Linux, um sistema operacional “tipo X” que em poucos anos viria a concorrer
com todos os sistemas proprietários disponíveis no mercado, em todo tipo de finalidade.
sugestão de citação para este documento:
pg. 12 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Mas foi Richard Stallman quem criou a Free Software Foundation em 1984 iniciando o
projeto GNU, segundo Stallman sua motivação foi constatar o virtual desaparecimento da cultura de
compartilhamento de softwares dentro do laboratório de Inteligência Artificial do MIT, de onde seus
pares estavam saindo para entrar ou para fundar companhias de software proprietário.
Stallman é o autor da idéia por trás do "free software" (no Brasil batizado de Software
Livre) segundo a qual aos programadores deveria ser garantido o direito de acesso ao código fonte
dos softwares permitindo que alterações fossem feitas para adaptar o software a cada necessidade.
Foi Stallman quem criou a famosa licença GNU/GPL (sob a qual o Linux é licenciado), a
GNU General Public License (GNU/GPL).
GNU é um acrônimo recursivo para "GNU's Not Unix", um tipo de piadinha recorrente
entre os hackers e geeks.
A página oficial do projeto GNU na internet (http://www.gnu.org/gnu/gnu-history.html)
oferece a seguinte explicação sobre a sigla: "O nome 'GNU' foi escolhido porque atende alguns
requisitos; primeiro, era um acrônimo recursivo para 'GNU não é Unix' (GNU's Not Unix),
segundo, porque era uma palavra verdadeira, e terceiro, era divertida de dizer (ou cantar)."
Certidão de Nascimento
“From: [email protected] (Linus Benedict Torvalds) /
Newsgroups: comp.os.minix / Subject: What would you like to see
most in minix? / Summary: small poll for my new operating
system /
Keywords: 386, preferences / Message-ID:
[email protected] / Date: 25 Aug 91
20:57:08 GMT
Organization: University of Helsinki
Lines: 20
Olá a todos aí fora usando minix - Eu estou fazendo um
sistema operacional (grátis) (é só um passatempo, não vai ser
grande e profissional como o gnu) para clones 386(486)AT. Ele tem
fermentado desde abril, e está começando a ficar pronto. Eu
gostaria
de
comentários
sobre
coisas
que
as
pessoas
gostam/desgostam no minix, uma vez que meu SO lembra-o de alguma
forma (mesma organização
física do sistema de arquivos
(devido a razões práticas) entre outras coisas).
Eu já portei o bash (1.08) e o gc(1.40), e as coisas
parecem funcionar. Isso sugere que eu vou conseguir algo prático
em alguns poucos meses, e eu gostaria de saber quais as funções
que a maioria das pessoas quer. Qualquer sugestão é bem-vinda,
mas eu não vou prometer que vou implementá-las :-)
sugestão de citação para este documento:
pg. 13 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Linus ([email protected] )
PS. Sim - ele está livre de qualquer código do minix, e
tem um fs (file system - sistema de arquivos)
de múltiplas transações.
Ele NÃO é portável (utiliza chaveamento de tarefas do 386
etc), e ele provavelmente nunca irá
suportar qualquer coisa além de discos rígidos AT, uma
vez que são tudo o que tenho :-(.85”
“From: [email protected] (Linus Benedict Torvalds) /
Newsgroups: comp.os.minix / Subject: What would you like to see
most in minix? / Summary: small poll for my new operating
system /
Keywords: 386, preferences / Message-ID:
[email protected] / Date: 25 Aug 91
20:57:08 GMT
Organization: University of Helsinki
Lines: 20
Olá a todos aí fora usando minix - Eu estou fazendo um
sistema operacional (grátis) (é só um passatempo, não vai ser
grande e profissional como o gnu) para clones 386(486)AT. Ele tem
fermentado desde abril, e está começando a ficar pronto. Eu
gostaria
de
comentários
sobre
coisas
que
as
pessoas
gostam/desgostam no minix, uma vez que meu SO lembra-o de alguma
forma (mesma organização
física do sistema de arquivos
(devido a razões práticas) entre outras coisas).
Eu já portei o bash (1.08) e o gc(1.40), e as coisas
parecem funcionar. Isso sugere que eu vou conseguir algo prático
em alguns poucos meses, e eu gostaria de saber quais as funções
que a maioria das pessoas quer. Qualquer sugestão é bem-vinda,
mas eu não vou prometer que vou implementá-las :-)
Linus ([email protected] )
PS. Sim - ele está livre de qualquer código do minix, e
tem um fs (file system - sistema de arquivos)
de múltiplas transações.
Ele NÃO é portável (utiliza chaveamento de tarefas do 386
etc), e ele provavelmente nunca irá
suportar qualquer coisa além de discos rígidos AT, uma
vez que são tudo o que tenho :-(.85”
sugestão de citação para este documento:
pg. 14 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
PARTE III
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Do You Ubuntu?
Um Linux muito fácil de usar
Muita coisa mudou nos últimos 10 anos, das primeiras versões do Linux até as mais
recentes os programadores que estão empenhados neste projeto ao redor do mundo atingiram um
retumbante sucesso. Mesmo assim, ainda hoje, muitas pessoas torcem o nariz quando se fala em
Linux, é comum ouvir frases como: “mas não é muito difícil?”, “com Linux não dá para usar
minha câmera”, “mas eu não sei compilar nada”, “isso é coisa de hacker, eu só quero usar o
computador”, ou até “eu lí em uma revista que o Windows é muito superior”. O primeiro objetivo
deste documento é desmistificar esta imagem, por isso não vamos focar a utilização do sistema com
o terminal de comando ou qualquer destas coisas ditas “avançadas”, vamos mostrar como usar o
Linux lidando quase exclusivamente com suas interfaces gráficas, e mesmo assim vamos conseguir
utilizar tudo o que alguém pode precisar em um sistema operacional.
O Linux que vamos utilizar (entre as dezenas que estão disponíveis) é o Ubuntu, uma distribuição
sul-africana atualmente muito popular.
Distribuições: Linux, gostoso como sorvete! (e com muitos sabores!)
Para o usuário acostumado com o MS-Windows pode ser difícil entender logo de cara
todas as diferenças do Linux. A primeira e que em
geral causa mais confusão é o fato de que não
existe um Linux, existem vários, e pior, cada
Linux pode ter uma interface gráfica diferente,
enquanto no MS-Windows existe apenas uma.
Mas na verdade este é um conceito bem menos
difícil do que parece, para entender as principais
diferenças do Linux em relação ao Windows é só
pensar em sorvete.
Zela - http://www.sxc.hu/
Como assim? Bem.. sorvetes existem em diferentes sabores. Chocolate, creme, morango,
abacaxi, passas ao rum e baunilha, todos são sabores da mesma coisa: sorvete!
sugestão de citação para este documento:
pg. 15 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Com o Linux acontece a mesma coisa, existem o Slackware7, Debian8, Suse9, OpenSuse10,
Fedora11, Ubuntu12, Muriqui13, Red Hat14, Kurumin15, Knoppix16 e diversos outros, todos são
“sabores” da mesma coisa: o Linux. Estes sabores são chamados de distribuições.
Para cada sorvete, independente do sabor, você ainda pode acrescentar uma cobertura (ou
várias): calda de chocolate, frutas vermelhas, marshmellow, farofa crocante, etc. Novamente, com o
Linux ocorre a mesma coisa, independente do sabor você pode utilizar a “cobertura” que quiser, ou
seja, a interface gráfica que quiser. Existem diversas coberturas para o Linux, as mais populares são
o Gnome17 e o KDE18, mas existem outras como o Enligthment19 e Xfce20
É difícil comparar as interfaces gráficas disponíveis para o Linux pois muitos fatores estão
envolvidos, em alguns casos a interface é apenas um gerenciador de janelas como o Enlightment ou
um sistema de Desktop completo como o KDE. O Gnome tem foco na usabilidade e na
simplicidade, já o Xfce pretende ser leve o bastante para funcionar em máquinas mais modestas.
Cada um deles apresenta uma interface e funcionalidades diferenciadas.
Para quem está chegando agora é interessante notar que no Linux (bem como no sistema
UNIX que lhe deu origem) as funcionalidades são atingidas com a cooperação de diferentes
componentes, incluindo aí a separação do X Windows System21 do sistema propriamente dito. Isso
impede que o código do sistema vire uma grande bagunça como ocorre em outros sistemas
operacionais, mas o melhor é que ele permite que “peças” sejam rapidamente trocadas, de acordo
com sua necessidade (você pode mudar do Gnome para o KDE, ou se quiser utilizar os dois na sua
máquina).
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
http://www.slackware.com/ ou http://www.slackware-brasil.com.br/web_site/
http://www.debian.org/
http://www.novell.com/linux/
http://www.opensuse.org/
http://fedoraproject.org/wiki/ ou http://www.fedora.org.br/
http://www.ubuntu.com/
http://www.muriquilinux.com.br/
http://www.redhat.com/ ou http://www.br.redhat.com/
http://www.guiadohardware.net/gdhpress/kurumin/
http://www.knoppix.org/
http://www.gnome.org/ ou http://br.gnome.org/
http://www.kde.org/ ou http://twiki.softwarelivre.org/bin/view/KdeBR/WebHome
http://www.enlightenment.org/
http://www.xfce.org/
Código que servem de base para as interfaces gráficas do Linux
sugestão de citação para este documento:
pg. 16 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
O Espírito do ubuntu
“Ubuntu é um sistema operacional completo, baseado em Linux,
distribuído livremente para uso em desktops, uso corporativo e
servidores. Ele é desenvolvido por uma imensa comunidade, da qual
você também pode fazer parte!”22
“Ubuntu é uma ideologia ética Sul Africana focada no compromisso
e relações entre as pessoas. A palavra vem das línguas Zulu e
Xhosa. Ubuntu (pronunciado "u-BUN-tu") é visto como um conceito
tradicional
Africano,
é
tratado
como
um
dos
princípios
fundamentais da nova república Sul Africana e é conectado à idéia
de um Renascimento Africano.
Uma tradução rápida do princípio de Ubuntu é 'humanidade para os
outros'. Outra tradução poderia ser: 'a crença em uma ligação
universal de compartilhamento que conecta toda a humanidade'
(...) Como uma plataforma baseada no Linux, o sistema
operacional Ubuntu traz o espírito do ubuntu ao mundo do
software.”23
"Uma pessoa com ubuntu é aberta e disponível aos outros,
assistente aos outros, não se sente ameaçada por outros
que são capazes ou bons, uma vez que ele ou ela tem uma
auto-confiança que vem do saber que ele ou ela pertence a
um conjunto maior e é diminuído quando outros são
humilhados ou diminuídos, quando outros são torturados
ou oprimidos."24
Arcebispo Desmond Tutu
O Ubuntu foi baseado no Debian, uma das melhores, mais antigas e mais populares
distribuições Linux de todos os tempos. Atualmente existem quatro tipos de Ubuntu, projetados
para serem utilizados em computadores pessoais ou em servidores:
1.
2.
3.
4.
O Ubuntu original, com a interface Gnome;
O Kubuntu, um Ubuntu com a interface KDE;
O Xubuntu, um Ubuntu com a interface Xfce;
O Edubuntu, um Ubuntu com a interface Gnome repleto de programas educacionais,
especialmente pensado para ser utilizado em escolas.
Existe ainda a versão do Ubuntu para servidores, que vem com softwares específicos para
o mercado corporativo de servidores, com modos de instalação que permitem, por-exemplo, instalar
de uma só vez os softwares LAMP (Linux, Apache, MySQL e PHP/Pearl).
22 http://www.ubuntubrasil.org/
23 https://help.ubuntu.com/6.10/ubuntu/about-ubuntu/pt_BR/about-ubuntu-name.html
24 https://help.ubuntu.com/6.10/ubuntu/about-ubuntu/pt_BR/about-ubuntu-name.html
sugestão de citação para este documento:
pg. 17 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Conhecendo a interface
O
“sabor”
de
Linux
que
trataremos aqui é o Ubuntu (e suas
variantes Kubuntu, Xubuntu e Xfce), a
ilustração 1 mostra a interface clássica do
Ubuntu com o gerenciador de janelas
Gnome.
Esta imagem exibe as principais
áreas do Gnome. São elas:
Ilustração 1: A área de trabalho do Ubuntu
1. A Barra de Menus, que
traz menus personalizados e alguns ícones ao seu lado (neste caso para acesso rápido ao
navegador web (browser) Firefox, o cliente de e-mail Evolution e ao sistema de ajuda);
2. Relógio/Calendário, Controle de Volume e botão para Desligar o sistema;
3. Alguns ícones no Desktop para acesso rápido a programas;
4. Botão para minimizar (ou maximizar) todas as janelas e exibir rapidamente o
Desktop;
5. Aplicativo minimizado no painel inferior;
6. Alternador de Espaços de Trabalho – permite que você tenha a sensação de
trabalhar com diversos Desktops;
7. A Lixeira do sistema;
8. O Desktop.
sugestão de citação para este documento:
pg. 18 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Propriedades dos Painéis Superior e Inferior
Ao contrário do Windows, que tem um único painel inferior (chamado barra de tarefas) o
Gnome traz – tradicionalmente – duas barras, uma inferior e outra superior, chamadas painéis.
OBSERVAÇÃO: A continuação deste tópico será publicada em
uma versão futura deste documento.
sugestão de citação para este documento:
pg. 19 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Copy & Paste
Além do tradicional Ctrl+C e Ctrl+V o gerenciador de janelas Gnome (usado por padrão
no Ubuntu) permite uma forma alternativa e prática de se copiar um conteúdo, utilizando apenas o
mouse. Pra isso basta selecionar o texto que se deseja copiar na janela de origem (por exemplo, seu
browser) e depois, com o conteúdo ainda selecionado, abra a janela de destino (por exemplo o
Writer) e clique com o botão do meio do mouse (em geral uma rodinha de scroll). Se você clicar a
rodinha como se ela fosse um botão, o texto será copiado, sem a necessidade das teclas Crtl+C e
Ctrl+V.
Criando links no Desktop
O gerenciador de janelas Gnome permite que links e arquivos de texto sejam criados
diretamente na sua Área de Trabalho (ou dentro de diretórios caso eles estejam abertos e visíveis).
Para criar um arquivo de texto basta selecionar o texto e arrastar para o Desktop, isso criará um
arquivo automaticamente. Para criar
um link você deve utilizar o mesmo
procedimento, arraste o ícone da
página, que está dentro da barra de
endereço do seu broswer para o
Desktop
(conforme
indicado
na
ilustração 2) e um link será criado
como atalho, permitindo que você
volte a página apenas dando um duplo
clique neste atalho (este procedimento
também funciona com links dentro das
Ilustração 2: Métodos para criar arquivos e links no Desktop
com o GNOME.
páginas).
sugestão de citação para este documento:
pg. 20 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Pastas Ocultas
OBSERVAÇÃO: A continuação deste tópico será publicada em
uma versão futura deste documento.
sugestão de citação para este documento:
pg. 21 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Criando usuários no Ubuntu
O Linux gerencia o computador com um
rigoroso controle de usuários e grupos de usuários.
Cada diretório ou arquivo traz consigo um
conjunto de permissões controlando como cada
usuário e grupo utiliza o computador. Trataremos
mais sobre este assunto no capitulo de permissões
de arquivos. Aqui vamos nos concentrar na
criação de usuários.
Para criar um novo usuário você deve:
1. Acessar o menu: Sistema >
Administração > Usuário
e Grupos,
Ilustração 3: Localização da interface de administração
2. O sistema ira pedir a senha
do usuários ROOT, pois por de usuários e grupos.
questões de segurança, só ele devera ter permissão de criar
usuários e grupos.
3. Depois de digitar a senha do ROOT a janela da ilustração 4
será exibida. Clique no botão Adicionar Usuário...
Ilustração 4: Adicionando um Usuário.
sugestão de citação para este documento:
pg. 22 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
4. Agora, na nova janela que se
abriu (ilustração 5 ) digite:
Nome de Usuário para o seu
login no sistema, por ex.
aluno
(tome
o
cuidado
de
digitar tudo em caixa baixa
pois
o
sistema
diferencia
MAIÚSCULAS
de
minúsculas),.
depois digite o seu Nome Real
(aqui da maneira que deseja
que ele seja exibido pelo
sistema),. Agora digite sua
senha
no
campo
Senha
do
Usuário e depois confirme-a
no campo Confirmação.
5. Ao clicar no botão OK seu novo
usuário será criado.
Ilustração 5: Criando uma conta de usuário.
sugestão de citação para este documento:
pg. 23 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
PARTE IV
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
O Sistema de Arquivos
O sistema de arquivos do Linux é bastante similar ao padrão do UNIX, mas claro com
algumas diferenças. A chave para entender o sistemas de arquivos do Linux é entender sua
estrutura. Ele é desenhado em uma hierarquia de árvore, o nível mais alto, comummente chamado
root é único diretório neste nível. Todos os demais diretórios são relativos a ele.
FHS (Linus Filesystem Standard)25
O FHS (Filesystem Hierarchy Standard) especifica detalhadamente como um sistema de
arquivos do Linux deve ou não deve ser, seu principal objetivo é prover consistência e padronização
entre os sistemas de arquivo. Esta padronização pode ser resumida assim:
Ilustração 6: Exemplo generalizante de uma estrutura de diretórios em acordo
com a FHS.
Fonte: Special Edition Using Linux, Sixth Edition
Recursos compartilháveis versus recursos não compartilháveis. Consiste nos arquivos que
podem ser distribuídos entre diferentes hosts e em arquivos que devem ser específicos de um único
host. Por exemplo, os dados de uma aplicação de banco de dados podem ser distribuídos em
diferentes hosts.
25 Baseado em: Special Edition Using Linux, Sixth Edition
sugestão de citação para este documento:
pg. 24 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
A estrutura de diretórios do UBUNTU
A estrutura de diretórios do Linux no Ubuntu e no Debian, ou File System, segue a
estrutura padrão da maioria das grandes distribuições Linux.
Ilustração 7: Estrutura de diretórios padrão do Ubuntu
ATENÇÃO: Você pode não ter todos os diretórios que serão
listados ou pode ter alguns a mais. Eles são geralmente
criados por programas, conforme as necessidades, ou
durante uma instalação ou quando o programa é executado
pela primeira vez.
sugestão de citação para este documento:
pg. 25 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Tabela com os principais diretórios de distribuição Linux típica.
DIRETÓRIO
DESCRIÇÃO
/
diretório root, ou partição root. Base de onde derivam todos os
diretórios.
home/
diretório onde ficam os sub-diretórios dos usuários.
bin/
binary, onde alguns programas aplicações e scripts que são acessíveis
a todos os usuários ficam guardados.
Como por exemplo o comando ls.
dev/
diretório devices, é tipo de diretório virtual, ou seja não há sub-pastas
verdadeiras dentro desta pasta. O Linux trata tudo como pastas e
arquivos, por isso ele cria uma representação do hardware como
pastas e arquivos dentro deste diretório dev durante a instalação. O
dev guarda a representação virtual do hardware do computador.
etc/
diretório onde seus arquivos de configuração para vários programas
ficam guardados. Arquivos de inicialização, boot, etc. ficam guardado
aqui
lib/
diretório library, onde as bibliotecas compartilhadas ficam
armazenadas: itens como o Pearl, C e outras bibliotecas
compartilhadas por diversos programas. Também é aqui que ficam
armazenados os módulos do kernel.
mnt/
diretório mount, no Linux hard-drives, disketes, cd-roms, discos USB,
câmeras fotográficas, etc. são "montados" pelo sistema, o que
significa que são plugados na estrutura de diretórios. Assim com uma
pasta neste diretório equivale a um "link" para o disco conectado, ou
seja o drive é "montado" no sistema.
proc/
outro diretório virtual (como o dev) com informações sobre o sistema
como os processos que estão rodando, o status dos slots PCI, enfim
informações sobre tudo que está acontecendo com o hardware do
sistema.
root/
diretório padrão do usuário root, que por segurança não fica dentro da
pasta home como com os demais usuários.
sbin/
diretório secure binary, aqui ficam as aplicações que precisam de
permissão de administrador para serem executadas, como o fdisk que
pode fazer particionamentos de disco e que em geral é melhor que
esteja fora das mãos do usuário médio.
tmp/
diretório onde são salvas as informações temporárias dos programas
que estão sendo executados, em geral são apagadas quando o
programa é finalizado ou quando o sistema é reinicializado.
usr/
diretório unique system resources, é onde as informações, dados,
sugestão de citação para este documento:
pg. 26 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
DIRETÓRIO
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
DESCRIÇÃO
bibliotecas, e aplicações compartilhadas ficam. Este diretório pode
inclusive guardar informações de "thin clients" na rede.
var/
diretório variablae arquivos e dados, onde arquivos de log, conteúdo
de websites, spool files, etc.
boot/
diretório linux kernel, linux config e arquivos SystemMap. Mas isso
varia entre distribuições. É comum em distribuições deivadas do Red
Hat.
media/
diretório equivalente ao mnt porém mais voltado para mídia
removível (o mnt tem foco maior em partições de rede). Mas isso
varia entre distribuições.
opt/
diretório optional, funciona como um sandbox ou testing ground.
Utilizado normalmente como área de testes, mas algumas
distribuições às vezes instalam itens aqui. Mas isso varia entre
distribuições.
PARTE V
Conhecendo o Shell
O termo Shell se refere aos programas de sistemas do tipo Unix que recebem, interpretam e
executam comandos do usuário. Ele funciona como uma linha de comandos, representada por um
prompt, que aguarda na tela os comandos do usuário.
A tradução de Shell para português significa "concha". Na informática o Shell, de maneira
genérica, é um programa que intermeia o contato entre o usuário e o computador.
Neste sentido genérico poderíamos dizer que o Shell dos antigos MS-Windows 3.1 e 3.11
era o Prompt de Comando, que podia inclusive ser substituído por outro programa, mudando a
interface do usuário com o sistema. É claro que comparar o Shell do Lunix com o Prompt de
Comando dos antigos MS-Windows é meio desproporcional, já que o Shell é muito mais poderoso.
ATENÇÃO: processos e programas (inclusive os gráficos)
podem ser ativados via Shell.
Existem diversas implementações de Shell, dentre os quais podemos mencionar o csh, tcsh,
sh, bash, ksh, zsh e muitos outros. Cada um pode executar comandos gerais do sistema de maneira
semelhante, porém possuem estruturas e comandos próprios que os diferenciam. Outra grande
sugestão de citação para este documento:
pg. 27 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
diferença entre os diversos tipos de Shell são as facilidades que eles oferecem para o
reaproveitamento de comandos e manipulação da linha de comandos26 (nossos exemplos irão, em
sua maioria, utilizar o bash).
ATENÇÃO: No Linux uma mesma palavra escrita em caixa
alta (MAIÚSCULAS) e caixa baixa (minúsculas) será tratada
como duas palavras diferentes. Essa regra vale para
diretórios, arquivos, logins (nomes de usuário) e senhas.
Ao utilizar o Shell a primeira coisa que você deve ter em mente é que no Linux caixa alta
(MAIÚSCULAS) e caixa baixa (minúsculas) são coisas completamente diferentes. Assim os
diretórios abaixo são totalmente independentes e devem ser digitados corretamente para serem
acessados:
Fatec/
FATEC/
fatec/
Criando Pacotes TAR
O Linux permite que você “empacote” vários arquivos e/ou diretórios em um único
arquivo. Para isso utilizamos o comando tar. Veja o exemplo:
tar -cvvf teste.tar aula/
cria um tar do diretório aula no arquivo teste.tar
tar -xvvf teste.tar
extrai o diretório aula de dentro do arquivo teste.tar
Digitando Rapidamente
No shell do Linux é possível repetir um comando já digitado anteriormente apertando a
seta “para cima” do teclado até localizar o comando procurado. Usando as setas para direita e
esquerda você pode editar um comando modificando algum parâmetro.
Outra recurso para otimizar a digitação é um recurso que envolve nomes longos de
arquivos ou diretórios. Por exemplo, se você tiver um diretório com dois arquivos com os seguintes
nomes:
26 FONTE: http://pt.wikipedia.org/wiki/Shell
sugestão de citação para este documento:
pg. 28 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
trabalhos1oSem2006_FATEC-CP.tar.gz
provas2oSem2006_FATEC-CP.tar.gz
E deseje copiar rapidamente descompactar o arquivo de provas. Para isto basta digitar:
tar -xvzf p <tecla TAB>
Ou seja, basta digitar um comando, a primeira letra do arquivo e depois a tecla TAB para a
linha digitada aparecer com o nome do seu arquivo desta forma:
tar -xvzf provas2oSem2006_FATEC-CP.tar.gz
Permitindo que o comando seja mais rapidamente executado já que você não vai precisar
digitar todo o nome do arquivo.
sugestão de citação para este documento:
pg. 29 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Comandos Mais Comuns
Apesar de atualmente quase todas as operações do Linux poderem ser executadas pela
interface gráfica, conhecer alguns comandos do Shell confere flexibilidade e grande controle ao
usuário. Nosso primeiro contato com o Shell vai ser com os principais comandos que podem ser
necessários durante a operação do Linux, listados na tabela abaixo.
COMANDOS MAIS COMUNS
top – exibe a tabela de processos e aplicativos em andamento, exibe ainda como cada um deles está utilizando os recursos de memória e processador. Exibe também totalizadores da performance da máquina.
ps – exibe um processo específico se for acrescentado o PID (Process Id) ou número do processo (foi exibido pelo comando top)
kill ­9 <número do PID a ser derrubado> – derruba (finaliza) um processo em andamento.
ls – lista os arquivos de um diretório. Seus atributos mais comuns são:
­a – mostra arquivos ocultos
­l – mostra bytes, permissões, diretórios, etc.
­h – arredonda as informações de tamanho e hora/data para formatos mais fáceis de ler.
O comando ls permite ainda que você crie listagens do conteúdo de seus diretórios. Para isso utilize a seguinte sintaxe: ls > NomeDoArquivoDestino.txt
Obs: No comando acima você também pode adicionar parâmetros do ls para obter uma listagem detalhada.
rm – remove arquivos e diretórios. Use no formato: rm (arquivo1) (arquivo2) (arquivo3...). Exemplo: rm fatec.txt site.html texto.odt
cp – copia arquivos. Exemplo: cp fatec.txt home/juninho/
pwd – mostra o diretório atual (onde você está)
cd – navega nos diretórios
Exemplo 1 (vai para o diretório ana): cd home/ana/
Exemplo 2 (volta para o diretório home do usuário): cd
Exemplo 3 (volta para o diretório anterior): cd ..
sugestão de citação para este documento:
pg. 30 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
COMANDOS MAIS COMUNS
rmdir – apaga um diretório vazio
Exemplo: rmdir teste
mkdir – cria um diretórios
Exemplo: mkdir teste
clear – limpa a tela.
who – mostra quem está logado na máquina
df – mostra o espaço usado, espaço livre e a capacidade do HD
mv – move (ou renomeia) um arquivo
Exemplo: mv teste2 Desktop
man <comando> ­ exibe as páginas do manual de um determinado comando, ideal para verificar os parâmetros e aprofundar os conhecimentos sobre a capacidade de cada comando.
Exemplo: man ls
sugestão de citação para este documento:
pg. 31 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Permissões de Arquivos
Cada diretório e arquivo tem três conjuntos de permissões aplicadas a eles: um para o
usuário, um para o grupo de usuários a que pertence, e um para todos os outros usuários.
Os tipos de permissão são:
●
leitura , em inglês: read (r)
●
escrita , em inglês: write (w)
●
execução, em inglês: execute (x)
A notação dessas permissões em um diretório ou arquivo é exibida da seguinte maneira:
Desta forma é possível determinar exatamente quem pode fazer o que com cada arquivo.
Com direito de leitura um usuário pode ler um arquivo, com direito de escrita pode além de alterar
apagar o arquivo, e com direito de execução pode acionar um programa.
Quando estamos falando de um diretório as regras são muito parecidas, a principal
diferença é o direito de execução que neste caso se refere a permissão para “ver” o conteúdo do
diretório. O direito de escrita em um diretório permite renomear ou apagar o diretório, mas para
interferir com os arquivos dentro de um diretório o usuário precisa ter direitos sobre cada um deles.
O usuário root tem acesso ilimitado a todos os diretórios e arquivos, independente das
permissões.
O atributo Sticky (ou PEGAJOSO em português) limita o direito de uso de um diretório.
Com este atributo aplicado a um diretório os usuários de um mesmo grupo ficam limitados a
sugestão de citação para este documento:
pg. 32 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
interferir apenas nos arquivos que tiverem sido criados por eles mesmos, não podendo interferir nos
arquivos de outros membros do grupo.
No Gnome é possível alterar as permissões de um arquivo ou diretório dando um clique
com o botão direito sobre um arquivo ou diretório, selecionando PROPRIEDADES no menu popup que se abriu e depois clicando na aba PERMISSÕES:
Ilustração 8: Tela de alteração de
permissões na versão 6.10 do Ubuntu.
Ilustração 9: A mesma tela de alteração de
permissões na versão7.10 do Ubuntu.
As imagens acima (ilustrações 8 e 9) permitem notar que a
interface gráfica pode variar um bocado entre diferentes
releases de uma mesma distribuição. Ou seja, mais um
grande motivo para você aprender a lidar com as
permissões de arquivos e diretórios por intermédio do
Shell.
Com o comando ls -l você pode ver as permissões de um arquivo no terminal. O Comando
ls -CF ajuda muito quem está começando pois mostra direórios, arquivos e links com clareza.
Para mudar as permissões utilizamos o comando chmod. Existem duas sintaxes possíveis
para este comando, uma com letras e outra, mais simples, com números.
sugestão de citação para este documento:
pg. 33 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Método Letras
Utiliza os sinais + ou – (adição ou subtração) para adicionar ou remover permissões. Com
uma combinação das letras “ugoa” você controla quais usuários podem ter aceso ao arquivo/pasta.
Os perfis são: usuário que é o dono do arquivo (u), outros usuários no grupo (g), outros
usuários que não pertencem ao grupo (o), todos os usuários (a). Se a letra não é especificada o
comando interpreta que a seleção foi “a”.
Exemplos (Método Letras)
chmod u+rw arquivo / Dá ao usuário permissão de ler e
escrever.
chmod o-rwx arquivo /
usuários fora do grupo.
Remove
chmod
a+r
arquivo.
Dá
arquivo
/
a
ler/escrever/executar
todos
permissão
de
dos
ler
o
chmod a=rx arquivo / Dá a todos permissão de executar e
ler o arquivo, se alguém tivesse permisão de escrita ela
seria removida.
Método Números
Cada permissão também pode se representada por um valor numérico, da seguinte forma:
r = 4
w = 2
x = 1
- = 0
Somados estes valores representam um número que determina um tipo específico de
permissão, funcionando como um tipo de atalho para o método das letras.
Em um hipotético arquivo texto_exemplo.txt, temos as seguintes permissões:
-
(rw-)
(rw-)
(r--)
|
|
|
4+2+0
4+2+0
4+0+0
sugestão de citação para este documento:
pg. 34 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
O total para o usuário é seis, o total para o grupo é seis e o total para os outros é quatro.
Desta forma a permissão é representada por 664.
Para alterar um arquivo para esta permissão basta digitar:
chmod 644 nomedoseuarquivo.txt
ANTENÇÃO: Resultados catastróficos podem advir do uso
incorreto ou desatento das permissões, em especial
permissões 666 e 777. Elas permitem que qualquer um leia e
escreva em um arquivo ou em um diretório. Isso em geral
não é uma boa idéia.
sugestão de citação para este documento:
pg. 35 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Exemplos (Método Números)
Aqui uma lista com permissões mais comuns, seus valores numéricos e os significados:
-rw------- (600) – Só o dono consegue ler e escrever aqui.
-rw-r--r-- (644) – Só o dono consegue escrever, os demais
podem ler (boa idéia).
-rwx-----(egoísta).
(700)
–
Só
o
dono
lê,
escreve
e
executa
-rwxr-xr-x (755) – O dono pode tudo, o grupo e os outros
lêem e executam.
-rwx--x--x (711) – O dono pode tudo, o grupo e os outros
só executam.
-rw-rw-rw- (666) – Todo mundo pode ler e escrever (essa é
uma péssima idéia).
-rwxrwxrwx (777) – Todo mundo pode tudo (continua sendo
uma péssima idéia).
Permissões mais comuns para os diretórios:
drwx-----diretório.
(700)
–
Só
o
dono
pode
ler
e
escrever
no
drwxr-xr-x (755) – Todos podem ler, só o dono pode alterar
o conteúdo.
sugestão de citação para este documento:
pg. 36 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
EXERCÍCIOS DE FIXAÇÃO
ATENÇÃO: Alguns destes exercícios vão dar errado de
propósito, outros estão explicando apenas metade do que
dever ser feito, e outros ainda pedem que você execute
comandos ou procedimentos que não foram vistos em aula nem
constam deste documento.
Esta abordagem vai além do simples “divertimento do
professor” (como alguns alunos inferem erroneamente), e
objetiva permitir que os alunos sintam a “Solidão do
Terminal” e que busquem contar apenas com o comando man
para resolver os exercícios propostos ou descobrir o que
há de errado com eles.
Quase como se estivessem efetivamente trabalhando com o
Linux em uma situação real e só pudessem contar com sua
própria habilidade.
Desta forma solicitamos que os exercícios sejam feitos
individualmente (e sem buscar as respostas no Google)
tanto quanto for possível.
Exercício 01
1)
2)
3)
4)
5)
6)
Acione o terminal e descubra em qual diretório você está.
Liste os arquivos deste diretório.
Entre no seu diretório Desktop
Crie um diretório dentro do diretório teste 1 com o seguinte comando: mkdir teste 1
Crie um diretório dentro do diretório teste 2 com o seguinte comando: mkdir teste 2
Responda: O que deu errado?
Exercício 02
1) Apague os três diretórios criados anteriormente com apenas uma linha de comando.
2) Crie (no seu Desktop) os diretório teste1 , teste2 e teste3.
3) Liste o conteúdo do seu Desktop para confirmar a criação dos diretórios.
sugestão de citação para este documento:
pg. 37 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Exercício 03
1) Acione a interface gráfica do gerenciador de arquivos digitando o nome do programa:
nautilus
2) Utilizando o Nautilus abra seu diretório teste1 e crie (com o botão da direita) os seguintes
arquivos vazios: contas.txt, supermercado.txt
3) Agora utilizando o pico, nano ou vi crie no mesmo diretório os arquios FATEC.txt,
fatec.txt, Fatec.txt e Outros.txt (digite o nome dos arquivos exatamente como escrito
aqui).
4) Feche o Nautilus.
5) Feche o editor que vc. abriu no terminal.
Exercício 04
1) Volte para o diretório do seu Desktop (sempre usando o Terminal)
2) Crie um novo diretório chamado aula
3) Mova os diretórios teste1, teste2 e teste3 para dentro do diretório aula
Exercício 05
1) Entre no diretório teste1
2) Gere um novo arquivo chamado listagem.txt contendo todas as informações de nome,
permissões e tamanho dos arquivos criados no diretório teste1. (Para isso utilize o comando
ls -l > listagem.txt )
3) Mova os arquivos FATEC.txt, fatec.txt e Fatec.txt para o diretório teste2
4) Mova os arquivos contas.txt, supermercado.txt e Outros.txt para o diretório teste3
5) Verifique os arquivos dentro dos diretórios teste2 e teste3
Exercício 06
1)
2)
3)
4)
Volte para o diretório Desktop
Gere um arquivo .tar chamado teste com o conteúdo da pasta aula.
Apague a pasta aula
Extraía o conteúdo do arquivo tar que você gerou.
Exercício 07
1) Entre novamente na pasta que vc. acabou de extrair do arquivo .tar
2) Gere um arquivo chamado TUDO.TXT com a junção de todos os arquivos de texto que
estão neste diretório. (Utilize o comando cat, consulte o manual para saber como ele
funciona).
3) Compacte este novo arquivo com o Gzip (Novamente consulte o manual para saber como
ele funciona).
4) Apague este arquivo.
5) Faça tudo de novo com apenas uma linha de comando (concatenar e compactar).
sugestão de citação para este documento:
pg. 38 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Exercício 08
1) Descubra o nome da calculadora (qual o nome do processo).
2) Crie um ícone no seu Desktop (Gnome) para chamar a calculadora (utilize uma imagem de
calculadora no ícone).
3) Teste para ver se funcionou
Exercício 09
Após a listagem de um arquivo com o comando ls –al obteve as informações abaixo.
Explique o que cada uma das dez linhas significa (o maior número de informações por linha) em
um arquivo chamado respostas.txt (que você deverá criar com o terminal em um diretório ALUNO
dentro do diretório Desktop).
-rw-r--r--
1 rbns rbns
309 2007-11-28 19:24 credicard
-rw-r--r--
1 rbns rbns
309 2007-11-28 19:24 credicard~
lrwxrwxrwx
1 rbns rbns
18 2007-11-04 22:10 Desktop -> Área de Trabalho/
lrwxrwxrwx
1 rbns rbns
26 2007-11-04 19:41 Examples -> /usr/share/example
drwxr-xr-x
2 rbns rbns
drwx------
20 rbns rbns
294912 2008-04-21 18:58 .Trash
drwxr-xr-x
4 rbns rbns
4096 2008-04-10 20:03 Vídeos
-rw-------
1 root root
drwxr-xr-x
2 rbns rbns
4096 2007-11-04 19:51 Público
122 2008-03-20 08:30 .Xauthority
4096 2008-01-30 11:56 .xine
-rw-r--r-1 rbns
19:31 .xsession-errors
rbns
42808
2008-04-21
Exercício 09
Crie um arquivo (sempre usando apenas o Terminal) chamado resultados.txt dentro do
diretório home/ASTI com os dados do ls -al do diretório / (barra ou root)
Exercício 10
Crie um arquivo (usando o Terminal) chamado resultados2.doc dentro do diretório Alunos
com os dados do ls -l do diretório /etc
Exercício 11
Execute o comando pwd e veja o que ele faz. Explique o que você observou em um
arquivo chamado pwd.txt dentro do diretório home/ASTI
sugestão de citação para este documento:
pg. 39 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Exercício 12
Crie no Desktop e copie um arquivo rascunho.txt para o diretório SeuNome utilizando o
cp. Terminada esta operação renomeie o arquivo para finalizado.txt
Exercício 13
Atribua permissões de leitura para outros; escrita e leitura para grupo e permissão total para usuário
no arquivo finalizado.txt
Responda dentro do arquivo finalizado.txt (utilizando o Terminal): Qual é o número que
representa esta permissão?
Exercício 14
Crie a seguinte árvore de diretórios abaixo de SEU diretório home:
Pessoal/FATEC Trabalho/ASTI/Linux/Ubuntu
/Connectiva
/ADSTI/Fabio
/MAgali
/JT/Vera
Exercício 15
Crie o arquivo aulaLinux2.txt dentro do diretório Linux contendo o texto: A estrutura do
Linux é dividida em Shell, Kernel e Ferramentas e aplicativos. Concatene o arquivo auladeLinux2
com o arquivo finalizado.txt gerando o arquivo AulasdeLinuxConcat.html
Exercício 16
O que realiza o comando abaixo?:
$ ls-la > listagem2.txt
(continua na próxima página...)
sugestão de citação para este documento:
pg. 40 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Exercício 17
Supondo que os detalhes dos arquivos pertencentes a um determinado diretório sejam
estes:
drwxr-xr-x 5
root
root
4096 2008-02-25 19:12 .
drwxr-xr-x 21 root
root
4096 2007-11-04 19:48 ..
drwxr-xr-x 30 ana
ana
4096 2008-04-18 00:08 ana
drwxr-xr-x 82 rbns
rbns
4096 2008-04-21 19:03 rbns
drwxr-xr-x 23 victor
victor
4096 2008-02-25 22:22 victor
-rwxrw-r-- 1
Ana
Financ
1565 2008-02-25 15:24 Controle
drwxr-x--- 2
Carlos
staff
1045 2008-02-18 09:55 pgms
-rwxrw-r-- 2
João
Financ
41 2008-02-15 08:05 mbox
drwxrwxr-x 1
Rui
Contab
2589 2008-02-09 18:21 teste1
-rwxr-xr-x 1
Rui
Contab
1563 2007-11-05 16:26 exemplo
drwx------ 1
Claudia pessoal 2048 2007-11-09 18:22 teste2
drwxr-xr-- 5
Herman
-rwxr--r-- 1
Paulo
Contab
4906 2007-11-08 10:45 Faturamento
contab
2469 2007-11-06 15:24 Linux
Informe (dentro de um arquivo chamado respostas.txt, criado por você) :
1. Quais os nomes dos diretórios contidos nessa relação? Qual o nome do arquivos
contidos nesta relação?
2. Existe algum usuário do mesmo grupo de Herman? Caso positivo, qual?
3. Há um arquivo Controle? Qual o tamanho do arquivo Controle?
4. Quais as permissões de acesso que os usuários do mesmo grupo de João possuem para
acessar o arquivo Controle?
5. Se eu sou do grupo do usuário Herman, que permissões tenho com relação ao arquivo
exemplo?
6. Digite o comando completo para permitir que os usuários do mesmo grupo de Rui
possam ler e gravar, mas não possam executar o arquivo Linux
7. Qual o código octal para a permissão de acesso do arquivo exemplo.
sugestão de citação para este documento:
pg. 41 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Conhecendo Novos Comandos
Comando
Descrição
cal
time <comando>
touch -c -t 0304050607 <arquivo>
du -sh file dir
pstree -hlp
cp -Rp dir1 dir2
df -h
mostra um calendário do mês corrente, utilizando o
parâmetro -3 será exibido um trimestre.
ver quanto tempo dura a execução do comando
seta o timestamp do arquivo (YYMMDDhhmm) / o
comando touch sozinho também serve para criar
um ou vários arquivos.
mostra a utilização em disco do arquivo e diretório
mostra hierarquia de processos
cópia a árvore de diretório dir1 para dir2,
preservando as permissões, ownership e timestamp
mostra utilização de filesystems com valores
formatados em K, M, G,...
Navegação nos Diretórios
cd cd ..
cd
cd <diretório> && <comando>
volta para o diretório anterior
vai para o diretório superior na hierarquia
vai para o diretório home
vai para o diretório, executa o comando e retorna
para o diretório corrente automaticamente
File Searching (Busca e Listagem de Arquivos)
ls -rt
ls -rS
which <comando>
whereis <comando>
lista arquivos classificados por timestamp
lista arquivos classificados pelo tamanho
mostra o caminho completo do comando
localiza binários, fonte, e arquivos de página do
manual (man page) do comando passado como
parâmetro.
Comandos Avançados (e Coringas)
mostra os comandos pertinentes a um termo de
busca
echo '(321-123)/123' | bc -l
calculadora na linha de comando
calculadora na linha de comando (com notação
echo 'print (10E3-123)/123' | python
científica)
time command
ver quanto tempo dura a execução do comando
mkisofs -r dir | gzip > cdrom.iso.gz cria uma image iso (cdrom) do diretório
mount -o loop -t iso9660
monta uma imagem ISO no diretório /mnt/image
imagem.iso /mnt/image
apropos <termo>
sugestão de citação para este documento:
pg. 42 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
BIBLIOGRAFIA
livros mais usados
●
MAZIERO, Carlos Alberto. Sistemas Operacionais I - Conceitos Básicos. PGIA CCET
PUCPR. Disponível em: <http://www.ppgia.pucpr.br/~maziero/doku.php?
id=so:livro_de_sistemas_operacionais> Arquivo: so-cap01.pdf. Acesso em: 21/04/2008.
●
HUDSON, Andrew; HUDSON, Paul. Ubuntu Unleashed, Second Edition. Sams, 2007.
ISBN-10: 0-672-32951-4
●
BANDEL, David; NAPIER, Robert. Special Edition Using Linux®, Sixth Edition. Que,
2000. ISBN-10: 0-7897-2543-6.
●
GRANNEMAN , Scott. Linux: Phrasebook. Sams, 2006. ISBN-10: 0-672-32838-0
livros consultados
●
ADELSTEIN, Tom; LUBANOVIC, Bill. Linux System Administration. O'Reilly, 2007.
ISBN-10: 0-596-00952-6
●
CHILDERS, Bill; OXER, Jonathan; RANKIN, Kyle. Ubuntu Hacks. O'Reilly, ISBN-10:
0-596-52720-9
●
DALHEIMER, Matthias Kalle; WELSH, Matt. Running Linux, 5th Edition. O'Reilly,
2005. ISBN-10: 0-596-00760-4
●
ECKERT, Jason W.; SCHITKA, M. John. Linux+ 2005 In Depth. Course Technology,
2005. ISBN: 1-59200-728-7
●
EILERT, John; EISENHAENDLER, Maria; MATTHAEUS, Dorothea; SALM, Ingolf.
Linux on the Mainframe. Prentice Hall, 2003. ISBN-10: 0-13-101415-3
●
HAGEN, William von. Ubuntu Linux Bible. John Wiley & Sons, 2007. ISBN-10:
0-470-03899-3
●
HILL, Benjamin Mako; BACON, Jono; BURGER, Corey; JESSE, Jonathan; KRSTIC,
Ivan. The Official Ubuntu Book. Prentice Hall,2006. ISBN-10: 0-13-243594-2
sugestão de citação para este documento:
pg. 43 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.
MAD (Material de Apoio Didático) arquivo: MAD_v2.0.odt
Copyright (exceto onde indicado) Prof. Rbns (FATEC-CP)
impresso em: 21/04/2008 - 17:28:19
http://www.rbns.com.br
Atribuição-Uso Não-Comercial-Compartilhamento pela mesma
licença 2.5 Brasil
Atribuição-Uso Não-Comercial-Compartilhamento pela mesma licença 2.5 Brasil
Você pode:
•
•
copiar, distribuir, exibir e executar a obra
criar obras derivadas
Sob as seguintes condições:
Atribuição. Você deve dar crédito ao autor original, da
forma especificada pelo autor ou licenciante.
Uso Não-Comercial. Você não pode utilizar esta obra
com finalidades comerciais.
Compartilhamento pela mesma Licença. Se você
alterar, transformar, ou criar outra obra com base nesta,
você somente poderá distribuir a obra resultante sob uma
licença idêntica a esta.
•
•
Para cada novo uso ou distribuição, você deve deixar claro para outros os
termos da licença desta obra.
Qualquer uma destas condições podem ser renunciadas, desde que você
obtenha permissão do autor.
Qualquer direito de uso legítimo (ou "fair use") concedido por lei, ou
qualquer outro direito protegido pela legislação local, não são em
hipótese alguma afetados pelo disposto acima.
Este é um sumário para leigos da Licença Jurídica (na íntegra):
[http://creativecommons.org/licenses/by-nc-sa/2.5/br/legalcode].
Termo de exoneração de responsabilidade:
[http://creativecommons.org/licenses/disclaimer-popup?lang=pt-br].
sugestão de citação para este documento:
pg. 44 de 44
SOUZA FILHO, Rubens A Menezes de. Material de Apoio Didático. Disponível em:
<http://www.rbns.com.br/downloads_fatec.html> Arquivo: MAD_v2.0.pdf.

Documentos relacionados