Tópicos para a disciplina - GSO Gestão de Sistemas Operacionais

Propaganda
CEETEPS – CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA
Tópicos para a disciplina - GSO
Gestão de Sistemas Operacionais
Monte Alto – Fevereiro/2010
CEETEPS – CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA
Tópicos para a disciplina - GSO
Gestão de Sistemas Operacionais
Informações sobre este material
Professor:
Curso:
Disciplina:
Período:
Semestre/Ano:
Datas:
Nº de páginas:
Marcio Roberto Gonçalves de Vazzi
Técnico em Informática
GSO – Gestão de Sistemas Operacionais
1º, 2º e 3º Módulos
01/2010
Criação: Agosto de 2007 - Tempo de edição 11:15:47 - Última alteração 22/02/2010
126
Versão: 1.1.80
Sumário
1 Capítulo 1 – Sistemas Operacionais..............................................................................................6
1.1 Introdução......................................................................................................................................6
1.2 Tipos de Sistema Operacional.......................................................................................................7
1.3 Windows........................................................................................................................................8
1.3.1 Significado do nome...................................................................................................................8
1.3.2 Origem e História.......................................................................................................................8
1.3.3 Windows 1.01.............................................................................................................................9
1.3.4 Windows 2.03.............................................................................................................................9
1.3.5 Windows 2.1...............................................................................................................................9
1.3.6 Windows 3.x.............................................................................................................................10
1.3.7 Windows 95..............................................................................................................................11
1.3.8 Windows NT.............................................................................................................................11
1.3.9 Windows 98..............................................................................................................................13
1.3.10 Windows ME..........................................................................................................................13
1.3.11 Windows 2000........................................................................................................................14
1.3.12 Windows XP...........................................................................................................................14
1.3.13 Windows Server 2003.............................................................................................................15
1.3.14 Windows Vista........................................................................................................................15
1.3.15 Outras versões........................................................................................................................16
1.3.16 Características Técnicas.........................................................................................................17
1.4 MacOS.........................................................................................................................................17
1.5 Solaris..........................................................................................................................................18
1.6 FreeBSD......................................................................................................................................19
1.6.1 Características...........................................................................................................................19
1.6.2 Compatibilidade binária com Linux.........................................................................................19
1.6.3 Mascote e Lema........................................................................................................................20
1.6.4 História e desenvolvimento do FreeBSD.................................................................................20
1.7 UNIX...........................................................................................................................................21
1.7.1 Particularidades........................................................................................................................21
1.8 Linux............................................................................................................................................22
1.8.1 A História do Sistema Operacional LINUX.............................................................................22
1.9 Principais Comandos do DOS.....................................................................................................22
1.10 Criando arquivos de lote............................................................................................................25
1.11 Exercícios de Fixação................................................................................................................27
2 Capítulo 2 – Distribuições Linux.................................................................................................28
2.1 Debian..........................................................................................................................................29
2.2 Mandriva......................................................................................................................................29
2.3 Open Suse....................................................................................................................................30
2.4 Ubuntu.........................................................................................................................................31
2.5 Slackware....................................................................................................................................31
2.6 Fedora..........................................................................................................................................32
2.7 Distribuições Brasileiras..............................................................................................................32
2.8 Time Line.....................................................................................................................................33
2.9 Ambientes de Trabalho/Interface Gráfica (Desktop)...................................................................34
2.9.1 KDE..........................................................................................................................................34
2.9.1.1 Principais características do KDE.........................................................................................34
2.9.1.2 Benefícios do KDE................................................................................................................35
2.9.1.3 Deficiências do KDE.............................................................................................................36
2.9.1.4 Configurações de hardware suportadas.................................................................................37
2.9.1.5 Comparação com a GUI do Windows...................................................................................37
2.9.2 Gnome......................................................................................................................................38
2.9.2.1 Metas.....................................................................................................................................38
2.9.2.2 Origem...................................................................................................................................38
2.9.2.3 Liberdade...............................................................................................................................39
2.9.3 X Window System ou simplesmente X....................................................................................39
2.10 Exercícios de Fixação................................................................................................................41
3 Capítulo 3 – Principais Comandos em Linux............................................................................42
3.1 Comandos de manipulação de diretório......................................................................................42
3.1.1 mkdir.........................................................................................................................................42
3.1.2 rmdir.........................................................................................................................................42
3.1.3 rm -rf.........................................................................................................................................42
3.1.4 cd..............................................................................................................................................43
3.1.5 pwd, ls, df, du e whereis...........................................................................................................43
3.2 Comandos para manipulação de arquivos...................................................................................44
3.2.1 cat, tac, vi, vim, rm, cp, mv, chmod, chown, > e >>................................................................44
3.3 Comandos para administração.....................................................................................................45
3.3.1 Man, du, find, whoami, ps, kill, su, chown..............................................................................45
3.3.2 adduser......................................................................................................................................45
3.3.3 addgroup...................................................................................................................................47
3.3.4 sg...............................................................................................................................................48
3.3.5 userdel.......................................................................................................................................49
3.3.6 Groupdel...................................................................................................................................49
3.3.7 passwd......................................................................................................................................50
3.3.8 users..........................................................................................................................................51
3.3.9 groups.......................................................................................................................................51
3.3.10 Who........................................................................................................................................51
3.4 Comandos para administração de rede........................................................................................52
3.5 Exercícios de Fixação..................................................................................................................53
3.6 Permissões de acesso a arquivos e diretórios..............................................................................54
3.6.1 Donos, grupos e outros usuários...............................................................................................54
3.6.2 Tipos de Permissões de acesso.................................................................................................55
3.6.3 Etapas para acesso a um arquivo/diretório...............................................................................56
3.6.4 Exemplos práticos de permissões de acesso.............................................................................57
3.6.4.1 Exemplo de acesso a um arquivo..........................................................................................57
3.6.4.2 Criando LINKS.....................................................................................................................59
3.6.4.3 Exemplo de acesso a um diretório.........................................................................................59
3.7 Permissões de Acesso Especiais..................................................................................................61
3.8 A conta root..................................................................................................................................62
3.9 chmod..........................................................................................................................................63
3.10 chgrp..........................................................................................................................................65
3.11 chown.........................................................................................................................................65
3.12 Modo de permissão octal...........................................................................................................66
3.13 umask.........................................................................................................................................68
3.14 Outros comandos importantes...................................................................................................71
3.14.1 ps.............................................................................................................................................71
3.14.2 Kill..........................................................................................................................................71
3.14.3 top...........................................................................................................................................71
3.14.4 df e du.....................................................................................................................................72
3.15 Exercícios de Fixação................................................................................................................73
3.16 Montando Dispositivos..............................................................................................................74
3.16.1 O que são dispositivos?..........................................................................................................74
3.16.2 Montando os dispositivos.......................................................................................................75
3.17 Exercícios de Fixação................................................................................................................79
3.18 Compactando arquivos..............................................................................................................80
3.18.1 Compressão de arquivos.........................................................................................................80
3.19 Estrutura de diretórios...............................................................................................................82
3.20 Exercícios de Fixação................................................................................................................84
4 Capítulo 4 – Gestão de T.I............................................................................................................85
4.1 Projetando redes de computadores e sistemas de informação.....................................................85
4.2 TCO.............................................................................................................................................86
4.3 ROI - Return On Investment......................................................................................................87
4.3.1 O que é......................................................................................................................................87
4.3.2 Definições.................................................................................................................................87
4.3.3 Conceitos..................................................................................................................................88
4.3.4 Categorias de ROI....................................................................................................................89
4.3.5 Calculando o ROI.....................................................................................................................89
4.3.6 Quanto custa.............................................................................................................................90
4.4 Conclusão....................................................................................................................................90
4.5 Licença de software.....................................................................................................................90
4.6 Exercícios de Fixação..................................................................................................................92
5 Capítulo 5 – Servidores................................................................................................................93
5.1 SAMBA......................................................................................................................................93
5.1.1 Implementação.........................................................................................................................93
5.1.2 Configuração do Servidor.........................................................................................................94
5.1.3 Criando usuários no SAMBA:..................................................................................................96
5.1.4 smb.conf comentado.................................................................................................................96
5.2 Apache.........................................................................................................................................99
5.2.1 O httpd.conf............................................................................................................................101
5.3 Squid..........................................................................................................................................104
5.3.1 Squid.conf...............................................................................................................................105
5.4 Exercícios de Fixação................................................................................................................110
6 Capítulo 6 – Acesso Remoto e Firewall.....................................................................................111
6.1 SSH............................................................................................................................................111
6.2 VNC...........................................................................................................................................111
6.3 Vino e Vinagre (Gnome)............................................................................................................111
6.4 Firewall – NetFilter/IPTABLES................................................................................................112
6.4.1 Configurando..........................................................................................................................113
6.5 Exercícios de fixação.................................................................................................................115
7 Capítulo 7 - Extras......................................................................................................................116
7.1 linuxconf....................................................................................................................................116
7.2 Interface do Linuxconf..............................................................................................................116
7.3 Arquivos de configuração..........................................................................................................118
7.3.1 /etc/resolv.conf........................................................................................................................118
7.3.2 /etc/hosts.................................................................................................................................118
7.4 Comando “sudo”........................................................................................................................119
7.5 Crontab e at................................................................................................................................120
7.5.1 Crontab...................................................................................................................................120
7.5.2 at.............................................................................................................................................122
7.6 Exercícios de Fixação................................................................................................................124
8 Exercícios Gerais........................................................................................................................125
Tópicos para a disciplina GSO
6
1 Capítulo 1 – Sistemas Operacionais
1.1 Introdução
Um sistema operativo (português europeu) ou sistema operacional (português brasileiro) é um
programa ou um conjunto de programas cuja função é servir de interface entre um computador e o
usuário.
O sistema operacional (SO) é a primeira coisa que o computador carrega. Sem um sistema desse
tipo, o computador se torna inútil.
Segundo alguns autores (Silberschatz et al, 2005; Stallings, 2004; Tanenbaum, 1999), existem dois
modos distintos de conceituar um sistema operacional:
• pela perspectiva do usuário ou programador (visão top-down): é uma abstração do hardware,
fazendo o papel de intermediário entre o aplicativo (programa) e os componentes físicos do
computador (hardware); ou
• numa visão bottom-up, de baixo para cima: é um gerenciador de recursos, controla quais
aplicações (processos) podem ser executadas, quando, que recursos (memória, disco,
periféricos) podem ser utilizados.
Programadores,
Analistas e
Usuários
Usuários
Programas,
Sistemas e
Aplicativos
Sistema
Operacional
Discos
Hardware
Terminais
Periféricos
Impressoras
Memória
Processador
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
7
1.2 Tipos de Sistema Operacional
Existem 4 tipos básicos de sistemas operacionais. Eles são divididos em grupos relacionados com o
tipo de computador que controlam e o tipo de aplicativos que suportam. Estas são as categorias
mais abrangentes:
•
•
•
•
sistema operacional de tempo real (RTOS - Real-time operating system). É utilizado para
controlar máquinas, instrumentos científicos e sistemas industriais. Geralmente um RTOS
não tem uma interface para o usuário muito simples e não é destinado para o usuário final,
desde que o sistema é entregue como uma "caixa selada". A função do RTOS é gerenciar os
recursos do computador para que uma operação específica seja sempre executada durante
um mesmo período de tempo. Numa máquina complexa, se uma parte se move mais
rapidamente só porque existem recursos de sistema disponíveis, isto pode ser tão
catastrófico quanto se uma parte não conseguisse se mover porque o sistema está ocupado.
monousuário, monotarefa. O sistema operacional foi criado para que um único usuário
possa fazer uma coisa por vez. O Palm OS dos computadores Palm é um bom exemplo de
um moderno sistema operacional monousuário e monotarefa.
monousuário, multitarefa. Este tipo de sistema operacional é o mais utilizado em
computadores de mesa e laptops. As plataformas Microsoft Windows e Apple MacOS são
exemplos de sistemas operacionais que permitem que um único usuário utilize diversos
programas ao mesmo tempo. Por exemplo, é perfeitamente possível para um usuário de
Windows escrever uma nota em um processador de texto ao mesmo tempo em que faz
download de um arquivo da Internet e imprime um e-mail.
multiusuário. Um sistema operacional multiusuário permite que diversos usuários utilizem
simultaneamente os recursos do computador. O sistema operacional deve se certificar de que
as solicitações de vários usuários estejam balanceadas. Cada um dos programas utilizados
deve dispor de recursos suficientes e separados, de forma que o problema de um usuário não
afete toda a comunidade de usuários. Unix, VMS e sistemas operacionais mainframe como o
MVS são exemplos de sistemas operacionais multiusuário.
Os módulos típicos em um grande SO multiusuário geralmente são:
• Núcleo (Kernel em inglês - também conhecido como " executivo")
• Gerenciador de processo
• Escalonador (Scheduler, em inglês)
• Gerenciador de arquivo
É importante diferenciar os sistemas operacionais multiusuário dos sistemas operacionais
monousuário que suportam rede. O Windows Server e o Novell Open Enterprise Server podem
suportar centenas ou milhares de usuários em rede, mas os sistemas operacionais em si não são
sistemas multiusuário de verdade. O administrador do sistema é o único "usuário" do Windows
Server ou do Novell Open Enterprise Server. O suporte à rede e todos os usuários remotos são, do
ponto de vista do sistema operacional, um programa sendo executado pelo administrador.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
8
1.3 Windows
Fonte: Richard Batista Silveira (Material garimpado na Internet)
1.3.1
Significado do nome
A palavra windows em inglês significa janelas. A sua interface é baseada num padrão de janelas que
exibem informações e recebem respostas dos utilizadores através de um teclado ou de cliques do mouse.
Este padrão de interface não foi, no entanto, criado pela Microsoft, como veremos adiante.
O registro da marca Windows foi legalmente complicado, pelo fato de essa palavra ser de uso
corrente em inglês.
Podemos dizer que um computador não possui nenhuma utilidade prática sem pelo menos um
sistema operacional instalado. Resumidamente, ele é responsável pelo funcionamento do
computador, controle dos periféricos, execução de aplicativos, gerência de memória, rede, etc. Mais
detalhes podem ser vistos no artigo específico de sistemas operacionais.
1.3.2
Origem e História
A Microsoft começou o desenvolvimento de um Gerenciador de Interface
(subseqüente renomeado Microsoft Windows) em setembro de 1981. O Windows só
começa a ser tecnicamente considerado como um SO a partir da versão Windows
NT, lançada em Agosto de 1993. O que havia antes eram sistemas gráficos sendo
executados sobre alguma versão dos sistemas compatíveis com DOS, como MSDOS, PC-DOS ou DR-DOS. Somente o MSDOS era produzido pela própria
Microsoft.
O MS-DOS é um sistema operativo que não dispõe de
interface gráfica, funciona através de comandos de texto
introduzidos no teclado pelo utilizador. O Windows surgiu
inicialmente como uma interface gráfica para MS-DOS, que
permitia correr programas em modo gráfico, o que permitiu a
utilização do mouse, que até à altura era considerado
supérfluo em computadores de tipo IBM-PC.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
1.3.3
9
Windows 1.01
Windows 1.01 era uma interface gráfica bidimensional para o MSDOS e foi lançado em 20 de Novembro de 1985. Era necessário o
MS-DOS 2.0, 256 KB RAM e um disco rígido. Naquela altura, o
MS-DOS só consegue suportar 1 MB de aplicações. Era uma
primeira tentativa de criar um sistema multitarefa. Nessa época,
instalado em computadores XTs que tinham apenas 512Kb de
memória, ocupava praticamente toda a memória disponível. O
Windows 1.01 não foi nenhum grande sucesso comparado com seus
sucessores da década de 1990, devido à limitação do hardware da época.
Inicialmente, ele foi lançado em quatro disquetes de 5.25 polegadas de 360 KB cada um. Continha o
Reversi (jogo), um calendário, bloco de notas, calculadora, relógio, command prompt , Write, Control
Panel, Paint e programas de comunicação. Permite a utilização de mouse, janelas e ícones. Nesta versão
ainda não havia sobreposição de janelas.
1.3.4
Windows 2.03
O Windows 2.03 foi lançado em 1 de Novembro de 1987 e
praticamente tem a mesma interface do Windows 1.01, com a
diferença de apresentar mais recursos, ferramentas e maior
paleta de cores, embora os computadores daquela época eram
ainda muito lentos quando estes utilizavam uma interface
gráfica de boa qualidade.
Permite a sobreposição de janelas e estas podem maximizar e
minimizar. Era apresentado em oito disquetes de alta densidade
de 5,25" de 360 KB cada um.
1.3.5
Windows 2.1
Em 27 de Maio de 1988, foi lançado o Windows 2.1, que era
apresentado em sete disquetes de dupla densidade de 3,5" de 720 KB
cada um, e era nada mais do que o Windows 2.03 reformulado.
Existem duas versões especiais do Windows 2.1:
Windows 2.1/286 foi lançada para aproveitar todos os recursos dos
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
10
microprocessadores 286;
Windows 2.1/386 foi lançada para aproveitar todo o potencial dos microprocessadores 386.
Existe uma outra versão da família Windows 2.xx, o Windows 2.11, que foi lançada em Março de 1989,
com pequenas mudanças em gerenciamento de memória, melhor impressão e drivers Postscript.
1.3.6
Windows 3.x
O Windows 3.0 foi o primeiro sucesso amplo da Microsoft e foi lançado em 22 de Maio de 1990.
Ao contrário das versões anteriores, ele era um Windows
completamente novo.
Tecnicamente, esta versão é considerada o primeiro sistema
gráfico da empresa. Era um sistema gráfico de 16 bits, mas
ainda precisava ativar primeiro o MS-DOS para ativar o
Windows.
Substituiu o MS-DOS Executive pelo Gerenciador de
Programas e o Gerenciador de Arquivos que simplificavam as
aplicações e tornava o sistema mais prático. Melhorou bastante
a interface, o gerenciamento de memória e o sistema
multitarefa. Conseguiu ultrapassar o limite de 1 MB do
MSDOS e permitiu a utilização máxima de 16 MB de aplicações.
Naquela época era o único possível de compatibilizar todos os programas das versões anteriores.
Utilizava o CPU Intel 80286 e Intel 80386. Também existe a versão 3.0a, que foi lançada em 31 de
Outubro de 1990.
Pode ter sido responsável pela saída do mercado de empresas como Novell e Lantastic, que
dominavam como fornecedoras de NOSes (sistemas operacionais para redes) em plataformas
cliente-servidor e ponto a ponto, respectivamente.
Existem cinco versões especiais do Windows 3.0:
Windows with Multimedia Extensions - foi lançada por vários fabricantes de periféricos multimídia, por
isso ela não tem uma certa data de lançamento. Tinha recursos multimídia (semelhantes aos do Windows
3.1) e era um pouco mais estável.
•
•
•
•
Windows 3.1 - foi lançada em 6 de Abril de 1992 e tinha softwares para multimédia e fontes
TrueType (aumenta muito o número de tipos de letras disponíveis) e era mais estável do que
o Windows 3.0. Ele era apresentado em oito disquetes de alta densidade de 3,5" de 1,44 MB
cada um. Nesta versão permitiu o uso de um maior número de línguas de trabalho, incluindo
o Cirílico e o Japonês. O Minesweeper substituiu o Reversi.
Windows for Workgroups 3.1 - foi lançada 28 de Outubro de 1992, e era praticamente o
Windows 3.1 com suporte a rede, fax-modem e correio eletrônico. Ele era apresentado em
nove disquetes de alta densidade de 3,5" de 1,44 MB cada um.
Windows for Workgroups 3.11 - foi lançada 8 de Novembro de 1993 e era praticamente a
revisão da versão anterior.
Windows for Pen Computing - foi lançada em Abril de 1994 e tinha todos os recursos do
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
•
1.3.7
11
Windows for Workgroups 3.11 mais o suporte a canetas para PCs.
Windows 3.2 - nesta versão limitou-se em acrescentar o Chinês como uma língua de
trabalho.
Windows 95
É o primeiro S.O. de 32 bits e foi lançada em 24 de Agosto de 1995. Ele
era um Windows completamente novo, e de nada lembra os Windows da
família 3.xx. O salto do Windows 3.0 ao Windows 95 era muito grande e
ocorreu uma mudança radical na forma da apresentação do interface.
Introduziu o Menu Iniciar e a Barra de Tarefas. Nesta versão, o MS-DOS
perdeu parte da sua importância visto que o Windows já consegue activarse sem precisar da dependência prévia do MS-DOS. As limitações de
memória oferecidas ainda pelo Windows 3.0 foram praticamente eliminadas nesta versão. O sistema
multitarefa tornou-se mais eficaz. Utilizava o sistema de ficheiros FAT-16 (VFAT). Os ficheiros
(arquivos) puderam a partir de então ter 255 caracteres de nome
(mais uma extensão de três caracteres que indica o programa que
abre o arquivo).
Existe uma outra versão do Windows 95, lançada no início de
1996, chamada de Windows 95 OEM Service Release 2 (OSR 2),
com suporte nativo ao sistema de arquivos FAT32. Já o Windows
95, a partir da revisão OSR 2.1, incluía o suporte nativo ao
Barramento Serial Universal (USB).
1.3.8
Windows NT
O Windows NT foi lançado pela primeira vez pela Microsoft em
1993 com o objectivo principal de fornecer mais segurança e
comodidade aos utilizadores de empresas e lojas (meio corporativo),
pois as versões do Windows disponíveis até então não eram
suficientemente estáveis e confiáveis. Foi um sistema operativo de
32 bits, multitarefa e multiutilizador. A sigla NT significa New
Technology (nova tecnologia em inglês).
Trazia a funcionalidade de trabalhar como um servidor de arquivos. Os NTs têm uma grande
estabilidade e têm a vantagem de não ter o MSDOS.
A arquitectura desta versão é fortemente baseada no microkernel. Assim, em teoria, pode-se
remover, actualizar ou substituir qualquer módulo sem a necessidade de alterar o resto do sistema.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
12
Foi criado com base no sistema operacional OS/2 da IBM - que havia deixado de ser
comercializado e não representava mais um competidor no mercado, VMS e Lan Manager. Ele não
era muito popularizado até ao aparecimento do Windows 2000 (NT 5.0). O Windows NT aceita dois
tipos de sistemas de arquivos:
FAT (Windows NT 3.xx e Windows NT 4.0);
NTFS (Windows NT 4.0, Windows 2000, Windows XP e Windows 2003).
Existem edições especiais:
NT 3.1 era muito semelhante ao Windows 3.1. Foi lançado em
1993. Pode ser utilizado no Intel x86, DEC Alpha e MIPS CPUs.
NT 3.5 foi lançado em 1994 e era semelhante ao NT 3.1. NT 3.51
foi lançado em 1995 e tinha uma interface semelhante ao Windows
3.1 e trouxe algumas inovações nas áreas de gestão e distribuição de
energia, podia executar um grande número de aplicações Win 32 do
Windows 95. Mas foi rapidamente ultrapassado porque não oferecia
bons serviços de Internet.
NT 4.0 foi lançado em 1996 tinha uma interface semelhante ao Windows 95 e era mais estável mas
menos flexível do que o Windows 95. Introduziu o Web Server, o Microsoft FrontPage, softwares
de criação e gestão de web sites, o Microsoft Transaction Server e o Microsoft Message Queuing (o
MSMQ melhora a comunicação).
NT 5.0 só foi produzido em versão Beta e posteriormente foi mudado para Windows 2000. Tinha
uma interface semelhante ao Windows 98.
Este Windows permaneceu sem popularidade até o fim da era 9x/ME, quando lançaram o Windows
2000. Nesta edição também foi implementada a idéia de Serviços (ou Processos), no qual o sistema
operacional trabalha a partir de serviços, tendo assim menores chances de travar, pois era possível
reinicializar apenas um serviço ao invés da máquina por inteiro.
Estas versões do Windows aceitam quatro tipos de sistemas de arquivos:
FAT 12 e 16 - Windows 1.0x, Windows 2.xx, Windows 3.xx, Windows 95, Windows 98, Windows
ME, Windows NT 3.xx e Windows NT 4.0;
FAT 32 - Windows NT 3.51 (com o PowerPack), Windows 95 OSR 2.x, Windows 98, Windows
2000, Windows XP e Windows Server 2003;
NTFS - Windows NT 3.xx, Windows NT 4.0, Windows 2000, Windows XP, Windows Server 2003 e
o Windows Vista(atualmente).
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
1.3.9
13
Windows 98
Esta versão foi lançada em 25 de Junho de 1998. Foram corrigidas
muitas das falhas do seu antecessor. A maior novidade desta versão
era a completa integração do S.O. com a Internet. Utilizava o
Internet Explorer 4.
Introduziu o sistema de arquivos FAT 32 e começou a introduzir o
teletrabalho (só foi possível devido à integração do Web). Melhorou
bastante a interface gráfica. Incluiu o suporte a muitos monitores e
ao USB (Universal Serial Bus). Mas, por ser maior do que o Windows 95 e possuir mais funções,
era também mais lento e mais instável. Nessa versão, nasce a restauração de sistema via MS-DOS
(Scanreg.exe /restore). A restauração de sistema visava corrigir problemas retornando o computador
a um estado anteriormente acessado (ontem, antes de ontem, etc).
Existe uma versão especial, conhecida como Windows 98 Segunda Edição (Windows 98 SE). Foi
lançada em 1999 e esta versão visava corrigir as falhas (bugs) e resolver os problemas de
instabilidade do Windows 98. Incluía drivers e programas novos.
Substituiu o Internet Explorer 4 pela versão 5, que era mais rápida,
e introduziu a Internet Connection Sharing, que permite a partilha de
uma rede de internet para muitos computadores. Acrescentou
também o NetMeeting 3 e suporte a DVD. Muitos utilizadores
classificam este sistema como um dos melhores da Microsoft,
apesar de ser tratar de um sistema operacional sem suporte a
multitarefa real, e ainda tendo o DOS como o seu núcleo principal.
1.3.10
Windows ME
Foi lançado pela Microsoft em 14 de Setembro de 2000, sendo esta a última tentativa de
disponibilizar um sistema baseado, ainda, no antigo Windows 95. Essa versão trouxe algumas
inovações, como o suporte às máquinas fotográficas digitais, aos
jogos multi jogador na Internet e à criação de redes domésticas
(home networking). Introduziu o Movie Maker e o Windows Media
Player 7 (para competir com o Real Player) e atualizou alguns
programas. Possuía a Restauração de Sistema (um programa que
resolvia problemas e corrigia bugs).
Introduziu o Internet Explorer 5.5.
Algumas pessoas crêem que este foi
apenas uma terceira edição do Windows 98 e que foi apenas um produto
para dar resposta aos clientes que esperavam por uma nova versão.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
14
Muitas pessoas achavam-no defeituoso e instável, o que seria mais tarde comprovado pelo
abandono deste segmento em função da linha OS/2-NT4-2000-XP, criada originalmente pela IBM e
posteriormente adquirida pela Microsoft. Na mesma época, foi lançada uma nova versão do Mac
OS X e a Microsoft, com receio de perder clientes, lançou o Windows ME para que os fãs
aguardassem o lançamento do Windows XP.
1.3.11
Windows 2000
O lançamento desse Windows, em Fevereiro de 2000 (apesar do sistema estar datado 1999), que
também era chamado de Windows NT 5.0 na sua fase Beta, marcou
o começo da era NT (Nova Tecnologia) para usuários comuns.
Ainda com falhas de segurança, como, por exemplo, o
armazenamento de senhas em um arquivo próprio e visível, o que
facilitava a ação de hackers e invasores. Ainda não apresentava
muita semelhança com o XP no visual, que até então ainda era o
mesmo do ME. Trata-se de um sistema operacional bastante
estável, multiusuário e multitarefa real.
Nesta versão foi iniciada a criação e utilização de um novo sistema de gerenciamento, baseado em
LDAP, chamado pela Microsoft de Active Directory, o que trazia diversas funções, como suporte a
administração de usuários e grupos (como no NT 3.51 e 4.0) além das novas opções como
computadores, periféricos (impressoras, etc...) e OU´s (Organization Unit).
Versões: Professional, Server, Advanced Server, Datacenter Server e Small Business Server.
1.3.12
Windows XP
Lançada em 25 de Outubro de 2001 e é também conhecida como
Windows NT 5.1.
Roda em formatações FAT 32 ou NTFS. A sigla XP deriva da palavra
eXPeriência.
Uma das principais diferenças em relação às versões anteriores é
quanto à interface.
Trata-se da primeira mudança radical desde o lançamento do Windows 95. Baseada no antigo OS/2
da IBM, cujos direitos foram comprados pela Microsoft, e, seguindo a linha OS/2-NT-2000-XP, a
partir deste Windows, surgiu uma nova interface, abandonando o antigo formato 3D acinzentado.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
15
Nota-se uma melhoria em termos de velocidade em relação às versões anteriores, especialmente na
inicialização da máquina. O suporte a hardware também foi melhorado em relação às versões 9xMillenium, abandonada definitivamente.
Esta versão do Windows foi considerada como a melhor versão já lançada pela
Microsoft para usuários domésticos, possui uma interface totalmente simples a
inovadora. Um dos problemas é seu consumo, ele só pode ser instalado em
estações com mais de 128Mb de memória, e cada vez que a
Microsoft lança uma nova versão, é cada vez maior e mais abstraido do hardware.
Versões: Home, Professional, Tablet PC Edition, Media Center Edition, Embedded,
Starter Edition e 64-bit Edition
O nome de código desta versão, antes do lançamento era Whistler.
1.3.13
Windows Server 2003
Versão do Windows lançada em 24 de Abril de 2003, e é também conhecida
como Windows NT 5.2, e é o sucessor do Windows 2000 para o ambiente
corporativo. Novidades na área administrativa, Active Directory, e
automatização de operações. Esta versão do Windows é voltada principalmente
para servidores e empresas de grande porte, possui recursos de servidores na
ativa e garante a segurança de dados.
Versões: Web Edition, Standard Edition, Enterprise Edition, Data Center Edition e Small Business
Server (32 e 64 bits).
1.3.14
Windows Vista
Também conhecido como Windows NT 6.0, pelo nome de código Longhorn e pelo proprio nome
oficial Vista, é o mais novo S.O da Microsoft,e que terá seis versões, uma delas simplificada e
destinada aos países em desenvolvimento. O Windows Vista começou a ser vendido em 30 de
Janeiro de 2007. As seis edições diferentes do Windows Vista foram projetadas
para se ajustar ao modo como você pretende usar seu PC. Ele tem uma interface
intitulada Aero,com recursos de transparência,que não existe na Versão Starter e
um sistema de alternância 3D de janelas chamado Flip 3D, que é ativado pelo
atalho Logotipo do Windows + Tab.
A versão básica e popular do Windows Vista (Limitada):
Vista Starter Edition, destinado aos mercados emergentes e paises em desenvolvimento.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
16
São duas versões destinadas ao usuário doméstico:
Vista Home Basic
Vista Home Premium
As duas versões voltadas para o público corporativo são:
Vista Business Edition (projetado para atender às necessidades de empresas de todos os portes)
Vista Enterprise Edition (necessidades de grandes empresas globais)
A versão Ultimate é a edição mais abrangente do Windows Vista. Reúne todos os recursos de
infraestrutura avançados de um sistema operacional empresarial, todos os recursos de
gerenciamento e eficiência de um sistema operacional móvel, e todos os recursos de entretenimento
digital de um sistema operacional voltado ao consumidor
Vista Ultimate Edition
O Windows Vista Ultimate Edition é a versão do Windows Vista que mais requer recursos do
computador. Para que o desempenho seja razoável, a Microsoft recomenda um processador de 1Ghz
e 1GB de memória RAM.
1.3.15
Outras versões
Windows Server 2007
Nova versão do windows para ser lançada já com versão beta.
Windows Seven
Anteriormente com o codinome Vienna,esse será o sucessor do Windows Vista,onde se incluirão
alguns aplicativos que não se encontram no Vista. Previsto para o final de 2009.
Windows CE
Versão minimalista que equipa dispositivos com sistemas embarcados
automotivos,consolas de videojogos (Dreamcast), celulares, PDAs, robôs e Tvs.
como
rádios
Compatibilidade
Os primeiros Windows, como o 1.0, 2.0 e 3.x, só são compatíveis em partições formatadas com o
sistema de ficheiros FAT, ou como é chamado, FAT 16. No salto do 3.1 para o 95B (Windows 95
OSR 2/OSR 2.1), os HD's poderiam ser formatados em FAT 32. Inicialmente lançado com o
Windows NT, a tecnologia NTFS é agora o padrão de facto para esta classe. Com a convergência de
ambos sistemas, o Windows XP passou também a preferir este formato.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
1.3.16
17
Características Técnicas
A principal linguagem de programação usada para escrever o código-fonte das várias versões do
Windows é a linguagem C.
Até à versão 3.11, o sistema rodava em 16 bits (apesar de poder instalar um update chamado Win32s
para adicionar suporte a programas 32 bits), daí em diante, em 32 bits.
As últimas versões (como o XP, o 2003 Server e o Windows Vista (nome de código Longhorn) está
preparado para a tecnologia 64 bits. Esse sistema deveria incluir o sistema de arquivos WinFS, que
acabou retirado do Windows Vista.
1.4 MacOS
O Macintosh Operating System (Mac OS) é a
denominação do sistema operacional padrão dos
computadores Macintosh produzidos pela Apple.
Sua evolução ocorreu até a versão Mac OS X. A
primeira versão foi lançada em 1984. Até antes da
versão 7.6, era chamado apenas de System (ex.:
System 4, System 7), da versão 7.6 em diante
passou a ser chamado de Mac OS.
Foi o primeiro sistema gráfico amplamente usado
em computadores a usar ícones para representar os
itens do computador, como programas, pastas e
documentos. Também foi pioneiro na disseminação
do conceito de Desktop, com uma Área de Trabalho com ícones de documentos, pastas e uma
lixeira, em analogia ao ambiente de escritório.
De início as pastas eram criadas renomeando-se uma "Pasta Vazia" que estava sempre na raiz do
disco. A partir do System 2.0 o sistema foi modificado, com a inclusão do comando "Nova Pasta"
no menu Arquivo do Finder.
O lançamento do Mac OS X foi um marco para o sistema operacional. Em sua décima versão, o
sistema foi remodelado como um todo, inclusive o kernel, que passou a ser baseado no do Unix
BSD.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
18
1.5 Solaris
Para se falar da origem do SOLARIS, são
necessárias algumas referências aos sistemas UNIX,
uma vez que este serviram de base para o seu
desenvolvimento.
No final dos anos 60, Ken Thompson do Bell
laboratories, queria criar um sistema operacional
que suportasse e coordenasse os esforços de uma
equipe de programadores em um ambiente de
pesquisa. Dessa forma surge o sistema UNIX, cuja
primeira versão foi escrito em Assembler para o
PDP 7.
Em 1978, Dennis Ritchie produziu a sétima versão
do UNIX, que por ter sido reescrito em linguagem C, tornou possível transportá-lo de uma
arquitetura para outra sem muitas dificuldades, A partir desta data, o código fonte foi licenciado
para outros estabelecimentos comerciais e de pesquisas, passando a ocorrer o desenvolvimento de
versões distintas em paralelo.
Nos anos 80, o sistema tornou-se popular entre pesquisadores e usuários comerciais. Várias versões
foram desenvolvidas, entre elas o Xenix e o SCO-Unix da SCO. Com a fundação da Sun em 1982,
surgiu mais uma linha de desenvolvimento, o SunOS. Nessa época, viu-se a necessidade de unificar
as várias versões de sistemas UNIX existentes com a intenção de torná-lo realmente um sistema
aberto padrão.
Com o comprometimento de vários fabricantes em adotá-lo, foi desenvolvido um UNIX único,
conhecido como System V Release 4 (SVR4), aproveitando o que havia de melhor e cadê linha.
Já baseado nesse novo sistema, a Sun Microsystems lança o SunOS 5.x, e em 1992, surge a
primeira versão do SOLARIS, que era muito semelhante ao SunOS.
O SOLARIS é um sistema operacional voltado para grandes empresas, com um conjunto de
softwares para desenvolvimento e gerenciamento de informações e comunicação entre aplicativos.
Criado para obter uma alta performance em aplicações cliente/servidor, o SOLARIS permite acesso
transparente e ilimitado a sistemas, servidores, dispositivos periféricos, base de dados remota e uma
série de outros recursos, com escalabilidade para suportar várias aplicações e configurações.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
19
1.6 FreeBSD
O FreeBSD é um sistema operacional livre do tipo
Unix descendente do BSD desenvolvido pela
Universidade de Berkeley.
Está disponível para as plataformas Intel x86, DEC
Alpha, Sparc, PowerPC e PC98 assim como para as
arquiteturas baseadas em processadores de 64bits
IA-64 e AMD64.
Considerado como robusto e estável, geralmente é
utilizado em servidores, como de Internet ou
Proxies, mas também pode ser utilizado como
estação de trabalho.
1.6.1
Características
O FreeBSD é um sistema operacional multiusuário, capaz de executar em multitarefa. Ainda que o
FreeBSD não possa ser chamado apropriadamente de Unix por não estar sob a licença do The Open
Group, ele foi desenvolvido para ser compatível com a norma POSIX assim como outros clones do
Unix.
O FreeBSD possui um sistema de arquivos próprio chamado Fast File System (FFS) que é uma
derivação do Unix File System (UFS).
1.6.2
Compatibilidade binária com Linux
O FreeBSD fornece compatibilidade binária com muitas outras variações do Unix. O mesmo
também é compativel com o OS GNU/Linux. A razão por trás disso está em poder utilizar
programas desenvolvidos para Linux, geralmente comerciais, que só são distribuídos em forma
binária e que por isso não podem ser portados para o FreeBSD sem a vontade de seus criadores.
Esta extensão permite que os usuários usem a maioria dos programas que são distribuídas apenas
em binários Linux. Quando comparado com o número de programas nativos disponíveis pelo Ports,
a quantidade desses programas é insignificante.
Alguns aplicativos que podem ser utilizados sobre a compatibilidade Linux incluem StarOffice,
Netscape, Adobe Acrobat, RealPlayer, VMware, Oracle, WordPerfect, Skype, Doom 3, Quake 4, a
série Unreal Tournament, Beonex e outros. Geralmente não há perda de performance na utilização
de binários Linux em vez de programas nativos do FreeBSD.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
1.6.3
20
Mascote e Lema
Os derivados do BSD em geral tem como mascote um diabinho
vermelho chamado Daemon que significa demônio em grego, mas na
realidade se refere a programas que rodam na memória
autonomamente para servir requisições.
Até 2005, o Beastie era o "logotipo" do FreeBSD, quando foi aberta
uma competição para escolher um novo símbolo para o projeto. Em 8
de outubro, ganhou o desenho feito por Anton K. Gural para ser o
novo símbolo do FreeBSD.
O lema do FreeBSD é The Power to Serve, ou seja, "O Poder de
servir", obviamente se referindo a sua aplicação como servidor.
1.6.4
História e desenvolvimento do FreeBSD
O projeto FreeBSD teve seu nascimento no início de 1993, em parte como uma consequência do
conjunto de manutenção não-oficial do 386BSD (Unofficial 386BSD Patchkit). O primeiro
lançamento oficial foi o FreeBSD 1.0 em dezembro de 1993, coordenado por Jordan Hubbard, Nate
Williams e Rod Grimes.
O objetivo original era produzir um snapshot intermediário do 386BSD, de forma a poder corrigir
uma série de problemas com este sistema, que o mecanismo de manutenção não era capaz de
resolver. Alguns se lembrarão do nome inicial do projeto que era 386BSD 0.5 ou 386BSD Interim
em referência a este fato.
386BSD era o sistema operacional de Bill Jolitz, que já estava naquele instante sofrendo quase um
ano de negligência. Como o mecanismo de manutenção patchkit se tornava mais e mais
desconfortável a cada dia que passava, fomos unânimes em decidir que algo tinha que ser feito e
decidimos ajudar Bill oferecendo a ele este snapshot interim. Tais planos foram bruscamente
interrompidos quando Bill Jollitz decidiu repentinamente retirar sua sanção ao projeto sem nenhuma
indicação clara do que deveria ser feito. Não levou muito para decidirmos que o objetivo continuava
a valer a pena, mesmo sem a ajuda de Bill, e então adotamos o nome FreeBSD, sugerido por David
Greenman.
A primeira distribuição em CDROM (e na Internet em geral) foi o FreeBSD 1.0, lançado em
Dezembro de 1993. Era baseado na fita 4.3BSD-Lite (Net/2) da Universidade da Califórnia,
Berkeley (U.C. Berkeley), com muitos componentes originados do 386BSD e da Fundação do
Software Livre (Free Software Foundation). Foi um sucesso razoávelmente grande para uma
primeira aparição e nós continuamos o ciclo com uma versão altamente bem sucedida, o FreeBSD
1.1 release de Maio de 1994.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
21
1.7 UNIX
Unix é um sistema operativo (ou sistema operacional) portátil (ou portável), multitarefa e
multiutilizador (ou multiusuário) originalmente criado por Ken Thompson, que trabalhava nos
Laboratórios Bell (Bell Labs) da AT&T. A marca UNIX é uma propriedade do The Open Group, um
consórcio formados por empresas de informática.
Em 1965 formou-se um grupo de programadores, incluindo Ken Thompson, Dennis Ritchie,
Douglas McIlroy e Peter Weiner, num esforço conjunto da AT&T (Laboratórios Bell), da General
Electric (GE) e do MIT (Massachussets Institute of Technology) para o desenvolvimento de um
sistema operacional chamado Multics.
Um marco importante foi estabelecido em 1973, quando Dennis Ritchie e Ken Thompson
reescreveram o Unix, usando a linguagem C, para um computador PDP-11. A linguagem C havia
sido desenvolvida por Ritchie para substituir e superar as limitações da linguagem B, desenvolvida
por Thompson. O seu uso é considerado uma das principais razões para a rápida difusão do Unix.
Finalmente, ao longo dos anos 70 e 80 foram sendo desenvolvidas as primeiras distribuições de
grande dimensão como os sistemas BSD (na Universidade de Berkeley na Califórnia) e os System
III e System V (nos Bell Labs).
Em 1977, a AT&T começou a fornecer o Unix para instituições comerciais. Iniciava-se a abertura
do chamado mercado Unix.
1.7.1
Particularidades
Um sistema Unix é orientado a arquivos, quase tudo nele é arquivo. Seus comandos são na verdade
arquivos executáveis, que são encontrados em lugares previsíveis em sua árvore de diretórios, e até
mesmo a comunicação entre entidades e processos é feita por estruturas parecidas com arquivos. O
acesso a arquivos é organizado através de propriedades e proteções. Toda a segurança do sistema
depende, em grande parte, da combinação entre as propriedades e proteções definidas em seus
arquivos e suas contas de usuários.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
22
1.8 Linux
1.8.1
A História do Sistema Operacional LINUX
O Sistema Operacional Linux foi originalmente criado por Linus Torvalds na Universidade de
Helsinki na Finlândia. Ele foi desenvolvido com a ajuda de vários programadores através da
Internet. Linus teve seu projeto inspirado pelo seu interesse em Minix, um pequeno sistema Unix
desenvolvido por Andy Tannenbaum. No dia cinco de Outubro de 1991, Linus anunciou a primeira
versão "oficial'' de Linux, versão 0.02. Desde então, vários programadores responderam à sua
chamada, e haviam ajudado a tornar Linux o completo sistema operacional que ele é hoje.
1.9 Principais Comandos do DOS
CLS
Comando para limpar a tela.
ATTRIB
Comando que serve para ocultos, de sistema, etc. Para mais informações sobre o ATTRIB, digite no
prompt do DOS ATTRIB/?
DIR
Mostra o diretório do disco.
Sintaxe:
DIR [unidade:] /W /P
Exemplo:
C:\DIR C: /W /P
(Onde: /W - apresenta os arquivo no sentido horizontal e /P - apresenta uma página de cada vez)
FORMAT
Prepara um disco virgem, ou seja, ainda não utilizado, para que possam ser armazenadas
informações.
Sintaxe:
FORMAT [unidade:] /S
Exemplos:
C:\FORMAT A: /S
(formata o disco do drive A e copia o Sistema Operacional para o mesmo)
C:\FORMAT A:
(formata o disco do drive A)
DEL
Apaga um ou mais arquivos.
Sintaxe:
DEL <arquivo.ext>
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
Exemplos:
23
C:\ DEL A:INTEGRADO.TXT
(apaga o arquivo INTEGRADO.TXT do disco do drive A:)
C:\ DEL INTEGRADO.TXT
(apaga o arquivo INTEGRADO.TXT do winchester)
DELTREE
Existem três maneiras de utilizar o comando DELTREE:
1ª - DELTREE C:\WINDOWS < BUG, vai aparecer a pergunta se vc deseja realmente deletar o
diretorio WINDOWS.
2ª - DELTREE/Y C:\WINDOWS
EXCUINDO C:\WINDOWS\NOMEARQUIVO.???
3ª - DELTREE/Y C:\WINDOWS > NULL
COPY
Copia um ou mais arquivos para outro local.
Sintaxe:
COPY <arquivo-fonte> <arquivo-destino>
Exemplos:
C:\COPY INTEGRADO.txt escola.txt
(duplica um arquivo com nome diferente no mesmo disco)
C:\COPY integrado.txt a:escola.txt
(copia um arquivo com novo nome e no disco do drive A)
C:\COPY integrado.txt a:
(copia um arquivo para o disco do drive A com o mesmo nome)
RENAME
Renomeia um arquivo já existente.
Sintaxe:
RENAME <nome-antigo> <nome-novo>
Exemplo:
C:\RENAME ESCOLA.TXT INTEGRADO.TXT
(Renomeia o arquivo ESCOLA.TXT para o nome INTEGRADO.TXT)
DISKCOPY
Copia o conteúdo de um disquete para outro.
Sintaxe:
DISKCOPY [unidade-fonte] [unidade-destino]
Exemplo:
C:\DISKCOPY A: B:
(Copia todo o conteúdo do disquete do drive A para o disquete do drive B)
Obs.: Os dois discos devem ser do mesmo tipo/tamanho.
MD
Cria um sub-diretório.
Sintaxe:
MD <nome-do-subdiretório>
Exemplo:
C:\MD ALUNO
(Cria um sub-diretório com o nome de ALUNO)
CD
Permite que o usuário possa trocar o diretório atual pôr outro.
Sintaxe:
CD <nome-do-subdiretório>
Exemplo:
C:\CD ALUNO <ENTER>
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
24
C:\ALUNO\_
(Entra no sub-diretório ALUNO)
RD
Elimina um sub-diretório.
Sinatxe:
RD <nome-do-subdiretório>
Exemplo:
C:\RD ALUNO
(Elimina o sub-diretório ALUNO)
Obs.: Para que um sub-diretório seja eliminado ele deve estar vazio, ou seja, não deve conter
nenhum arquivo gravado nele.
Outros Comandos
DATE
Exibe ou define a data.
Sintaxe:
DATE
Exemplo:
C:\DATE dd/mm/aa
(Onde: dd é o dia, mm é o mês, e aa o ano)
TIME
Exibe ou define a hora.
Sintaxe:
TIME
Exemplo:
C:\TIME hh:mm
(Onde: hh é a hora e mm são os minutos)
CHKDISK
Verifica o estado do disco e exibe um relatório do sistema.
Sintaxe:
CHKDISK [drive]
Exemplo:
CHKDISK A:
(Análisa e faz o diagnóstico de eventuais problemas no seu disco A)
MEM
Exibe a quantidade de memória utilizada e disponível no sistema.
Sintaxe:
MEM
TREE
Exibe a estrutura do diretório de uma unidade.
Sintaxe:
TREE
VER
Exibe a versão do MS-DOS.
Sintaxe:
VER
UNDELETE
Restaura arquivos que tenham sido excluídos pelo comando DEL.
Sintaxe:
UNDELETE
LABEL
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
25
Cria, altera e exclui o nome de volume de um disco.
Sintaxe:
LABEL [unidade:] <nome-do-volume>
Exemplo:
LABEL A: INTEGRADO
(Modifica o nome do volume atual do disquete A para INTEGRADO)
DOSKEY
Edita linha de comando.
Sintaxe:
DOSKEY
Obs.: O usuário deve se utilizar das setas para cima/baixo para editar os últimos comandos
digitados.
EDIT
Inicia o editor do MS-DOS.
Sintaxe:
EDIT
SYS
Copia os arquivos de sistema para o disco definido.
Sintaxe:
SYS [drive]
Exemplo:
C:\SYS A:
(Copia os arquivos de sistema para o disquete do drive A)
HELP
Inicia a ajuda do MS-DOS para os comandos do MS-DOS.
Sintaxe:
HELP <comando>
Exemplo:
C:\HELP DOSKEY
(Mostra o que o comando DOSKEY pode fazer)
1.10 Criando arquivos de lote
Arquivos de lote são pequenos arquivos, mas que podem fazer um estrago gigante dependendo de
como usado (são conhecidos também por BADCOM) mas pode também ser usado como criação de
programas ou instaladores ou ainda controladores de arquivos ( mas não modificalos
completamente... ) bom vamos começar a aprender alguns comando... quem ja conhece um pouco
de MS-DOS vai ser um pouco mais facil mas nada muito louco!!!:)
ECHO OFF
Serve para não mostrar na tela os comandos que o arquivo .BAT esta executando. Como por
exemplo, se você faz um arquivo malicioso e não usa este comando e o arquivo contem o comando
DEL*.* aparecera na tela da vitima C:\DEL *.* assim dando tempo da vitima desligar o
computador antes de ter seus arquivos deletados. Se você usar o comando ECHO OFF não
aparecera nada na tela, e a vitima nem saberá o que aconteceu.
@ECHO
Serve para mostrar texto na tela, por exemplo eu quero que apareça na tela o seguinte texto:
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
26
@ECHO To te invadindo agora:
ATENÇÃO:
Um erro cometido, e ja vi muita gente fazer é confundir os dois primeiros comandos da seguinte
maneira:
@ECHO OFF < Você queria digitar ECHO OFF e digitou @ECHO OFF
ECHO >NOMEARQUIVO COMANDO
Serve para que um arquivo de lote (.BAT no nosso caso) crie outro arquivo. Exemplo:
ECHO> PIRATA.BAT DIR
Neste exemplo ele criou um arquivo chamado PIRATA.BAT que possui dentro dele o comando DIR
Outro exemplo de arquivo de lote:
@echo off
ECHO COMECAR LIMPEZA:
ECHO LIMPANDO ARQUIVOS TEMPORARIOS DO SISTEMA *../..*
@DELTREE /Y C:\*.TMP >nul
@DELTREE /Y C:\WINDOWS\*.TMP >nul
@DELTREE /Y C:\WINDOWS\TEMP\*.* >nul
@DELTREE /Y C:\WINDOWS\RECENT\*.* >nul
@DELTREE /Y C:\WINDOWS\TEMPOR~1\*.* >nul
@DELTREE /Y C:\WINDOWS\COOKIES\*.* >nul
@DELTREE /Y C:\WINDOWS\HISTÓR~1\*.* >nul
@DELTREE /Y C:\WINDOWS\APPLIC~1\MICROS~1\OFFICE\RECENTE\*.* >nul
ECHO LIMPEZA TERMINADA *..\..*
ECHO CONTINUANDO A CARREGAR O WINDOWS ...
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
27
1.11 Exercícios de Fixação
1 – O que é um Sistema Operacional? O que ele faz? Dê exemplos.
2 – Segundo Silberschatz, Stallings e Tanenbaum, existem dois modos distintos de conceituar um sistema operacional. Cite e comente
cada um deles.
3 – Existem 4 tipos básicos de sistemas operacionais. Fale brevemente sobre eles.
4 – Descreva as funções dos seguintes comandos do DOS:
DIR
DEL
DELTREE
MD
XCOPY
5 – O que é um arquivo de lote, para que serve? Como exemplo, faça um arquivo de lote comentado.
6 – Trace uma linha do tempo (timeline) das versões do Windows e destaque os pontos principais de cada versão.
7 – Qual versão do Windows é a melhor? Justifique sua resposta.
8 – Cite três S.O. De desenvolvedores diferentes e comente suas principais diferenças.
9 – Fale sobre o LINUX. (Quando surgiu, quem o inventou, foi feito a partir de onde, etc.)
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
28
2 Capítulo 2 – Distribuições Linux
Fonte: Revista on line Guiadohardware - http://www.gdhpress.com.br
Uma Distribuição Linux (ou simplesmente distro) é composta do kernel Linux e um conjunto
variável de software, dependendo de seus propósitos. Essa coleção de software livre e não-livre, é
criada e mantida por indivíduos, grupos e organizações de todo o mundo, incluindo o grupo Linux.
Indivíduos como Patrick Volkerding, companhias como a Red Hat, a SuSE, a Mandriva e a
Canonical, bem como projetos de comunidades como o Debian ou o Gentoo, compilam softwares e
fornecem a usuários diversos sistemas completos, prontos para instalação e uso.
As distribuições do Linux começaram a receber uma popularidade limitada desde a segunda metade
dos anos 90, como uma alternativa livre para os sistemas operacionais Microsoft Windows e Mac
OS, principalmente por parte de pessoas acostumadas com o Unix na escola e no trabalho. O
sistema tornou-se popular no mercado de Desktops e servidores, principalmente para a Web e
servidores de bancos de dados.
No decorrer do tempo, várias distribuições surgiram e desapareceram, cada qual com sua
característica. Algumas distribuições são maiores outras menores, dependendo do número de
aplicações e sua finalidade. Algumas distribuições de tamanhos menores cabem num disquete com
1,44 MB, outras precisam de vários CDs, existindo até algumas versões em DVD. Todas elas tem o
seu público e sua finalidade, as pequenas (que ocupam poucos disquetes) são usadas para
recuperação de sistemas danificados ou em monitoramento de redes de computadores.
De entre as maiores, distribuídas em CDs, podem-se citar: Slackware, Debian, Suse, e Mandriva.
Abaixo seguem algumas logomarcas de distros linux.
As principais diferenças entre as distros são:
Formato dos pacotes para instalação;
Aplicativos e alguns comandos específicos de cada distro.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
29
2.1 Debian
Embora o Debian "puro" seja mais usado em servidores, ele também pode perfeitamente ser usado
em desktops. Se você se sente confortável em usar o apt-get/aptitude e gosta da estrutura geral do
sistema, mas está em busca de um sistema mais leve e personalizável, o Debian pode ser a melhor
opção.
O Debian é a base para o Ubuntu e inúmeras outras distribuições. O próprio repositório "universe"
do Ubuntu nada mais é do que um snapshot do repositório instável do Debian, com alguns patches e
personalizações adicionais. Se somarmos o Ubuntu, Kubuntu e todos os descendentes diretos e
indiretos, as distribuições da família Debian são usadas em mais de 70% dos desktops Linux.
O maior problema em utilizar o Debian diretamente, em vez de usar o Ubuntu ou outro derivado é
que o sistema é bastante espartano, carecendo de muitas ferramentas de configuração automática.
Em compensação, ele é bem mais leve que o Ubuntu, pois muitos pacotes são compilados com
menos componentes e opções mais otimizadas, o que resulta em um desempenho geral
sensivelmente superior, sobretudo nas máquinas mais modestas.
O Debian Lenny é composto por nada menos do que 5 DVDs (ou 31 CDs!), que totalizam 23.2 GB
de download. Entretanto, como pode imaginar, estes DVDs todos incluem uma cópia completa dos
repositórios oficiais, que é necessária apenas para quem realmente quer fazer uma instalação
completa do sistema e não quer correr de precisar baixar pacotes adicionais.
Para situações normais, você pode escolher entre baixar apenas o primeiro CD ou o primeiro DVD.
Os pacotes são organizados dentro das mídias com base na relevância, de maneira que a primeira
mídia contém os pacotes mais usados e a segunda contém os seguintes, uma organização que vai até
a última mídia, que contém os pacotes mais incomuns.
Além do instalador tradicional, outra opção é baixar um dos CDs do "Debian-Live", uma série de
live-CDs, contendo instalações com o KDE, Gnome, XFCE ou LXDE, que permitem que você
grave e use o sistema diretamente, sem precisar instalar.
2.2 Mandriva
O Mandriva Linux (que nasceu da fusão da MandrakeSoft e da Conectiva) é uma das distribuições
Linux mais fáceis de usar, desenvolvida com foco no usuário doméstico. O Mandriva foi uma das
primeiras distribuições a incluir um instalador gráfico e ferramentas de configuração fáceis de usar,
ainda na época em que o Linux estava restrito ao público técnico.
Ele é distribuído em três versões. O Mandriva One é um live-CD, que pode ser também instalado
no HD, de forma muito similar ao Ubuntu Desktop. O One é a versão mais fácil de usar, já
incluindo plugins e outro componentes proprietários e por isso é também a mais usada. Como o
espaço é restrito, devido à necessidade de colocar todo o sistema em um único CD, existem versões
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
30
separadas do Mandriva One com o KDE e com o Gnome.
Em seguida, temos o Mandriva Free que corresponde à versão tradicional, onde você dá boot e faz
a instalação através do DrakX, o instalador tradicional, usado desde os tempos do Mandrake. Além
da tradicional versão em 3 CDs, está disponível também um DVD contendo todos os pacotes. A
principal observação com relação ao Mandriva Free é que, como o nome sugere, ele inclui apenas
pacotes livres, deixando de fora plugins e codecs, que podem ser adicionados manualmente após a
instalação do sistema.
Temos ainda o Mandriva Powerpack, uma versão comercial que se diferencia do Mandriva Free por
incluir alguns drivers e aplicativos proprietários (como os drivers para placas Atheros, drivers para
placas da nVidia e da ATI, o Acrobat Reader, RealPlayer, alguns CODECS e outros componentes
adicionais), que não fazem parte do Mandriva Free por não serem open-source. Na verdade, estes
componentes podem ser instalados no Mandriva Free através de repositórios adicionais, o fato de
não serem incluídos nas mídias de instalação são apenas uma forma que a Mandriva encontrou para
estimular o uso da versão paga.
2.3 Open Suse
Apesar de oferecer um bom conjunto de recursos, o SuSE sempre foi uma distribuição pouco usada
no Brasil, devido ao fato de ser uma distribuição comercial, baseada na venda de caixinhas com as
mídias de instalação e manuais impressos. Não existia nenhuma versão gratuita do sistema para
download e não era permitido fazer cópias dos CDs (naturalmente, ninguém iria prendê-lo por
distribuir CDs do SuSE, mas a prática não era encorajada).
Isso mudou a partir do final de 2003, quando a empresa foi adquirida pela Novell, que abriu o
código fonte do Yast e passou a recrutar voluntários para o desenvolvimento do sistema, dando
origem ao OpenSUSE, cuja primeira versão (o 10.0) foi lançado em outubro de 2005.
O principal destaque do OpenSUSE é a boa combinação de facilidade de uso e recursos. Em vez de
remover recursos do sistema com o objetivo de reduzir o volume de escolhas e assim tornar o
sistema mais simples de usar, os desenvolvedores optam por manter todos os recursos disponíveis e
organizá-los através de opções do Yast e nos menus. Com isso, chegaram a uma distribuição com
uma excelente apresentação visual e relativamente simples de usar, que ao mesmo tempo oferece
um volume muito grande de opções avançadas.
Estão disponíveis duas versões live-CD, uma baseada no KDE e outra no Gnome e também uma
versão em DVD, contendo todos os pacotes. Assim como no caso do Mandriva, as versões live-CD
incluem uma imagem pré-instalada do sistema, onde você não tem a opção de personalizar a seleção
de pacotes ao instalar no HD, enquanto a versão em DVD oferece um instalador tradicional, com
um volume muito maior de opções de personalização. Para quem prefere fazer uma instalação via
rede, está disponível também o "Internet Installation Boot Image", um ISO de apenas 70 MB, que
inclui apenas o instalador e alguns pacotes básicos e baixa todos os demais durante o processo de
instalação.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
31
Além das versões regulares, para processadores de 32 bits, estão disponíveis também versões para
processadores de 64 bits e uma versão para PPC (os Macs antigos, baseados em processadores
PowerPC).
2.4 Ubuntu
O Ubuntu não é a distribuição mais estável, nem a mais fácil de usar, mas a grande disponibilidade
dos CDs de instalação e toda a estrutura de suporte criada em torno da distribuição acabaram
fazendo com que ele se tornasse uma espécie de "default", uma escolha segura que a maioria acaba
testando antes de experimentar outra distribuições. Isso faz com que ele seja a distribuição com
mais potencial para crescer além da base atual.
Ele é, sob diversos pontos de vista, o oposto exato do Slackware. No Slack, a principal dificuldade é
entender como o sistema funciona, conseguir configurá-lo e instalar os aplicativos que quer usar. A
estrutura do sistema é relativamente simples e você tem total liberdade para fuçar e brincar com o
sistema (já que consertá-lo é quase tão fácil quanto quebrá-lo), mas, em compensação, quase tudo
precisa ser feito manualmente.
O Ubuntu, por outro lado, segue uma lógica completamente diferente, tomando decisões por você
sempre que possível, mostrando apenas as opções mais comuns e escondendo a complexidade do
sistema. Isso faz com que o Ubuntu seja usado por um volume muito maior de usuários, uma vez
que oferece respostas para dificuldades comuns, como instalar o sistema, configurar a rede wireless,
acessar arquivos em uma câmera ou em um pendrive, e assim por diante.
As versões regulares do Ubuntu recebem atualizações e correções durante um período de 18 meses,
de forma que você acaba sendo obrigado a atualizar o sistema a cada três versões. Como uma opção
para quem quer mais estabilidade e a opção de manter o sistema por mais tempo, existem as versões
LTS (long term support), que recebem atualizações por um período de 3 anos (5 anos no caso dos
servidores). Elas são as versões recomendáveis para estações de trabalho e para uso em empresas.
2.5 Slackware
À primeira vista, o Slackware parece ser um sistema extremamente complicado. Ele é uma das
poucas distribuições Linux que ainda não possuem instalador gráfico e toda a configuração do
sistema é feita manualmente, com a ajuda de alguns poucos scripts simples de configuração.
Entretanto, o Slackware oferece um estrutura de arquivos de configuração e de pacotes muito mais
simples que outras distribuições, o que o torna uma distribuição ideal para entender mais
profundamente como o sistema funciona.
Se as distribuições fossem carros, o Slackware seria o Fusca. Ele não possui nenhum dos confortos
encontrados em outros carros atuais, mas em compensação possui uma mecânica extremamente
simples, o que também o torna fácil de modificar e de consertar. É justamente por isso que o
Slackware possui tantos fans, apesar da idade avançada. Ele é complicado na superfície, porém
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
32
simples e confiável no interior.
Ele é também uma distribuição interessante para uso em PCs com poucos recursos, já que usa
configurações bastante otimizadas na compilação dos pacotes e mantém poucos serviços ativados
por padrão. Ele é uma das poucas distribuições que ainda podem ser utilizadas sem grandes
percalços em micros com apenas 128 MB de memória RAM.
2.6 Fedora
O Fedora é o sucessor do antigo Red Hat Desktop, descontinuado em 2003. Ele combina os
esforços da Red Hat, com um grande número de voluntários e usuários fiéis. O Fedora é uma das
distribuições mais utilizada em servidores, graças a inovações como o SeLinux, mas também possui
um público fiel no Desktop.
O ambiente de trabalho do Fedora é bastante similar ao do Ubuntu, já que ambas as distribuições
são baseadas no GNOME (e, normalmente, utilizam versões bastante próximas do ambiente) e
utilizam o visual clássico, com duas barras. As versões recentes do Fedora também utilizam o
NetworkManager para a configuração da rede e, além dele, você notará que o Fedora possui
diversas outras ferramentas em comum com o Ubuntu, o que torna as duas distribuições ainda mais
parecidas na superfície. Isso acontece por que a maioria destes utilitários, incluindo o próprio
NetworkManager, foram originalmente desenvolvidos pelas equipes do Red Hat e do Fedora e, a
partir daí, incorporados em outras distribuições que utilizam o GNOME, incluindo o próprio
Ubuntu.
Uma das principais características do Fedora é o frenético ritmo das atualizações. O sistema não é
apenas atualizado a cada seis meses, mas inclui sempre um conjunto formidavelmente atualizado de
pacotes. Naturalmente, isso também tem seu preço, já que usar as versões mais recentes de cada
software implica em ter acesso também a todos os novos bugs e problemas.
Em resumo, se você quer apenas um desktop estável, que possa utilizar por muito tempo, instalando
somente correções de segurança e pequenas atualizações, o Ubuntu LTS, o Debian estável ou o
CentOS seriam opções mais recomendáveis. Entretanto, se você gosta de fortes emoções, não tem
medo de problemas e quer ter acesso a novas versões dos pacotes e novos recursos antes que eles
estejam disponíveis em outras distribuições, então o Fedora é para você.
2.7 Distribuições Brasileiras
http://informando.wordpress.com/2008/02/12/23-distribuicoes-linux-brasileiras/
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
2.8 Time Line
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
33
Tópicos para a disciplina GSO
34
2.9 Ambientes de Trabalho/Interface Gráfica (Desktop)
2.9.1
KDE
Fonte: http://www.zago.eti.br/kde/kde3.htm
KDE: Uma visão geral deste gerenciador de Janelas Open Source
André L. Rodrigues Analize e Suporte Técnico em Informática
OBJETIVO
Este texto tem como objetivo apresentar a Interface Gráfica KDE e identificar seus principais
pontos fortes e fracos, em comparação com a interface gráfica do Windows.
Será apresentado uma série de características deste gerenciador de janelas, como a sua interface
gráfica, seu pacote de ferramentas, sua fácil interação com o usuário e principais vantagens e
desvantagens em comparação com os gerenciador de janela do Windows.
2.9.1.1
Principais características do KDE
O KDE (K Desktop Environment) é um gerenciador de janelas de código fonte aberto (significa que
qualquer um pode alterar o código fonte para adaptar a suas necessidades) lançado em julho de
1998 na cidade de Arnsberg, Alemanha e tem seu desenvolvimento mantido pelo Time KDE, uma
rede mundial de engenheiros de software comprometidos com o desenvolvimento do software livre
(Linux e Free BSD). Teve como base de desenvolvimento o gerenciador de janelas CDE, um
gerenciador de janelas desenvolvido para trabalhar em sistemas SCO (Unix).
Esta é a imagem do KDE 1.1, rodando num Linux Caldera em um Pentium 166 com 64 Mb RAM.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
2.9.1.2
35
Benefícios do KDE
O KDE possui inúmeros benefícios, pois é um gerenciador de janelas robusto, intuitivo e funcional,
tem suporte a vários idiomas (incluindo Português do Brasil), um incrível pacote de programas
integrados (também open source) e constante desenvolvimento e atualizações.
Imagem do KDE ao ser iniciado
O KDE tem versões pré-definidas para cada sistema GNU/Linux. Seu site disponibiliza estas
versões pré-definidas para download em www.kde.org/download/. Por ser open source, o download
é gratuito.
Entre os aplicativos integrados ao KDE, citamos o Konqueror, um navegador web com ferramentas
para e-mail, edição de sites e navegação de pastas/arquivos, KIO Network Transparency, plug-in
que oferece suporte para acesso e navegação de arquivos compartilhados em redes Windows/Linux
por NFS e SAMBA, o KOffice, uma suíte de programas para escritório, o K3B, uma ferramenta
poderosa para cópias e gravações de CDs e DVDs, aRts Multimedia Architecture (Analog Realtime
Synthesizer / Sintetizador analógico em tempo real) que oferece um sistema de áudio incluindo
filtros, mixer e outras funções de áudio, suporte a arquivos de vídeo (inclusive formatos da
Microsoft) entre outras funções mais de interatividade, acessibilidade e coisas mais.
O gerenciador de janelas KDE também pode importar aplicativos integrados de outros
gerenciadores de janela, desde que estejam instalados no mesmo computador. Se o usuário preferir,
pode executar estes programas importados como utilitário padrão do sistema. É o caso do Ximian
Evolution, um gerenciador de e-mails com interface gráfica muito semelhante a do Microsoft
Outlook (o que facilita ainda mais os usuários que planejam migrar de sistema), Blue Fish, uma
aplicação para o desenvolvimento de sites e aplicações web (semelhante ao Dreamweaver da
Macromedia para Windows) ou o GNUCash, um software utilizado para aplicações financeiras. O
recurso de importação vale também para outros gerenciadores de janelas open source, significa que
um determinado usuário poderá utilizar um outro gerenciador de janelas como padrão do sistema
(por exemplo, o GNOME, Black Box ou Window Maker) e utilizar as aplicações do KDE.
Um outro recurso bastante interessante do KDE é a sua personalização, cada usuário do sistema
pode configurar (afrescalhar) o KDE da maneira que achar mais funcional e/ou atraente, criando
atalhos e modificando seus menus. Este é um recurso que todos os gerenciadores têm, mas o KDE
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
36
permite que sejam feitas configurações ainda mais simples ou complexas com uma ferramenta
chamada kpersonalizer (que modifica drasticamente o ambiente, podendo deixar ele com a cara de
gerenciadores como o Mac OS 10 ou mesmo do Windows9X / XP) e pode gerenciar até 16
ambientes de trabalho simultaneamente, dependendo das necessidades de cada usuário do sistema.
Fora os benefícios comentados, podemos citar também que o KDE é um gerenciador de janelas que
funciona em diversas plataformas (Linux, Sparcs e Free BSD).
2.9.1.3
Deficiências do KDE
Como qualquer gerenciador de janelas, o KDE ainda deve em alguns pontos. O KDE ainda não
pode fazer o gerenciamento de usuários simultaneamente como é o caso do Windows XP, não tem
um guia de ajuda rápida que seja de simples entendimento ao usuário que migra de sistema e não
tem a tradução de todos os textos apresentados ao usuário traduzidos em 100%.
Centro de Controle do KDE, uma espécie de “Painel de Controle” para Linux. O Guia de Ajuda não
tem uma ajuda rápida e sua tradução não está em 100%
A alteração de seus menus também não é das mais agradáveis, dificultando um pouco o usuário
inexperiente que pensa que vai conseguir fazer isso apenas clicando em cima do ícone a ser alterado
e arrastá-lo para onde deseja. É preciso utilizar uma ferramenta de personalização de menus que
dará suporte a alteração dos menus do KDE.
Um outro ponto fraco reconhecido até pelo time de desenvolvimento do KDE é a falta de suporte ao
se instalar uma determinada aplicação. Seria o problema com “dependências” de bibliotecas de
arquivos (conhecidas no Windows como dll) e a deficiência de algumas aplicações não terem seus
respectivos atalhos logo após a instalação, tendo que ser feita manualmente pelo usuário ou
Administrador do sistema.
A instalação de alguns programas também é uma tortura para o usuário que está migrando. O
KPackage pode auxiliar a instalar pacotes RPM no seu sistema, caso alguma dependencia esteja
faltando, poderá fazer o download desta dependencia que será informada pelo sistema.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
2.9.1.4
37
Configurações de hardware suportadas
As primeiras versões estáveis do KDE eram bastante simples, com poucos recursos (se comparados
com os recursos das versões mais atuais) e poderiam ser instalado em computadores Pentium 100
com 32 Mb RAM. Com o passar do tempo, das atualizações e correções, o KDE se tornou um
sistema relativamente pesado, tendo em vista que ele é mais funcional em computadores com mais
de 700Mhz e no mínimo 128 Mb RAM, embora não se tenha nenhum tipo de recomendação em
específico relatada pelo time de desenvolvimento, seja no site oficial, fóruns, etc. Porem, podemos
verificar os requisitos mínimos de sistema de acordo com as distribuições de mercado. Embora toda
distribuição Linux tenha um requisito mínimo recomendado para a sua instalação no sistema, cada
distribuição vem com seu pacote de ferramentas e configuração por padrão de quem faz a
distribuição. Por exemplo: o Conectiva Linux 10 funciona com KDE 3.3.x e seu requisito mínimo é
de 700Mhz e 128 Mb RAM. Por outro lado, uma distribuição Fedora 3 requer no mínimo um
processador acima do 2 Ghz e 256 Mb RAM.
Em compensação, seu uso em disco é pequeno (levando em conta o enorme conjunto de pacotes)
podendo chegar a apenas 300 Mb, dependendo da distribuição.
2.9.1.5
Comparação com a GUI do Windows
Por ser um gerenciador de janelas altamente configurável, o KDE chega a rodar em menor
velocidade se compararmos ele ao gerenciado de janelas do Windows 2000 Professional e na
mesma velocidade de um Windows XP com o recurso do Active Desktop habilitado, o que o torna
pesado em relação ao Windows, mas se tratando de funcionalidade, o KDE é disparado melhor que
o gerenciador de janelas do Windows por causa dos pacotes de aplicativos que o acompanha e sua
estabilidade.
Fica no empate com o gerenciador de janelas do Windows se avaliarmos sua facilidade para o uso
no dia a dia e por ser tão intuitivo quanto ao gerenciador de janelas do Windows.
Bibliografia/referências utilizadas
Para a realização deste trabalho, foram consultados os sites:
www.kde.org
www.kde-look.org
Como referência, foi utilizdado o KDE 3.3.2 e 3.4.1 rodando numa distribuição Conectiva Linux 10
e o KDE 1.1 rodando em um Linux Caldera.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
2.9.2
38
Gnome
Fonte: http://pt.wikipedia.org/wiki/GNOME (10/07/2009)
GNOME (acrônimo para GNU Network Object Model Environment) é um esforço global para a
criação de um ambiente de trabalho completo, gratuito e composto inteiramente por software livre.
GNOME é parte do Projeto GNU e pode ser utilizado por vários sistemas baseados em Unix,
principalmente por sistemas Linux e sistemas BSD.
2.9.2.1
Metas
"O projeto GNOME oferece duas coisas: O ambiente de trabalho GNOME, um ambiente intuitivo e
atrativo para os usuários, e a plataforma de desenvolvimento GNOME, uma plataforma extensa
para desenvolvimento de aplicações que se integram com o resto do ambiente." - GNOME.org
O projeto GNOME dá ênfase à simplicidade, usabilidade, e fazer as coisas simplesmente
funcionarem. As outras metas do projeto são:
• Liberdade - para criar um ambiente de trabalho que sempre terá o código fonte disponível
para reutilização.
• Acessibilidade - assegurar que o ambiente pode ser usado por qualquer pessoa,
independentemente de habilidades técnicas, ou deficiências físicas.
• Internacionalização - fazer o ambiente disponível em vários idiomas. No momento o
GNOME está sendo traduzido para mais de 160 idiomas.
• Facilidade para o desenvolvedor - assegurar que seja fácil escrever um programa que se
integra com o ambiente, e dar aos desenvolvedores liberdade de escolher sua linguagem de
programação.
• Organização - um ciclo de versões regular e uma estrutura disciplinada.
• Suporte - assegurar suporte a outras instituições fora da comunidade GNOME.
2.9.2.2
Origem
Em 1951, iniciava-se o projeto AGF. Muito embora o Ambiente AMD fosse livre, ele era construído
através da toolkit TR, que era livre naquele momento. Membros do projeto GNU ficaram
preocupados com a possibilidade de que um ambiente de trabalho livre fosse feito sobre uma toolkit
proprietária. Diante de tal dilema, o projeto HJD nasceu em agosto de 1997 pelos esforços de
Miguel de Icaza e Federico Mena.
No começo, o objetivo principal do GNOME foi fornecer uma suíte amigável ao usuário de
aplicações e um desktop fácil de usar.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
39
O GNOME foi escrito originalmente na linguagem de programação C. Logo depois um grande
número de linguagens foram encorpando o GNOME e suas aplicações, por exemplo, linguagens
como: C++, Ruby, Python, Perl e muitas outras. No lugar do Qt, o GTK foi escolhido como a base
para desenvolvimento do GNOME. A licença é a GNU GPL General Public License (GPL).
O GNOME conta com uma coleção rica de ferramentas, bibliotecas, e dos componentes para
desenvolver aplicações poderosas em Unix.
A distribuição completa do GNOME inclui uma suite para escritório (Office) através da integração
de vários projectos independentes: processador de texto (AbiWord), folha de cálculo (Gnumeric),
gestão de projetos (Planner), editor de diagramas (Dia), programa para desenhos vetoriais
(Inkscape) e de imagem (GIMP).
2.9.2.3
Liberdade
O projeto GNOME foi o primeiro a oferecer um desktop inteiramente livre para sistemas baseados
em Unix. Software livre significa apoderar os usuários, e garantir direitos sobre os softwares que
eles usam. Com Software Livre, o usuário possui vários direitos:
• O direito de utilizar o software.
• O direito de redistribuir o software: se você tem um componente de Software Livre, você
pode compartilhá-lo com outro (nenhuma taxa de licença é requerida).
• O direito de aprender o software.
• O direito de alterar o software (todo o código fonte, arquivos de dados e imagens). Por
exemplo, usuários podem melhorá-lo, estendê-lo, reduzi-lo, consertar problemas, aprender
ou experimentar.
• O direito de redistribuir suas versões modificadas do software. Isto significa que, uma vez
que você tenha feito suas modificações no software, você pode redistribuir estas mudanças
para seus amigos, clientes ou qualquer pessoa.
Estes direitos e liberdades estão no núcleo do projeto GNOME. Os efeitos laterais dos Softwares
Livres são que eles tendem a ser de qualidade muito elevada, eles evoluem muito rapidamente, os
problemas são reparados rapidamente, e em geral o sistema é bom para ambos, Usuário e
Colaborador.
2.9.3
X Window System ou simplesmente X
X Window System, X-Window, X11 ou simplesmente X é um protocolo e seu
software associado possibilita o emprego de uma interface gráfica com o conceito
de janelas. Originalmente chamado simplesmente de X, foi desenvolvido no MIT
em 1984. Atualmente está na versão 11 e por isso carrega no nome este número.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
40
X-Window é o toolkit e protocolo padrão para GUI nos sistemas Unix e assemelhados, como o
Linux, mas existem versões para outros sistemas operacionais, como o Microsoft Windows e o Mac
OS, por exemplo.
Os servidores do sistema X-Window são executados em computadores com displays baseados em
mapas de bits (bitmap). O servidor distribui as ações de entrada do usuário (mouse e teclado) e
aceita os pedidos de saída através de vários programas clientes através de uma variedade de
diferentes canais de comunicação entre processos. Mesmo sabendo que o caso mais comum de uso
é de programas clientes rodando na mesma máquina do servidor, os clientes podem rodar de forma
transparente em máquinas diferentes (inclusive com arquiteturas e sistemas operacionais
diferentes).
Captura de tela do X em execução com diversos aplicativos sendo utilizados
O X (como é comumente chamado) funciona segundo o modelo cliente-servidor: o servidor X
recebe os pedidos via uma porta, um cliente X conecta-se ao servidor X e envia seus pedidos
utilizando o protocolo X através da biblioteca X (Xlib). Este modelo de comunicação permite o uso
de janelas de modo transparente através da rede.
O X suporta operações de janelas (overlapping hierarchical subwindows) e operações de texto e
gráficos, em displays preto e branco ou coloridos.
O número de programas que utilizam o X é enorme.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
2.10 Exercícios de Fixação
1 – Porque existem tantas distros Linux a quais as princicipais diferenças entre elas?
2 – Qual é a melhor distribuição Linux? Justifique sua resposta.
3 – O que é um gerenciador de janelas?
4 – Qual é a utilidade de um gerenciador de janelas no linux? Dê exemplos.
5 – Quantas distros do LINUX existem? É muito ou pouco? Disserte sobre sua resposta.
6 – Compare o KDE com o Windows (interface gráfica). Explique o que cada um é e comente os pontos fortes e fracos de cada um.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
41
Tópicos para a disciplina GSO
3 Capítulo 3 – Principais Comandos em Linux
3.1 Comandos de manipulação de diretório
3.1.1
mkdir
Cria um diretório
# mkdir docs
3.1.2
rmdir
exclui um diretorio (se estiver vazio)
3.1.3
rm -rf
exclui um diretório e todo o seu conteúdo (cuidado com este comando)
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
42
Tópicos para a disciplina GSO
3.1.4
cd
Entra num diretório
# cd docs
Opções:
cd /
cd ~
cd -
3.1.5
muda o diretório root
vai direto para o diretório home do usuário logado.
volta ao último diretório acessado
pwd, ls, df, du e whereis
pwd - Exibe o local do diretório atual
ls - lista o conteúdo do diretório
ls -alh - mostra o conteúdo detalhado do directório
ls -ltr - mostra os arquivos no formado longo(l) em ordem inversa(r) de data (t)
df - mostra a utilização dos sistemas de arquivos montados
du -msh - mostra o tamanho do diretório em Megabytes
whereis - mostra onde se encontra determinado arquivo (binários) exemplo: whereis samba
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
43
Tópicos para a disciplina GSO
44
3.2 Comandos para manipulação de arquivos
3.2.1
cat, tac, vi, vim, rm, cp, mv, chmod, chown, > e >>
cat - mostra o conteúdo de um arquivo binário ou texto
tac - semelhante ao cat mas inverte a ordem
vi - editor de ficheiros de texto
vim - versão melhorada do editor supracitado
rm - remoção de arquivos (também remove diretórios, mas com o parâmetro -r, que significa
recursividade)
cp - copia diretórios 'cp -r' copia recursivamente
mv - move ou renomeia arquivos e diretórios
chmod - altera as permissões de arquivos ou directórios
chown - altera o dono de arquivos ou directórios
cmd>txt - cria um novo arquivo(txt) com o resultado do comando(cmd)
cmd>>txt - adiciona o resultado do comando(cmd) ao fim do arquivo(txt)
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
45
3.3 Comandos para administração
3.3.1
Man, du, find, whoami, ps, kill, su, chown
man - mostra o manual do comando.
du - exibe estado de ocupação dos discos/partições
find - comando de busca ex: find ~/ -cmin -3
whoami - informa com qual usuário você está logado
umask - define padrões de criação de arquivos e diretórios
ps - mostra os processos correntes
ps -aux - mostra todos os processos correntes no sistema
kill - mata um processo
killall - mata todos os processos com o nome informado
su - troca para o super-usuário root (é exigida a senha)
su user - troca para o usuário especificado em 'user' (é exigida a senha)
chown - altera o proprietário de arquivos e pastas (dono)
3.3.2
adduser
O useradd pode também ser usado.
Adiciona um usuário ou grupo no sistema. Por padrão, quando um novo usuário é adicionado, é
criado um grupo com o mesmo nome do usuário. Será criado um diretório home com o nome do
usuário (a não ser que o novo usuário criado seja um usuário do sistema) e este receberá uma
identificação. A identificação do usuário (UID) escolhida será a primeira disponível no sistema
especificada de acordo com a faixa de UIDS de usuários permitidas no arquivo de configuração
/etc/adduser.conf. Este é o arquivo que contém os padrões para a criação de novos usuários no
sistema.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
46
adduser [opções] [usuário/grupo]
Onde:
usuário/grupo
Nome do novo usuário que será adicionado ao sistema.
Opções:
-disable-passwd
Não executa o programa passwd para escolher a senha e somente permite o uso da conta após o
usuário escolher uma senha.
--force-badname
Desativa a checagem de senhas ruins durante a adição do novo usuário. Por padrão o adduser checa
se a senha pode ser fácilmente adivinhada.
--group
Cria um novo grupo ao invés de um novo usuário. A criação de grupos também pode ser feita pelo
comando addgroup.
-uid [num]
Cria um novo usuário com a identificação [num] ao invés de procurar o próximo UID disponível.
-gid [num]
Faz com que o usuário seja parte do grupo [gid] ao invés de pertencer a um novo grupo que será
criado com seu nome. Isto é útil caso deseje permitir que grupos de usuários possam ter acesso a
arquivos comuns.
Caso estiver criando um novo grupo com adduser, a identificação do novo grupo será [num].
--home [dir]
Usa o diretório [dir] para a criação do diretório home do usuário ao invés de usar o especificado no
arquivo de configuração /etc/adduser.conf.
--ingroup [nome]
Quando adicionar um novo usuário no sistema, coloca o usuário no grupo [nome] ao invés de criar
um novo grupo.
--quiet
Não mostra mensagens durante a operação.
--system
Cria um usuário de sistema ao invés de um usuário normal.
Os dados do usuário são colocados no arquivo /etc/passwd após sua criação e os dados do grupo são
colocados no arquivo /etc/group.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
47
OBSERVAÇÃO: Caso esteja usando senhas ocultas (shadow passwords), as senhas dos usuários
serão colocadas no arquivo /etc/shadow e as senhas dos grupos no arquivo /etc/gshadow. Isto
aumenta mais a segurança do sistema porque somente o usuário root pode ter acesso a estes
arquivos, ao contrário do arquivo /etc/passwd que possui os dados de usuários e devem ser lidos por
todos.
Para listar usuários:
# cat /etc/passwd | awk -F ":" '{print $1}' |more
Para exluir um diretorio:
# userdel -r <name_user>
3.3.3
addgroup
O group add pode também ser usado.
Adiciona um novo grupo de usuários no sistema. As opções usadas são as mesmas do adduser.
# addgroup [usuário/grupo] [opções]
Adicionando um novo grupo a um usuário
Para incluir um novo grupo a um usuário, e assim permitir que ele acesse os arquivos/diretórios que
pertencem àquele grupo, você deve estar como root e editar o arquivo /etc/group. Este arquivo
possui o seguinte formato:
NomedoGrupo:senha:GID:usuários
Onde:
NomedoGrupo
É o nome daquele grupo de usuários.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
48
senha
Senha para ter acesso ao grupo. Caso esteja utilizando senhas ocultas para grupos, as senhas estarão
em /etc/gshadow.
GID
Identificação numérica do grupo de usuário.
usuários
Lista de usuários que também fazem parte daquele grupo. Caso exista mais de um nome de usuário,
eles devem estar separados por vírgula.
Deste modo para acrescentar o usuário "joao" ao grupo audio para ter acesso aos dispositivos de
som do Linux, acrescente o nome no final da linha: "audio:x:100:joao". Pronto, basta digitar logout
e entrar novamente com seu nome e senha, você estará fazendo parte do grupo audio (configura
digitando groups ou id).
Outros nomes de usuários podem ser acrescentados ao grupo audio bastando separar os nomes com
vírgula.
3.3.4
sg
Executa um comando com outra identificação de grupo. A identificação do grupo de usuário é
modificada somente durante a execução do comando. Para alterar a identificação de grupo durante
sua seção shell, use o comando newgrp, Seção 1.4.
# sg [-] [grupo] [comando]
Onde:
- (traço)
Se usado, inicia um novo ambiente durante o uso do comando (semelhante a um novo login e
execução do comando), caso contrário, o ambiente atual do usuário é mantido.
grupo
Nome do grupo que o comando será executado.
comando
Comando que será executado. O comando será executado pelo bash.
Quando este comando é usado, é pedida a senha do grupo que deseja acessar. Caso a senha do grupo
esteja incorreta ou não exista senha definida, a execução do comando é negada.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
49
Exemplo:
# sg root ls /root
3.3.5
userdel
Apaga um usuário do sistema. Quando é usado, este comando apaga todos os dados da conta
especificada dos arquivos de contas do sistema.
# userdel [-r] [usuário]
Onde:
-r
Apaga também o diretório HOME do usuário.
OBSERVAÇÃO: Note que uma conta de usuário não poderá ser removida caso ele estiver no
sistema, pois os programas podem precisar ter acesso aos dados dele (como UID, GID) no
/etc/passwd.
3.3.6
Groupdel
Apaga um grupo do sistema. Quando é usado, este comando apaga todos os dados do grupo
especificado dos arquivos de contas do sistema.
# groupdel [grupo]
Tenha certeza que não existem arquivos/diretórios criados com o grupo apagado através do
comando find.
OBSERVAÇÃO: Você não pode remover o grupo primário de um usuário. Remova o usuário
primeiro.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
3.3.7
50
passwd
Muda a senha do usuário ou grupo. Um usuário somente pode alterar a senha de sua conta, mas o
superusuário (root) pode alterar a senha de qualquer conta de usuário, inclusive a data de validade
da conta, etc. Os donos de grupos também podem alterar a senha do grupo com este comando.
Os dados da conta do usuário como nome, endereço, telefone, também podem ser alterados com
este comando.
# passwd [usuário/grupo] [opções]
Onde:
usuário
Nome do usuário/grupo que terá sua senha alterada.
Opções:
-g
Se especificada, a senha do grupo será alterada. Somente o root ou o administrador do grupo pode
alterar sua senha.
A opção -r pode ser usada com esta para remover a senha do grupo.
A opção -R pode ser usada para restringir o acesso do grupo para outros usuários.
Procure sempre combinar letras maiúsculas, minúsculas, e números ao escolher suas senhas. Não é
recomendado escolher palavras normais como sua senha pois podem ser vulneráveis a ataques de
dicionários cracker. Outra recomendação é utilizar senhas ocultas em seu sistema (shadow
password).
Você deve ser o dono da conta para poder modificar a senhas. O usuário root pode modificar/apagar
a senha de qualquer usuário.
Exemplo:
# passwd root.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
3.3.8
51
users
Mostra os nomes de usuários usando atualmente o sistema. Os nomes de usuários são mostrados
através de espaços sem detalhes adicionais, para ver maiores detalhes sobre os usuários, veja os
comandos id, Seção 1.9 e who, Seção 1.13.
# Users
Os nomes de usuários atualmente conectados ao sistema são obtidos do arquivo /var/log/wtmp.
Trocar usuário:
# su –login <usuário>
3.3.9
groups
Mostra os grupos que o usuário pertence.
groups [usuário]
Exemplo:
groups, groups root
3.3.10
Who
Mostra quem está atualmente conectado no computador. Este comando lista os nomes de usuários
que estão conectados em seu computador, o terminal e data da conexão.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
52
# who [opções]
onde:
opções
-H, --heading
Mostra o cabeçalho das colunas.
-i, -u, --idle
Mostra o tempo que o usuário está parado em Horas:Minutos.
-m, i am
Mostra o nome do computador e usuário associado ao nome. É equivalente a digitar who i am ou
who am i.
-q, --count
Mostra o total de usuários conectados aos terminais.
-T, -w, --mesg
Mostra se o usuário pode receber mensagens via talk (conversação).
· + O usuário recebe mensagens via talk
· - O usuário não recebe mensagens via talk.
· ? Não foi possível determinar o dispositivo de terminal onde o usuário está conectado.
3.4 Comandos para administração de rede
ifconfig - mostra as interfaces de redes ativas e as informações relacionadas a cada uma delas
route - mostra as informações referentes as rotas
mtr - mostra rota até determinado IP
nmap - lista as portas de sistemas remotos/locais atras de portas abertas. Pode verificar sistema
operacional em execução no host remoto.
netstat - exibe as portas e protocolos abertos no sistema.
iptraf - analisador de trafego da rede com interface gráfica baseada em diálogos
traceroute - traça uma rota do host local até o destino mostrando os roteadores intermediários
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
53
3.5 Exercícios de Fixação
1. Descreva a forma correta de criar uma usuária chamada “ana”. Suponha que ela é a primeira usuária a ser criada no sistema.
2. Continuando a questão anterior, explique como deve ser feito para fornecer uma senha para “ana”.
3. Cite como se faz para criar um grupo chamado “alunos”.
4. Numa empresa existem 3 usuários (jose, luis e aline), explique como deve ser feito para inserir estes usuários num grupo chamado
“adm”.
5. Descreva a forma correta para remover o usuário jose.
6. Qual o nome do arquivo que armazena informações dos usuários? Como se faz para ver o conteúdo deste arquivo sem usar um
editor de textos?
7. Que arquivo armazena informações sobre os grupos, e como visualizamos seu conteúdo sem um editor de textos?
8. Qual a importância do arquivo /etc/shadow?
9. Como faço para ver os usuários que estão cadastrados no Linux?
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
54
3.6 Permissões de acesso a arquivos e diretórios
A permissão de acesso protege o sistema de arquivos Linux do acesso indevido de pessoas ou
programas não autorizados.
A permissão de acesso do GNU/Linux também impede que um programa mal intencionado, por
exemplo, apague um arquivo que não deve, envie arquivos para outra pessoa ou forneça acesso da
rede para que outros usuários invadam o sistema. O sistema GNU/Linux é muito seguro e como
qualquer outro sistema seguro e confiável impede que usuários iniciantes (ou mal intencionados)
instalem programas enviados por terceiros sem saber para que eles realmente servem e causem
danos irreversiveis seus arquivos, seu micro ou sua empresa.
Esta seção pode se tornar um pouco difícil de se entender, então recomendo ler e ao mesmo tempo
prática-la para uma ótima compreensão. Não se preocupe, também coloquei exemplos para ajuda-lo
a entender o sistema de permissões de acesso do ambiente GNU/Linux.
3.6.1
Donos, grupos e outros usuários
O principio da segurança no sistema de arquivos GNU/Linux é definir o acesso aos arquivos por
donos, grupos e outros usuários:
dono
É a pessoa que criou o arquivo ou o diretório. O nome do dono do arquivo/diretório é o mesmo do
usuário usado para entrar o sistema GNU/Linux. Somente o dono pode modificar as permissões de
acesso do arquivo.
As permissões de acesso do dono de um arquivo somente se aplicam ao dono do arquivo/diretório.
A identifição do dono também é chamada de user id (UID).
A identificação de usuário e o nome do grupo que pertence são armazenadas respectivamente nos
arquivos /etc/passwd e /etc/group. Estes são arquivos textos comuns e podem ser editados em
qualquer editor de texto, mas tenha cuidado para não modificar o campo que contém a senha do
usuário encriptada (que pode estar armazenada neste arquivo caso não estiver usando senhas
ocultas).
grupo
Para permitir que vários usuários diferentes tivessem acesso a um mesmo arquivo (já que somente o
dono poderia ter acesso ao arquivo), este recurso foi criado. Cada usuário pode fazer parte de um ou
mais grupos e então acessar arquivos que pertençam ao mesmo grupo que o seu (mesmo que estes
arquivos tenham outro dono).
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
55
Por padrão, quando um novo usuário é criado, o grupo dele será o mesmo de seu grupo primário
(exceto pelas condições que explicarei adiante) (veja isto através do comando id, veja a id, Seção
1.9). A identificação do grupo é chamada de gid (group id).
Um usuário pode pertencer a um ou mais grupos. Para detalhes de como incluir o usuário em mais
grupos veja a Adicionando um novo grupo a um usuário, Seção 1.8.
outros
É a categoria de usuários que não são donos ou não pertencem ao grupo do arquivo.
Cada um dos tipos acima possuem três tipos básicos de permissões de acesso que serão vistas na
próxima seção.
3.6.2
Tipos de Permissões de acesso
Quanto aos tipos de permissões que se aplicam ao dono, grupo e outros usuários, temos 3
permissões básicas:
r - Permissão de leitura para arquivos. Caso for um diretório, permite listar seu conteúdo (através
do comando ls, por exemplo).
w - Permissão de gravação para arquivos. Caso for um diretório, permite a gravação de arquivos ou
outros diretórios dentro dele.
Para que um arquivo/diretório possa ser apagado, é necessário o acesso a gravação.
x
- Permite executar um arquivo (caso seja um programa executável). Caso seja um diretório,
permite que seja acessado através do comando cd.
As permissões de acesso a um arquivo/diretório podem ser visualizadas com o uso do comando ls
-la.
As 3 letras (rwx) são agrupadas da seguinte forma:
-rwxrwxrwx gleydson users teste
Virou uma bagunção não? Vou explicar cada parte para entender o que quer dizer as 10 letras acima
(da esquerda para a direita):
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
56
A primeira letra diz qual é o tipo do arquivo. Caso tiver um "d" é um diretório, um "l" um link a um
arquivo no sistema, um "-" quer dizer que é um arquivo comum, etc.
Da segunda a quarta letra (rwx) dizem qual é a permissão de acesso ao dono do arquivo. Neste caso
gleydson ele tem a permissão de ler(r - read), gravar (w - write) e executar (x - execute) o arquivo
teste.
Da quinta a sétima letra (rwx) diz qual é a permissão de acesso ao grupo do arquivo. Neste caso
todos os usuários que pertencem ao grupo users tem a permissão de ler (r), gravar (w), e também
executar (x) o arquivo teste.
Da oitava a décima letra (rwx) diz qual é a permissão de acesso para os outros usuários. Neste caso
todos os usuários que não são donos do arquivo teste tem a permissão para ler, gravar e executar o
programa.
Veja o comando chmod para detalhes sobre a mudança das permissões de acesso de
arquivos/diretórios.
3.6.3
Etapas para acesso a um arquivo/diretório
O acesso a um arquivo/diretório é feito verificando primeiro se o usuário que acessará o arquivo é o
seu dono, caso seja, as permissões de dono do arquivo são aplicadas. Caso não seja o dono do
arquivo/diretório, é verificado se ele pertence ao grupo correspondente, caso pertença, as
permissões do grupo são aplicadas. Caso não pertença ao grupo, são verificadas as permissões de
acesso para os outros usuários que não são donos e não pertencem ao grupo correspondente ao
arquivo/diretório.
Após verificar aonde o usuário se encaixa nas permissões de acesso do arquivo (se ele é o dono,
pertence ao grupo, ou outros usuários), é verificado se ele terá permissão acesso para o que deseja
fazer (ler, gravar ou executar o arquivo), caso não tenha, o acesso é negado, mostrando uma
mensagem do tipo: "Permission denied" (permissão negada).
O que isto que dizer é que mesmo que você seja o dono do arquivo e definir o acesso do dono
(através do comando chmod) como somente leitura (r) mas o acesso dos outros usuários como
leitura e gravação, você somente poderá ler este arquivo mas os outros usuários poderão ler/gravalo.
As permissões de acesso (leitura, gravação, execução) para donos, grupos e outros usuários são
independentes, permitindo assim um nível de acesso diferenciado. Para maiores detalhes veja a
seção Tipos de Permissões de acesso.
Lembre-se: Somente o dono pode modificar um arquivo/diretório!
Para mais detalhes veja a chown e chgrp.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
3.6.4
57
Exemplos práticos de permissões de acesso
Abaixo dois exemplos práticos de permissão de acesso:
Os dois exemplos são explicados passo a passo para uma perfeita compreensão do assunto. Vamos a
prática!
3.6.4.1
Exemplo de acesso a um arquivo
Abaixo um exemplo e explicação das permissões de acesso a um arquivo no GNU/Linux (obtido
com o comando ls -la, explicarei passo a passo cada parte:
-rwxr-xr-- 1 gleydson user 8192 nov 4 16:00 teste
-rwxr-xr--
Estas são as permissões de acesso ao arquivo teste. Um conjunto de 10 letras que especificam o tipo
do arquivo, permissão do dono do arquivo, grupo do arquivo e outros usuários. Veja a explicação
detalhada sobre cada uma abaixo:
-rwxr-xr-A primeira letra (do conjunto das 10 letras) determina o tipo do arquivo. Se a letra for um d é um
diretório, e você poderá acessa-lo usando o comando cd. Caso for um l é um link simbólico para
algum arquivo ou diretório no sistema. Um - (traço) significa que é um arquivo normal.
-rwxr-xr-Estas 3 letras (da segunda a quarta do conjunto das 10 letras) são as permissões de acesso do dono
do arquivo teste. O dono (neste caso gleydson) tem a permissão para ler(r), gravar(w) e executar (x)
o arquivo teste.
-rwxr-xr-Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
58
Estas 3 letras (da quinta a sétima do conjunto das 10 letras) são as permissões de acesso dos
usuários que pertencem ao grupo user do arquivo teste. Os usuários que pertencem ao grupo user
tem a permissão somente para ler(r) e executar(x) o arquivo teste não podendo modifica-lo ou
apaga-lo.
-rwxr-xr-Estas 3 letras (da oitava a décima) são as permissões de acesso para usuários que não são donos do
arquivo teste e que não pertencem ao grupo user. Neste caso, estas pessoas somente terão a
permissão para ver o conteúdo do arquivo teste.
gleydson
Nome do dono do arquivo teste.
user
Nome do grupo que o arquivo teste pertence.
teste
Nome do arquivo.
Além das permissões segue abaixo uma descrição mais completa.
|
1
|2|
3
| 4 | 5 |
6
| 7
|
-rwxr-xr-- 1 gleydson user 8192 nov 4 16:00 teste
O que representa Cada coluna? Da esquerda para a direita
1 – Tipo de arquivo (1º caracter) e permissão de acesso (outros 9 caracteres);
2 – Número de conexões (links) para o referido arquivo; (veja abaixo como criar Links)
3 – Nome do proprietário do arquivo (usuário);
4 – Nome do grupo que tem acesso ao arquivo;
5 – Quantidade de caracteres (bytes);
6 – Data e hora de criação ou última modificação;
7 – Nome do arquivo ou diretório
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
3.6.4.2
59
Criando LINKS
ln -s /home/teste linkTESTE
Cria um link chamado linkTESTE apontando para o arquivo teste que está em /home
Após a criação do link o comando ls -la
↓
-rwxr-xr-- 2 gleydson user 8192 nov 4 16:00 teste
3.6.4.3
Exemplo de acesso a um diretório
Abaixo um exemplo com explicações das permissões de acesso a um diretório no GNU/Linux:
drwxr-x--- 2 gleydson user 1024 nov 4 17:55 exemplo
drwxr-x--Permissões de acesso ao diretório exemplo. É um conjunto de 10 letras que especificam o tipo de
arquivo, permissão do dono do diretório, grupo que o diretório pertence e permissão de acesso a
outros usuários. Veja as explicações abaixo:
drwxr-x--A primeira letra (do conjunto das 10) determina o tipo do arquivo. Neste caso é um diretório porque
tem a letra d.
drwxr-x--Estas 3 letras (da segunda a quarta) são as permissões de acesso do dono do diretório exemplo. O
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
60
dono do diretório (neste caso gleydson) tem a permissão para listar arquivos do diretório(r), gravar
arquivos no diretório(w) e entrar no diretório(x).
drwxr-x--Estas 3 letras (da quinta a sétima) são as permissões de acesso dos usuários que pertencem ao grupo
user. Os usuários que pertencem ao grupo user tem a permissão somente para listar arquivos do
diretório(r) e entrar no diretório(x) exemplo.
drwxr-x--Estas 3 letras (da oitava a décima) são as permissões de acesso para usuários que não são donos do
diretório exemplo e que não pertencem ao grupo user. Com as permissões acima, nenhum usuário
que não se encaixe nas condições de dono e grupo do diretório tem a permissão de acessa-lo.
gleydson
Nome do dono do diretório exemplo
user
Nome do grupo que diretório exemplo pertence.
exemplo
Nome do diretório.
Para detalhes de como alterar o dono/grupo de um arquivo/diretório, veja os comandos chmod,
Seção 2.7, chgrp, Seção 2.8 e chown, Seção 2.9.
OBSERVAÇÕES:
O usuário root não tem nenhuma restrição de acesso ao sistema.
Se você tem permissões de gravação no diretório e tentar apagar um arquivo que você não tem
permissão de gravação, o sistema perguntará se você confirma a exclusão do arquivo apesar do
modo leitura. Caso você tenha permissões de gravação no arquivo, o arquivo será apagado por
padrão sem mostrar nenhuma mensagem de erro (a não ser que seja especificada a opção -i com o
comando rm.)
Por outro lado, mesmo que você tenha permissões de gravação em um arquivo mas não tenha
permissões de gravação em um diretório, a exclusão do arquivo será negada!.
Isto mostra que é levado mais em consideração a permissão de acesso do diretório do que as
permissões dos arquivos e sub-diretórios que ele contém. Este ponto é muitas vezes ignorado por
muitas pessoas e expõem seu sistema a riscos de segurança. Imagine o problema que algum usuário
que não tenha permissão de gravação em um arquivo mas que a tenha no diretório pode causar em
um sistema mal administrado.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
61
3.7 Permissões de Acesso Especiais
Em adição as três permissões básicas (rwx), existem permissões de acesso especiais (stX) que
afetam arquivos executáveis e diretórios:
s - Quando é usado na permissão de acesso do Dono, ajusta a identificação efetiva usuário do
processo durante a execução de um programa, também chamado de bit setuid. Não tem efeito em
diretórios.
Quando s é usado na permissão de acesso do Grupo, ajusta a identificação efetiva do grupo do
processo durante a execução de um programa, chamado de bit setgid. É identificado pela letra s no
lugar da permissão de execução do grupo do arquivo/diretório. Em diretórios, força que os
arquivos criados dentro dele pertençam ao mesmo grupo do diretório, ao invés do grupo
primário que o usuário pertence.
Ambos setgid e setuid podem aparecer ao mesmo tempo no mesmo arquivo/diretório. A permissão
de acesso especial s somente pode aparecer no campo Dono e Grupo.
t - Salva a imagem do texto do programa no dispositivo swap, assim ele será carregado mais
rápidamente quando executado, também chamado de stick bit.
Em diretórios, impede que outros usuários removam arquivos dos quais não são donos. Isto é
chamado de colocar o diretório em modo append-only. Um exemplo de diretório que se encaixa
perfeitamente nesta condição é o /tmp, todos os usuários devem ter acesso para que seus programas
possam criar os arquivos temporários lá, mas nenhum pode apagar arquivos dos outros. A
permissão especial t, pode ser especificada somente no campo outros usuários das permissões
de acesso.
X - Se você usar X ao invés de x, a permissão de execução somente é afetada se o arquivo já tiver
permissões de execução. Em diretórios ela tem o mesmo efeito que a permissão de execução x.
Exemplo da permissão de acesso especial X:
1. Crie um arquivo teste (digitando touch teste) e defina sua permissão para rw-rw-r-- (chmod
ug=rw,o=r teste ou chmod 664 teste).
2. Agora use o comando chmod a+X teste
3. digite ls –l
4. Veja que as permissões do arquivo não foram afetadas
5. agora digite chmod o+x teste
6. digite ls -l, você colocou a permissão de execução para os outros usuários
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
62
7. Agora use novamente o comando chmod a+X teste
8. digite ls -l
9. Veja que agora a permissão de execução foi concedida a todos os usuários, pois foi verificado que
o arquivo era executável (tinha permissão de execução para outros usuários).
10. Agora use o comando chmod a-X teste
11. Ele também funcionará e removerá as permissões de execução de todos os usuários, porque o
arquivo teste tem permissão de execução (confira digitando ls -l).
12. Agora tente novamente o chmod a+X teste
13. Você deve ter reparado que a permissão de acesso especial X é semelhante a x, mas somente faz
efeito quanto o arquivo já tem permissão de execução para o dono, grupo ou outros usuários.
Em diretórios, a permissão de acesso especial X funciona da mesma forma que x, até mesmo se o
diretório não tiver nenhuma permissão de acesso (x).
3.8 A conta root
A conta root é também chamada de super usuário, este é um login que não possui restrições de
segurança. A conta root somente deve ser usada para fazer a administração do sistema, e usada o
menor tempo possível.
Qualquer senha que criar deverá conter de 6 a 8 caracteres, e também poderá conter letras
maiúsculas e minúsculas, e também caracteres de pontuação. Tenha um cuidado especial quando
escolher sua senha root, porque ela é a conta mais poderosa. Evite palavras de dicionário ou o uso
de qualquer outros dados pessoais que podem ser adivinhados.
Se qualquer um lhe pedir senha root, seja extremamente cuidadoso. Você normalmente nunca deve
distribuir sua conta root, a não ser que esteja administrando um computador com mais de um
administrador do sistema.
Utilize uma conta de usuário normal ao invés da conta root para operar seu sistema. Porque não usar
a conta root? Bem, uma razão para evitar usar privilégios root é por causa da facilidade de se
cometer danos irreparáveis como root. Outra razão é que você pode ser enganado e rodar um
programa Cavalo de Tróia -- que é um programa que obtém poderes do super usuário para
comprometer a segurança do seu sistema sem que você saiba.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
63
3.9 chmod
Muda a permissão de acesso a um arquivo ou diretório. Com este comando você pode escolher se
usuário ou grupo terá permissões para ler, gravar, executar um arquivo ou arquivos. Sempre que um
arquivo é criado, seu dono é o usuário que o criou e seu grupo é o grupo do usuário (exceto para
diretórios configurados com a permissão de grupo "s", será visto adiante).
chmod [opções] [permissões] [diretório/arquivo]
Onde:
diretório/arquivo
Diretório ou arquivo que terá sua permissão mudada
opções
-v, --verbose
Mostra todos os arquivos que estão sendo processados.
-f, --silent
Não mostra a maior parte das mensagens de erro
-c, --change
Semelhante a opção -v, mas só mostra os arquivos que tiveram ae permissões mudadas.
-R, --recursive
Muda permissões de acesso do diretório/arquivo no diretório atual e sub-diretórios.
ugoa+-=rwxXst
ugoa - Controla que nível de acesso será mudado. Especificam, em ordem, usuário(u), grupo(g),
outros(o), todos(a).
+ coloca a permissão
- retira a permissão do arquivo e
= define a permissão exatamente como especificado.
rwx - r permissão de leitura do arquivo. w permissão de gravação. x permissão de execução (ou
acesso a diretórios).
chmod não muda permissões de links simbólicos, as permissões devem ser mudadas no arquivo
alvo do link.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
64
Também podem ser usados códigos numéricos octais para a mudança das permissões de acesso a
arquivos/diretórios. Para detalhes veja a Modo de permissão octal, Seção 11.10.
DICA: É possível copiar permissões de acesso do arquivo/diretório, por exemplo, se o arquivo
teste.txt tiver a permissão de acesso r-xr----- e você digitar chmod o=u, as permissões de acesso dos
outros usuários (o) serão idênticas ao do dono (u). Então a nova permissão de acesso do arquivo
teste.txt será r-xr--r-x
Exemplos de permissões de acesso:
# chmod g+r *
Permite que todos os usuários que pertençam ao grupo dos arquivos(g) tenham(+) permissões de
leitura(r) em todos os arquivos do diretório atual.
# chmod o-r teste.txt
Retira(-) a permissão de leitura(r) do arquivo teste.txt para os outros usuários (usuários que não são
donos e não pertencem ao grupo do arquivo teste.txt).
# chmod uo+x teste.txt
Inclui (+) a permissão de execução do arquivo teste.txt para o dono e grupo do arquivo.
# chmod a+x teste.txt
Inclui (+) a permissão de execução do arquivo teste.txt para o dono, grupo e outros usuários.
# chmod a=rw teste.txt
Define a permissão de todos os usuários exatamente (=) para leitura e gravação do arquivo teste.txt.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
3.10 chgrp
Muda o grupo de um arquivo/diretório.
# chgrp [opções] [grupo] [arquivo/diretório]
Onde:
grupo
Novo grupo do arquivo/diretório
arquivo/diretório
Arquivo/diretório que terá o grupo alterado.
opções
-c, --changes
Somente mostra os arquivos/grupos que forem alterados.
-f, --silent
Não mostra mensagens de erro para arquivos/diretórios que não puderam ser alterados.
-v, --verbose
Mostra todas as mensagens e arquivos sendo modificados.
-R, --recursive
Altera os grupos de arquivos/sub-diretórios do diretório atual.
3.11 chown
Muda dono de um arquivo/diretório. Opcionalmente pode também ser usado para mudar o grupo.
# chown [opções] [dono.grupo] [diretório/arquivo]
onde:
dono.grupo
Nome do dono.grupo que será atribuído ao diretório/arquivo. O grupo é opcional.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
65
Tópicos para a disciplina GSO
66
diretório/arquivo
Diretório/arquivo que o dono.grupo será modificado.
opções
-v, --verbose
Mostra os arquivos enquanto são alterados.
-f, --supress
Não mostra mensagens de erro durante a execução do programa.
-c, --changes
Mostra somente arquivos que forem alterados.
-R, --recursive
Altera dono e grupo de arquivos no diretório atual e sub-diretórios.
O dono.grupo pode ser especificado usando o nome de grupo ou o código numérico correspondente
ao grupo (GID).
Você deve ter permissões de gravação no diretório/arquivo para alterar seu dono/grupo.
chown joao teste.txt - Muda o dono do arquivo teste.txt para joao.
chown joao.users teste.txt - Muda o dono do arquivo teste.txt para joao e seu grupo para users.

chown -R joao.users * - Muda o dono/grupo dos arquivos do diretório atual e sub-diretórios
para joao/users (desde que você tenha permissões de gravação no diretórios e sub-diretórios).
3.12 Modo de permissão octal
Ao invés de utilizar os modos de permissão +r, -r, etc, pode ser usado o modo octal para se alterar a
permissão de acesso a um arquivo. O modo octal é um conjunto de oito números onde cada número
define um tipo de acesso diferente.
É mais flexível gerenciar permissões de acesso usando o modo octal ao invés do comum, pois você
especifica diretamente a permissão do dono, grupo, outros ao invés de gerenciar as permissões de
cada um separadamente. Abaixo a lista de permissões de acesso octal:
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
•
•
•
•
•
•
•
•
67
0 - Nenhuma permissão de acesso. Equivalente a -rwx
1 - Permissão de execução (x)
2 - Permissão de gravação (w)
3 - Permissão de gravação e execução (wx)
4 - Permissão de leitura (r)
5 - Permissão de leitura e execução (rx)
6 - Permissão de leitura e gravação (rw)
7 - Permissão de leitura, gravação e execução. Equivalente a +rwx
O uso de um deste números define a permissão de acesso do dono, grupo ou outros usuários.
Um modo fácil de entender como as permissões de acesso octais funcionam, é através da seguinte
tabela:
•
•
•
1 = Executar
2 = Gravar
4 = Ler
* Para Dono e Grupo, multiplique as permissões acima por x100 e x10
Basta agora fazer o seguinte:







Somente permissão de execução, use 1
Somente a permissão de leitura, use 4
Somente permissão de gravação, use 2
Permissão de leitura/gravação, use 6 (equivale a 2+4 / Gravar+Ler)
Permissão de leitura/execução, use 5 (equivale a 1+4 / Executar+Ler)
Permissão de execução/gravação, use 3 (equivale a 1+2 / Executar+Gravar)
Permissão de leitura/gravação/execução, use 7 (equivale a 1+2+4 / Executar+Gravar+Ler)
Vamos a prática com alguns exemplos:
# chmod 764 teste
Os números são interpretados da direita para a esquerda como permissão de acesso aos outros
usuários (4), grupo (6), e dono (7). O exemplo acima faz os outros usuários (4) terem acesso
somente leitura (r) ao arquivo teste, o grupo (6) ter a permissão de leitura e gravação (w), e o dono
(7) ter permissão de leitura, gravação e execução (rwx) ao arquivo teste.
Outro exemplo:
# chmod 40 teste
O exemplo acima define a permissão de acesso dos outros usuários (0) como nenhuma, e define a
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
68
permissão de acesso do grupo (4) como somente leitura (r). Note usei somente dois números e então
a permissão de acesso do dono do arquivo não é modificada (leia as permissões de acesso da direita
para a esquerda!). Para detalhes veja a lista de permissões de acesso em modo octal no inicio desta
seção (Modo de permissão octal, Seção 2.10).
# chmod 752 teste
O exemplo acima define a permissão de acesso dos outros usuários (2) para somente execução (x),
o acesso do grupo(5) como leitura e execução (rx) e o acesso do dono(7) como leitura, gravação e
execução (rwx).
Resumindo
Octal
Binário
Letras
Descrição
0
000
---
Sem acesso
1
001
--x
Somente execução
2
010
-w-
Somente escrita
3
011
-wx
Escrita e execução
4
100
r--
Somente leitura
5
101
r-x
Leitura e execução
6
110
rw-
Leitura e escrita
7
111
rwx
Leitura, escrita e execução
3.13 umask
FONTE: http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=1541&pagina=5
Bom, agora que já sabemos como atribuir tipos de acesso a um arquivo para usuário e grupos de
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
69
usuários, vamos fazer uma introdução ao comando umask.
A pergunta que não quer calar:
Toda vez que crio um arquivo ou diretório, os mesmos já vem com uma permissão, mas eu não
informei nenhum tipo de acesso a eles, de onde vieram essas permissões?
O que é umask?
Defino o umask como uma máscara padrão de permissão de acesso ao arquivo de sistema (File
System) do GNU/Linux.
Como assim?
Quando criamos um arquivo ou diretório, os mesmos já vem com uma permissão padrão, para
evitar que outros usuários e membros de outros grupos possam modificar os arquivos criados por
você.
Para saber qual máscara de arquivo que seu sistema estar usando, bastar digitar o comando umask
sem parâmetros. Exemplo:
$ umask
0022
O resultado acima é o seguinte:
0 : Este só indica que é o valor de uma umask;
0 : Dá acesso total ao arquivo criado pelo usuário;
2 : Dá acesso de Leitura e execução do arquivo, no caso de um diretório permiti que este seja
acessado através do comando \"cd <diretório>\";
2 : O Mesmo direitos acima, só que para os outros usuários do sistema.
OK e como faço para modificar essa máscara?
Vamos relembrar um pouco o modo octal, lembram que para determinar um nível de acesso para o
Dono, Grupo, Outros bastava somar os números relacionados ao tipo de permissão e que o acesso
total a um arquivo tem o valor 7 {4(r) + 2(w) + 1(x) =7(full}?
No umask vamos utilizar o valor total de acesso do modo octal 777 para determinar o valor da
umask, mas agora em vez de somarmos vamos subtrair.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
70
Exemplo:
Toda vez que eu criar um arquivo ou diretório quero que eles tenham acesso total.
777
-> Acesso Total a um arquivo/diretório
- 777 -> Acesso que desejamos ter através da umask
---------000
-> Valor da umask
$ umask 000
Ou
$ umask 0000
Resultado:
-rw-rw-rwdrwxrwxrwx
1 gabriel users 178 2004-09-29 13:23 arquivo
2 gabriel users 48 2004-09-29 13:02 diretório
OBS1: Por motivo de segurança o bit (x) que permitir a execução de um arquivo binário ou script é
desabilitado na umask.
OBS2: Lembrando que o primeiro 0 a esquerda é só para informar que é o valor de uma umask, e é
opcional.
Bom pessoal, tudo que eu sei e entendo por umask é isso, para maiores informações, consultem o
manual do comando:
$ man umask
FONTE: http://www.vivaolinux.com.br/artigos/verArtigo.php?codigo=1541&pagina=5
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
71
3.14 Outros comandos importantes
3.14.1
ps
# ps –aux
Lista todos os serviços que estão rodando na máquina.
Veja também o comando top.
3.14.2
Kill
Lembre que programas com banco de dados aberto pode corromper arquivos, nestes cassos procure
pela opção mais adequada, encerrar o processo com: service nome-do-daemom stop. Quando sabe o
nome do processo, encerre o processo através do comando:
# kill <nome_do_processo>
Quando não sabe o nome do processo, procure o PID numero do processo, ps -aux vai listar todos
os processos que estão rodando e seu numero PID depois é só executar: kill -9 <id_do_processo>.
# kill -9 1232
“MATA” o processo cujo PID é 1232
3.14.3
top
# top
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
72
Utilitario para acompanhar uso de CPU, memoria, processos e etc...
Cuidado, basta apenas teclar a letra desejada para executar ou selecionar a opção, "q" encerra e sai,
evite teclar varias opções simultaneas, demora um pouco entre as trocas de opções dando a
impressão que travou.
Muito útil para ver quanto cada processo consome de CPU, quanto está usando de swap e outras
informações.
Quando a maquina ficar lenta, ou queira monitorar algum processo com suspeita de consumir muito
processamento, use o top para monitorar o uso de CPU, memória ou qual processo está provocando
a lentidão e se quiser parar (matar) o processo use o kill.
Enquanto roda o processo, mantenha o "top" aberto em um terminal, acompanhe a utilização de
CPU e memória, pode executar o top a partir de console remoto aberto em conexão via ssh ou até
mesmo a partir de estações windows conectadas via putty.
Para sair do top digite a letra q em minusculo.
Maquinas com 2 CPU ou com dois core como os Pentium IV, pressione o numero 1 (um) pra exibir
o uso dos dois processadores.
No top, para ordenar os resultados, tecle em maiusculo:
'M' para ordenar por uso (consumo0 de memória,
'P' para ordenar por uso (consumo) de CPU.
Ou ulitize a tecla SHIFT mais a tecla desejada, exemplo:
SHIFT+P -> por consumo de CPU.
SHIFT+T -> por tempo.
SHIFT+M -> por consumo de memória.
SHIFT+C -> expande/resume nome dos processos
SHIFT+U -> por usuário, após o comando digite o nome do usuário.
tem outros comandos, tente usar as iniciais que aparece
3.14.4
df e du
df ou du - exibe espaço ocupado por diretórios e sub-diretórios, varias opções de resultados, os
maiores, por usuários e etc...
# df
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
73
3.15 Exercícios de Fixação
1. Que comando é utilizado no Linux para listar o conteúdo de um diretório detalhadamente, permitindo visualizar as permissões, dono
e grupo de arquivos e diretórios?
2. Cite 2 maneiras diferentes para alterar permissões no Linux.
3. De que forma pode-se alterar as permissões do dono, grupo e outros de um arquivo no prompt de comando do Linux?
4. Descreva a forma correta para alterar o dono de um arquivo chamado aula.txt através do prompt de comando.
5. Se eu digito no prompt “#chmod 465 teste”, qual será a permissão do dono, do grupo e outros em relação ao diretório “teste”?
6. Se for usada a seguinte sintaxe: #chmod 723 aula.txt. Qual será a permissão do dono, do grupo e outros em relação ao arquivo
“aula.txt”?
7 – O que faz o comando KILL? Para que ele serve?
8 - O que faz o comando TOP? Para que ele serve?
9 - O que faz os comandos DF e DU? Para que eles servem?
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
74
3.16 Montando Dispositivos
3.16.1
O que são dispositivos?
FONTE: http://www.devin.com.br/eitch/dispositivos/
Hugo Cisneiros, hugo_arroba_devin_ponto_com_ponto_br
Um dispositivo é todo o componente de hardware, e do sistema operacional. Um dispositivo é "algo
especial" que é compartilhado com o Kernel, ou seja, um exemplo de dispositivo são as
impressoras, CD-ROMs, modems, portas, mouse, HDs, etc. No Linux, os dispositivos físicos são
tratados como arquivos. Estes arquivos são um tipo especial no sistema de arquivos e se encontram
no diretório /dev. Se você der um ls neste diretório, verá que existe um pouquinho de arquivos (Bota
pouquinho nisso :)). Cada arquivo neste diretório corresponderá a um dispositivo de acordo com o
seu tipo.
Se você usava DOS/Windows antes, você acessava o drive C:, lembra? No Linux não existe isso!
Vai ser um dispositivo no lugar... Você vai usar isso o tempo todo, porque você vai mexer com
mouse, com impressora, IDE's, SCSI's, etc. Então aqui vai alguns arquivos do /dev e seus
respectivos dispositivos:
/dev/hdXX
Aqui é correspondete as Interfaces IDEs, ou seja, tudo que tiver conectado nos cabos IDEs :)
Exemplos, podemos citar HD's e CD-ROM's. O xx significa qual IDE, onde o primeiro x
corresponde a qual IDE, e o segundo x (opcional) corresponde a partição. Veja a tabela à seguir:
Dispositivo
Descrição
/dev/hda
IDE Primária Master
/dev/hda1
Partição 1 da IDE Primária
Master
/dev/hda2
Partição 2 da IDE Primária
Master
/dev/hdb
IDE Primária Slave
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
75
/dev/hdb1
Partição 1 da IDE Primária Slave
/dev/hdb2
Partição 2 da IDE Primária Slave
/dev/hdc
IDE Secundária Master
/dev/hdc1
Partição 1 da IDE Secundária
Master
/dev/hdc2
Partição 2 da IDE Secundária
Master
/dev/hdd
IDE Secundária Slave
/dev/hdd1
Partição 1 da IDE Secundária
Slave
/dev/hdd2
Partição 2 da IDE Secundária
Slave
...
...
Perceba aqui que cada hdx vai até os números 2, mas não é apenas até o 2, pode ir mais longe.
Dependendo de quantas partições tiver o seu HD, pode ser 3, ou 4, ou 9 por exemplo.
/dev/fdX
Aqui é o dispositivo equivalente ao drive de disquete, onde o x corresponde a qual driver. Caso
você tenha apenas um drive, esse drive vai ser o /dev/fd0. Se tiver 2 drives, o primeiro será /dev/fd0
e o segundo /dev/fd1, e por aí vai.
3.16.2
Montando os dispositivos
FONTE: http://www.devin.com.br/eitch/dispositivos/
Hugo Cisneiros, hugo_arroba_devin_ponto_com_ponto_br
Primeiro eu espero que você tenha lido sobre o que é um dispositivo. Agora vamos saber como se
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
76
usar um dispositivo, ou seja, um HD, um disquete, um CD-ROM, etc. O comando que usaremos
aqui é o mount, que pelo próprio nome, podemos ver que ele serve para 'montar' dispositivos em um
certo lugar.
Vamos falar primeiro sobre como montar o disco flexível. Para fazê-lo é o seguinte. O Linux trata
todos os seus dispositivos como arquivos device, estes arquivos estão localizados no diretório
"/dev". Para o caso do disco flexível, o Linux trata como /dev/fdx, onde x é o número do dispostivo:
o primeiro será fd0, o segundo será fd1, e assim por diante. Aqui no caso, estamos com um driver
de disquete, que é o /dev/fd0. Para montar o disco flexível então, colocamos o disquete, e
executamos o seguinte comando:
# mount /dev/fd0 /diretorio_onde_o_disco_vai_ser_montado
O diretório_onde_o_disco_vai_ser_montado tem que existir, e tem que estar totalmente vazio. Este
diretório, que você pode nomear como quiser funciona como se você estivesse no disquete. Agora
se você quer montar outro disquete, você terá que desmontar o disquete montado primeiro, para
depois poder montar outro. Para o desmonte, usa-se o comando "umount":
# umount /dev/fd0 (ou)
# umount /diretorio_onde_o_disco_esta_montado
Você pode também fazer o seguinte, criar um shell script, que se chama, por exemplo de 'diskon'
(Para ativar) e 'diskoff' (Para desativar). Então para melhor utilização, coloque este arquivo em um
diretório PATH, ou então coloque o PATH no diretório onde você quiser colocar os scripts.
Agora vamos montar uma partição. É o mesmo esquema de montar o disco flexível, só que o
arquivo do dispositivo é diferente. Para partições em um HD IDE, os nomes dos dispositivos são
/dev/hdxx, onde o primeiro x é a letra correspondente ao HD (na ordem a, b, c, d, e por aí vai), e o
segundo x é correspondente ao número da partição. Para partições em um HD SCSI, os nomes dos
dispositivos são /dev/sdxx, onde o primeiro x é a letra correspondente ao HD (na ordem a, b, c, d, e
por aí vai), e o segundo x é correspondente ao número da partição. Se eu quero montar a partição
/dev/hda2 (HD número 1, partição número 2), eu faço:
# mount /dev/hda2 /diretório
E para desmontar, usa-se o comando umount:
# umount /dev/hda2 (ou)
# umount /diretório
Existe também no comando mount, o parâmetro -t, que vai indicar que tipo de sistema de arquivos a
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
77
partição usa (FAT32, FAT16, minix, ext2, UMSDOS, etc). Se você não colocar esta opção, o
comando força uma compatibilidade para a montagem. O recomendado é colocar esta opção, pois
às vezes o mount não consegue detectar qual o sistema de arquivos, e gera um erro. Um exemplo do
uso da opção -t é:
# mount -t vfat /dev/hda2 /diretorio
Este comando montará uma partição FAT32 em /diretorio. Como eu disse anteriormente, utilizar-se
de shell scripts facilita seu trabalho. Agora vamos montar um CD-ROM. O mesmo esquema, só que
você deve saber qual o dispositivo referente ao seu CD-ROM, que tem como nome /dev/hdx, onde x
é a letra correspondente à posição do CD-ROM na IDE. Para montar um exemplo, façamos:
# mount /dev/cdrom /mnt/cdrom
Para desmontar, a mesma coisa de sempre:
# umount /dev/cdrom (ou)
# umount /mnt/cdrom
Nota: Se você der uma olhada no arquivo /dev/cdrom, você verá que ele não é um dispositivo, e sim
um link simbólico para o dispositivo correspondente ao CD-ROM (/dev/hdx). Isso quer dizer que
você pode substituir o /dev/cdrom pelo /dev/hdx tranqüilamente, assim como pode também
modificar o link simbólico para apontar para outro dispositivo.
Existe outro método de montagem muito mais prático do que os citados acima... É uma préconfiguração de montagem no arquivo /etc/fstab. Este arquivo contém as informações de
montagem para os dispositivos e seus diretórios. Por exemplo, quando a sua distribuição inicia, ela
procura no /etc/fstab para saber onde está a raiz do seu sistema, e vai montar no /. Também contém
informações de montagem para os diretórios especiais como o /proc, e até mesmo para o uso da
memória SWAP. Vejamos aqui o meu arquivo /etc/fstab como exemplo para estudarmos ele:
$ cat /etc/fstab
/dev/hda2
swap
/dev/hda5
/
/dev/hda1
/boot
/dev/fd0
/mnt/floppy
/dev/cdrom
/mnt/cdrom
none
/proc
none
/dev/pts
swap
reiserfs
ext2
auto
iso9660
proc
devpts
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
defaults
defaults
defaults
user,noauto
user,noauto,ro
defaults
gid=5,mode=620
0
0
1
0
0
0
0
0
0
1
0
0
0
0
Tópicos para a disciplina GSO
78
Viu este exemplo? Por exemplo, peguemos a segunda linha. Esta segunda linha é a minha raiz, que
está na partição /dev/hda5, será montada automaticamente ('defaults') no diretório "/" durante a
inicialização. E esta partição tem o sistema de arquivos ReiserFS. Na primeira temos a montagem
da memória SWAP... E vejamos a linha que começa com /dev/cdrom. Aqui facilita as coisas porque
os parâmetros 'user,noauto,ro' significam que qualquer usuário pode montar o CD-ROM (user),
não é montado automaticamente na inicialização (noauto) e é montado como somente leitura. Qual
a diferença? O comando mount só pode ser usado pelo root, mas com essa opção no /etc/fstab, um
usuário comum pode montar o cd-rom apenas com o comando "mount /mnt/cdrom", ou "mount
/dev/cdrom". A sintaxe deste arquivo não é muito difícil, e vendo este exemplo aqui, você pode
muito bem criar suas próprias configurações para dar mais praticidade no seu uso com os
dispositivos no Linux! Mexa à vontade, mas nunca nas linhas que já vêm, pois se não o Linux pode
não achar sua partição e poderá não conseguir iniciar o sistema, e você terá de bootar com um
bootdisk para consertar isto... Então mexa, mas pense duas vezes antes de mexer :)
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
3.17 Exercícios de Fixação
1 - Faça o relacionamento entre as colunas:
(1) hda
( ) segundo disco scsi;
(2) hdb
( ) IDE primária (máster);
(3) hdc
( ) primeiro disco scsi;
(4) das
( ) IDE primária (slave);
(5) sdb
( ) IDE secundária (máster);
2 - Como podemos ver quais são as partições que estão montadas?
3 - Qual diretório é usado para montar dispositivos no Linux?
4 - Que comando é usado para montar dispositivos no Linux?
6 - Que comando é usado para desmontar dispositivo no Linux?
7 - Descreva a forma correta para montar o primeiro disquete do micro no diretório “/mnt/floppy”.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
79
Tópicos para a disciplina GSO
80
3.18 Compactando arquivos
3.18.1
Compressão de arquivos
FONTE: http://www.ppgia.pucpr.br/~maziero/ensino/sei/unix-comandos.html
Tradicionalmente, a compressão de arquivos em UNIX é feita em dois passos:
1. Aglutinação dos arquivos e diretórios em um único grande arquivo, usando o comando tar.
2. Compressão do arquivo único, usando comandos como compress, gzip ou bzip2.
O comando tar é bastante antigo, e significa Tape ARchiving (tar também é "piche" em inglês, o que
sugere o processo de aglutinação). Ele era muito usado para copiar diretórios em fitas magnéticas.
Com as opções adequadas, permite guardar diversos arquivos e diretórios em um único arquivo. Sua
sintaxe básica é:
Para criar um arquivo ".tar":
# tar cvf arq.tar dir1 dir2 dir3 ...
Para abrir um arquivo ".tar":
# tar xvf arq.tar
Para listar o conteúdo de um arquivo ".tar":
# tar tvf arq.tar
As principais opções do comando tar são:
c
x
t
v
: criar um novo arquivo ".tar" com o nome indicado
: extrair dados do arquivo ".tar" indicado
: listar o conteúdo do arquivo ".tar"indicado
: verbose, mostra detalhes na tela sobre o que está sendo feito
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
81
f : indica que o próximo parâmetro é o nome do arquivo ".tar" a ser usado. Caso não seja indicado,
é usado o conteúdo da variável $TAPE, ou o arquivo /dev/rst0 (fita magnética).
z : para comprimir/expandir os arquivos tratados usando o gzip (ver abaixo).
Z : para comprimir/expandir os arquivos tratados usando o compress (ver abaixo).
Após feita a aglutinação, pode-se compactar o arquivo usando-se um dos comando abaixo:



compress : compactador standard do UNIX, hoje em dia pouco usado, mas presente em
todas as plataformas. Gera arquivos com extensão ".Z".
gzip : GNU-Zip, um compactador extremamente popular, é muito eficiente. Gera arquivos
com extensão ".gz".
bz2 : De uso recente e ainda pouco difundido, certamente será muito usado nos próximos
anos, por ser ainda mais eficiente que o gzip. Gera arquivos com extensão ".bz2".
Um procedimento muito usado é o uso combinado dos comandos tar e gzip, através das opções "z"
e "Z" do comando tar. Assim, para obter um arquivo comprimido "corrente.tar.gz" com todo o
conteúdo do diretório corrente, basta executar o seguinte comando:
# tar czvf corrente.tar.gz .
(atenção ao ".", que indica o diretório corrente)
Os arquivos ".tar.gz" também costumam ser nomeado como ".tgz", e definem o formato da maior
parte dos arquivos UNIX encontrados na Internet. Arquivos nesse formato também podem ser
abertos pelas versões recentes do compactador WinZip, do Windows.
OBSERVAÇÃO:
Pode-se utilizar também alguns parâmetros para se “construir” um SCRIPT para Backup bem mais
amigável.
Exemplo:
# tar -czvf Backup-`date +%d.%b.%Y-%H-%M`.tar.gz
-T /home/backup/copiasim
--exclude-from=/home/backup/copianao
>> Log_Backup-`date +%d.%b.%Y-%H-%M`-log.txt
IMPORTANTE: Não há quebra de linhas. A linha acima deve ser digitada como sendo uma só
linha, sem <ENTER> e sem quebras.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
82
3.19 Estrutura de diretórios
/bin
Contém arquivos programas do sistema que são usados com frequência pelos usuários.
/boot
Contém arquivos necessários para a inicialização do sistema.
/cdrom
Ponto de montagem da unidade de CD-ROM.
/dev
Contém arquivos usados para acessar dispositivos (periféricos) existentes no computador.
/etc
Arquivos de configuração de seu computador local.
/floppy
Ponto de montagem de unidade de disquetes
/home
Diretórios contendo os arquivos dos usuários.
/lib
Bibliotecas compartilhadas pelos programas do sistema e módulos do kernel.
/lost+found
Local para a gravação de arquivos/diretórios recuperados pelo utilitário fsck.ext2. Cada partição
possui seu próprio diretório lost+found.
/mnt
Ponto de montagem temporário.
/proc
Sistema de arquivos do kernel. Este diretório não existe em seu disco rígido, ele é colocado lá pelo
kernel e usado por diversos programas que fazem sua leitura, verificam configurações do sistema ou
modificar o funcionamento de dispositivos do sistema através da alteração em seus arquivos.
/root
Diretório do usuário root.
/sbin
Diretório de programas usados pelo superusuário (root) para administração e controle do
funcionamento do sistema.
/tmp
Diretório para armazenamento de arquivos temporários criados por programas.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
83
/usr
Contém maior parte de seus programas. Normalmente acessível somente como leitura.
/var
Contém maior parte dos arquivos que são gravados com frequência pelos programas do sistema, emails, spool de impressora, cache, etc.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
84
3.20 Exercícios de Fixação
1) Quais são os efeitos de comprimir e empacotar arquivos para o backup?.
( ) Ganho de espaço e perda de flexibilidade.
( ) Ganho de espaço e ganho de flexibilidade.
( ) Perda de espaço e ganho de performance.
( ) Espelhamento.
2) Os comandos utilizados para agendar tarefas num horário pré-estabelecido são (Escolha dois).
[ ] batch.
[ ] recicle.
[ ] crontab
[ ] at
3) Somente o root pode executar o comando “tar” com compressão de dados.
( ) Sim, pois o “tar” está no diretório “/sbin”.
( ) Não, os usuários do grupo “bkp” também podem utilizá-lo.
( ) Não, qualquer usuário poderá utilizá-lo.
4) Dentre os compressores de dados abaixo, qual tem a maior taxa de compressão?
( ) zip.
( ) compress.
( ) pack.
( )bzip2.
( ) gzip.
5) Qual a extensão do arquivo gerado pelo comando “gzip”?
( ) .gz.tar
( ) .tar.gz..
( ) .bzip2.
( ) bzip.
( ) .gz.
6) Quando um arquivo é comprimido pelo “gzip” ele gera uma cópia do original, de modos que teremos dois arquivos com o mesmo
prefixo, um comprimido e outro não.
( ) Verdadeiro, não dá pra escolher o nome do arquivo .gz
( ) Falso, posso dar o nome que eu quizer ao arquivo comprimido .gz
7) Como podemos compactar um arquivo no linux chamado “arquivox” através do comando “tar”? E de que forma podemos
descompactá-lo?
8) Que comando poderia listar o conteúdo de “/backup.tar”?
( ) cat /backup.tar;
( ) tar –xvf /backup.tar
( ) tar –tvjf /backup.tar
( ) tar –tvf /backup.tar.
9 – Qual o conteúdo do diretório /etc?
10 – Qual diretório contém os arquivos de usuários?
11 – Por que é importante a estrutura de diretórios do Linux? Comente suas vantagens e como pode ser utilizado isto em seu favor.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
85
4 Capítulo 4 – Gestão de T.I.
4.1 Projetando redes de computadores e sistemas de informação
Adaptado do texto “Projetando Redes de Computadores” de José Mauricio Santos Pinheiro em
12/09/2004
Além da tecnologia, é preciso considerar uma série de outros fatores coadjuvantes na
implementação do projeto de uma rede de computadores e de sistemas de informação. Os desafios
englobam questões como qual tecnologia a adotar, compatibilidade entre equipamentos novos e
existentes, suporte técnico, obsolescência, confiabilidade e performance esperados, entre outros.
Um dos grandes desafios enfrentados pelo projetista de redes e de sistemas de informação ainda é
fazer com que cada componente ou módulo se conecte a todos os outros. Conexões com pontos
remotos podem apresentar problemas de lentidão, tornando-se de manutenção difícil e dispendiosa.
Outros problemas com protocolos de rede, largura de banda de transmissão e gerenciamento da rede
combinam-se para fazer da implementação da parte lógica um verdadeiro desafio. As diferentes
linguagens e modelagens dos sistemas de informação e a heterogeneidade das equipes de T.I.
Também favorecem o caos administrativo enfrentado pelos profissionais de gestão.
O que acontece na verdade é que os padrões raramente conseguem acompanhar o passo da evolução
nas tecnologias de redes e sistemas. A funcionalidade e a velocidade de uma solução adotada hoje
pode não ser mais tão vantajosa num futuro próximo.
Outro aspecto que deve ser observado diz respeito à integração dos sistemas de telefonia e de
computação que consiste basicamente nas técnicas empregadas na coordenação das ações entre
esses sistemas de comunicação. Essa integração permite inserir "inteligência" aos sistemas de
telefonia, através do controle e tratamento da informação transmitida. Com isso possibilita-se,
dentre outras coisas, que usuários tenham acesso a facilidades dos sistemas telefônicos utilizando
computadores ou que chamadas telefônicas sejam incorporadas aos sistemas em rede.
Existem diversas topologias e layouts de rede bem como vários métodos de modelagem de
sistemas. Um projetista deve considerar todas as possibilidades e parâmetros relacionados ao
projeto, entre eles: custo, performance, segurança, escalabilidade, crescimento tecnológico, TCO,
ROI, gerenciamento, entre outros.
Também é necessário considerar outros pontos importantes sobre a infra-estrutura de rede e
sistemas, verificando desde o cabeamento novo ou já existente (especialmente sobre os padrões
Ethernet), novas linguagens e tecnologias, até as distâncias, limitações, regras gerais, entre outros
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
86
itens. Ao mesmo tempo, é possível encontrar redes e sistemas onde outros elementos não foram
considerados pelos projetistas por limitações orçamentárias, ou seja, basicamente o fator "custo"
ainda é o principal elemento levado em consideração no momento de se projetar e executar a infraestrutura de uma rede de computadores ou sistemas de informação.
Mesmo considerando essas limitações, algumas etapas fundamentais não podem ser negligenciadas
durante o projeto sob pena de impactar negativamente na performance final da rede e do sistema.
Dentre esses itens, a seleção das tecnologias, linguagens e dispositivos, tanto para redes/sistemas de
campus quanto para redes/sistemas corporativaos e os testes e documentação de toda a rede/sistema,
não podem ser esquecidos de forma alguma.
Da seleção adequada das tecnologias de rede, que podem ser desde Ethernet, Fast Ethernet ou ATM,
por exemplo, nas redes de campus e Frame Relay e ISDN, nas redes corporativas e da escolha dos
dispositivos de rede como roteadores, switches, servidores, etc, até o próprio cabeamento, é que
teremos os parâmetros necessários para avaliar a disponibilidade e a performance do sistema como
um todo.
Uma vez implementada a infra-estrutura, serão os resultados dos planos de testes do piloto da rede e
do sistema que fornecerão os subsídios necessários para a otimização do projeto e a documentação
final do que realmente foi implantado (também conhecido como As Built).
4.2 TCO
Total Cost of Ownership (TCO): É o resultante de todos os custos pertinentes a um projeto de redes
e sistemas em sua totalidade. Projeto, instalação, hardware, software, infra-estrutura, etc,
determinam "parcialmente" o TCO. Quando estamos projetando redes e/ou sistemas é necessário
idealizar as necessidades atuais e um possível crescimento tecnológico, além do aumento da
demanda por performance, escalabilidade, segurança e fácil gerenciamento/administração da rede e
do sistema.
Definição (Wikipédia)
TCO (Total cost of ownership) ou custo total da posse, é uma estimativa financeira projetada para
consumidores e gerentes de empresas a avaliar os custos diretos e indiretos relacionados à compra
de todo o investimento importante, tal como softwares e hardwares, além do gasto inerente de tais
produtos para mantê-los em funcionamento, ou seja, os gastos para que se continue proprietário
daquilo que foi adquirido.
Uma avaliação de TCO oferece idealmente uma indicação final que reflete não somente o custo de
compra mas de todos os aspectos no uso mais adicional e na manutenção do equipamento, do
dispositivo, ou do sistema considerado. Isto inclui os custos do pessoal da manutenção e
treinamento e aos usuários do sistema, os custos associados com a falha ou o outage (planejada ou
não), incidentes diminuitivos do desempenho (por ex., se os usuários ficarem em espera), custos de
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
87
quebras de segurança (e custos por perda de reputação e recuperação), custos de preparação para o
desastre e recuperação, espaço, eletricidade, despesas do desenvolvimento, infraestrutura e despesas
de teste, garantia de qualidade, crescimento incremental, custo de desativação do equipamento, e
mais.
Conseqüentemente TCO é consultado às vezes como ao custo de operação total. TCO fornece uma
base do custo determinando o valor econômico desse investimento.
4.3 ROI - Return On Investment
Adaptado do texto de José Mauricio Santos Pinheiro (18/02/2005)
No desenvolvimento de projetos de redes de computadores e sistemas de informação é muito
comum se trabalhar com orçamentos apertados e prazos curtos e, mais comum ainda, não se poder
precisar o quanto o usuário irá obter em termos de produtividade e lucratividade. Por esse motivo, é
interessante tanto para a equipe que desenvolve o projeto quanto para o usuário calcular o Retorno
do Investimento (ROI - Return On Investment).
4.3.1
O que é
Criado em 1977, pelo Gartner, o conceito de Retorno do Investimento se disseminou e ganhou
popularidade na área de Tecnologia da Informação na década de 1990, quando os projetos de
implementação de ERP (os pacotes integrados de gestão), se tornaram uma febre.
O ROI apresenta claramente uma estimativa das vantagens que um projeto poderá trazer. O retorno
pode ser representado como corte nos custos, maior participação no mercado (market share),
conscientização da marca (branding awareness), aumento direto nas vendas (no caso de ecommerce), influência nas compras, etc. Um preceito básico, no entanto, é que ele deve ser medido
sempre em conjunto com o conceito de TCO (Total Cost of Ownership ou Custo Total de
Propriedade).
4.3.2
Definições
Embora muitos profissionais ainda considerem o ROI como um exercício de matemática que sofre
constantes alterações e padece de erros, ele significa o retorno de determinado investimento
realizado e contabilizado em meses nos quais ele será amortizado para então começar a gerar lucros.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
88
Ou seja, o ROI tende a precisar quanto tempo uma empresa deve demandar para recuperar aportes
feitos em um determinado equipamento ou tecnologia e, assim, responder se o investimento é
realmente viável.
Outra definição para ROI seria a relação entre produção real e capacidade efetiva ou capacidade
efetiva pela capacidade do projeto ou ainda capacidade do projeto por ativo total. Complexo?
Talvez, mas como a origem do ROI é o mundo econômico suas nuances são uma evolução da velha
máxima da entrada e saída de capital.
Outros fatores, não tão concretos, podem fazer a diferença na adoção de um projeto como a
melhoria da qualidade, a maior velocidade e a confiabilidade dos serviços obtidos com um
investimento em TI, porém como são de complexa mensuração, eles dificilmente entram na
formulação do ROI. Aqui, o objetivo é puramente econômico. O gerente do projeto precisa verificar
a evolução e a projeção dos números.
4.3.3
Conceitos
Todas as empresas assumem riscos se querem recompensas; em parte, é disso que trata o Retorno
do Investimento (ROI). Em troca da quantia de dinheiro gasta, a empresa espera recuperar mais do
que esse valor de volta.
O projeto de uma rede deve oferecer resultados nos campos financeiro, tecnológico e estratégico,
além é claro, de benefícios para seus usuários. O ROI, neste caso, é mais um elemento no processo
de montagem do projeto, fornecendo subsídios poderosos para que os riscos do investimento sejam
devidamente analisados.
Embora o retorno do investimento de uma empresa nunca seja igual ao de outra, um componente
primordial da equação que está presente para todas é a relação do tempo despendido no projeto,
com a idéia do cumprimento de prazos e do número de meses que justificam o investimento.
Atualmente busca-se um ROI (medido sempre em meses) cada vez mais rápido para os projetos,
assim maior será o impacto no ciclo de produtos ou naquele setor envolvido e, maiores os lucros.
Muitas vezes é preciso reavaliar o ROI com o projeto ainda em andamento e, de posse de dados
mais concretos, expandir a métrica e as avaliações em outras etapas do projeto. Por sinal, o mercado
sistematizou o ROI e criou uma série de ferramentas, quando não são os próprios sistemas que
possuem um módulo que o contabiliza.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
4.3.4
89
Categorias de ROI
O conceito do ROI evoluiu internamente em muitas empresas que criaram categorias de acordo com
o tipo de investimento em TI: aqueles que reduzem custos, os que investem em segurança, aqueles
que criam rendimentos e ainda os que simplificam os processos. Assim, surgiram diferentes
evoluções ou variantes do ROI no mercado, como o Average ROI, que parte de médias alcançadas
por empresas em determinado projeto, ou ainda o Cumulative ROI ou cROI, que representa os
ganhos projetados no futuro pelo projeto, pós tempo do retorno propriamente dito. Também
encontramos o ROSI, para calcular um retorno tangível para um investimento em segurança, entre
outros.
Um correlato do ROI é o VOI (Value on Investment), que seria a medida dos benefícios decorrentes
de iniciativas que geram múltiplos ganhos. Também definido pelo Gartner, em 2001, é voltado
especialmente para projetos Web como Intranets e Extranets, propondo a diferenciação de métricas
para projetos de cunho eminentemente estratégico. No lugar de avaliar o retorno do investimento é
visto o processo contínuo dos valores gerados.
4.3.5
Calculando o ROI
A maioria das empresas que investe no treinamento de seu pessoal tem procurando avaliar esse
investimento para mensurar seus resultados. O investimento tem que dar um retorno vantajoso e,
para medir esse retorno do investimento em treinamento usa-se, com freqüência, o ROI.
Por exemplo, uma empresa espera obter como benefícios do treinamento do seu pessoal de TI um
valor da ordem de R$ 150.000,00. Os custos com esse treinamento são de R$ 15.000,00. Para
calcular o ROI é necessário subtrair o custo do treinamento dos benefícios que se espera alcançar e,
em seguida, dividir esse valor, que representa o benefício líquido, do custo:
Benefícios = R$ 150.000,00
Custos = R$ 15.000,00
Benefícios – Custos = R$ 135.000,00
ROI = 135.000,00 / 15.000,00 = 9,0
Ou seja, para cada real investido no treinamento, houve um retorno de R$ 9,00 para a empresa.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
4.3.6
90
Quanto custa
Mapear o ROI é uma missão onerosa e complexa. De acordo com a Price Waterhouse Coopers, algo
entre 1% e 3% de um projeto de TI, que demora em média três meses, é consumido na montagem
de um estudo de ROI. Outros institutos de pesquisa, como a IDC, questionam a aplicação do ROI,
classificada como um desperdício de esforço e verbas.
4.4 Conclusão
Para uma boa parte das empresas que pretendem investir em projetos de redes e sistemas de
informação, o Retorno do Investimento não é apenas uma abstração matemática, é uma questão de
sobrevivência.
Existem vários métodos úteis para avaliar os resultados esperados de um projeto (melhoria da
qualidade, aumento dos lucros, aumento da satisfação dos usuários e clientes, aumento de produção,
aumento das vendas, redução de custos, etc) e o ROI é um deles.
Resumidamente, as principais questões que devem ser respondidas no estudo do ROI são: qual o
custo total de implementação, quais são as fases de implementação e em quanto tempo o projeto se
pagará.
Qualquer cálculo de ROI é um alvo em movimento, no qual os profissionais tentam refinar quais
são os impactos das mudanças. Entretanto, os custos variáveis são definidos de forma muito mais
concreta atualmente e este cálculo se torna um processo bastante interativo. Nesse contexto, o ROI
pode oferecer um ponto de partida para determinar o valor da implementação de uma determinada
solução de TI para avaliar o valor de um negócio.
4.5 Licença de software
A legislação em informática pode ser analisada por vários aspectos. Englobam, no Brasil, o código
civil, a propriedade intelectual e a propriedade industrial. Convencionou-se, mundialmente, que
equipamentos são objeto de compra, enquanto que programas são objetos de licenciamento.
Uma licença de um produto de software oferece ao usuário o direito legal de executar ou acessar um
programa de software.
O acordo de licenciamento rege o uso do programa licenciado de software. Um acordo de
licenciamento permite que o software seja executado em um número limitado de computadores,
autorizando a execução de cópias apenas para fins de backup.
A Microsoft, por exemplo, dispõe de vários programas de licenciamento, cada um deles projetado
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
91
para atender a diferentes necessidades de licenciamento.
Seguem, resumidamente, alguns dos principais termos em licenciamento de software:
Software Freeware
Software distribuído sem custos para o usuário.
Software Shareware (trial version ou versão experimental)
Software cuja licença permite a redistribuição gratuita de cópias, mas que exige um pagamento para
continuação de seu uso após determinado período de experimentação. Após esse período, ele
geralmente pára de funcionar ou continua operável, mas com funcionalidade reduzida. Se o
consumidor aprovou o produto, poderá então licenciar a versão totalmente funcional.
Software Adware (Software com Anúncios)
licença de software sem custos de aquisição cuja remuneração ao desenvolvedor se dá através de
colocação de anúncios nos programas. A maioria dos desenvolvedores adware possui versões sem
anúncios, disponíveis por um custo baixo.
Software de Domínio Público
Software que não possui direitos autorais (copyright).
GNU-GPL - Software Livre (Open Source Software)
Software cujo código-fonte é de conhecimento público (aberto).
Software Copyleft
Software livre cuja licença de uso possui termos de distribuição que não permitem que os
redistribuidores adicionem qualquer restrição adicional ao redistribuir ou modificar o software. Em
termos práticos, isto significa que todas as cópias do software, mesmo aquelas que sofrerem
modificações, devem permanecer livres.
Software Proprietário
É aquele que não é livre nem semilivre. Seu uso, redistribuição e modificações ou são proibidos ou
requerem uma permissão. Ou, ainda, se partes do código-fonte são disponibilizadas, essas são tão
restritas que não se pode trabalhar com ele livremente.
Software Comercial
Software com fins lucrativos desenvolvido por uma empresa. Apesar de, no contexto atual, a
maioria dos software comerciais disponíveis serem proprietários, software comercial não é
sinônimo de proprietário. Comercial tem a ver com a finalidade do desenvolvimento (social,
filosófico, lucro) enquanto que proprietário te a ver com liberdades/restrições em relação ao código
fonte (livre, semilivre, proprietário)
Trustware
Do inglês "Trust" é "confiança", ou seja, o autor está disponibilizando o programa totalmente
funcional, sem restrições ou tempo limite de utilização, e se você achar o programa útil então fará
uma contribuição de forma a manter o projeto.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
92
4.6 Exercícios de Fixação
1 – Além da tecnologia, é preciso considerar uma série de outros fatores coadjuvantes na implementação do projeto de uma rede de
computadores e de sistemas de informação.
2 – O que é TCO?
3 – O que é ROI? Como é calculado?
4 – Compare os Sistemas Operacionais linux e Windows no que diz respeito a TCO e ROI e Faça uma tabela descrevendo suas
comparações.
5 – O que é uma licença de software? Fale de sua importância e como funciona no Brasil.
6 – Cite três tipos de licenças de software e fale brevemente sobre elas.
7 – Se você tivesse um sistema pronto para comercializar, qual tipo de licença você escolheria para vender seu sistema? Justifique.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
93
5 Capítulo 5 – Servidores
5.1 SAMBA
O Samba é um aplicativo que torna possível o compartilhamento de recursos com máquinas
rodando Windows®. O nome Samba é derivado do protocolo utilizado pelo Windows® para
compartilhar discos e impressoras: o protocolo SMB, Server Message Block.
Através da utilização do Samba é possível criar redes mistas, utilizando servidores Linux e clientes
Windows®. O Samba também permite que o Linux acesse discos exportados de máquinas
Windows®. Além de compartilhar recursos, o Samba é capaz de executar várias funções de um
servidor Windows®, como por exemplo autenticação de clientes, servidor WINS, e até mesmo agir
como um Controlador Primário de Domínio (PDC).
5.1.1
Implementação
A implementação desse serviço envolve a configuração do servidor, a definição dos recursos a
serem exportados e a configuração dos clientes.
Pré-requisitos
Para a implementação de uma solução utilizando o Samba sua rede deve estar corretamente
instalada e configurada, as estações Windows® devem utilizar o protocolo TCP/IP.
Instalação
Para instalar o Samba e seus aplicativos de configuração, selecione para instalação com o Synaptic
os seguintes pacotes:





samba-common
samba-server
samba-clients (para clientes)
samba-swat (opcional)
samba-doc (opcional)
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
94
Ou, utilizando o comando apt-get, instale os pacotes anteriores digitando em um terminal os
seguintes comandos:
# apt-get install samba-common samba-server
# apt-get install samba-clients
# apt-get install samba-swat samba-doc
Ou
#yum install samba.i386
#yum install samba-client.i386
#yum install samba-common.i386
5.1.2
Configuração do Servidor
5.2.1 – Alguns Comandos
SAMBA
# service smb stop
Parar o samba, interrompe somente o serviço samba, os demais serviços Linux continuam rodando
na maquina normalmente:
# service smb start
Iniciar o servidor samba, quando não iniciou no boot ou parou manualmente:
# service smb reload
Reiniciar o Samba, recarregar alterações efetuadas no smb.conf, equivalente a reiniciar, muito útil
quando fizer alterações no smb.conf, com a diferença que não precisa parar e iniciar novamente, em
um tacada só recarrega as modificações efetuadas no smb.conf.
Quando falhar em versões mais antigas do samba, utilize; service smb restart
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
95
# smbstatus
Sem parâmetros mostra as conexões ativas e alguns dados dos usuarios, também indica se o samba
está rodando ou não.
# smbstatus -u usuário
Mostra o que um determinado usuário esta utilizando no samba.
# chkconfig smb on
Configurar para iniciar o Samba junto com o boot, inicia o Samba quando liga a maquina.
# chkconfig --level 235 smb on
Carrega o serviço do smb nos níveis 2, 3 e 5
Ou utilize o comando
# ntsysv
e marque a opção SMB
Desmarcar inicialização com o boot - não iniciar samba junto com o boot.
# chkconfig smb off
chkconfig presente em algumas distros, serve para selecionar quais os serviços que devem ou não
iniciar quando liga a maquina, utilize o equivalente em sua distro.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
5.1.3
96
Criando usuários no SAMBA:
# smbadduser <nome do usuário>
ou
# smbpasswd <nome do usuário>
Este comando cria o usuário quando o <nome do usuário> não existe.
Para listar os usuário do SAMBA
# cat /etc/samba/smbpasswd | awk -F ":" '{print $1}' |more
5.1.4
smb.conf comentado
# SERVIDOR SAMBA PDC - DEBIAN GNU/LINUX
# POR TIAGO ANDRÉ GERALDI
[global]
# Na sessão Global está definido a forma como o servidor samba irá funcionar.
# Acompanhe com atenção cada campo.
# No workgroup vai o nome do grupo de trabalho ou Domínio, no nosso caso, sendo um PDC, é o nome de Domínio.
workgroup = empresa
# netbios name, o nome do servidor na rede
netbios name = SERVER
# A descrição do servidor para a rede
server string = PDC SERVER LINUX
# Usuário Administrador de Domínio. Esses usuários serão administradores do domínio.
# São eles que adicionaram os hosts windows no domínio entre outras funções administrativas.
# Pode ser informado vários usuários separados por espaços e /ou grupos. No exemplo, usuários tiago, darci e o grupo cpd serão os
administradores
admin users = tiago darci @cpd
# O PDC é um servidor de data e hora, habilitamos essa função e posteriormente faremos os # computadores da rede sincronizar seu
relógio com o servidor
time server = yes
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
97
# No caso de haver mais de um PDC na rede, como, por exemplo, um servidor Windows NT, as próximas linhas dizem se este servidor
é o principal PDC e qual é seu OS LEVEL (o valor de concorrências com os outros).
# Deixe assim como está se só houver um PDC na rede.
preferred master = yes
domain master = yes
os level = 100
# O Servidor aceitará Logon dos usuários nas estações
domain logons = yes
local master = yes
# As próximas duas linhas referem-se aos diretórios onde seriam armazenados os profiles dos usuários.
# No nosso caso, o servidor não guardará essas informações, elas ficaram salvas localmente em cada estação, por isso as tags ficam
vazias.
logon path =
logon home =
# Script a ser executado pelos usuários quando fizerem logon.
# Os scripts deverão estar dentro da pasta NETLOGON que veremos adiante o seu compartilhando, também devem ser .bat para que
o windows possa executá-lo.
# Neste caso temos um único script para todos os usuários, Você pode definir scripts individuais com o nome do usuário ex: tiago.bat.
Aqui na configuração coloque:
# logon script = %u.bat
# ou ainda conforme o grupo do usuário
# logon script = %g.bat
logon script = todos.bat
# Security: nível de acesso, pode ser user ou share.
# User, temos um controle de autenticação por usuário, cada usuário tem suas permissões de acesso. Já como share, temos um
compartilhamento simples onde todos acessam tudo sem nenhum controle.
security = user
# O servidor aceitará usuários sem senha?
# Eu prefiro deixar No
null passwords = no
# Habilita senhas criptografadas, é importante a habilitação para compatibilidade com windows 2000 e XP
encrypt passwords = true
# Corrige acentuação dos arquivos compartilhados
unix charset = iso8859-1
display charset = cp850
# IPs ou hostnames dos micros da rede importante para a segurança, evita conexões indesejadas.
# A classe de IPs da minha rede é 10.1.0.0 talvez a sua seja 192.168.0.0, mude de acordo. 127. diz respeito ao localhost, o próprio
servidor.
hosts allow = 10.1.0. 127.
# arquivo de log do samba
log file = /mnt/sda7/logs/samba/log.%m
# tamanho máximo do arquivo de log em KBs
max log size = 10000
# Nível de detalhes do arquivo log, altere de 1 a 5 e verifique as diferenças
log level = 2
debug level = 2
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
98
# -----------Aqui finda a seção homes. Agora em diante vem os compartilhamentos e suas configurações:
# O compartilhamento netlogon é obrigatório nele ficará os scripts de logon dos usuários.
# Defina o path, especificando onde está a pasta netlogon não esqueça de criá-la também depois.
# Estamos definindo abaixo que o compartilhamento não será navegável e que será somente leitura.
[NETLOGON]
comment = Servico de logon
path = /mnt/sda7/netlogon
browseable = no
read only = yes
# Criamos abaixo um compartilhamento público para todos acessarem livremente e trocarem arquivos. Ele é navegável
(browseable=yes), arquivos somente leitura podem ser apagados (delete readonly=yes), gravável (writable), publico (usuários
anônimos também acessaram) e disponível (available). Em veto files, defini extensões de arquivos que não poderão gravadas, afim de
evitar abusos. Em create mode, está definido que os arquivos criados poderão ser alterados por qualquer um, não somente pelo dono,
exemplo diferente você verá mais abaixo
[publico]
browseable = yes
delete readonly = yes
writable = yes
path = /mnt/sda7/publico
create mode = 0777
available = yes
public = yes
veto files = /*.mp3/*.wma/*.wmv/*.avi/*.mpg/*.wav/
# O compartilhamento abaixo segue a mesma estrutura, a diferença é que só os usuários do grupo adm poderão acessá-lo.
[administracao]
path = /mnt/sda6/adm
available = yes
browseable = yes
create mode = 0777
writable = yes
valid users = @adm
# Abaixo temos um compartilhamento com force file mode=700, desta maneira os arquivos criados só poderão ser lidos ou alterados
pelo usuário que os criou.
[bkps]
path = /mnt/sda7/bkps
available = yes
browseable = yes
writeable = yes
force file mode = 700
veto files = /*.mp3/*.wma/*.wmv/*.avi/*.mpg/
# Agora é só ir criando os compartilhamentos que você precisa da mesma maneira. Repare que não temos a seção Homes comumente
vista nos exemplos de smb.conf porque realmente não vamos precisar dela.
# smb.conf por Tiago André Geraldi
FONTE: http://www.guiadohardware.net/artigos/pdc-debian-clamwin-estacoes/
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
99
OBSERVAÇÃO:
Exemplo de arquivo de logon script:
@echo off
net use /delete * /yes
netsh int ip set address name="rede Local" source=static 10.0.0.5
255.255.255.0 10.0.0.1 1
netsh int ip set dns "rede Local" static 200.204.0.10
netsh int ip add dns "rede Local" addr= 200.204.0.138 index=2
netsh int ip add dns "rede Local" addr= 200.210.47.10 index=3
net
net
net
net
use
use
use
use
M:
P:
V:
Z:
\\Servidor\Movies
\\Servidor \Publico
\\Servidor \Downloads
\\Servidor \Backup
5.2 Apache
Fonte: http://pt.wikipedia.org/wiki/Servidor_Apache – acesso em julho/2009
O servidor Apache (ou Servidor HTTP Apache, em inglês: Apache HTTP Server, ou simplesmente:
Apache) é o mais bem sucedido servidor web livre. Foi criado em 1995 por Rob McCool, então
funcionário do NCSA (National Center for Supercomputing Applications). Numa pesquisa realizada
em dezembro de 2007, foi constatado que a utilização do Apache representa 47.20% dos servidores
ativos no mundo.
É a principal tecnologia da Apache Software Foundation, responsável por mais de uma dezena de
projetos envolvendo tecnologias de transmissão via web, processamento de dados e execução de
aplicativos distribuídos.
O servidor é compatível com o protocolo HTTP versão 1.1. Suas funcionalidades são mantidas
através de uma estrutura de módulos, permitindo inclusive que o usuário escreva seus próprios
módulos — utilizando a API do software.
É disponibilizado em versões para os sistemas Windows, Novell Netware, OS/2 e diversos outros
do padrão POSIX (Unix, Linux, FreeBSD, etc).
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
100
...Sendo mais claro, APACHE é um servidor Web, que processa solicitações
HTTP (Hyper-Text Transfer Protocol), o protocolo padrão da Web. Quando
você usa um navegador de internet para acessar um site, este faz as
solicitações devidas ao servidor Web do site através de HTTP e então
recebe o conteúdo correspondente. No caso do Apache, ele não só executa o
HTTP, como outros protocolos, tais como o HTTPS (O HTTP combinado
com a camada de segurança SSL - Secure Socket Layer), o FTP (File
Transfer Protocol), entre outros...
[http://www.infowester.com/servapach.php]
Etimologia
A razão para o nome "Apache" dada pela Apache Software Foundation, é que faz referência à nação
Apache, tribo de nativos americanos que tinha, em combate, grande resistência e estratégias
superiores. Isso seria uma alusão à estabilidade do servidor Apache e a sua variedade de ferramentas
capazes de lidar com qualquer tipo de solicitação na web. Uma segunda razão, que é aceita
popularmente, reconhecida porém refutada pela Fundação, é que o nome viria de "a patchy server",
que em inglês significa algo como um servidor remendado, ou melhoria no software, dada a origem
do programa, criado sobre o código do servidor da NCSA já existente, no qual foram adicionados
diversos patches.
Surge uma terceira explicação para o nome com o lançamento do Tomcat (um sistema auxiliar ao
Apache que cuida basicamente de processamento de aplicativos em Java), já que "Tomcat" nome de
uma aeronave estadounidense, o F-14 Tomcat e "Apache" é o nome de um helicóptero de ataque, o
AH-64 Apache).
Segurança
Para garantir segurança nas transações HTTP, o servidor dispõe de um módulo chamado mod_ssl, o
qual adiciona a capacidade do servidor atender requisições utilizando o protocolo HTTPS. Este
protocolo utiliza uma camada SSL para criptografar todos os dados transferidos entre o cliente e o
servidor, provendo maior grau de segurança, confidencialidade e confiabilidade dos dados. A
camada SSL é compatível com certificados X.509, que são os certificados digitais fornecidos e
assinados por grandes entidades certificadoras no mundo.
Configuração
O servidor é configurado por um arquivo mestre nomeado httpd.conf e opcionalmente podem haver
configurações para cada diretório utilizando arquivos com o nome .htaccess, onde é possível utilizar
autenticação de usuário pelo próprio protocolo HTTP utilizando uma combinação de arquivo
.htaccess com um arquivo .htpasswd, que guardará os usuários e senhas (criptografadas).
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
5.2.1
101
O httpd.conf
O arquivo httpd.conf é o arquivo principal de configuração do Apache, se encontra dentro do
diretório Conf, no diretório de instalação do Apache.
Em primeiro lugar, há que destacar que o arquivo está dividido em três seções, que são:
1º Parâmetros globais
2º Diretivas de Funcionamento
3º Host Virtuais
No arquivo se encontram todos os parâmetros de funcionamento do Apache. Alguns parâmetros são
gerais para a instalação e funcionamento do Apache. Muitos dos outros parâmetros se podem
configurar independentes para um conjunto de diretórios e/ou arquivos. Nestes casos, os parâmetros
se encontram localizados dentro de seções onde se indica o âmbito de aplicação do parâmetro.
EXEMPLO de httpd.conf
fonte: http://www.facastro.edu.br/~rocha/inst_manut_bd/aulas/configuracao_httpd.pdf
##
## httpd.conf Apache HTTP server configuration file
##
### Section 1: Global Environment
ServerType standalone
Diz ao sistema se o httpd vai ser rodado via script próprio (standalone), ou a partir do
arquivo inetd.conf (inetd). Em 'inetd' o httpd fica ocioso, enquanto o inetd fica monitorando
as requisições, quando houver alguma, ele informa ao sistema a hora de iniciar o serviço.
OBS: o padrão é standalone
ServerRoot /usr/local/httpd
Define o diretório do servidor.
Timeout 300
Tempo maximo (segundos) que o servidor manterá uma conexão aberta com o cliente. Se o limite
for excedido, ele terá de criar uma nova conexão com o mesmo.
KeepAlive On
Diretamente ligado com a opção acima, define se o processo de manter a conexão com o cliente está
ativo ou não (on/off).
MaxKeepAliveRequests 100
Numero maximo de conexões mantidas sem necessidade de renovação. Quanto mais alto o numero,
melhor a performance (com hardware adequado).
KeepAliveTimeout 15
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
102
Maximo (segundos) à espera de nova requisição.
StartServers 10
Numero de servidores iniciais, ou seja, logo no inicio do processo, o httpd poderá responder a 10
conexões simultanêas ao mesmo site.
MaxClients 150
Numero maximo de conexões simultaneas por clientes ao site. se for ultrapassada o httpd exibirá a
mensagem "http server busy"
#Listen 3000
#Listen 12.34.56.78:80
Permite ao httpd server, responder em mais de um ip/porta.
#BindAddress *
Esta é importante, por default a linha vem comentada pois habilita o acesso a um domínio
virtual. Para cada host virtual é necessária uma entrada "BindAdress e um numero IP".
#
# Dynamic Shared Object (DSO) Support
#
# LoadModule foo_module modules/mod_foo.so
#LoadModule mmap_static_module modules/mod_mmap_static.so
#LoadModule env_module modules/mod_env.so
#AddModule mod_mmap_static.c
#AddModule mod_env.c
Descomentando ou adicionando quaisquer linha com LoadModule ou AddModule, validará o
carregamento de um modulo, sendo executado na inicialização do httpd. Eles funcionam como
opções, por exemplo habilitar ou não o suporte a arquivos CGI no servidor, etc...
### Section 2: 'Main' server configuration
Port 80
O httpd atende por default no porta 80, aqui você poderá modificá‐la se desejar.
User/Group
Permite que o httpd execute como um usuário e grupo diferente.
ServerAdmin drusian@localhost
E Mail do administrador do apache, para onde será enviada noticias caso o servidor acuse algum
erro ou anormalidades.
ServerName host.name
Determina o nome do servidor principal.
Nota: o nome dever obrigatoriamente constar no DNS (e um ip associado a ele), pois um nome
inventado não funcionará.
O modo de chama‐lo é http://nome, mas se ele não consta no DNS, use o ip http://númeroip.
Para acesso local, ou seja acessar sua própria maquina "loopback", use http://localhost ou
http://127.0.0.1.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
103
DocumentRoot /www
Determina o caminho onde estarão armazenados os arquivos html do servidor principal.
Importante: o diretório dever estar com permissão 755, sendo direito total para o
proprietário, leitura e execução para o grupo e para outros.
AccesseFileName .htaccess
Define o nome do arquivo para o controle de acesso, o padrão é o arquivo .htaccess.
UserDir www
Está opção indica qual diretório o usuário deverá criar caso queira disponibilizar documentos ou
paginas html. Por exemplo se o usuário drusian quisesse disponibilizar paginas ou documentos para
a rede interna usando o apache, ele teria que criar o diretório www (/home/drusian/www/) e ali
disponibilizar os documente/arquivos htm. Lembre-se que o diretório em questão deve ter
permissão 755 afim de garantir o acesso e segurança.
Para acessar paginas em um home use: http://nome.da.maquina/~nome do usuário/
DirectoryIndex index.html index.htm index.asp default.html default.htm main.php
Muito importante, pois determina quais nomes de arquivos serão validos para abertura da home
pagen no browser http. No caso da configuração acima o servidor aceitará arquivos como paginas
iniciais (index) de um site.
UseCanonicalName On
Se ligada (on), uma pagina que se chame por exemplo www.teste.com.br/teste/ se acessada como
www.teste.com.br/teste (ou seja sem o / barra no fim) seja considerada válida. Se desligada (off), o
site não será encontrado.
HostNameLookups:
Se está opção estiver ligada (on), o apache irá escrever nos logs o nome do domínio
(www.dominio.com.br) se a opção estiver desligada (off), o apache escreverá nos logs com o ip
(192.168.0.1).
ErrorLog logs/error_log
Arquivo onde será gravado o relatório de erros do servidor.
LogLevel warn
Determina em que nível o httpd irá rodar. O recomendado é warn, pois não causa acúmulo de
atividades no apache. É o padrão e é uma das mais usadas.
Outros opções são: debug, info, notice, warn, error, crit, alert, emerg.
CustomLog logs/access_log common
Logs de acessos vão ser gravados neste arquivo.
Alias
Apelidos para diretórios da maquina, Você pode por exemplo cria um apelido para uma pasta do
sistema por exemplo: criar um apelido chamado "binarios" para a pasta /home/drusian/downloads/,
assim se você acessar http://seu‐ip/binarios/ você terá acesso a
pasta.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
104
Exemplo citado acima:
Alias /binarios/ "/home/drusian/downloads/"
Options Indexes FollowSymlinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
ScritptsAlias
Define o diretório que conterá os scripts do servidor. Exemplo CGI.
### Section 3: Virtual Hosts
Aqui é realizada a configuração do IP e da porta do servidor virtual. Isto significa que não é
necessários ter vários computadores rodando servidores httpd, em apenas uma maquina você pode
ter vários dominios rodando (www.teste.com, www.teste1.com, www.teste123.net) cada um abrindo
uma pagina diferente, e em diferentes diretórios do servidor.
Este é um recurso chamado de IP alias.
NameVirtualHost 200.001.002.01:80
NameVirtualHost 200.001.002.01
5.3 Squid
Fonte:http://pt.wikipedia.org/wiki/Squid – acesso em julho/2009
O Squid é um servidor proxy que suporta HTTP, HTTPS, FTP e outros. Ele reduz a utilização da
conexão e melhora os tempos de resposta fazendo cache de requisições freqüentes de páginas web
numa rede de computadores. Ele pode também ser usado como um proxy reverso.
O Squid foi escrito originalmente para rodar em sistema operacional tipo Unix mas ele também
funciona em sistemas Windows.
Servidor Proxy
No cache são armazenados os objetos da Internet (ex. dados como os das páginas web) disponíveis
via protocolo HTTP, FTP e Gopher. Os navegadores podem então usar o Squid local como um
servidor Proxy HTTP, reduzindo o tempo de acesso aos objetos e a utilização da conexão. Isto é
muito usado por provedores no mundo todo para melhorar a velocidade de navegação para seus
clientes e também em LAN que compartilham a mesma conexão à Internet. Ele pode fornecer
alguma anonimato e segurança entretando ele pode gerar preocupações a respeito da privacidade
pois o Squid é capaz de armazenar muitos registros de acessos incluindo URLs acessadas, a data e
hora exatas e quem acessou. Isto é usado frequentemente nas empresas para controlarem o acesso a
Internet de seus funcionários.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
5.3.1
105
Squid.conf
##################################################
# Copyright © 2009 - Andrio Jasper
#
# Todos os direitos reservados.
#
# Ao utilizar este aquivo manter os direitos autorais
#
##################################################
# Opcoes para suportar proxy transparente.
#nao esquecer de trocar a faixa de ip pela da sua rede
http_port 192.168.70.1:3128 transparent
#Está porta é usada para troca de informações entre servidores proxy.
#Não use o ICP se você tem um único proxy-pai que você sempre usa.
#Para desabilitar, bastacolocar um 0. Padrão: 3130
icp_port 0
#Especifica o número da porta através do qual o Squid irá receber e enviar requisições HTCP de e
para caches vizinhos. Para desabilitar,
#colocar 0. O padrão é 4827.
htcp_port 0
#Ela é responsável por dizer ao Squid que ele deve buscar os dados diretamente na origem, sem
passar pelos vizinhos na hierarquia. Padrao do squid
hierarchy_stoplist cgi-bin ?
#Esta ACL diz ao squid para não armazenar em cache o conteúdo dos CGI's, pois obviamente não é
interessante por tratar-se de conteúdo dinâmico
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
#Quantidade de memoria usada pelo squid
cache_mem 256 MB
#esvazia o cache
cache_swap_low 80
cache_swap_high 85
#tamanho maximo para gravacao no cache squid
maximum_object_size 64 MB
#tamanho minimo para gravacao no cache squid
minimum_object_size 0 KB
# Tamanho maximo dos objetos mantidos em memoria.
maximum_object_size_in_memory 128 KB
ipcache_size 3072
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
106
ipcache_low 90
ipcache_high 93
# politica de substituicao dos objetos quando se esgota o espaco destinado ao cache em disco.
# lru: mantem os objetos referenciados recentemente.
# heap GDSF: otimiza o "hit rate" por manter objetos pequenos e populares no cache, guardando
assim um numero maior de objetos.
# heap LFUDA: otimiza o "byte hit rate" por manter objetos populares no cache sem levar em conta
o tamanho. Se for utilizado este, o maximum_object_size devera ser aumentado para otimizar o
LFUDA.
cache_replacement_policy heap LFUDA
#define a politica de substituicao dos objetos em memoria da mesma forma como o
cache_replacement_policy
memory_replacement_policy heap GDSF
#Esta TAG determina onde e como será feito o cache e o tamanho a cada 1GB (1024), deve separar
15mb de memoria
cache_dir ufs /var/spool/squid/cache1 2048 16 64
cache_dir ufs /var/spool/squid/cache2 2048 16 64
cache_dir ufs /var/spool/squid/cache3 2048 16 64
cache_dir ufs /var/spool/squid/cache4 2048 16 64
cache_dir ufs /var/spool/squid/cache5 2048 16 64
# Log de requisicoes.
cache_access_log /var/log/squid/access.log
# Log do cache.
cache_log /var/log/squid/cache.log
# Log de objetos guardados. Pode ser desativado.
cache_store_log none
#Pode ser usada para especificar uma lista
/etc/resolv.confdns_nameservers Endereço_IP
#nao esquecer de trocar a faixa de dns pela da sua faixa
dns_nameservers 201.10.128.2
dns_nameservers 201.10.120.3
de
servidores
#TAG's referentes ao processo de autenticação.
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
#Estas opções são o padrão do Squid e
#configuram como serão tratados os tempos de vida dos objetos no cache
refresh_pattern ^ftp:
1440 20% 10080
refresh_pattern ^gopher:
1440 0% 1440
refresh_pattern (cgi-bin|\?) 0
0%
0
refresh_pattern .
0 20% 4320
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
DNS
no
lugar
no
Tópicos para a disciplina GSO
107
#O cache pode ser configurado para continuar com o download de requisições abortadas
quick_abort_min 0 KB
quick_abort_max 0 KB
quick_abort_pct 100
#Tempo de vida para requisições falhas. Certos tipos de erros (como
#conexão recusada ou página não encontrada) são marcados como
#"sem-cache" por um determinado tempo. Padrão de 5 minutos
negative_ttl 3 minutes
#Tempo de vida para resultados bem sucedidos de resolução DNS. Se você
#realmente precisar alterar esse valor, não deixe inferior a 1 minuto.
#Padrão de 6 horas.
positive_dns_ttl 5 minutes
#Alguns clientes podem parar o envio de pacotes TCP enquanto deixam o recebimento em aberto.
#Algumas vezes o Squid não consegue diferenciar conexões TCP totalmente fechadas e
parcialmente fechadas.
#Mudando essa opção para off fará com que o Squid imediatamentefeche a conexão quando a
leitura do socket
#retornar "sem mais dados para leitura"
half_closed_clients off
#Estas ACL's fazem parte da configuração padrão do Squid e é o mínimo
#recomendável para seu uso não sendo necessária nenhuma alteração nas mesmas
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl to_localhost dst 127.0.0.0/8
acl BADPORTS port 7 9 11 19 22 23 25 53 110 119 513 514 3128 8080
acl SSL_ports port 443 563
acl Safe_ports port 80
# http
acl Safe_ports port 21
# ftp
acl Safe_ports port 443 563 # https
acl Safe_ports port 70
# gopher
acl Safe_ports port 210
# wais
acl Safe_ports port 1025-65535 # unregistered ports
acl Safe_ports port 280
# http-mgmt
acl Safe_ports port 488
# gss-http
acl Safe_ports port 591
# filemaker
acl Safe_ports port 777
# multiling http
acl CONNECT method CONNECT
# ---- Cache do Windows Update ---refresh_pattern au.download.windowsupdate.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-intoims
refresh_pattern download.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims
refresh_pattern msgruser.dlservice.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-intoims
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
108
refresh_pattern windowsupdate.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims
refresh_pattern www.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims
##nao esquecer de trocar a faixa de ip pela da sua rede
acl rede src 192.168.70.0/255.255.255.0
http_access allow localhost
http_access allow rede
#Definição de regras de acesso referentes as ACL's da parte da configuração
#padrão do Squid, também não é necessária nenhuma alteração, portanto apenas
#acrescente as suas próprias regras a estas;
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny BADPORTS
http_access deny CONNECT !SSL_ports
#Esta regra de acesso é recomendada para uso como última regra da lista define
#o acesso ao proxy. Ela diz ao Squid que se nenhuma das regras anteriores for
#aplicada o acesso será então negado
http_access deny all
#Permite o acesso a porta icp de acordo com a configuração feita na ACL all
#que no nosso caso representa qualquer origem. Está porta é usada para troca
#de informações entre servidores proxy.
#Não use o ICP se você tem um único proxy-pai que você sempre usa.
#icp_access allow rede
# Usuario sob o qual ira rodar o Squid.
cache_effective_user squid
# Grupo sob o qual ira rodar o Squid.
cache_effective_group squid
#Mostra o nome do servidor configurado nas mensagens de erro
visible_hostname [email protected]
#Desligando essa variavel, faz com que o squid descarregue a memoria nao
#utilizada, chamando uma funcao interna free() do squid, ao inves de ficar
#com ela para futuras operaçoes.
memory_pools off
#Por padrão o Squid irá incluir o ip ou nome da sua máquina nas solicitações HTTP.
#Ele irá saber o ip da sua máquina interna como também saber qual classe ip você usa internamente.
#Para o site visitado não interessa para ele qual seu ip interno, o importante é que você visitou o
site.
forwarded_for off
#Apresenta as mensagens de erro em Portugues
error_directory /usr/share/squid/errors/Portuguese
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
109
#Por padrão o Squid já possui essa configuração como ativa. Ela serve para não colocar no log os
#parâmetros que são passados junto ao endereço acessado pelo usuário. Assim garante a
privacidade.
#As vezes quando se usa filtro por palavras e um site apresenta acesso negado é interessante setar
#essa opção como off para verificar no log o endereço completo.
strip_query_terms off
#Local para gravar os arquivos core em caso de falhas do squid (/var/spool/squid)
# ou Evitar que sejam feitos coredumps (none).
coredump_dir none
# Resolve um problema com conexões persistentes que ocorre com certos servidores,
# e que provoca delays em nosso cache.
detect_broken_pconn on
# Provoca um ganho de performance ao usar conexões Pipeline (requisições em paralelo)
#o Squid irá trabalhar com 2 requisições paralelamente
pipeline_prefetch on
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
5.4 Exercícios de Fixação
1 - O que é o SAMBA? Para que serve?
2 - Existe algo semelhante no mercado? Qual? Compare os dois.
3 - Como eu sei que o SAMBA está “rodando?
4 - Como iniciar e parar o SAMBA?
5 - Como criar usuários no SAMBA?
6 - Como ver os usuários que estão cadastrados no SAMBA
7 - É difícil configurar o SAMBA? Porquê?
8 - Como “matar” um processo que está “rodando”?
9 - Qual a função do comando “chkconfig -- level 235 smb on”?
(
(
(
(
) Carrega o serviço do smb apenas na sessão corrente;
) Carrega o serviço do smb apenas no próximo boot;
) Carrega o serviço do smb nos níveis 2, 3 e 5;
) Remove o serviço do smb dos níveis 2, 3 e 5.
10 - O que é um arquivo de logon script? Para que ele serve?
11 – O que é o APACHE? Para que serve?
12 – Como eu sei que o APACHE está “rodando”?
13 – Como iniciar e parar o APACHE e o SQUID?
14 – Como posso utilizar o apache em uma rede interna? Dê um exemplo.
14 – O que é o SQUID? Para que serve? Quais as suas vantagens?
15 – Onde o SQUID pode ser utilizado? Dê um exemplo de suas funções.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
110
Tópicos para a disciplina GSO
111
6 Capítulo 6 – Acesso Remoto e Firewall
6.1 SSH
Em informática o Secure Shell ou SSH é, simultaneamente, um programa de computador e um
protocolo de rede que permite a conexão com outro computador na rede, de forma a executar
comandos de uma unidade remota. Possui as mesmas funcionalidades do TELNET, com a vantagem
da conexão entre o cliente e o servidor ser criptografada.
Para acessar uma máquina linux via Windows com SSH, pode ser utilizado o programa Putty.exe
6.2 VNC
Virtual Network Computing (ou somente VNC) é um protocolo desenhado para possibilitar
interfaces gráficas remotas. Através deste protocolo um usuário pode conectar-se a um computador
remotamente, e utilizar as suas funcionalidades visuais como se estivesse sentado em frente do
computador.
Algumas das aplicações práticas incluem a 'assistência remota' ao utilizador. Uma das grandes
vantagens é poder fazer a conexão de diferentes ambientes unix(linux e outros) em winnt (windows
X)
Os aplicativos mais utilizados para realizar estas conexões são: RealVNC, TightVNC e
UltraVNC.
6.3 Vino e Vinagre (Gnome)
O Vino é o servidor “VNC” nativo do GNOME.
O Vinagre é somente mais um dentre tantos clientes VNC, que possui um grande diferencial: é
extremamente simples de utilizar, e é nativo do GNOME. Através dele, podemos acessar máquinas
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
112
Linux ou Windows de maneira extremamente prática, regra válida inclusive para os iniciantes. O
PC do seu amigo deu problemas? Está chovendo? Ele quer aprender como faz? Pois bem, Vinagre
nele. Com o Vinagre e esta dica, você nunca mais deixará de lado o acesso remoto via VNC.
6.4 Firewall – NetFilter/IPTABLES
Um firewall é uma barreira inteligente entre duas redes, através do qual só passa tráfego autorizado.
Este tráfego é examinado pelo firewall em tempo real e a seleção é feita de acordo com a política de
segurança estabelecida.
Sempre que um pacote chega ao firewall, este inspeciona a sua lista de conexões e faz state
matching conforme a lista de políticas.
Veja mais em: http://www.pop-mg.rnp.br/eventos/wksp2004/trabalhos/iptables.pdf
Fonte: http://pt.wikipedia.org/wiki/Iptables
Netfilter
O netfilter é um módulo que fornece ao sistema operacional Linux as funções de firewall, NAT e
log dos dados que trafegam por rede de computadores.
iptables é o nome da ferramenta do espaço do usuário que permite a criação de regras de firewall e
NATs. Apesar de, tecnicamente, o iptables ser apenas uma ferramenta que controla o módulo
netfilter, o nome "iptables" é frequentemente utilizado como referência ao conjunto completo de
funcionalidades do netfilter. O iptables é parte de todas as distribuições modernas do Linux.
Características do firewall iptables
* Especificação de portas/endereço de origem/destino
* Suporte a protocolos TCP/UDP/ICMP (incluindo tipos de mensagens icmp)
* Suporte a interfaces de origem/destino de pacotes
* Manipula serviços de proxy na rede
* Tratamento de tráfego dividido em chains (para melhor controle do tráfego que entra/sai da
máquina e tráfego redirecionado.
* Permite um número ilimitado de regras por chain
* Muito rápido, estável e seguro
* Possui mecanismos internos para rejeitar automaticamente pacotes duvidosos ou mal formados.
* Suporte a módulos externos para expansão das funcionalidades padrões oferecidas pelo código
de firewall
* Suporte completo a roteamento de pacotes, tratadas em uma área diferente de tráfegos padrões.
* Suporte a especificação de tipo de serviço para priorizar o tráfego de determinados tipos de
pacotes.
* Permite especificar exceções para as regras ou parte das regras
* Suporte a detecção de fragmentos
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
113
* Permite enviar alertas personalizados ao syslog sobre o tráfego aceito/bloqueado.
* Redirecionamento de portas
* Masquerading
* Suporte a SNAT (modificação do endereço de origem das máquinas para um único IP ou faixa
de IP's).
* Suporte a DNAT (modificação do endereço de destino das máquinas para um único IP ou fixa
de IP's)
* Contagem de pacotes que atravessaram uma interface/regra
* Limitação de passagem de pacotes/conferência de regra (muito útil para criar proteções contra,
syn flood, ping flood, DoS, etc).
6.4.1
Configurando
Para se configurar um Firewall basta adicionar as regras a ele. Isto pode ser feito manualmente ou
através de um arquivo que contenhas suas regras personalizadas.
Nota: Este arquivo deve ser executado toda vez que a máquina for ligada.
#!/bin/bash
########## C O N F I G U R A Ç Õ E S G E R A I S ##########
touch /var/lock/subsys/local
echo 1 > /proc/sys/net/ipv4/ip_forward
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/modprobe iptable_nat
/sbin/modprobe nf_conntrack
#### CUIDADO - Limpa as regras ####
#iptables -F
#iptables -t nat -F
#Interface da INTERNET
internet="eth1"
#Interface da Rede LOCAL
redelocal="eth0"
############# R E D I R E C I O N A M E N T O S #############
#Tira ips do FIREWALL
iptables -t nat -A PREROUTING -i $redelocal -s 10.0.0.1/32 -p tcp -m multiport --dport 80,443 -j
ACCEPT
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
114
#Proxy Transparente
iptables -t nat -A PREROUTING -i $redelocal -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i $redelocal -p udp --dport 80 -j REDIRECT --to-port 3128
#Proxy Transparente com DANSGUARD
#iptables -t nat -A PREROUTING -i $redelocal -p tcp --dport 80 -j REDIRECT --to-port 8080
#iptables -A INPUT -m tcp -p tcp -s ! 127.0.0.1 --dport 3128 -j DROP
#Redireciona FTP para outro Servidor
iptables -t nat -A PREROUTING -t nat -p tcp -d (IP do Servidor) --dport 20 -j DNAT --to
10.0.0.1:21
iptables -t nat -A PREROUTING -t nat -p tcp -d (IP do Servidor) --dport 21 -j DNAT --to
10.0.0.1:21
######### C O M P A R T I L H A A C O N E X A O #########
iptables -t nat -A POSTROUTING -s 10.0.0.0/255.255.0.0 -o $internet -j MASQUERADE
#AJUSTA O TAMANHO DOS PACOTES À MTU DA REDE LOCAL
iptables -a FORWARD -p tcp --tcp-flags SYN,RST SYN -m tcpmss --mss 1400:1536 -j TCPMSS
--clamp-mss-pmtu
###################### P R O T E C A O ######################
#NAO RESPONDE A PINGS
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
#IP SPOOFING
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
iptables -A INPUT -m state --state INVALID -j DROP
#AUTORIZA PACOTES VINDOS DA REDE INTERNA
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i $redelocal -j ACCEPT
#ABRE A PORTA 22 PARA O SSH
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
#BLOQUEIA ACESSOS VINDOS DA INTERNET
iptables -A INPUT -p tcp --syn -j DROP
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
6.5 Exercícios de fixação
1 - O que é SSH?
2 - Como acessar um computador via SSH?
3 - O que é VNC?
4 - Existe algum software para utilizar o VNC? Quais? Comente.
5 – Cite e comente as vantagens de se utilizar acesso remoto em computadores.
6 – O que é um FIREWALL? Para que serve?
7 – Como faço para configurar um Firewall? Que regras tenho que inserir?
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
115
Tópicos para a disciplina GSO
116
7 Capítulo 7 - Extras
7.1 linuxconf
O Linuxconf é um aplicativo avançado de administração para um sistema Linux. Ele centraliza
tarefas como configuração do sistema e monitoração dos serviços existentes na máquina. Na
verdade, o Linuxconf é um gerenciador de módulos, cada qual responsável por executar uma tarefa
específica.
Tendo em vista a maneira como o Linuxconf foi projetado, para adicionar uma funcionalidade basta
que alguém escreva um novo módulo para executar a tarefa. Com isto, consegue-se uma ferramenta
que pode centralizar a configuração de todo o sistema.
O presente capítulo é destinado a este aplicativo, onde será descrito o seu ambiente, quais as
principais configurações que podem ser feitas através dele, e como sua interface é organizada.
7.2 Interface do Linuxconf
A maioria das interfaces de administração possui uma interface fixa, que não se adapta ao ambiente.
Muitas vezes, o administrador pode desejar executar o aplicativo de configuração em um modo que
não gaste tanta memória, para que esta possa ser utilizada para outras finalidades. O Linuxconf,
entretanto, possui várias interfaces, dependendo da aplicação e do gosto do administrador:
Interface texto
Interface indispensável, pois pode ser utilizada a qualquer momento, seja via console ou via acesso
remoto (telnet ou ssh). Esta interface elimina a necessidade de manter instalado um servidor gráfico
X apenas para configurar a máquina. Esta interface é acionada ao se digitar linuxconf em um
terminal, caso esteja em modo gráfico, basta abrir um terminal e digitar linuxconf --text.
Interface web
A possibilidade de configurar uma máquina através de uma interface web é cômoda, pois basta ter
acesso a um navegador. Com isto, é possível configurar uma máquina através de praticamente
qualquer plataforma de hardware e software, bastando utilizar um navegador.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
117
A interface web pode ser acessada através da URL http://sua_maquina:98/, mas para isto você deve
primeiramente configurar o Linuxconf para que ele aceite conexões via rede.
Interfaces gráficas
Interfaces amigáveis para usuários que preferem configurar o sistema através de uma interface
gráfica, tendo à sua disposição janelas, caixas de diálogo e botões. Estas interfaces devem ser
executadas em um servidor gráfico X, como o XFree86 (servidor gráfico padrão do Linux).
Geralmente, as interfaces gráficas contidas nas distribuições que suportam o Linuxconf contêm
menus de acesso para o aplicativo. Para executar esta interface, basta abrir um terminal gráfico e
executar o comando linuxconf.
Nota: É necessário ter o pacote gnome-linuxconf instalado para ter acesso às interfaces gráficas;
durante o guia, será utilizada a interface gráfica de árvore de menus (treemenu), e se você desejar
desabilitá-la, vá em Controle -> Gerenciamento do Linuxconf -> Módulos, no Linuxconf.
Interface de linha de comando
Alguns módulos do Linuxconf podem ser utilizados via linha de comando, o que, entre outras
possibilidades, permite a sua utilização em scripts. Se você quiser utilizar essa interface, poderá
iniciá-la através de dois comandos básicos: linuxconf --status exibe o relatório do que precisa ser
feito para sincronizar a configuração do sistema, e o comando linuxconf --update efetua as
alterações. Você pode executar o comando linuxconf --help para ver mais detalhes.
Você poderá utilizar qualquer uma destas interfaces, dependendo apenas da sua necessidade ou do
que há disponível na máquina que está sendo administrada.
Iniciando o Linuxconf
Como será utilizada a interface gráfica do Linuxconf para demonstrá-lo, ele pode ser executado a
qualquer momento através da linha de comando de um terminal (digitando linuxconf na linha de
comando) ou pode-se clicar no ícone/menu do ambiente gráfico, sempre como superusuário. No
KDE, você pode acessá-lo através do menu K, localizado no painel.
A configuração padrão da maioria das distribuições permite que apenas o superusuário acesse o
Linuxconf. Esta política foi escolhida por questões de segurança. Para que outros usuários possam
executá-lo é necessário que o programa tenha o bit suid habilitado. Para isso, execute o seguinte
comando como superusuário:
# chmod +s /bin/linuxconf
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
118
7.3 Arquivos de configuração
7.3.1
/etc/resolv.conf
O /etc/resolv.conf é o arquivo de configuração principal do código do resolvedor de nomes. Seu
formato é um arquivo texto simples com um parâmetro por linha e o endereço de servidores DNS
externos são especificados nele. Existem três palavras chaves normalmente usadas que são:
domain
Especifica o nome do domínio local.
search
Especifica uma lista de nomes de domínio alternativos ao procurar por um computador, separados
por espaços. A linha search pode conter no máximo 6 domínios ou 256 caracteres.
nameserver
Especifica o endereço IP de um servidor de nomes de domínio para resolução de nomes. Pode ser
usado várias vezes.
Como exemplo, o /etc/resolv.conf se parece com isto:
Domain
search
nameserver
nameserver
maths.wu.edu.au
maths.wu.edu.au wu.edu.au
192.168.10.1
192.168.12.1
Este exemplo especifica que o nome de domínio a adicionar ao nome não qualificado (i.e.
hostnames sem o domínio) é maths.wu.edu.au e que se o computador não for encontrado naquele
domínio então a procura segue para o domínio wu.edu.au diretamente. Duas linhas de nomes de
servidores foram especificadas, cada uma pode ser chamada pelo código resolvedor de nomes para
resolver o nome.
7.3.2
/etc/hosts
O arquivo /etc/hosts faz o relacionamento entre um nome de computador e endereço IP local.
Recomendado para IPs constantemente acessados e para colocação de endereços de virtual hosts
(quando deseja referir pelo nome ao invés de IP). A inclusão de um computador neste arquivo
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
119
dispenda a consulta de um servidor de nomes para obter um endereço IP, sendo muito útil para
máquinas que são acessadas frequentemente. A desvantagem de fazer isto é que você mesmo
precisará manter este arquivo atualizado e se o endereço IP de algum computador for modificado,
esta alteração deverá ser feita em cada um dos arquivos hosts das máquinas da rede. Em um sistema
bem gerenciado, os únicos endereços de computadores que aparecerão neste arquivo serão da
interface loopback e os nomes de computadores.
# /etc/hosts
127.0.0.1 localhost loopback
192.168.0.1
maquina.dominio.com.br
Você pode especificar mais que um nome de computador por linha como demonstrada pela primeira
linha, a que identifica a interface loopback. Certifique-se de que a entrada do nome de domínio
neste arquivo aponta para a interface de rede e não para a interface loopback, ou terá problema com
o comportamento de alguns serviços.
OBS: Caso encontre problemas de lentidão para resolver nomes e até para executar os aplicativos
(como o mc, etc), verifique se existem erros neste arquivo de configuração.
Estes sintomas se confundem com erros de memória ou outro erro qualquer de configuração de
hardware, e somem quando a interface de rede é desativada (a com o IP não loopback). Isto é
causados somente pela má configuração do arquivo /etc/hosts. O bom funcionamento do Unix
depende da boa atenção do administrador de sistemas para configurar os detalhes de seu servidor.
7.4 Comando “sudo”
O comando sudo é um recurso mais poderoso que o su. Isso porque, nele, é possível definir quem
pode utilizá-lo e quais comandos podem ser executados por esses usuários. Alem disso, o sudo pode
ser configurado para exigir a senha novamente quando o usuário deixa de utilizar o sistema por um
determinado tempo, por exemplo, por 10 minutos. A configuração do sudo geralmente é feita
através do arquivo /etc/sudoers.
O uso do sudo é interessante porque o usuário não precisa saber a senha do root, apenas terá que ter
permissão para usar determinados comandos pelo sudo. Além disso, o sudo permite registrar em um
arquivo de log todas as atividades efetuadas, algo que é bem limitado no su.
Para mais informações sobre o sudo, visite o site www.courtesan.com.
FONTE: http://www.infowester.com/linroot.php
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
120
7.5 Crontab e at
FONTE: http://caixamagica.org/outros/cron.html
Ricardo Ferreira
7.5.1
Crontab
Cron é um excelente utilitário que ajudar o administrador do sistema a automatizar tarefas
repetitivas.
Cron é controlado por um conjunto de ficheiros chamados "crontabs". Existe um ficheiro "master"
em /etc/crontab juntamente com outros ficheiros crontab para os utilizadores, em /var/spool/cron/.
Neste diretório, os ficheiros recebem o nome do ID do login do utilizador.
Na distribuição Red Hat a configuração de cron jobs é um pouco diferente. O ficheiro /etc/crontab
executa vários items em sub-directórios a intervalos regulares.
/etc/cron.hourly
/etc/cron.daily
/etc/cron.weekly
/etc/cron.monthly
Tudo o que é necessário é colocar um script ou um link para um executável num destes directórios e
será automaticamente executado no tempo apropriado.
Configurar um crontab a nível do utilizador é um pouco diferente. Os ficheiros localizados em
/var/spool/cron não são editados diretamente. Em vez disso, um programa chamado crontab é
utilizado. Dependendo da segurança do sistema, todos os utilizadores, ou só alguns ou apenas o root
poderão utilizar o crontab (faça man crontab e veja o /etc/cron.allow e /etc/cron.deny para mais
informações):
SYNOPSIS crontab [ -u user ] file crontab [ -u user ] { -l | -r | -e }
file
-u
-l
-r
-e
store the specified file as the current crontab
user the crontab file being manipulated is for
display the current crontab
remove current crontab
edit the current crontab (editor depends on system variables and will probably be vi unless
your sysadmin has changed it).
Se não está familiarizado com o editor pré-definido no sistema é preferível criar ou editar o ficheiro
com um editor com o qual está familiarizado e utilizar a opção file.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
121
Configuração da crontab:
Linhas em branco e espaços iniciais bem como tabs são ignoradas. Linhas que começam com # são
comentários e são ignoradas. Não é permitido ter comentários na mesma linha onde existem
comandos cron; o sistema assume que fazem parte do comando. Os comentários também não
podem estar na mesma linha de configurações do ambiente pelo mesmo motivo.
Sintaxe
(espaços entre = são opcionais)
Cada comando cron tem 5 campos da tempo e data, seguidos pelo nome do utilizador, case se trate
do ficheiro crontab do sistema, seguido por um comando. Os comandos são executados quando o
tempo definido pelos campos tempo/data coincide com o tempo atual na máquina.
Campo
----minuto
hora
dia ou mês
mês
dia da semana
valores permitidos
-----------------0-59
0-23
0-31
0-12 (ou nomes, veja em baixo)
0-7 (0 ou 7 é Domingo, em alternativa use nomes)
Um campo pode ser um asterisco (*) que representa do primeiro ao último. Assim, usado no campo
das horas, significa todas as horas das 0:00 às 24:00.
Exemplo de crontab:
#
#
#
#
#
#
#
r----minuto
|
r-----hora
|
|
r------dia do mês
|
|
|
r------mês
|
|
|
|
r------dia da semana
|
|
|
|
|
|------ comando a correr ------------->
|
|
|
|
|
|
5
0
*
*
*
$HOME/bin/daily.job >> $HOME/tmp/out 2>&1
Corre cinco minutos depois da mei-noite, todos os dias
Corre às 2:15pm no primeiro dia de cada mês -- output enviado por mail
15 14 1 * * mail -s "Vê este URL" ricfer%Ricardo,%%Vê: http://www.poli.org%
Mostra esta mensagem às 5:04 de cada Domingo.
5 4 * * sun echo "corre aos Domingos às 5:04"
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
122
Mais informações sobre o crontab e cron podem ser encontradas nas páginas do manual:
man cron
man crontab
man 5 crontab
7.5.2
at
O comando at trabalha com tarefas que serão executadas uma única vez, num horário determinado.
No entanto, o at é apenas um comando. O serviço que está por tráz deste agendamento chama-se atd
e precisa estar funcionando para que o agendamento de tarefas funcione.
Para verificar se o daemon do at está rodando pode-se utilizar:
# service atd status
Para agendar uma tarefa com o at, pode-se fazer o seguinte:
$ at <horário> <ENTER>
<comando1>
<comando2>
...
<CTRL+D>
Onde:
<horário> : pode ser o horário no estilo HH:MM, noon, midnight, MMDDYY, MM.YY, now, etc...
<comandoN> : qualquer comando/script que o usuário possa executar
<CTRL+D> : Seqüência de teclas que informa ao at o final da edição dos comandos
Por exemplo, parar executar uma tarefa daqui a 5 dias:
$ at now + 5 days
/bin/echo “Tudo OK!” > /dev/tty1
^D
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
123
Para executar uma tarefa no dia 01/01/2007 às 00:01 Horas
$ at 00:01 01/01/2007
/bin/echo “Feliz Ano Novo!” > /dev/tty1
^D
Por padrão o agendamento de tarefas com o at é permitido a todos os usuários do sistema, mas o
administrador pode necessidar bloquear este recurso aos usuários ou mesmo liberar este recurso
apenas para alguns usuários do sistema. Para isto será necessário editar os arquivos /etc/at.allow
(lista de quem pode executar comandos) e /etc/at.deny (lista de quem NÃO pode executar
comandos) colocando um usuário por linha para permitir ou bloquear o uso deste recurso. Caso
estes arquivos não existam ou estejam vazios, o agendamento de comandos é permitido a todos os
usuários.
Uma vez que uma tarefa foi agendada, esta fica armazenada em um arquivo dentro do diretório
/var/spool/cron/atjobs. O comando atq permite visualizar as tarefas agendadas e o comando atrm
seguido do número da tarefa permite remover uma tarefa agendada.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
124
7.6 Exercícios de Fixação
1 - Para que serve o linuxconf?
2 - O que é DNS?
3 - Qual arquivo no linux é responsável pela configuração do "resovedor de nomes"? como posso editálo? (comando)?
4 - Fale sobre o arquivo /etc/hosts. Como ele pode ser útil em minha rede?
5 - O que faz o comendo sudo?
6 - Qual a diferença entre os comandos CRONTAB e AT?
7 – Exercício prático:
a - Faça o login no sistema como usuário aluno.
b - Execute o comando crontab –e (ou edite o arquivo manualmente)
c - Agende uma determinada tarefa para ser executada uma vez por dia durante todos os dias do mês atual. Especifique um
horário no qual você possa aguardar e verificar se a tarefa está sendo executada.
d - Depois de ter verificado e constatado que funcionou, remova a tarefa agendada.
e - Agende uma determinada tarefa com o comando at para ser executada daqui a 5 minutos e verifique se a tarefa foi
executada.
8. Uma tarefa agendada pelo “crontab” só será removida pelo comando “contrab –r”
( ) Falso, pois quanto a tarefa é executada, ela é retirada automaticamente da lista.
( ) Verdadeiro, pois apesar do usuário não poder fazê-lo o “root” fará por ele.
( ) Falso, pois depende do arquivo “cron.allow”.
( ) Verdadeiro, caso contrário a atividade continuará sempre agendado.
9. Qual o formato do arquivo gerado pelo “contrab” ?
( ) MIN, HORA, DIA-SEMANA, MÊS, COMANDO
( ) MIN, HORA, DIA, MÊS, DIA-SEMANA, COMANDO
( ) DIA, MÊS, ANO, DIA-SEMANA, COMANDO
( ) HORA, MIN, SEGUNDO, MÊS, DIA, COMANDO
10. O que significa a seguinte linhas do “crontab –e”?
0 8,18 * * 1-5 tar –jcvf /backup /dados
(
(
(
(
) faz o backup comprimido do /backup de segunda a sexta as 8 e 18 horas;
) faz o backup comprimido do /dados de segunda a sexta as 8 e 18 horas;
) faz o backup do /dados das 0:8 hs e 0:18 hs de janeiro a maio;
) faz o backup do /dados de segunda a sexta as 8 e 18 de todos os meses.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
125
8 Exercícios Gerais
1.
Crie a estrutura abaixo no seu diretório:
Permissões:
Administrativo:
Professores:
Alunos:
RH:
CPD:
COARD:
2.
a)
b)
c)
drwxr----drwxr-x--dr-xr-xr-drwxr-x--drwxrwx--drwxrw----
Mude as permissões do diretório “Aula” da seguinte maneira:
Dê permissão total para todo mundo.
Retire a permissão de execução de todos.
Grupo e outros deverão ter apenas permissão de leitura.
3.
Crie um arquivo chamado “informática” dentro de “Aula”, permita que o usuário possa ler, escrever e
excutar, o grupo possa ler e escrever e os outros usuários não tenham acesso.
4.
No diretório /dev, como são representados o primeiro HD SCSI, o segundo HD IDE, o primeiro CD e
disquete no Linux?
5.
Faça um backup compactado de toda a estrutura da ESCOLA criada na questão 6 e salve com o
nome bkp_ ESCOLA.tgz dentro da pasta /home/ESCOLA .
6.
Liste toda a estrutura da questão 1 e redirecione para um arquivo chamado arvore_escola.txt
também dentro do diretório /home/ESCOLA .
7.
Liste todos os dispositivos que se encontram no arquivo fstab e redirecione para um arquivo
chamado dispositivos.txt também dentro do diretório /home/ESCOLA .
8.
Que comando posso utilizar para saber quais processos estão rodando no sistema?
9.
Qual comando completo é utilizado para finalizar um processo imediatamente?
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Tópicos para a disciplina GSO
10.
Que comando é utilizado para saber a identificação do meu usuário e do meu grupo?
11.
Como podemos ver quais são as partições que estão montadas?
126
12. Descreva a forma correta para montar o primeiro disquete do micro no diretório “/mnt/floppy” usando o
sistema “fat”.
13. Qual o nome do arquivo que armazena informações dos usuários? Como se faz para ver o conteúdo
deste arquivo sem usar um editor de textos?
14. Descreva duas maneiras de listar o conteúdo de um diretório pausadamente quando o seu conteúdo
é muito grande e não cabe na tela.
Professor Marcio R. G. de Vazzi - www.vazzi.com.br
Download