Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

Apêndice A. Introdução às Partições de Disco

Nota

Este apêndice não se aplica necessariamente a arquiteturas não baseadas no x86. Entretanto, os conceitos gerais mencionados aqui podem ser aplicados.
Este apêndice não se aplica necessariamente a arquiteturas não baseadas no x86. Entretanto, os conceitos gerais mencionados aqui podem ser aplicados.
Se você estiver razoavelmente familiarizado com partições de discos, você pode avançar para a Seção A.1.4, “Criando espaço para o Red Hat Enterprise Linux”, para maiores informações sobre o processo de disponibilização de espaço de disco para uma instalação do Red Hat Enterprise Linux. Esta seção também discute o esquema de nomeação de partições usado por sistemas Linux, o compartilhamento de espaço em disco com outros sistemas operacionais, assim como tópicos afins.

A.1. Conceitos Básicos do Disco Rígido

Discos rígidos executam uma função muito simples — eles armazenam dados que podem ser recuperados com confiança através de comandos.
Ao discutir questões como o particionamento de disco, é importante entender um pouco sobre o hardware subjacente. Infelizmente, é fácil terminar se perdendo num mar de detalhes. Portanto, este apêndice usa um diagrama simplificado para ajudar a explicar o que realmente acontece quando um drive de disco é particionado. A Figura A.1, “Um Disco Rígido não Usado” mostra um disco rígido novo, e atualmente não usado.
Um Disco Rígido não Usado

Figura A.1. Um Disco Rígido não Usado

Não há muito a observar, não é mesmo? Mas se estamos falando em discos rígidos em um nível básico, esta imagem é adequada. Digamos que quiséssemos guardar alguns dados neste disco rígido. No estado atual, isto não funcionará. Há algo que deve ser feito primeiro.

A.1.1. Não Importa o que Você Escreve, mas como Você Escreve

Usuários experientes provavelmente captaram isto de primeira. Nós precisamos formatar o drive. Formatar (comumente conhecido como " criando um sistema de arquivos ") escreve informação no drive, criando uma certa ordem no espaço vazio de um drive não formatado.
Drive de Disco com um Sistema de Arquivos

Figura A.2. Drive de Disco com um Sistema de Arquivos

Conforme a Figura A.2, “Drive de Disco com um Sistema de Arquivos” sugere, a ordem imposta por um sistema de arquivos resulta em alguns comprometimentos:
  • Uma pequena porcentagem do espaço disponível do drive é usado para armazenar dados relativos ao sistema de arquivos e pode ser considerado como cabecalho.
  • Um sistema de arquivo divide o espaço restante em pequenos segmentos do mesmo tamanho. Para o Linux, estes segmentos são conhecidos como blocos. [13]
Como os sistemas de arquivos possibilitam a existência de diretórios e arquivos, estas desvantagens geralmente são vistas como um pequeno preço a pagar.
Também vale notar que não existe nenhum sistema de arquivos único, universal. Conforme a Figura A.3, “Drive de Disco com um Sistema de Arquivos Diferente” indica, um drive de disco pode conter um dos vários sistemas de arquivos. Como você pode imaginar, sistemas de arquivos diferentes tendem a ser incompatíveis, ou seja, um sistema operacional que suporta um sistema de arquivos (ou até mesmo alguns tipos de sistemas de arquivos relacionados) talvez não suporte outros, apesar disto não necessariamente representar uma regra. Por exemplo, o Red Hat Enterprise Linux suporta uma grande variedade de sistemas de arquivos (incluindo vários que são normalmente usados por outros sistemas operacionais), facilitando assim a troca de informações entre sistemas de arquivos diferentes.
Drive de Disco com um Sistema de Arquivos Diferente

Figura A.3. Drive de Disco com um Sistema de Arquivos Diferente

Obviamente, escrever um sistema de arquivos no disco é só o começo. O objetivo deste processo é, na verdade, armazenar e recuperar dados. Vamos dar uma olhada em nosso drive após ter escrito (gravado) alguns arquivos nele.
Drive de Disco com Dados Gravados

Figura A.4. Drive de Disco com Dados Gravados

Conforme mostrado na Figura A.4, “Drive de Disco com Dados Gravados”, alguns dos blocos anteriormente vazios agora contém dados. Entretanto, ao analisar esta ilustração, não pode-se determinar exatamente quantos arquivos residem neste drive. Pode ser que exista apenas um arquivo, ou vários, uma vez que todos os arquivos usam pelo menos um bloco e alguns arquivos usam vários. Outro ponto importante a ser notado é que blocos usados não precisam necessariamente formar uma região contínua, blocos usados e livres podem ser alternados. Isto é conhecido como fragmentação. A questão da fragmentação pode tornar-se relevante ao tentar redimensionar uma partição existente.
Assim como é o caso com a maioria das tecnologias relativas a computadores, drives de disco foram modificados após sua introdução. Especialmente, eles aumentaram de tamanho. Não estamos falando em espaço físico, mas em capacidade de armazenamento de dados. E esta capacidade adicional trouxe uma mudança fundamental no modo como drives de disco são utilizados.

A.1.2. Partições: Transformando um Drive em Muitos

Como as capacidades de drives de disco aumentaram drasticamente, algumas pessoas começaram a pensar se seria uma boa idéia ter todo este espaço formatado em um grande pedaço. Essa linha de pensamento foi guiada por diversas questões, algumas filosóficas, outras técnicas. Do lado filosófico, acima de um determinado tamanho, parecia que o espaço adicional provido por um drive maior criava mais desordem. Do lado técnico, alguns sistemas de arquivo nunca foram planejados para suportar acima de uma capacidade determinada. Ou os sistemas de arquivos poderiam suportar drives maiores com maior capacidade, mas a sobrecarga imposta pelo sistema de arquivos rastrear arquivos se tornou excessiva.
A solução deste problema foi dividir discos em partições. Cada partição pode ser acessada como se fosse um disco separado. Isto é feito através da adição de uma tabela de partições.

Nota

Apesar dos diagramas deste capítulo apresentarem a tabela de partiçõesseparada do drive de disco, isto não é 100% verdadeiro. Na realidade, a tabela de partições é armazenada bem no começo do disco, antes de qualquer sistema de arquivos ou dados do usuário. Mas, para clarificar, eles estão separados em nossos diagramas.
Drive de Disco com Tabela de Partições

Figura A.5. Drive de Disco com Tabela de Partições

Conforme indicado na Figura A.5, “Drive de Disco com Tabela de Partições”, a tabela de partições é dividida em quatro seções ou quatro partições primárias. Uma partição primária é uma partição em um disco rígido que pode conter apenas um drive lógico, ou seção. Cada seção pode acomodar informação necessária para definir uma única partição, o que quer dizer que a tabela de partições não pode definir mais do que quatro partições.
Cada campo da tabela de partições contém diversas características importantes da partição:
  • Os pontos do disco onde a partição começa e termina
  • Se a partição está "ativa"
  • O tipo da partição
Vamos dar uma olhada mais minuciosa nestas características. Os pontos de início e fim na verdade definem o tamanho da partição e sua localização no disco. A bandeira "activa" é utilizada por carregadores de inicialização de alguns sistemas operacionais. Em outras palavras, o sistema operacional na partição marcada como "activa" é iniciado.
O tipo de partição pode ser um pouco confuso. O tipo é um número que identifica o uso antecipado da partição. Isto soa um pouco vago porque o conceito do tipo de partição também é vago. Alguns sistemas operacionais usam o tipo de partição para denotar um tipo específico de sistema de arquivo, ou para indicar que a partição está associada a um determinado sistema operacional, ou para indicar que a partição contém um sistema operacional iniciável, ou alguma combinação dos três.
À esta altura, você pode estar se perguntando como toda esta complexidade adicional é normalmente usada. Veja a Figura A.6, “Drive de Disco com uma Partição” para um exemplo.
Drive de Disco com uma Partição

Figura A.6. Drive de Disco com uma Partição

Em muitos casos, há apenas uma partição em todo o disco, essencialmente duplicando o método usado antes do particionamento. A tabela de partições tem apenas um campo, que aponta o início da partição.
Nós etiquetamos esta partição como sendo do tipo "DOS". Embora este seja apenas um dos vários tipos de partição possíveis listados na Tabela A.1, “Tipos de partição”, é adequado para as finalidades desta discussão.
Tabela A.1, “Tipos de partição”, contém uma lista com alguns tipos de partição conhecidos (e outros nem tanto), junto aos seus valores numéricos hexadecimais.

Tabela A.1. Tipos de partição

Tipo de partição Valor Tipo de partição Valor
Vazio 00 Novell Netware 386 65
DOS 12-bit FAT 01 PIC/IX 75
XENIX root 02 Minix antigo 80
XENIX usr 03 Linux/MINUX 81
DOS 16-bit <=32M 04 Linux swap 82
Extendida 05 Linux native 83
DOS 16-bit >=32 06 Linux extended 85
OS/2 HPFS 07 Amoeba 93
AIX 08 Amoeba BBT 94
AIX bootable 09 BSD/386 a5
Gerenciador de Inicializialização OS/2 0a OpenBSD a6
Win95 FAT32 0b NEXTSTEP a7
Win95 FAT32 (LBA) 0c BSDI fs b7
Win95 FAT16 (LBA) 0e BSDI swap b8
Win95 Extended (LBA) 0f Syrinx c7
Venix 80286 40 CP/M db
Novell 51 DOS access e1
PReP Boot 41 DOS R/O e3
GNU HURD 63 DOS secundário f2
Novell Netware 286 64 BBT ff

A.1.3. Partições dentro de Partições — Uma Visão Geral de Partições Estendidas

Obviamente, ao longo do tempo ficou claro que quatro partições não seriam suficientes. Como drives de disco continuaram aumentando em tamanho, seria provável que uma pessoa poderia configurar quatro partições de tamanhos razoáveis e ainda ter espaço livre em disco. Mesmo assim, era preciso achar uma maneira de criar mais partições.
Forneça a partição estendida. Conforme você pode ter notado na Tabela A.1, “Tipos de partição”, há um tipo de partição chamado de "Extended". Este tipo de partição é um dos aspectos mais importantes da questão de partições estendidas.
Quando uma partição é criada e seu tipo é configurado para "Extended", uma tabela de partições estendida é criada. Essencialmente, a partição estendida é como se fosse um disco rígido — possui uma tabela de partições que indica uma ou mais partições (agora chamadas de partições lógicas, ao contrário das quatro partições primárias) contidas inteiramente dentro da partição estendida em si. A Figura A.7, “Drive de Disco com Partição Estendida” mostra um drive de disco com uma partição primária e uma partição estendida contendo duas partições lógicas (além de uma área não particionada contendo espaço livre).
Drive de Disco com Partição Estendida

Figura A.7. Drive de Disco com Partição Estendida

De acordo com esta figura, há uma diferença entre partições primárias e lógicas — pode haver apenas quatro partições primárias, mas não há limite para o número de partições lógicas. Entretanto, devido à maneira como as partições são acessadas no Linux, você deve evitar definir mais de 12 partições lógicas em um único drive de disco.
Agora que discutimos partições em geral, vamos rever como aplicar este conhecimento para instalar o Red Hat Enterprise Linux.

A.1.4. Criando espaço para o Red Hat Enterprise Linux

A lista abaixo apresenta alguns cenários possíveis que você pode encontrar ao tentar reparticionar seu disco rígido:
  • Espaço livre não particionado disponível em disco
  • Uma partição não usada disponível
  • Espaço livre disponível em uma partição ativamente usada
Vamos ver cada cenário em ordem.

Nota

Por favor tenha em mente que as ilustrações a seguir foram simplificadas para facilitar o entendimento e não refletem o layout exato da partição que você encontra ao instalar o Red Hat Enterprise Linux.

A.1.4.1. Usando Espaço Livre não Particionado

Neste cenário, as partições atualmente definidas não usam toda a extensão do disco rígido, deixando espaço não alocado que não faz parte de nenhuma partição. A Figura A.8, “Drive de Disco com Espaço Livre não Particionado” exibe um exemplo deste cenário.
Drive de Disco com Espaço Livre não Particionado

Figura A.8. Drive de Disco com Espaço Livre não Particionado

Na Figura A.8, “Drive de Disco com Espaço Livre não Particionado”, 1 representa uma partição indefinida com espaço não alocado e 2 representa uma partição definida com espaço alocado.
Se pensarmos sobre isto, um disco rígido não usado também recai nesta categoria. A única diferença é que todo o espaço não faz parte de nenhuma partição definida.
Neste caso, você pode criar as partições necessárias usando o espaço não utilizado. Infelizmente, este cenário, embora simples, não é muito provável (a não ser que você recém tenha comprado um novo disco para o Red Hat Enterprise Linux). A maioria dos sistemas operacionais pré-instalados são configurados para que ocupem todo o espaço livre em um drive de disco (Veja a Seção A.1.4.3, “Usando Espaço Livre de uma Partição Ativa”).
Em seguida, discutiremos uma situação um pouco mais comum.

A.1.4.2. Usando Espaço de uma Partição não Usada

Neste caso, talvez você tenha uma ou mais partições que não sejam mais utilizadas. Talvez você tenha experimentado outro sistema operacional no passado, e as partições que você dedicou a este outro sistema operacional não têm sido mais usadas. A Figura A.9, “Drive de Disco Com uma Partição Não Usada” ilustra tal situação.
Drive de Disco Com uma Partição Não Usada

Figura A.9. Drive de Disco Com uma Partição Não Usada

Na Figura A.9, “Drive de Disco Com uma Partição Não Usada”, 1 representa uma partição não usada e 2 representa a realocação de uma partição não usada para o Linux.
Se você estiver nesta situação, pode utilizar o espaço alocado para a partição não usada. Primeiramente você precisa apagar a partição, e então criar a(s) partição(ões) Linux apropriada(s) em seu lugar. Você pode apagar a partição não usada e manualmente criar novas partições durante o processo de instalação.

A.1.4.3. Usando Espaço Livre de uma Partição Ativa

Essa é a situação mais comum e, infelizmente, a mais difícil de se lidar. O maior problema é que, mesmo tendo espaço livre suficiente, este está alocado à uma partição que já está em uso. Se você adquiriu um computador com software pré-instalado, é mais provável que o disco rígido tenha uma grande partição contendo o sistema operacional e os dados.
Além de adicionar um novo disco rígido ao seu sistema, você tem duas opções:
Destructive Repartitioning
Basicamente, você deleta a partição grande e cria diversas partições menores. Como você pode supor, todos os dados contidos na partição original são destruídos. Isto significa que é necessário fazer um backup completo. Para o seu próprio bem, faça dois backups, use a verificação (se estiver disponível em seu software de backup), e tente ler os dados a partir de seu backup antes de deletar a partição.

Atenção

Se há algum sistema operacional instalado naquela partição, ele deverá ser reinstalado também. Atente para o fato de que alguns computadores vendidos com sistemas operacionais pré-instalados talvez não incluam o CD-ROM para reinstalar o sistema operacional original. A melhor hora para checar se isto é aplicável ao seu sistema é antes de destruir sua partição e a instalação do sistema operacional original.
Após criar uma partição menor para o seu sistema operacional, você pode reinstalar quaisquer aplicativos, restaurar os seus dados, e iniciar a instalação do Red Hat Enterprise Linux. A Figura A.10, “Drive de Disco Sendo Reparticionado Destrutivamente” mostra isto sendo feito.
Drive de Disco Sendo Reparticionado Destrutivamente

Figura A.10. Drive de Disco Sendo Reparticionado Destrutivamente

Na Figura A.10, “Drive de Disco Sendo Reparticionado Destrutivamente”, 1 representa antes e 2 representa depois.

Atenção

Conforme mostrado na Figura A.10, “Drive de Disco Sendo Reparticionado Destrutivamente”, quaisquer dados presentes na partição original são perdidos se não houver um backup.
Non-Destructive Repartitioning
Aqui você roda um programa que executa algo aparentemente impossível: reduz o tamanho de uma partição grande sem perder nenhum dos arquivos armazendos nela. Muitas pessoas acreditam que este método seja confiável e que não apresenta problemas. Qual software você deve utilizar para executar este feito? Há diversos softwares de gerenciamento de disco no mercado. Pesquise para encontrar aquele que seja o melhor para seu caso.
Apesar do processo de repartição não-destrutivo ser muito claro, há diversos passos envolvidos:
  • Comprimir e fazer backup dos dados existentes
  • Redimensionar a Partição Existente
  • Criar novas partições.
Em seguida observaremos cada um dos passos detalhadamente.
A.1.4.3.1. Compactando os Dados Existentes
Conforme indicado na Figura A.11, “Drive de Disco Sendo Compactado”, o primeiro passo é compactar os dados na sua partição existente. Isto é feito com o intuito de reorganizar os dados para maximizar o espaço livre no "final" da partição.
Drive de Disco Sendo Compactado

Figura A.11. Drive de Disco Sendo Compactado

Na Figura A.11, “Drive de Disco Sendo Compactado”, 1 representa antes e 2 representa depois.
Este passo é crucial. Sem ele, a localização de seus dados pode impedir que a partição seja redimensionada para a extensão desejada. Note também que, por uma razão ou outra, alguns dados não podem ser movidos. Se este for o caso (e isto restringe fortemente o tamanho de sua(s) nova(s) partição(ões)), você talvez seja forçado a repartir seu disco destrutivamente.
A.1.4.3.2. Redimensionar a Partição Existente
Figura A.12, “Drive de Disco com Partição Redimensionada”, mostra o processo de redimensionamento real. Enquanto o resultado real da operação de redimensionamento varia de acordo com o software usado, na maioria dos casos o espaço recém-liberado é usado para criar uma partição não-formatada do mesmo tipo que a original.
Drive de Disco com Partição Redimensionada

Figura A.12. Drive de Disco com Partição Redimensionada

Na Figura A.12, “Drive de Disco com Partição Redimensionada”, 1 representa antes e 2 representa depois.
É importante entender o que o software de redimensionamento que você está usando faz com o espaço recém liberado, assim você poderá seguir os passos apropriados. No caso que ilustramos, seria melhor deletar a nova partição DOS e criar a(s) partição(ões) Linux apropriada(s).
A.1.4.3.3. Criar novas partições.
Conforme o passo anterior sugere, talvez não seja necessário criar novas partições. Entretanto, a não ser que o seu aplicativo de redimensionamento tenha a capacidade de lidar com o Linux, é provável que você precise remover a partição que foi criada durante o processo de redimensionamento. A Figura A.13, “Drive de Disco com a Configuração Final da Partição” mostra isto sendo feito.
Drive de Disco com a Configuração Final da Partição

Figura A.13. Drive de Disco com a Configuração Final da Partição

Nota

A informação seguinte é válida somente para computadores com processadores x86.
Como uma facilidade para nossos clientes, nós provemos o utilitário parted. Esse programa disponível gratuitamente é capaz de redimensionar partições.
Se você resolver reparticionar o seu disco rígido com o parted, é importante entender sobre o armazenamento do disco e executar um backup dos dados de seu computador. Você deve fazer duas cópias de todos os dados importantes. Estas cópias devem ser feitas em mídia removível (tal como fita, CD-ROM ou disquetes), e você deve certificar-se de que elas estão legíveis antes de prosseguir.
Se resolver utilizar o parted, esteja ciente de que após executar parted você terá duas partições: aquela que você redimensionou e outra parted criada a partir do espaço recém-liberado. Se seu objetivo for utilizar este espaço para instalar Red Hat Enterprise Linux, você deve apagar a partição recém-criada, usando o utilitário de particionamento de seu sistema operacional atual ou enquanto estiver definindo as partições durante a instalação.

A.1.5. Esquema de Nomeamento de Partições

O Linux refere-se a partições de disco utilizando uma combinação de letras e números que pode ser um pouco confusa, particularmente se você estiver acostumado com o tipo de referência "drive C" a discos rígidos e suas partições. No mundo DOS/Windows, as partições são nomeadas usando o seguinte método:
  • Cada tipo de partição é checado a fim de determinar se ele pode ser lido por DOS/Windows.
  • Se o tipo de partição for compatível, lhe é atribuído uma "letra de drive". As letras dos drives começam com "C" e seguem para as próximas letras, dependendo do número de partições a serem nomeadas.
  • A letra do drive pode então ser usada para referenciar esta partição assim como o sistema de arquivos contido nesta partição.
O Red Hat Enterprise Linux utiliza um esquema de nomenclatura mais flexível e traz mais informações do que o esquema usado por outros sistemas operacionais. O esquema de nomenclatura é baseado em arquivos, com os nomes de arquivos no formato /dev/xxyN.
Como decifrar o esquema de nomeamento de partições:
/dev/
Este é o nome do diretório onde encontram-se todos os arquivos de dispositivos. Já que partições residem em discos rígidos, e discos rígidos são dispositivos, os arquivos representando todas as partições possíveis residem em /dev/.
xx
As primeiras duas letras do nome da partição indicam o tipo de dispositivo no qual a partição reside, geralmente hd (para discos IDE) ou sd (para discos SCSI).
y
Essa letra indica em qual dispositivo a partição está. Por exemplo, /dev/hda (o primeiro disco rígido IDE) ou /dev/sdb (o segundo disco SCSI).
N
O número final denota a partição. As primeiras quatro partições (primárias ou extendidas) são numeradas de 1 a 4. Partições lógicas começam com 5. Por exemplo, /dev/hda3 é a terceira partição primária ou extendida no primeiro disco rígido IDE, e /dev/sdb6 é a segunda partição lógica no segundo disco rígido SCSI.

Nota

Não há nenhuma parte desta convenção de nomes baseada no tipo de partição; ao contrário do DOS/Windows, todas as partições podem ser identificadas sob Red Hat Enterprise Linux. Obviamente, isso não significa que Red Hat Enterprise Linux pode acessar dados em qualquer tipo de partição, mas em muitos casos é possível acessar dados em uma partição dedicada a outro sistema operacional.
Tenha essa informação em mente; isto facilitará o entendimento das coisas ao definir as partições que o Red Hat Enterprise Linux necessita.

A.1.6. Partições de Disco e Outros Sistemas Operacionais

Se as partições de seu Red Hat Enterprise Linux forem compartilhar um disco rígido com partições usadas por outros sistemas operacionais, você não terá problemas na maioria das vezes. No entanto, há determinadas combinações do Linux com outros sistemas operacionais que requerem cuidado extra.

A.1.7. Partições de Disco e Pontos de Montagem

Uma área que muitos novatos no Linux acham confusa é a questão de como as partições são usadas e acessadas pelo sistema operacional Linux. No DOS/Windows ela é relativamente simples: cada partição leva uma "letra de drive". E então você usa a letra de drive correta para consultar arquivos e diretórios na partição correspondente.
Isto é completamente diferente da maneira como Linux lida com partições e, por conseqüência, com armazenamento em disco em geral. A principal diferença é que cada partição é usada para formar parte do armazenamento necessário para suportar um conjunto de arquivos e diretórios. Isto é feito associando a partição com o diretório através de um processo conhecido como montagem. Montar uma partição viabiliza seu armazenamento a partir do diretório especificado (conhecido como ponto de montagem).
Por exemplo: se a partição /dev/hda5 é montada em /usr, isto significa que todos os arquivos e diretórios sob /usr estarão fisicamente localizados em /dev/hda5. Portanto, o arquivo /usr/share/doc/FAQ/txt/Linux-FAQ seria armazenado em /dev/hda5, enquanto o arquivo /etc//gdm/custom.conf não estaria na mesma localização.
Continuando com nosso exemplo, também é possível que um ou mais diretórios sob /usr/ sejam pontos de montagem de outras partições. Por exemplo, uma partição (digamos /dev/hda7) poderia ser montada em /usr/local, significando que /usr/local/man/whatis então estaria localizado em /dev/hda7 ao invés de /dev/hda5.

A.1.8. Quantas Partições?

Neste estágio de preparação para instalar o Red Hat Enterprise Linux, você precisa atentar para o número e tamanho das partições a serem utilizadas pelo seu novo sistema operacional. A questão de "quantas partições" continua esquentando o debate na comunidade Linux e, sem nenhuma conclusão deste debate à vista, é seguro dizer que provavelmente há tantos layouts de partições quanto pessoas discutindo essa questão.
Com isto em mente, nós recomendamos que, a não ser que você tenha uma razão para fazer diferente, as seguintes partições devem ser criadas: swap, /boot/ e / (root).
Para maiores informações, consulte a Seção 9.15.5, “Esquema de Particionamento Recomendado”.


[13] Blocos são realmente do mesmo tamanho, ao contrário do que sugerem as nossas ilustrações. Também tenha em mente que um drive de disco típico contém milhares de blocos. Entretanto, para as finalidades desta discussão, por favor ignore estas pequenas discrepâncias.