iniciando com linux

37
Iniciando com Linux Diogo Luiz Böhm [email protected] ___________________________________________________________________________________________________ JAC – UNISC - 10/09/2009

Upload: diogobohm

Post on 06-Jun-2015

2.647 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Iniciando com Linux

Iniciando com LinuxDiogo Luiz Böhm

[email protected]

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Page 2: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Agenda

- História- Características do Linux- Distribuições- Estrutura do sistema- “Caras” do Linux- Instalação- Sistemas de arquivos- Permissões- Se virando no terminal- Aprendendo mais

Page 3: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

História

O Linux é um sistema operacional criado em 1991 por Linus Torvalds na universidade de Helsinki na Finlândia.

É um sistema Operacional de código aberto distribuído gratuitamente pela Internet.

Seu código fonte é liberado como Free Software (software livre), sob licença GPL, o aviso de copyright do kernel feito por Linus descreve detalhadamente isto e mesmo ele não pode fechar o sistema para que seja usado apenas comercialmente.

Page 4: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Características do Linux

• É livre e desenvolvido voluntariamente por contribuidores espalhados ao redor do mundo com o objetivo a contribuição para a melhoria e crescimento deste sistema operacional;

• Também recebe apoio de grandes empresas como IBM, Sun, Oracle, HP, etc. para seu desenvolvimento;

• Convive sem nenhum tipo de conflito com outros sistemas operacionais (com o DOS, Windows, OS/2) no mesmo computador;

• Multitarefa real;

• Multiusuário;

Page 5: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Características do Linux

• Suporte a nomes extensos de arquivos e diretórios (255 caracteres);

• Conectividade com outros tipos de plataformas como Apple, Sun, Macintosh, Sparc, Alpha, PowerPc, ARM, Unix, Windows, DOS, etc;

• Utiliza permissões de acesso a arquivos, diretórios e programas em execução na memória RAM;

• Proteção entre processos executados na memória RAM;

• Suporte a mais de 63 terminais virtuais (consoles);

Page 6: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Características do Linux

• Modularização - O Linux somente carrega para a memória o que é usado durante o processamento, liberando totalmente a memória assim que o programa/dispositivo é finalizado;

• Devido a modularização, os drivers dos periféricos e recursos do sistema podem ser carregados e removidos completamente da memória RAM a qualquer momento;

• Não há a necessidade de se reiniciar o sistema após a modificar a configuração de qualquer periférico ou parâmetros de rede;

Page 7: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Características do Linux

• Não precisa de um processador potente para funcionar. O sistema roda bem em computadores 386Sx 25 com 4MB de memória RAM (sem rodar o sistema gráfico X, que érecomendado 32MB de RAM). Já pensou no seu desempenho em uma arquitetura melhor?

• Suporte nativo a múltiplas CPUs, assim processadores como Dual Core Athlon Duo, Quad Core tem seu poder de processamento integralmente aproveitado;

• Suporte nativo a dispositivos SATA, PATA, Fiber Channel;

• Suporte nativo a virtualização;

Page 8: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Características do Linux

• O crescimento e novas versões do sistema não provocam lentidão, pelo contrário, a cada nova versão os desenvolvedores procuram buscar maior compatibilidade, acrescentar recursos úteis e melhor desempenho do sistema;

• Não é requerido pagamento de licença para uso;

• Acessa corretamente discos formatados pelo DOS, Windows, Novell, OS/2, NTFS, SunOS, Amiga, Atari, Mac, etc;

• O LINUX NÃO É VULNERÁVEL A VÍRUS!

Page 9: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Características do Linux

• Rede TCP/IP mais rápida que no Windows e tem sua pilha constantemente melhorada;

• Roda aplicações DOS através do DOSEMU, QEMU, BOCHS;

• Roda aplicações Windows através do WINE;

• Vários tipos de firewalls de alta qualidade e com grande poder de segurança de graça;

• Roteamento estático e dinâmico de pacotes;• Ponte entre Redes, proxy arp;

• Proxy Tradicional e Transparente;

Page 10: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Características do Linux

• Possui recursos para atender a mais de um endereço IP na mesma placa de rede;

• Os sistemas de arquivos usados pelo GNU/Linux (Ext3, Ext3, reiserfs, xfs, jfs) organiza os arquivos de forma inteligente evitando a fragmentação e fazendo-o um poderoso sistema para aplicações multi-usuárias exigentes e gravações intensivas;

• Permite a montagem de um servidor de publicação Web, E-mail, News, etc. com um baixo custo e alta performance;

Page 11: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Distribuições

• http://distrowatch.com;

• Principais:Ubuntu 9.04Fedora 11openSUSE 11.1Debian 5.0.3Slackware 13.0Arch LinuxDamn Small Linux 4.4.10

Page 12: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Estrutura do Sistema

• Dentro do linux, temos a raiz “/” e a partir dela, os diretórios são organizados da seguinte forma:• /

• /bin• /sbin• /usr• /usr/local• /mnt• /tmp• /var• /home

Page 13: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Estrutura do Sistema

• Caminhos dentro do sistema:• Logs do sistema:

/var/log/syslog

• Home do meu usuário:/home/usuario

• Configuração de rede:/etc/network/interfaces

Page 14: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Estrutura do Sistema - Usuários

• root: Usuário administrativo. “O que tudo pode”.• Normalmente não utiliza ambiente gráfico;• No terminal, é sinalizado com o caracter “#”

• usuário: Usuários normais, não administradores.• Dependem de permissões para

leitura/escrita/execução em pastas e arquivos;• No terminal, são sinalizados com o caracter “$”

Page 15: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Estrutura do Sistema - Grupos

• Um usuário possui:• Apenas um grupo primário;• Nenhum ou mais grupos secundários;

• Estes grupos permitem acessos a diferentes recursos;

• Podemos separar usuários em grupos distintos e limitar/expandir suas ações no sistema;

Page 16: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

“Caras” do Linux

• Linux possui vários gerenciadores de Desktop:• GNOME• KDE• XFCE• FluxBox

Page 17: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

“Caras” do Linux

• GNOME

Page 18: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

“Caras” do Linux

• KDE

Page 19: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

“Caras” do Linux

• XFCE

Page 20: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

“Caras” do Linux

• FluxBox

Page 21: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Instalação

• Hoje a maioria das distribuições voltadas para o usuário final possui recursos de LiveCD, o que permite a execução do sistema direto do CD;

• A partir daí, o usuário pode usar o sistema livremente e escolher rodar a instalação ou não;

• A instalação é realizada em torno de 6 passos e normalmente leva em torno de 30 minutos;

• Algumas distribuições possuem instaladores por menus de texto também fáceis, porém permitindo uma maior customização do sistema;

Page 22: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Instalação

• Instalação por LiveCD:

• Instalação por menu de texto:

Page 23: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Sistemas de Arquivos

• O Linux possui compatibilidade com os mais variados tipos de sistemas de arquivos, o que permite instalá-lo utilizando a melhor estrutura de acordo com o seu perfil;

# Extended Filesystem - ext (Linux)# Second Extended Filesystem - ext2 (Linux)# Third Extended Filesystem - ext3 (Linux, journalling)# Reiser Filesystem - reiserfs (Linux, journalling)# Amgia Fast Filesystem - affs# High Performance Filesystem - hpfs (OS/2)# IS0 9660 Filesystem - iso9660 (CD-ROM)# Minix Filesystem - Minix (Minix. first filesystem used by Linux)# FAT 16 bit - msdos (DOS, Windows)# Virtual Fat Fielsystem - vfat (DOS, Windows) Supports long filenames# Network Filesystem - NFS# Novell Filesystem - NCPFS (Novell)# System V Filesystem - sysv (System V Unix variants)# Uniform Filesystem - ufs ( BSD, Solarius, NeXTStep)# UMSDOS Filesystem - umsdos (Unix filesystem on DOS)# adfs# autofs# coda# coherent

# cramfs# devpts# efs# hfs# jfs (Linux, journalling)# ntfs# proc# qnx4# romfs# smbfs# tmpfs# udf# xenix# xfs Silicon Graphics' (SGI's) IRIX

Page 24: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Sistemas de Arquivos

• Sistemas de arquivos normalmente utilizados:• ext3 (ou o novo ext4): sistema com journaling, boa

performance, padrão do Linux;• ReiserFS: sistema com journaling, melhor

performance;• FAT32: sistema sem journaling e de baixa

performance e escalabilidade, porém é compatível com sistemas Windows;

• NTFS: Sistema de arquivos padrão do Windows, permite a instalação de Linux dentro do Windows;

• NFS: Sistema de arquivos distribuído via rede. Permite que muitas máquinas utilizem a mesma unidade de disco, gravando e lendo arquivos de forma concorrente.

Page 25: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Permissões

• 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 irreversíveis em seus arquivos, seu micro ou sua empresa;

Page 26: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Permissões

• O princípio 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;• grupo: Define qual grupo de usuários possui

permissões neste arquivo ou diretório;• outros: É a categoria de usuários que não são

donos ou não pertencem ao grupo do arquivo;

Page 27: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Permissões - Tipos

• 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 de gravação;

• x - Permite executar um arquivo como um programa ou script. Caso seja um diretório, permite que seja acessado através de outros comandos, como ls e cd.

Page 28: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Permissões

• -rwxrwxrwx diogo users teste

• A primeira letra diz qual é o tipo do arquivo. A letra “d” significa que é um diretório, um “l” um link a um arquivo no sistema, um “-” significa que é um arquivo comum, etc. • Da segunda a quarta letra (rwx) dizem qual é a permissão de acesso ao dono do arquivo, neste caso, diogo. 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; • Os três últimos caracteres (rwx) representam as permissões para outros usuários;

Page 29: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Permissões

• -rwxrw-r-- diogo users teste

• A primeira letra diz qual é o tipo do arquivo. A letra “d” significa que é um diretório, um “l” um link a um arquivo no sistema, um “-” significa que é um arquivo comum, etc. • Da segunda a quarta letra (rwx) dizem qual é a permissão de acesso ao dono do arquivo, neste caso, diogo. 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; • Os três últimos caracteres (rwx) representam as permissões para outros usuários;

Page 30: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Se virando no terminal

• Sem dúvida a ferramenta mais poderosa de uso do sistema é o terminal. Nele você pode manipular dados das mais diversas formas. Seja por comandos ou scripts, muitas tarefas árduas na interface gráfica são facilmente resolvidas pelo terminal.

• Para tanto, existem milhares de ferramentas para as mais variadas finalidades, desde manipulação de arquivos até conversão de formatos, browsers, acesso remoto, gerência de rede, loggers, servidores, enfim, tudo no linux pode ser feito via terminal.

Page 31: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Se virando no terminal

• Para entender a interface do terminal e suas permissões, lembre-se dos caracteres de usuário “#” e “$”;

• Se você não entende como um certo comando funciona, ou quais são seus parâmetros, vale a pena consultar o manual e evitar problemas através do comando “man comando”. Uma tela é aberta com a explicação detalhada daquele comando;

• Outro comando útil é o “pwd”. Muitas vezes não sabemos onde estamos navegando. Este comando retorna o caminho atual da sua localização no sistema;

Page 32: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Se virando no terminal

• Principais comandos:• ls: lista arquivos em um diretório. Sem parâmetros,

lista os arquivos do diretório atual. A opção “-l” lista também as permissões e outras informações. Pode listar um arquivo/diretório específico.

Exemplo: ls -l /var

• cd: muda o diretório atual. Serve para navegar dentro do sistema e assim manipular os arquivos sem precisar passar o caminho completo nos parâmetros;

Exemplo: cd /usr/lib

• mv: move um arquivo/diretório para outro local e/ou renomeia este arquivo.

Exemplo: mv teste /tmp/teste.txt

Page 33: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Se virando no terminal• groups: lista os grupos do usuário atual ou de um

usuário específico.Exemplo: groups root

• touch: cria um arquivo vazio no sistema. Exemplo: touch arquivo

• rm: remove um arquivo. A opção -r (recursive) permite também remover pastas e arquivos dentro dela. Não pede confirmação por padrão!

Exemplo: rm arquivo

• mkdir: cria um diretório vazio no sistema. Exemplo: mkdir novo

• rmdir: remove um diretório vazio do sistema. Exemplo: rmdir pasta

Page 34: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Se virando no terminal

• cat: imprime o conteúdo de um arquivo.Exemplo: cat log.txt

• tail: imprime as dez últimas linhas de um arquivo. Bom para arquivos grandes de log, onde apenas as últimas informações interessam.

Exemplo: tail /var/log/syslog

• pg: separa a impressão de um arquivo em páginas. Exemplo: pg /var/log/syslog

• cp: copia um arquivo para outro local ou duplica com outro nome:

Exemplo: cp teste.txt teste-old.txt

Page 35: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Se virando no terminal

• dmesg: imprime as últimas informações do sistema.

• chmod: muda as permissões de um arquivo ou diretório. Somente funciona caso o usuário seja dono do objeto ou seja root.

Exemplo: chmod u=rwx,g=rwx,o=rwx arquivo

• chown: muda o dono/grupo de um arquivo ou diretório. Novamente, privilégios de dono ou root são necessários;

Exemplo: chown user:grupo arquivo

• ./: executa um arquivo como se fosse uma aplicação, caso tenha permissões de execução.

Exemplo: ./programa

Page 36: Iniciando com Linux

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009

Aprendendo mais - Referências

• Não termina por aí! Existe muito o que aprender e sempre é bom estudar!

• Guia FOCA Linux - http://focalinux.cipsga.org.br/

• Comunidade Viva o Linux- http://vivaolinux.org.br

• Comunidade BR-Linux - http://br-linux.org

• Comunidade Ubuntu - http://ubuntu.com• Comunidade Slackware - http://slackware.com• Comunidade Debian - http://debian.org• Comunidade Fedora - http://fedora.org.br

Page 37: Iniciando com Linux

Obrigado!

Iniciando com LinuxDiogo Luiz Böhm

[email protected]

___________________________________________________________________________________________________JAC – UNISC - 10/09/2009