Seja Bem-Vindo. Este site tem recursos de leitura de texto, basta marcar o texto e clicar no ícone do alto-falante   Click to listen highlighted text! Seja Bem-Vindo. Este site tem recursos de leitura de texto, basta marcar o texto e clicar no ícone do alto-falante

Aula 06 – Instalações e Gerenciamento de Redes

Redes Baseadas em Linux

Por que devemos estudar Linux? Quais são as vantagens? Quais são as desvantagens?

Estabilidade
O sistema Linux é conhecido pela ótima estabilidade que ele tem. Ele pode ficar anos sem ter um problema no sistema, e de fato, muitos usuários elogiam o Linux justamente por isso, por ele não dar problemas com a mesma frequência o Windows costuma dar.

Para as empresas isso é muito legal, pois tendo um sistema estável não correrá o risco de perder dados importantes devido a um erro do sistema. Outra vantagem é que geralmente não há a necessidade de realizar reboots no Linux, quase todas as mudanças nas configurações podem ser realizadas com o computador ligado.

Segurança
Um fato que muitos sabem é que o Linux é bem mais seguro que o Windows, tanto no servidor, quanto no desktop.

Qualquer instalação ou alteração necessária no sistema Linux, precisará ser aprovado pelo usuário root, que é uma espécie de usuário especial do sistema. Sendo assim, a probabilidade de pegar um vírus, ou ter um programa malicioso adicionado é muito menor do que no Windows. Eles só serão adicionados ao sistema caso você autorize com sua senha e nome de usuário.

Compatibilidade com Hardware
O Linux além de leve, rápido e flexível, funciona normalmente em praticamente todos os computadores. Não importa muito qual modelo seja o computador ou o processador utilizado pela máquina, no caso de computadores mais antigos, você pode escolher uma distribuição Linux mais leve.

Além disso, o Linux pode ser reconstruído para empresas. Pode modificar suas configurações para apenas os serviços que são necessários para sua empresa. Isso liberará um espaço maior da memória do sistema, e o deixará ainda mais rápido.

Liberdade
Como o Linux é um sistema open source, você estará livre para , alterar o código fonte do sistema e deixar com características necessárias para o seu trabalho.

É devido a essa liberdade que existem diversas distribuições Linux.

Baixo custo
Como o Linux e os programas o acompanham na maior parte das distribuições são softwares Livres, você pode copiar e instalar livremente sem precisar comprar o sistema e sem se preocupar com licenças de software e possíveis multas pelo uso de software pirata em empresas.

Várias empresas famosas utilizam o sistema Linux, entra elas, podemos destacar o site de buscas Google.

Alguns números para ilustrar (site)

De acordo com pesquisa da W3Techs, em servidores da Internet, o Linux e o Unix (do qual o Linux é derivado) têm uma participação de mercado de 67,4%, contra 32,6% do Windows (dados de março de 2014, veja o link para informações atualizadas). Isso significa que para cada servidor Windows existente, há dois Linux/Unix e, portanto, a probabilidade de você ter que lidar com servidores usando o Linux é muito maior.

A oferta de livros e cursos dedicados aos sistemas operacionais da Microsoft é muito maior. Você pode, portanto, aprender sobre sistemas Windows e programas servidores para esta plataforma de maneira muito mais satisfatória, através de outros meios.

O custo de hospedagem de servidores Linux é inferior ao de servidores Windows, já que não é necessário comprar uma licença de uso do sistema operacional ou dos programas instalados. De fato, tanto o sistema operacional quanto todos os programas que instalaremos são inteiramente grátis e você não precisará se preocupar com custos de licenciamento.

Preparando o Ambiente

Ubuntu é a distribuição Linux mais popular do mundo, talvez por isso, seja uma das mais usadas por quem deseja experimentar o sistema. Se você também quer utilizar o Ubuntu, mas não quer deixar seu sistema atual, uma alternativa é utilizar um software para simular (ou virtualizar) um computador. Para isso, o VirtualBox, é uma ótima opção, pois permite criar, gerenciar e executar máquinas virtuais dentro do Windows, Linux, Solaris ou Mac OS X. Com o Ubuntu sendo executado dentro do VirtualBox, você pode usá-lo sempre que precisar, sem ter que reiniciar.

Depois de instalarmos o Ubuntu no VirtualBox, devemos configurar a placa de rede do aplicativo VirtualBox para o modo bridge, assim teremos a nossa instalação de Linux, na mesma rede que o nosso computador host.

Comandos Básicos do Linux.

Embora seja possível fazer quase todas as operações que de administração de um servidor Linux na interface gráfica, o shell é muito mais rápido e produtivo e é muito mais homogêneo em se tratando de comandos que as interfaces gráficas.

Na literatura técnica de informática, algumas notações na escrita são necessárias para transmitir, de maneira correta, os conceitos envolvidos.

  • Na linha de comando do Linux (shell) temos várias informações na tela. Veja a figura abaixo descrição dos itens.
Terminal do Linux
Terminal do Linux

Iniciando um Shell

  • Programa Terminal
    • Botão de busca > terminal
  • Prompt de comando
    • Usuário comum: símbolo $
    • Superusuário ( root ): símbolo #

Comandos de sessão

  • Inicialização de sessão
    $ login
  • Encerramento de sessão
    $ logout
  • Encerramento do Shell corrente
    $ exit ou #exit

Comandos de Reinicialização e Desligamento do computador

  • Reinicialização do computador
    # reboot
  • Desligamento do computador
    # halt

Comandos de Ajuda

  • $man
  • $info
  • $pinfo
  • $whatis
  • $apropos

Comandos de Navegação

  • Usados para movimentação nos diretórios e listagem de conteúdo.
    • $pwd
    • $ls
    • $cd
    • $mkdir
    • $rm [-r]

Verificando diretórios

  • Cada usuário possui um diretório
    • Diretório home
  • Descobrindo o diretório atual
    • $ pwd
  • Listando arquivos e diretórios
    • $ ls
    • $ ls –la

Acessando diretórios

  • Acessando um diretório
    • $ cd [nome_do_diretório]
  • Retornando ao diretório anterior
    • $ cd ..
  • Retornando ao diretório home
    • $ cd ~

Gerenciando diretórios

  • Criando um novo diretório
    • $ mkdir [nome_do_diretório]
  • Removendo (excluindo) um diretório
    • $ rm –r [nome_do_diretório]

Comandos sequenciais

  • Comandos separados por ponto e vírgula (;).
  • Executados na sequencia em que aparecem.
    • $ cd .. ; ls
    • $ ls ; cd ~

Exercício

  • Na pasta home, crie os seguintes diretórios:
    – sor
    – arqredes
    – tecredes
  • Verifique se os diretórios foram criados corretamente.
    $ cd ~ ; ls -la

Gerenciando arquivos

  • Criando um arquivo vazio
    • $touch [nome_do_arquivo]
    • $touch arquivo1
    • $touch arquivo2
    • $touch arquivo3
  • Removendo (excluindo) um arquivo.
    • $ rm [nome_do_arquivo]
    • $ rm arquivo2

Gerenciando arquivos

  • Copiando um arquivo de um diretório (origem) para outro (destino).
    • $ cp [caminho_origem][caminho_destino]
    • $ cp arquivo1 arqredes
    • $ cp arquivo1 ../arqredes/
  • Movendo um arquivo de um diretório (origem) para outro (destino)
    • $ mv [caminho_origem][caminho_destino]
    • $ mv arquivo2 tecredes
    • $ mv arquivo2 ../tecredes/

Comandos de Terminal

  • Histórico de comandos
    • $ history
    • $ history 4 (Mostra últimos 4 comandos do histórico)
    • $ !1 (Reexecuta o comando número 1 do histórico)
    • $ history -c (Exclui a listagem de comandos do histórico)
  • Limpeza de tela do terminal
    • $ clear

Comandos de Data, Hora, Calendário e Versão

  • Permitem gerenciar a data e hora do SO
    • $ date – Exibe/altera data e hora do SO
    • $ cal [mês] [ano] – Exibe calendário do mês e ano especificados
    • $ uname [opção]– Exibe informações sobre o SO
      • -a exibe todas as informações
      • -v exibe a data de lançamento do SO
      • -n exibe o nome da máquina

Diretórios e Arquivos de Sistemas

No Linux e Unix tudo é um arquivo. Diretórios são arquivos, arquivos são arquivos, e dispositivos são arquivos. Dispositivos são geralmente referidos por nódulos; entretanto, eles ainda são arquivos.

Sistemas de arquivos do Linux e Unix são organizados em uma hierarquia, estilo estrutura de árvore. O nível mais alto do sistema de arquivos é o / ou diretório raiz. Todos os outros arquivos e diretórios existem sob o diretório root. Por exemplo, /home/jebediah/queijos.odt mostra o caminho completo correto para o arquivo que existe em

Sob o diretório root (/) existe um grupo de diretórios comuns à maioria das distribuições Linux. A seguinte lista contém uma lista dos diretórios comuns que estão diretamente sob o diretório root (/):

  • /bin – importante aplicativos binários
  • /boot – arquivos de configuração do boot , kernels, e outros arquivos necessários durante o período do boot.
  • /dev – os arquivos do dispositivo
  • /etc – arquivos de configuração, scripts de inicialização, etc.
  • /home – diretórios home para diferentes usuários
  • /initrd – usado quando está criando um processo de boot initrd personalizado
  • /lib – bibliotecas de sistema
  • /lost+found – fornece um sistema perdido+achado para arquivos que existem sob o diretório root (/).
  • /media – monta ( carrega ) automaticamente partições em seu disco rigido ou mídia removivel como CDs, câmeras digitais, etc.
  • /mnt – sistema de arquivos montado manualmente em seu disco rigido.
  • /opt – fornece um local opcional para aplica
  • /proc – diretório dinâmico especial que mantem informação sobre o estado do sistema, incluindo os processos atualmente executados.
  • /root – diretório home do usuário root, pronuciado “eslash-ruut”
  • /sbin – binários de sistema importantes.
  • /srv – pode conter arquivos que são servidos para outros sistemas
  • /sys – arquivos de sistema
  • /tmp – arquivos temporários
  • /usr – aplicativos e arquivos que são na maioria das vezes disponíveis ao acesso de todos usuários
  • /var – arquivos variáveis tal como logs e bancos de dados

A lista de sistemas de arquivos suportados pelo Linux é muito grande mas, neste artigo, discutirei somente os mais comuns.
Atualmente, uma importante característica dos atuais sistemas de arquivos é o “journaling”. Sistemas de arquivos que possuem essa característica são preferidos em detrimento aos que não possuem.
Journaling é um recurso que permite recuperar um sistema após um desastre no disco (ex.: quando um disco está sujo) em uma velocidade muito maior que nos sistemas de arquivos sem journaling.
Segue abaixo uma breve descrição sobre os sistemas de arquivos mais comuns disponíveis para o Linux:

EXT2
O sistema de arquivos ext2 é conhecido como “Second Extended FileSystem”. Foi desenvolvido para ser mais “eficiente” que o sistema de arquivos “Minix”, seu antecessor.
O Minix era muito utilizado nas primeiras versões do Linux, e foi utilizado por muitos anos.
O sistema de arquivos ext2 não possui journaling e foi substituído pelo ext3.
EXT3
O sistema de arquivos ext3 é uma versão do ext2 com suporte a journaling. Portanto, o ext3 tem as mesmas características do ext2, mas com suporte journaling.
Essa característica foi uma evolução e tornou o ext3 um sistema de arquivos muito estável e robusto.
Como no ext3 só foi adicionado o suporte a journaling, podemos converter um sistema de arquivos ext2 para ext3, adicionado suporte a journaling, e também podemos converter um sistema de arquivos ext3 para ext2, removendo o suporte a journaling.
REISERFS
O sistema de arquivos ReiserFS foi criado recentemente. Mas atualmente quase todas as distribuições Linux o suportam.
Sua performance é muito boa, principalmente para um número muito grande de arquivos pequenos.
ReiserFS também possui suporte a journaling.
XFS
O sistema de arquivos XFS também possui suporte a journaling. Foi desenvolvido originalmente pela Silicon Graphics e posteriormente disponibilizado o código fonte. O XFS é considerado um dos melhores sistemas de arquivos para banco de dados, pois é muito rápido na gravação.
XFS utiliza muitos recursos de cache com memória RAM, e para utilizar XFS é recomendado utilizar sistemas que possuem redundância de energia.
SWAP
SWAP é um espaço reservado para troca de dados com a memória RAM.
VFAT
O sistema de arquivos VFAT é também conhecido como FAT32 (MS Windows).
O sistema de arquivos VFAT não possui suporte a journaling. É utilizado normalmente para transferir dados entre sistemas M$ Windows e o Linux instalados no mesmo disco, pois pode ser lido e escrito por ambos os sistemas operacionais.
O sistema de arquivos VFAT está longe de ser um sistema de arquivos utilizado para Sistemas Linux, exceto para compartilhamento/compatibilidade entre o M$ Windows e Linux.
Se você utilizar VFAT no Linux, esteja certo de perder alguns atributos, tais como: permissão de execução, links simbólicos, entre outras coisas.
Ambos os sistemas de arquivos ext3 e ReiserFS são maduros o bastante para serem utilizados como padrão no Linux. Esses dois são os mais utilizados pelas distribuições Linux.

Criando o Sistema de Arquivos

Para criar sistemas de arquivos utilizamos o comando mkfs (abreviação de: fazer sistema de arquivos) e o comando mkswap para fazer espaços para troca de dados com a memória RAM.
O comando mkfs é um “atalho” para vários outros comandos para criação dos mais diversos e comuns sistemas de arquivos.
Para saber quais sistemas de arquivos é atualmente suportado pelo seu Linux, digite o comando abaixo:

$ ls /sbin/mk*
/sbin/mkdosfs /sbin/mkfs.ext2 /sbin/mkfs.msdos /sbin/mkfs.xfs
/sbin/mke2fs /sbin/mkfs.ext3 /sbin/mkfs.reiser4 /sbin/mkreiser4
/sbin/mkfs /sbin/mkfs.jfs /sbin/mkfs.reiserfs /sbin/mkreiserfs
/sbin/mkfs.cramfs /sbin/mkfs.minix /sbin/mkfs.vfat /sbin/mkswap

No exemplo acima, estão os sistemas de arquivos suportados pelo meu sistema, Kubuntu 6.06 LTS Dapper Drake, kernel 2.6.15-23-38. Existem mais de uma forma/comando para criar um sistema de arquivos. Por exemplo, para criar um sistema de arquivos ext3, na partição /dev/hda4, podemos utilizar um dos seguintes comandos abaixo:

# mkfs.ext3 /dev/hda4
ou
# mkfs -t ext3 /dev/hda4
ou
# mke2fs -j /dev/hda4

Enfim, a sintaxe para o comando mkfs é:
# mkfs [opções] dispositivo [blocos]
Onde:

opções:
-t [tipo]: especifica o tipo de sistema de arquivos a ser criado. O padrão é ext2;
-c: checa o dispositivo a procura de blocos defeituosos durante a criação do sistema de arquivos.

dispositivo: o arquivo especial correspondente ao dispositivo;
blocos: quantidade de blocos a ser utilizada pelo sistema de arquivos.

Gerenciando Usuários

Como qualquer sistema operacional multitarefa e multiusuário, o administrador do sistema tem como grande desafio o gerenciamento de usuários e grupos. Por este motivo é importante estarmos preparados para administrá-los diretamente sem a utilização de ferramentas que facilitem isso (ex.: webmin), usando apenas os comandos básicos do sistema operacional, isso irá proporcionar a administração em qualquer distribuição.

Comandos:

  • useradd: Comando utilizado para criação de um usuário.
  • userdel: Comando utilizado para remoção de um usuário.
  • usermod: Comando usado para modificar os dados de um usuário.
  • passwd: Comando usado para definir e ou modificar a senha de um usuário.
  • groupadd: Comando usado para criar um grupo.
  • groupdel: Comando usado para remover um grupo.
  • groupmod: Comando usado para modificar os dados de um grupo.

Criando um usuśario
Para que seja possível logar no sistema o usuário deverá ter um username (login) e uma senha (password). Para que isso seja possível usaremos os comandos “useradd” e “passwd”. Abaixo explicarei como é a sintaxe dos comandos e suas opções:

Comando useradd
Sintaxe: useradd [opções] <username>

Opções:

  • -d – Caminho do diretório home do usuário.
  • -g – Especifica o grupo do usuário.
  • -c – Inclui um comentário referente ao usuário, tais como nome, setor, etc
  • -s – Especifica o shell de comando que o usuário irá utilizar.
  • -m – Cria o diretório home do usuário e copia os arquivos de /etc/skel/ para o home criado (diretório onde se encontram os arquivos default do usuário, futuramente iremos falar sobre ele). Em algumas distribuições não há necessidade de incluirmos essa opção para a criação do home, mas para evitarmos não o criarmos é bom acostumarmos a colocá-la na criação do usuário.
  • -p – Essa opção serve para especificarmos uma senha já criptografada para o usuário.

Ex.:

# useradd -g admin -s /bin/bash -d /home/sup1 -c “Usuário Administrativo de Suporte 1” -m sup1

No exemplo acima criamos o usuário sup1, que tem como grupo admin, usando o shell /bin/bash, o home criado foi o /home/sup1 e tem o comentário “Usuário Administrativo de Suporte 1”.

comando passwd
Sintaxe: passwd [opções] <username>

Opções:

  • -d – Permite o usuário acessar (logar) o sistema sem senha.
  • -l – Bloqueia/trava a conta do usuário. O usuário não consegue logar.
  • -u – Desbloqueia/destrava a contado usuário (bloqueado pela opção “-l”).
  • -S – Mostra o status da senha do usuário.

Exemplo 1:

# passwd sup1
Chaging password for user sup1
New password: [digitar a senha]
Retype new password: [repetir a senha]

Exemplo 2: Nesse exemplo iremos travar a conta do usuário sup1.

# passwd -l sup1

Exemplo 3: Vamos agora destravar a conta do usuário sup1:

# passwd -u sup1

Comando usermod
Sintaxe: usermod [opções] <username>

Opções:

  • -d – Modifica o caminho do diretório home do usuário.
  • -g – Modifica o grupo do usuário.
  • -c – Modifica o comentário referente ao usuário.
  • -s – Modifica o Shell de comando que o usuário irá utilizar.
  • -p – Substitui a senha já criptografada do usuário.

Exemplo 1: Nesse exemplo estamos modificando o grupo e o comentário do usuário sup1 ao mesmo tempo.

# usermod -g <novoGrupo> -c “<novoComentario>” sup1

Comando userdel
Sintaxe: userdel [opções] <username>

Opções:

  • -r – Ao usarmos essa opção o diretório HOME e Mailbox do usuário será removido. É importante ter certeza ao fazer isso, pois muitas vezes é melhor remover apenas o usuário ou até mesmo suspendê-lo mantendo seus arquivos para auditoria.

Exemplo 1: Remover o usuário sem excluir seus arquivos.

# userdel sup1

Exemplo 2: Remover o usuário e seus arquivos

# userdel -r sup1

Comando groupadd
Sintaxe: groupadd [opções] <groupname>

Opção:

  • -g – Ao usarmos esta opção, podemos especificar o GID do grupo que estamos criando.

Exemplo 1: Criando um grupo chamado “administracao”.

# groupadd administracao

Exemplo 2: Criando um grupo chamado oragroup e especificando o GID 1521.

# groupadd -g 1521 oragroup

COMANDO GROUPMOD
Sintaxe: groupmod [opções] <groupname>

Opção:

  • -g – Ao usarmos esta opção, podemos modificar o GID do grupo.
  • -n – Para trocarmos o nome do grupo.

Exemplo 1: Modificando o GID do grupo “administracao”.

# groupmod -g 666 administracao

Exemplo 2: Modificando o nome do grupo oragroup.

# groupadd -n oracle oragroup

 

O comando sudo

  • Um usuário comum pode receber privilégios (completos ou limitados) de usuário root
    • – Necessário para ações, como instalação depacotes, iniciar sessão de usuário ( login ), etc.
    • – Comando sudo
      • $ sudo [comando]
  • Um usuário comum pode assumir o papel de root com o comando:
    • $sudo su

Comandos de usuário

  • Identificação do usuário atual
    • $ whoami
  • Início de sessão com outro usuário
    • $ login
  • Encerramento de sessão
    • $ logout

 

 

 

 

Click to listen highlighted text!