500 likes | 585 Views
Administração de Sistemas Operacionais Não Proprietários 2ºSemestre Aula 04 Prof. Carlos Vinícius cvalves@senacrs.edu.br. SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL FACULDADE DE TECNOLOGIA SENAC PELOTAS. Discos e Sistema de Arquivos. Diretórios
E N D
Administração de Sistemas Operacionais Não Proprietários2ºSemestreAula 04Prof. Carlos Viníciuscvalves@senacrs.edu.br SERVIÇO NACIONAL DE APRENDIZAGEM COMERCIAL FACULDADE DE TECNOLOGIA SENAC PELOTAS
Discos e Sistema de Arquivos • Diretórios • Um Diretório é um local utilizado para armazenar conjuntos de arquivos e outros diretórios para melhorar a organização e localização. • Diretórios Raiz • Este é o diretório principal do sistema. Dentro dele estão todos os outros diretórios do sistema. O Diretório Raiz é representado pela barra (/), invertida em relação à barra utilizada no Windows (\). • DiretórioAtual • É o diretórioemquenosencontramos no momento (“diretórioaberto”). • Digitepwdparaverificarqual é o diretórioatual. • O diretórioatualtambémpode ser identificadopor um ponto (.).
Diretório /home • É o diretório de usuário. Em sistemas GNU/Linux cada usuário (inclusive o root) possui seu próprio diretório onde poderá armazenar seus programas e arquivos pessoais. • Seu diretório pessoal se localiza em /home/<nome_usuário> • Já o diretório pessoal do usuário root se localiza geralmente em /root
Diretórios Específicos • /bin - Contém arquivos e programas do sistema que são usados com freqüê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. • /media - Ponto de montagem de dispositivos diversos do sistema (rede, pendrives, CD-ROM em distribuições mais novas).
Diretórios Específicos • /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.
Diretórios Específicos • /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.
Diretórios Específicos • /sys - Sistema de arquivos do kernel. • /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.
Diretórios Específicos • /tmp - Diretório para armazenamento de arquivos temporários criados por programas. • /usr - Contém a maior parte de seus programas. Normalmente acessível somente como leitura. • /var - Contém a maior parte dos arquivos que são gravados com freqüência pelos programas do sistema, e-mails, spool de impressora, cache, arquivos de log, etc.
Nomes de Arquivos e Diretórios • No GNU/Linux, os arquivos e diretórios podem ter o tamanho de até 255 caracteres. Você pode identificá-los com uma extensão seguindo um ponto de separação.
MBR • Master Boot Record, ou setor de partições, é um setor de boot de 512 bytes o qual é o primeiro setor de um disco particionado. • Funções: • Abrigar a tabela de partições primária; • Inicializar sistemas operacionais.
MBR - Estrutura IPL = Initial Program Loader (Estágio 1 do Bootloader)
MBR • Backup do MBR: • dd if=/dev/hda of=/home/<path>/Backup_MBR bs=446 count=1 • Restore do MBR: • dd if=/home/<path>/Backup_MBR of=/dev/hda bs=446 count=1 • Obs.: Nunca faça backup do MBR inteiro! É possível fazer backup do MBR inteiro, seus 512 bytes. Isto também manterá o registro da tabela de partições. Se você reparticionar o disco posteriormente e restaurar o backup prévio da MBR, ele não corresponderá à tabela de partições recente assim como ao sistema de arquivos ie o disco não poderá mais ser lido. Nesta situação será necessário reparticionar e reformatar o disco. Desta forma, nunca efetue backup de todo o MBR – apenas da área do bootloader.
Bootloader • Um Bootloader é um programa responsável por gerenciar a inicialização de um sistema. • Ele permite escolher uma entre diversas opções disponíveis e a carrega para a memória RAM do computador. Os bootloaders modernos trabalham em diversos estágios distintos.
Bootloaders • LILO • GRUB / GRUB2 • NTLDR
Sequência de Inicialização - GRUB • O BIOS procura por um dispositivo que execute o carregamento de um Sistema Operacional e passa o controle do processo para o Master Boot Record (MBR). O MBR fica armazenado nos 512 bytes iniciais de um disco. • No MBR está localizado o primeiro estágio do GRUB. Como se trata de um pequeno estágio, ele simplesmente carregará o próximo estágio do GRUB, localizado em algum outro local do disco. Pode ser carregado o estágio 1.5 ou o estágio 2. • O estágio 1.5 está localizado nos primeiros 30 KB do disco que se localizam logo após o MBR. Então, será carregado o estágio 2. • O estágio 2 então receberá o controle, e disponibilizará na tela um menu com as opções de S.Os. instalados no computador. • Finalmente, o GRUB carregará na memória RAM o kernel do sistema selecionado (pelo usuário ou por padrão) e passará o controle a este kernel.
Configuração do GRUB • Através da GUI: Programa StartUp-Manager • Através de Arquivos de Configuração • Arquivo Padrão: default=0 timeout=30 title Debian Linux root (hd0,1) kernel /boot/vmlinuz root=LABEL=/ initrd /boot/initrd.img
Configuração do GRUB • default: O S.O. padrão que será inicializado se nenhuma opção for escolhida. O primeiro é o nº 0. • timeout: O tempo em segundos de espera antes do S.O. padrão ser inicializado. • title: O texto que aparecerá no menu. Inicia uma seção do S.O. até que outra linha title seja encontrada. • root: A partição onde o diretório /boot está localizado. Todos os caminhos serão relativos a esta partição. • kernel: A imagem do kernel do linux que será carregada juntamente com todas as suas opções. • initrd: A imagem initrd com a qual o kernel será inicializado.
Discos e Partições • Partições: São divisões existentes no disco rígido que marcam onde começa onde termina um sistema de arquivos. As partições nos permitem usar mais de um sistema operacional no mesmo computador (como o GNU/Linux, Windows e DOS), ou dividir o disco rígido em uma ou mais partes para ser usado por um único sistema operacional ou até mesmo por diferentes arquiteturas (32 e 64 bits).
Discos e Partições • Para gravar os dados, o disco rígido deve ser: • Particionado (usando o cfdisk, parted, diskdruid, fdisk) • Ter o tipo da partição escolhido (Linux Native, Linux Swap, etc) • Formatado (por exemplo com o mkfs.ext3). • Após criada e formatada, a partição será automaticamente identificada como um dispositivo no diretório /dev e deverá ser montada
Tipos de Partição Padrão • A partição do tipo Linux Native (Tipo 83) é a usada para armazenar arquivos no GNU/Linux, tanto ext2, ext3, ext4, reiserfs, xfs, etc. • A partição do tipo Linux Swap (Tipo 82) é usada como memória virtual.
Sistema de Arquivos • É criado durante a "formatação" da partição de disco. Após a formatação toda a estrutura para leitura/gravação e permissões de arquivos e diretórios pelo sistema operacional estará pronta para ser usada. • Exemplos: • FAT12 - Usado em disquetes no DOS. Não possui suporte a permissões nem journaling. • FAT16 - Usado no DOS e oferece suporte até discos de 2GB. Não possui suporte a permissões e journaling. • FAT32 - Também usado no DOS e oferece suporte a discos de até 2 Terabytes. Não possui suporte a permissões e journaling. • NTFS - Formato nativo de discos de sistemas operacionais Windows XP e superiores. Possui suporte a permissões de acesso e compactação nativa. Suporta até 16 Exabytes
Sistema de Arquivos • Exemplos: • Ext2 - Usado em partições Linux Nativas para o armazenamento de arquivos. É identificado pelo código 83. Seu tamanho deve ser o suficiente para acomodar todo os arquivos e programas que deseja instalar no GNU/Linux (você encontra isto no manual de sua distribuição). Suporta até 8TB • Ext3 - Este sistema de arquivos possui melhorias em relação ao ext2, como o recurso de journaling e suporte a arquivos de até 16GB. Suporta até 16TB de disco. Também é identificado pelo tipo 83 e é compatível com o ext2 em estrutura.
Journaling • O sistema de journaling grava qualquer operação que será feita no disco em uma área especial chamada "journal", assim se acontecer algum problema durante alterações no disco, ele pode voltar ao estado anterior do arquivo, ou finalizar a operação. • Desta forma, o journal acrescenta ao sistema de arquivos o suporte a alta disponibilidade e maior tolerância a falhas. Após uma falha de energia, por exemplo, o journal é analisado durante a montagem do sistema de arquivos e todas as operações que estavam sendo feitas no disco são verificadas. Dependendo do estado da operação, elas podem ser desfeitas ou finalizadas. O retorno do servidor é praticamente imediato, garantindo o rápido retorno dos serviços da máquina.
Tipos de Journaling • O ext3 suporta três diferentes modos de trabalho do Journaling. São eles: • Journal: grava todas as mudanças em sistema de arquivos. É o mais lento dos três modos, mas é o que possui maior capacidade de evitar perda de dados; • Ordered: grava somente mudanças em arquivos metadata (arquivos que guardam informações sobre outros arquivos), mas guarda as atualizações no arquivo de dados antes de fazer as mudanças associadas ao sistema de arquivos. Este Journaling é o padrão nos sistemas de arquivos ext3; • Writeback: também só grava mudanças para o sistema de arquivo em metadata, mas utiliza o processo de escrita do sistema de arquivos em uso para gravação. É o mais rápido Journaling ext3, mas o menos confiável. • O modo Ordered é o padrão no ext3, mas é possível especificar qual o modo que você deseja usar, através da atualização do arquivo fstab. Por exemplo, pode ser que a linha /dev/hda1/opt tenha sua opção data com o valor ordered. Você pode mudar este valor para writeback ou journal.
Sistemas de Arquivos - exemplos • Reiserfs - Possui os mesmos recursos do ext3, mas seu design é bastante diferente. Recomendavel para sistemas que possuem muitos arquivos pequenos (servidor web, etc). Possui o tempo de recuperação em caso de queda de energia menor que o ext3. Não suporta cotas nem desfragmentação. • Swap - Usado em partições Linux Swap para oferecer memória virtual ao sistema. É altamente recomendado o uso de uma partição Swap no sistema. Este tipo de partição é identificado pelo código 82. • proc - Sistema de arquivos do kernel
Pontos de Montagem • O GNU/Linux acessa as partições existentes em seus discos rígidos, CDs/DVDs e disquetes através de diretórios. Os diretórios que são usados para acessar (montar) partições são chamados de Pontos de Montagem. • No DOS cada letra de unidade (C:, D:) identifica uma partição de disco, no GNU/Linux os pontos de montagem fazem parte da estrutura do sistema de arquivos raiz.
Identificação de Discos e Partições • No GNU/Linux, os dispositivos existentes em seu computador (como HDs, pendrives, disquetes, tela, portas de impressora, modem, etc) são identificados por um arquivo referente a este dispositivo no diretório /dev. • Exemplo: • /dev/sda1 – onde: • /dev = Diretório onde são armazenados os dispositivos existentes no sistema. • sd = Sigla que identifica o tipo do disco rígido (sd=SATA/SCSI, hd=IDE) • b = Letra que identifica o disco rígido (a=primeiro, b=segundo) • 1 = Número que identifica a partição no disco rígido
Identificação de Discos e Partições • Exemplo: • /dev/fd0 - Primeira unidade de disquetes. • /dev/fd1 - Segunda unidade de disquetes. • /dev/sda - Primeiro disco rígido na primeira controladora SATA ou SCSI. • /dev/sda1 - Primeira partição do primeiro disco rígido SATA ou SCSI. • /dev/sdb - Segundo disco rígido na primeira controladora SATA ou SCSI. • /dev/sdb1 - Primeira partição do segundo disco rígido SATA ou SCSI. • /dev/hdb - Segundo disco rígido na primeira controladora IDE do micro (primary slave). • /dev/hdb1 - Primeira partição do segundo disco rígido IDE.
Particionamento dos Discos • Discos Rígidos podem ser divididos em um ou mais discos lógicos denominados partições. Esta divisão é descrita na tabela de partições encontrada no setor 0 do disco. • Comando fdisk • Este comando é um manipulador de tabelas de partição para o Linux (sem relação com o comando homônimo para MS-DOS). • Como alternativa temos o comando cfdisk, que apresenta um menu mais amigável.
Comando FDISK • Opções: • -v Mostra o nº de versão do fdisk. • -l Lista as tabelas de partição para os dispositivos presentes no sistema. • -u Quando listando tabelas de partição, fornece tamanhos em setores em vez de cilindros. • /dev/sdxx Entra no modo de particionamento do dispositivo sdxx
Acessar uma partição: mount • Para acessar uma partição use o comando mount mount [dispositivo] [ponto de montagem] [opções] • Se for digitado sem parâmetros, o comando mostrará os sistemas de arquivos atualmente montados no sistema. Equivale a ler o conteúdo do arquivo /etc/mtab
Comando mount - parâmetros • dispositivo - Identificação da unidade de disco/partição que deseja acessar (como /dev/sda1 (disco rígido) ou /dev/fd0 (primeira unidade de disquetes). • ponto de montagem - Diretório de onde a unidade de disco/partição será acessado. O diretório deve estar vazio para montagem de um sistema de arquivos. Normalmente é usado o diretório /mnt para armazenamento de pontos de montagem temporários. • -t [tipo] - Tipo do sistema de arquivos usado pelo dispositivo. São aceitos os sistemas de arquivos: • ext2 • ext3 - com suporte a journaling. • ext4 - com suporte a journaling. • reiserfs - com suporte a journaling. • xfs - com suporte a journaling.
Comando mount - parâmetros • -t [tipo] - Tipo do sistema de arquivos usado pelo dispositivo. São aceitos os sistemas de arquivos: • vfat - Para partições Windows 95/98. • msdos - Para partições DOS normais. • iso9660 - Para montar unidades de CD-ROM. • -r - Caso seja especificada, monta a partição somente para leitura. • -w - Caso seja especificada, monta a partição como leitura/gravação. Padrão.
FSTAB – Exemplo de Arquivo • Sistema de Arquivos: Partição que deseja montar. • Ponto de montagem: Diretório onde a partição montada será acessada. • Tipo: Tipo de sistema de arquivos usado na partição que será montada. Para partições GNU/Linux use ext3, reiserfs, xfs, para partições DOS use msdos, para partições Win 95 use vfat, para unidades de CD-ROM use iso9660.
FSTAB – Exemplo de Arquivo • Opções: Especifica as opções usadas com o sistema de arquivos. Exemplos: • defaults - Utiliza valores padrões de montagem. • noauto - Não monta os sistemas de arquivos durante a inicialização (útil para CD-ROMS e disquetes). • ro - Monta como somente leitura. • user - Permite que usuários montem o sistema de arquivos. • sync - é recomendado para uso com discos removíveis para que os dados sejam gravados imediatamente na unidade • dump - Especifica a frequência de backup feita com o programa dump no sistema de arquivos. 0 desativa o backup. • Ordem: Define a ordem que os sistemas de arquivos serão verificados na inicialização do sistema. Se usar 0, o sistema de arquivos não é verificado. O sistema de arquivos raiz que deverá ser verificado primeiro é o "/" .
Desmontar um Sistema de Arquivos • Utilize o comando umount para desmontar um sistema de arquivos que foi montado com o mount. Você deve ter permissões de root para desmontar uma partição. • umount [dispositivo/ponto de montagem] • Você pode tanto usar umount /dev/sda1 como umount /mnt para desmontar um sistema de arquivos /dev/sda1 montado em /mnt.
Criar um Sistemas ext3 em uma partição • Comando: mkfs.ext3 ou mkfs.ext2 –j • Exemplos: • mkfs.ext3 /dev/sda1 • Após formatar a partição, montá-la: • mount /dev/sda1 /pastaMontagem -t ext3
Converter partição ext2 em ext3 • Use o comando tune2fs na partição que deseja converter mais a opção -j ou –J [tamanho_journal] para adicionar o suporte a Journaling. • Desmonte e remonte a partição em seguida. • Finalmente, atualize o arquivo /etc/fstab para que a partição seja montada na inicialização como ext3.
Nomear uma Partição • Comando: e2label • e2label [dispositivo] [nome] • Exemplo: e2label /dev/sda1 MeuDisco
Diretório lost+found • O diretório lost+found é criado automaticamente após a formatação da partição com o mkfs.ext3 • A função deste diretório é pré-alocar os blocos de arquivos/diretórios durante a execução do programa fsck.ext3 na recuperação de um sistema de arquivos.
Partição SWAP • Este tipo de partição é usado para oferecer o suporte a memória virtual ao GNU/Linux em adição a memória RAM instalada no sistema. É identificada pelo tipo 82 nos programas de particionamento de disco para Linux.
Criar Sistema de Arquivos SWAP • O programa usado para formatar uma partição Swap é o mkswap: • mkswap /dev/sdax • Após formatá-la, ative-a com o comando: • swapon /dev/sdax • Para desativar uma partição swap: • swapoff /dev/sdax
Sistema de Arquivos /proc • É o sistema de arquivos do Kernel do GNU/Linux. Ele oferece um método de ler, gravar e modificar dinamicamente os parâmetros do kernel. • A modificação dos arquivos do diretório /proc é o método mais usado para modificar a configuração do sistema e muitos programas também dependem deste diretório para funcionar. • Nele você tem todo o controle do que o seus sistema operacional está fazendo, a configuração dos hardwares, interrupções, sistema de arquivos montado, execução de programas, memória do sistema, rede, etc.
Sistema de Arquivos /proc • Alguns arquivos contidos em /proc: • cpuinfo - Detalhes sobre a CPU do sistema • devices - Dispositivos usados no sistema • dma - Canais de DMA usados por dispositivos • filesystems - Sistemas de arquivos em uso atualmente • interrupts - Interrupções usadas por dispositivos • ioports - Portas de Entrada e Saída usadas pelos dispositivos do sistema • kcore - Este arquivo corresponde a toda a memória RAM em seu sistema. Seu tamanho é correspondente a memória RAM do micro • meminfo - Dados de utilização da memória do sistema • mounts - Sistemas de Arquivos atualmente montados • pci - Detalhes sobre dispositivos PCI do sistema • rtc - Relógio em Tempo real do sistema • uptime - Tempo de execução do sistema • Diretório net - Dados sobre a rede do sistema
Montar partição NTFS • Instalar o pacote NTFS-3G: • apt-get install ntfs-3g • Decida qual partição será montada como NTFS e crie um diretório para montá-la: • mkdir /mnt/windows
Montar partição NTFS • Para montar a partição: • mount -t ntfs-3g /dev/sda1 /mnt/windows/ • Para criar, ver, editar e apagar arquivos na partição NTFS, acesse o diretório • /mnt/windows/.
Montar imagem ISO • Use o comando mount: • mount diretório/imagem.iso -t iso9660 –o loop /media/diretórioMontagem