Baixe o app para aproveitar ainda mais
Prévia do material em texto
Disciplina: Sistema Operacional Linux Instalação do linux, shell e comandos para sistemas de arquivos Prof. Jean Arouche Agenda ● Planejamento de instalação para estação e servidor ● Tabela de particionamento de disco ● Processo de instalação ● Ferramentas de virtualização ● Personalização de distribuições ● Comandos básicos para sistemas de arquivos ● Sistemas de arquivos ● Atividade de fixação de conteúdo intra e extra-classe ● Assunto para próxima aula 3/44 Instalação do Linux (Planejamento) Para que se possa instalar o Sistema Operacional Linux tem-se que antes planejar e decidir três pontos: ● Instalação para um servidor ou estação ● Distribuição Linux que irá utilizar ● Tabela de particionamento do disco de armazenamento Obs: para se trabalhar em sistemas emulados também tem-se que decidir qual o emulador como virtualbox, qemu, virt etc…. 4/44 Instalação do Linux (Planejamento) Instalação para um servidor ou estação ● Geralmente um projeto de rede tem que panejar as duas situações, um modelo de instalação para servidor e outro odelo para estações quanto a trabalhar com distribuições Linux. ● Em especial, depois de instalado a distribuição tanto para servidor como para estação, vem outra fase de planejamento, que seria a escolhas dos aplicativos, ferramentas e configurações para atender demandas específicas para cada situação ou cenário que se deseja. 5/44 Instalação do Linux (Planejamento) Distribuição Linux que irá utilizar ● Para servidores, o especialista deve avaliar e pesquisar a distribuição que melhor se adeque a situação ou cenário. Geralmente a escolha deve-se a distribuição que atenda a maioria dos casos, estabilidade, segurança, estabilidade etc. E também que o técnico tenha familiaridade em instalar, configurar etc. ● Para estações, também o especialista deve avaliar e pesquisar a distribuição que melhor se adeque a situação ou cenário. Geralmente a escolha deve-se a distribuição que atenda a maioria dos casos, estabilidade, segurança, estabilidade etc. E também que o técnico tenha familiaridade em instalar, configurar etc. 6/44 Instalação do Linux (Planejamento) Tabela de particionamento do disco de armazenamento para instalação Linux Uma instalação Linux deve ser provida de requisitos mínimos. O sistema só aceita no mínimos duas particões. ● Uma participação para diretórios de todo sistema ( / ) ● Outra participação SWAP. Entretanto para uma instalação mais específica, deve-se distribuir mais as partições para servidor ou estação. 7/44 Instalação do Linux (Planejamento) Tabela de particionamento do disco de armazenamento para instalação Linux em Estações de Trabalho Uma instalação Linux para estações de trabalho é aconselhável com as seguintes particões: ● Uma participação para diretórios de todo sistema ( / ) com sistemas de arquivos ext4, ext3, etc. O tamanho geralmente seria ¼ ou 1/5 do tamanho do disco. ● Outra participação SWAP. O tamanho máximo seria 2 vezes o valor da memória RAM. ● Uma partição para diretórios de usuários (/home) sistemas de arquivos ext4, ext3, etc. O tamanho máximo seria o restante do tamanho do disco – 100 mb. 8/44 Obs: Para servidor acrescenta-se mais a partição ( /var ) com mais o mesmo tamanho 5g (estrudar o caso ) Processo de Instalação Pontos necessários para instalação Linux em Servidores Para se fazer uma instalação Linux geralmente utiliza-se: ● Uma imagem ISO ● Um pendriver bootável ● Um programa do tipo USBCreator Para distribuições do tipo UBUNTU já vem essa ferramenta embutida com o nome no menu de “Criador de disco de inicialização”. 9/44 Processo de Instalação Primeiro estudo de caso prático em sala de aula Criação de um pendriver bootável via imagem ISO do Ubuntu 16.04. ● Ter um pendriver com no mínimo 2g de tamanho. ● Possuir um arquivo com a imagem ISO da distribuição; ● Utilizar o programa do tipo USBCreator para instalar no pendriver bootável. ● Criar o pendriver bootável. ● Concluir a instalação. 10/44 Processo de Instalação Segundo estudo de caso prático em sala de aula Instalação via imagem ISO com emulador Virt-Manager com Ubuntu 16.04. ● Executar a máquina virtual; ● Criar uma máquina específica para instalação de uma estação de trabalho Ubuntu; ● Passos de da instalação do Ubuntu, ressaltando a tabela de particionamento. ● Conclusão da instalação. 11/44 Processo de Personalização Terceiro estudo de caso prático em sala de aula Personalização de uma distribuição Linux com Ubuntu 16.04. ● Personalizar a distribuição com configurações específicas para o cenário (Estação de Trabalho ou Servidor ); ● Dentro da distribuição personalizada executar um programa de personalização (Systemback); ● Após isso será criado uma imagem ISO para ser usado em programas USBCreator para construir disco bootável. 12/44 Comandos básicos para sistemas de arquivos 13/44 Alguns pontos relevantes de comandos básicos em terminal de console (linha de comando) em sistema operacional Linux ● Uma distribuição Linux também é provida de comandos em ambientes de console, ou seja, sem interface gráfica. ● A interface gráfica faz o papel da imagem de comandos. Certamente se ocultar a interface gráfica, dependendo da tarefa que se deseja fazer no Linux, pode continuar em linha de comando. ● A linha de comando é muito utilizada em servidores Linux que geralmente não utilizam ambientes gráficos, então para um administrador de rede que deseja trabalhar com servidores Linux, deve dominar trabalhar nesse ambiente. Alguns comandos para se trabalhar com arquivos são: ● pwd – mostra o diretório corrente do usuário. ● ls – mostra toda arvóre de diretório e arquivos. Esse comando tem vários parâmetros para trabalhar em sistemas de arquivos.Com o parâmetro (-l → ls -l) mostra todos arquivos e diretórios com os donos dos mesmos e permissões. ● mkdir – cria diretório. ● cd + diretórioAlvo – muda de diretório (com caminho se o diretório não estiver no diretório corrente). ● cd .. – sai do diretório corrente. ● rm arquivoAlvo(s) – remove arquivos (utiliza o caminho se o arquivo não estiver no diretório corrente). ● rm -r diretórioAlvo(s) – remove recursivamente diretório(o caminho se o arquivo não estiver no diretório corrente). 14/44 Comandos básicos para sistemas de arquivos Alguns comandos para se trabalhar com arquivos são: ● > + nomeArquivo– cria arquivo. ● touch + nomeArquiv – tecnicamente não cria um arquivo, entretanto ele tenta atualizar um arquivo existente para alterar o tempo de acesso e modificação atual. Como ele não encontra esse arquivo ele cria. Dando um ls percebe-se isso . (teste → time > arquivo / (time touch arquivo) ) ● cp + arquivoOriginal arquivoNovo – copia arquivo (utiliza caminho se o arquivo não estiver no diretório corrente). ● cp - r + diretórioAlvo diretórioNovoCopiado – copia diretório (utiliza caminho se o diretório não estiver no diretório corrente). ● echo “mensagem” – imprime mensagem. ● cat/more + arquivoAlvo – ler contéudo do arquivo (utiliza caminho se o arquivo não estiver no diretório corrente). 15/44 Comandos básicos para sistemas de arquivos 16/44 Alguns comandos para se trabalhar com arquivos são: ● mv nomeArquivo nomeNovo – renomeia arquivo (utiliza caminho se o arquivo não estiver no diretório corrente). ● mv nomeArquivo diretórioDestino – move arquivo para o diretório destino(utiliza caminho se o arquivo não estiver no diretório corrente). ● tail nomeArquivo– mostra o final do arquivo (utiliza caminho se o arquivo não estiver no diretório corrente). ● zip + novoArquivoCompactado.zip nomeArquivo(s)Comprimir – comprime arquivos (utiliza caminho se o arquivo não estiver no diretório corrente). ● zip -r + novoDiretorio.zip diretório(s)_A_comprimir – comprime diretório(s) (utiliza caminho se o arquivo não estiver no diretório corrente). Comandosbásicos para sistemas de arquivos 17/44 Alguns comandos para se trabalhar com arquivos são: ● unzip nomeArquivoCompactado.zip – descomprime arquivo comprimido (utiliza caminho se o arquivo não estiver no diretório corrente). ● chmod “parametros” arquivo/diretório – muda permissões de arquivos e diretórios. ● >> - insere algo na próxima linha de um arquivo Mescla de comandos (Exemplo) ● echo “mensagem1” > arquivo.txt ● echo “mensagem2” >> arquivo.txt Obs: existem mais comandos que no decorrer da disciplina será trabalhado. Tipos de Sistemas de Arquivos em Sistemas Linux Existe uma larga lista de sistemas de arquivos suportados em sistemas Linux, aqui 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. ● É nesse recurso que o Linux pode ler os arquivos do Windows. Muito útil quando se está na mesma máquina, pois através do Linux pode-se reparar o Windows, transportar arquivos etc. 18/44 Tipos de Sistemas de Arquivos em Sistemas Linux 19/44 Os sistemas de arquivos mais comuns conhecidos em Linux são: ● 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 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. Tipos de Sistemas de Arquivos em Sistemas Linux 20/44 Os sistemas de arquivos mais comuns conhecidos em Linux são: ● 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. Tipos de Sistemas de Arquivos em Sistemas Linux 21/44 Os sistemas de arquivos mais comuns conhecidos em Linux são: ● SWAP - SWAP é um espaço reservado para troca de dados com a memória RAM. Em alguns lugares ele não é mencionado como um Sistema de Arquivos, mas é bom descreve-lo pois faz parte do processo de instalação e do sistema. ● VFAT - O sistema de arquivos VFAT é também conhecido como FAT32 (M$ Windows). 1)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. 2)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. Tipos de Sistemas de Arquivos em Sistemas Linux 22/44 3) Se utilizar VFAT no Linux, é certo de perder alguns atributos, tais como: permissão de execução, links simbólicos, entre outras coisas. 4) 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. ● EXT4 – Melhroria do ext3. 1)Melhorias no journaling: Checagem no journaling, checksum; 2)Suporte para tamanhos maiores de volumes e arquivos em relação à versão ext3; 3)Checagem rápida do sistema de arquivos; 4)O ext4 tem uma margem de 1024 PB (Petabytes) ou 1EB (Exabyte) para partições e 16 TB por arquivo. Isto pode não ser importante para desktops ou servidores simples, porém com certeza é útil para servidores grandes, configurados em Raid(conjunto redundante de discos independentes.) e de alta disponibilidade. 5)Etc. Construção de Pendriver Bootável (Ubuntu 16.04) 1)Decidir qual é o tipo de instalação (Servidor ou Estação de Trabalho); 2)Fazer o download da imagem ISO da distribuição para Estação de Trabalho em: https://www.ubuntu.com/download/desktop/thank- you?version=16.04.3&architecture=amd64 3)Escolher um software do tipo USBCreator para criação do pendriver bootável; 4)Executar o processo de construção com a imagem ISO e o sofware USBCreator. 23/44 https://www.ubuntu.com/download/desktop/thank-you?version=16.04.3&architecture=amd64 https://www.ubuntu.com/download/desktop/thank-you?version=16.04.3&architecture=amd64 Instalação do Ubuntu 16.04 (Emulador) 24/44 1)Decidir qual é o tipo de instalação (Servidor ou Estação de Trabalho); 2)Fazer o download da imagem ISO da distribuição para Estação de Trabalho em: https://www.ubuntu.com/download/desktop/thank- you?version=16.04.3&architecture=amd64 3)Escolher um software do tipo USBCreator para criação do pendriver bootável; 4)Executar o processo de construção com a imagem ISO e o sofware USBCreator. https://www.ubuntu.com/download/desktop/thank-you?version=16.04.3&architecture=amd64 https://www.ubuntu.com/download/desktop/thank-you?version=16.04.3&architecture=amd64 Atividade de Fixação de Conteúdo Intra-Classe. 25/44 Desenvolver uma sequência de comandos para ser testada, no qual simule uma um cenário para manipular arquivos e diretórios da seguinte forma: 1)Identificar o diretório corrente; 2)Navegar até a pasta /home/jean/unama/atividade/grupoX (X = valor do grupo, 1,2,3,4 e 5); 3)Criar o diretório dir1, dir2 e dir3 e dir4 dentro da pasta do grupo. 4)Para cada diretório dirX criar 3 arquivos arqX1.txt, arqX2.txt, arqX1.txt (X = A = dir1, B=dir2, C=dir3 e D=dir4). 5)Em cada arquivo colocar o conteúdo teste1, teste2, teste3 e teste4 em cada linha. Atividade de Fixação de Conteúdo Intra-Classe. 26/44 6)Apagar o diretório dir4 7)Criar um arquivo zinpado com o nome grupoX.zip (X = 1,2,3,4 e 5 referente ao grupo). 8) Renomear o arquivo grupoX.zip para grupoXConcluido.zip (X = 1,2,3,4 e 5 referente ao grupo). 9) Mover o arquivo grupoXConcluido.zip para o diretorio /home/jean/unama/atividades/tarefasconcluidas. .O trabalho extra-classe deve seguir os seguintes pontos: ● Pesquisar um modelo de script shell que tenha comandos para fazer backup(Compactação de arquivo e diretórios) em determinado horário. ● Pesquisar também como esse script possa ser acionado na inicialização da máquina. ● Lider do grupo enviar para jeanarouche@gmail.com a aplicação do scrip em algum cenário com os seguintes pontos: 1)Descrição do cenário; 2)Distribuição que possa ser utilizada; 3)Qual o objetivo backup; 4)Redação no formato de artigo científico no modelo de uma coluna do template (modelo) do site da SBC (Sociedade Brasileira de Computação) 27/44 Atividade de Fixação de Conteúdo Extra-Classe. mailto:jeanarouche@gmail.com Referências Bibliográficas ● NEGUS, Christopher. Linux - a Bíblia - O Mais Abrangente e Definitivo Guia Sobre Linux. Book Kindle, 2014. ● HUNT, Craig. Servidores de redes com linux. São o Paulo: Market Books , 2000. ● ROMERO,Daniel. Começando coom Linux. Rio de Janeiro: Casa do Código, 2016. ● NORTON, Peter; GRIFFITH, Arthur. Guia completo do Linux. São Paulo: Berkeley, 2002. 44/44 Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27
Compartilhar