Este apêndice não é necessariamente aplicável à arquiteturas não baseadas no x86. Entretanto, os conceitos gerais mencionados aqui podem ser aplicados.
25.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.
When discussing issues such as disk partitioning, it is important to know a bit about the underlying hardware. Unfortunately, it is easy to become bogged down in details. Therefore, this appendix uses a simplified diagram of a disk drive to help explain what is really happening when a disk drive is partitioned.
Figura 25.1, “Um Disco Rígido não Usado”, shows a brand-new, unused disk drive.
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.
25.1.1. Não Importa o que Você Escreve, mas como Você Escreve
Experienced computer users probably got this one on the first try. We need to format the drive. Formatting (usually known as "making a file system") writes information to the drive, creating order out of the empty space in an unformatted drive.
A small percentage of the drive's available space is used to store file system-related data and can be considered as overhead.
A file system splits the remaining space into small, consistently-sized segments. For Linux, these segments are known as blocks.
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.
It is also worth noting that there is no single, universal file system. As
Figura 25.3, “Drive de Disco com um Sistema de Arquivos Diferente”, shows, a disk drive may have one of many different file systems written on it. As you might guess, different file systems tend to be incompatible; that is, an operating system that supports one file system (or a handful of related file system types) may not support another. This last statement is not a hard-and-fast rule, however. For example, Red Hat Enterprise Linux supports a wide variety of file systems (including many commonly used by other operating systems), making data interchange between different file systems easy.
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.
As
Figura 25.4, “Drive de Disco com Dados Gravados”, shows, some of the previously-empty blocks are now holding data. However, by just looking at this picture, we cannot determine exactly how many files reside on this drive. There may only be one file or many, as all files use at least one block and some files use multiple blocks. Another important point to note is that the used blocks do not have to form a contiguous region; used and unused blocks may be interspersed. This is known as
fragmentation. Fragmentation can play a part when attempting to resize an existing partition.
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.
25.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.
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.
As
Figura 25.5, “Drive de Disco com Tabela de Partições” shows, the partition table is divided into four sections or four
primary partitions. A primary partition is a partition on a hard drive that can contain only one logical drive (or section). Each section can hold the information necessary to define a single partition, meaning that the partition table can define no more than four partitions.
Cada campo da tabela de partições contém diversas características importantes da partição:
Let us take a closer look at each of these characteristics. The starting and ending points actually define the partition's size and location on the disk. The "active" flag is used by some operating systems' boot loaders. In other words, the operating system in the partition that is marked "active" is booted.
The partition's type can be a bit confusing. The type is a number that identifies the partition's anticipated usage. If that statement sounds a bit vague, that is because the meaning of the partition type is a bit vague. Some operating systems use the partition type to denote a specific file system type, to flag the partition as being associated with a particular operating system, to indicate that the partition contains a bootable operating system, or some combination of the three.
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.
We have labeled this partition as being of the "DOS" type. Although it is only one of several possible partition types listed in
Tabela 25.1, “Tipos de Partição”, it is adequate for the purposes of this discussion.
Tabela 25.1. Tipos de Partição Tipo de Partição | Valor | Tipo de Partição | Valor |
---|
Empty | 00 | Novell Netware 386 | 65 |
DOS 12-bit FAT | 01 | PIC/IX | 75 |
XENIX root | 02 | Old MINIX | 80 |
XENIX usr | 03 | Linux/MINUX | 81 |
DOS 16-bit <=32M | 04 | Linux swap | 82 |
Extended | 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 |
OS/2 Boot Manager | 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 |
PPC PReP Boot | 41 | DOS R/O | e3 |
GNU HURD | 63 | DOS secondary | f2 |
Novell Netware 286 | 64 | BBT | ff |
25.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.
Enter the extended partition. As you may have noticed in
Tabela 25.1, “Tipos de Partição”, there is an "Extended" partition type. It is this partition type that is at the heart of extended partitions.
When a partition is created and its type is set to "Extended," an extended partition table is created. In essence, the extended partition is like a disk drive in its own right — it has a partition table that points to one or more partitions (now called
logical partitions, as opposed to the four
primary partitions) contained entirely within the extended partition itself.
Figura 25.7, “Drive de Disco com Partição Estendida”, shows a disk drive with one primary partition and one extended partition containing two logical partitions (along with some unpartitioned free space).
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.
25.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.
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.
25.1.4.1. Usando Espaço Livre não Particionado
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.
In any case, you can create the necessary partitions from the unused space. Unfortunately, this scenario, although very simple, is not very likely (unless you have just purchased a new disk just for Red Hat Enterprise Linux). Most pre-installed operating systems are configured to take up all available space on a disk drive (refer to
Seção 25.1.4.3, “Usando Espaço Livre de uma Partição Ativa”).
Em seguida, discutiremos uma situação um pouco mais comum.
25.1.4.2. Usando Espaço de uma Partição não Usada
In this case, maybe you have one or more partitions that you do not use any longer. Perhaps you have dabbled with another operating system in the past, and the partition(s) you dedicated to it never seem to be used anymore.
Figura 25.9, “Drive de Disco Com uma Partição Não Usada”, illustrates such a situation.
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.
25.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.
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.
- 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:
Em seguida observaremos cada um dos passos detalhadamente.
25.1.4.3.1. Compactando os Dados Existentes
As
Figura 25.11, “Drive de Disco Sendo Compactado”, shows, the first step is to compress the data in your existing partition. The reason for doing this is to rearrange the data such that it maximizes the available free space at the "end" of the partition.
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.
25.1.4.3.2. Resize the existing partition
Figura 25.12, “Drive de Disco com Partição Redimensionada”, shows the actual resizing process. While the actual result of the resizing operation varies depending on the software used, in most cases the newly freed space is used to create an unformatted partition of the same type as the original partition.
É 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).
25.1.4.3.3. Create new partition(s)
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.
25.1.5. Esquema de Nomeamento de Partições
Linux refers to disk partitions using a combination of letters and numbers which may be confusing, particularly if you are used to the "C drive" way of referring to hard disks and their partitions. In the DOS/Windows world, partitions are named using the following method:
Each partition's type is checked to determine if it can be read by DOS/Windows.
If the partition's type is compatible, it is assigned a "drive letter." The drive letters start with a "C" and move on to the following letters, depending on the number of partitions to be labeled.
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 nomeamento mais flexível e traz mais informações do que o esquema usado por outros sistemas operacionais. O esquema de nomeamento é 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.
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 o Red Hat Enterprise Linux. Obviamente, isso não significa que o 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.
25.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.
25.1.7. Partições de Disco e Pontos de Montagem
One area that many people new to Linux find confusing is the matter of how partitions are used and accessed by the Linux operating system. In DOS/Windows, it is relatively simple: Each partition gets a "drive letter." You then use the correct drive letter to refer to files and directories on its corresponding partition.
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/X11/gdm/Sessions/Gnome
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
.
25.1.8. Quantas Partições?
At this point in the process of preparing to install Red Hat Enterprise Linux, you must give some consideration to the number and size of the partitions to be used by your new operating system. The question of "how many partitions" continues to spark debate within the Linux community and, without any end to the debate in sight, it is safe to say that there are probably as many partition layouts as there are people debating the issue.
Com isto em mente, nós recomendamos que, a não ser que você tenha uma razão para fazer diferentemente, as seguintes partições devem ser criadas: swap
, /boot/
(ou uma partição /boot/efi/
em sistemas Itanium), uma partição /var/
para sistemas Itanium, e /
(raiz).