|
1.
Introdução a dispositivos de bloco
Dispositivos de bloco
Iremos estudar os aspectos de manuseio de discos do Gentoo Linux e do Linux em
geral, incluindo sistemas de arquivos de Linux, partições e dispositivos de
bloco. Uma vez que você estiver familiar com o funcionamento de discos e
sistemas de arquivos, iniciaremos o processo de configuração de partições e
sistemas de arquivos para sua instalação do Gentoo Linux.
Para começar, iremos introduzir os dispositivos de bloco. O dispositivo
de bloco mais famoso é provavelmente aquele que representa o primeiro disco
rígido IDE em um sistema Linux, chamado de /dev/hda. Se seu sistema
usa discos SCSI ou SATA, então seu primeiro disco rígido será
/dev/sda.
Os dispositivos de bloco acima representam uma interface abstrata para o disco.
Programas de usuário podem usar os dispositivos de bloco para interagir com seu
disco sem preocupação se eles são IDE, SCSI ou outra coisa. O programa pode
simplesmente classificar o espaço de armazenagem no disco como um monte de
blocos de 512 bytes contíguos acessíveis aleatoriamente.
Partições
Embora seja teoricamente possível usar um disco inteiro para armazenar seu
sistema Linux, isto é quase nunca feito na prática. Ao invés disso, dispositivos
de bloco de discos são divididos em dispositivos de bloco menores e mais fáceis
de manusear. Na maior parte dos sistemas, são chamados de partições.
1.
Desenhando um esquema de particionamento
Esquema de particionamento padrão
Se você não está interessado em desenhar um esquema de particionamento para seu
sistema, você pode usar o esquema de particionamento que usamos neste manual
inteiro:
| Partição NewWorld |
Partição OldWorld |
Partição Pegasos |
Partição RS/6000 |
Sistema de arquivos |
Tamanho |
Descrição |
| /dev/hda1 |
/dev/hda1 |
(Não aplicável) |
(Não aplicável) |
(Mapa de partições) |
32k |
Apple_partition_map |
| /dev/hda2 |
(Não aplicável) |
(Não aplicável) |
(Não aplicável) |
(bootstrap) |
800k |
Apple_Bootstrap |
| (Não aplicável) |
(Não aplicável) |
(Não aplicável) |
/dev/sda1 |
(PReP Boot) |
800k |
Type 0x41 |
| (Não aplicável) |
/dev/hda2 (Se usando quik) |
/dev/hda1 |
(Não necessária) |
ext2 |
32MB |
Partição de inicialização (boot) |
| /dev/hda3 |
/dev/hda2(/dev/hda3 se usando quik) |
/dev/hda2 |
/dev/sda2 |
(swap) |
512M |
Partição de swap, tipo 0x82 |
| /dev/hda4 |
/dev/hda3 (/dev/hda4 se usando quik) |
/dev/hda3 |
/dev/sda3 |
ext3, xfs |
Resto do disco |
Partição raiz (root), tipo 0x83 |
Nota:
Existem algumas partições chamadas: Apple_Driver43, Apple_Driver_ATA,
Apple_FWDriver, Apple_Driver_IOKit, Apple_Patches. Se você não planeja
usar MacOS 9 você pode apagá-las, já que o MacOS X e o Linux não precisam delas.
Para apagá-las, use parted ou apague o disco inteiro iniciando o mapa de
partições.
|
Aviso:
O parted é capaz de redimensionar partições. No CD de instalação há
patches incluídos para redimensionar sistemas de arquivos HFS+. Infelizmente é
arriscado redimensionar sistemas com jornal, certifique-se de desligar jornal no
Mac OS X primeiro e certifique-se de usar uma ferramenta de verificação de disco
após redimensionar. Tudo que você fizer em relação a redimensionamento com o
parted é de seu próprio risco! Certifique-se de ter feito cópias de seus dados!
|
Se você estiver interessado em saber que tamanho uma partição deve ter, ou mesmo
de quantas partições você precisa, leia mais. Caso contrário, continue agora com
Padrão: Usando o mac-fdisk (Apple/IBM) para particionar seu
disco ou Alternativa: Usando o parted (especialmente
para Pegasos) para particionar seu disco.
Quantas e de que tamanho?
O número de partições depende muito de seu ambiente. Por exemplo, se você tem
muitos usuários, você provavelmente deve ter seu /home separado
para aumentar a segurança e tornar backups mais fáceis. Se você estiver
instalando o Gentoo para funcionar como um servidor de e-mails, seu
/var deve ser separado, uma vez que todos e-mails são gravados
dentro de /var. Uma boa escolha de sistema de arquivos irá
maximizar sua performance. Servidores de jogos têm uma partição
/opt separada, uma vez que a maior parte de servidores de jogos são
instalados lá. A razão é semelhante à do /home: segurança e
backups. Você deve manter seu /usr grande: não só irá conter a
maior parte das aplicações, a árvore do Portage sozinha toma em torno de 500
Mbytes, excluindo as várias fontes que são gravadas nela.
Como você pode ver, muito depende do que você quer fazer. Partições ou volumes
separados têm as seguintes vantagens:
-
Você pode escolher o sistema de arquivos de melhor performance para cada
partição ou volume
-
Seu sistema inteiro não irá ficar sem espaço se uma ferramenta defunta
estiver continuamente escrevendo arquivos em uma partição ou volume
-
Se necessárias, verificações de sistemas de arquivos têm seu tempo reduzido,
já que verificações múltiplas podem ser feitas em paralelo (embora esta
vantagem seja maior com vários discos que com várias partições)
-
A segurança pode ser melhorada ao montar algumas partições ou volumes como
somente-leitura, nosuid (bits de setuid são ignorados), noexec (bits
executáveis são ignorados), etc...
No entanto, partições múltiplas têm uma grande desvantagem: se não forem
configuradas apropriadamente, você pode acabar com um sistema com muito espaço
livre em uma partição e nenhum em outra. Também existe um limite de 15 partições
para SCSI e SATA.
1.
Padrão: Usando o mac-fdisk (Apple) para particionar seu disco
Neste ponto, crie suas partições usando o mac-fdisk:
Listagem de código 1.1: Iniciando o mac-fdisk |
# mac-fdisk /dev/hda
|
Primeiro apague as partições que você limpou anteriormente para abrir espaço
para suas partições de Linux. Use d no mac-fdisk para apagar essas
partições. Ele irá perguntar que número de partição deve apagar. A primeira
partição em máquinas NewWorld (Apple_partition_map) não pode ser apagada.
Em Macs NewWorld, crie uma partição Apple_Bootstrap usando b. Ele
irá perguntar em que bloco que você quer que comece. Coloque o número de sua
primeira partição livre, seguido de um p. Por exemplo, 2p.
Nota:
Esta partição não é uma partição /boot. Ela não é usada pelo
Linux de forma alguma; você não tem que colocar nenhum sistema de arquivos nela
e nunca deve montá-la. Usuários de Apple não precisam de uma partição adicional
para /boot.
|
Agora crie uma partição de swap usando c. De novo o mac-fdisk irá
perguntar em que bloco que você quer que esta partição comece. Como nós usamos
2 antes para criar a partição de Apple_Bootstrap, você agora tem que
colocar 3p. Quando perguntado o tamanho, digite 512M (ou o tamanho
que você quiser - recomenda-se 512MB, todavia). Quando perguntado o nome, digite
swap (obrigatório).
Para criar a partição raiz (root), digite c, seguido de 4p para
selecionar em que bloco a partição raiz (root) deve começar. Quando perguntado o
tamanho, digite 4p novamente. O mac-fdisk irá interpretar isso
como "Use todo o espaço disponível". Quando pedirem o nome, digite root
(obrigatório).
Para terminar, escreva a partição no disco usando w e q para sair
do mac-fdisk.
Nota:
Para ter certeza de que tudo está bem, você deve rodar o mac-fdisk mais uma vez
e ver se todas partições estão lá. Se você não vir nenhuma partição que você
criou, ou as mudanças que você fez, você deve reinicializar suas partições
apertando "i" no mac-fdisk. Note que isso irá recriar o mapa de partições e
remover todas suas partições.
|
Agora que suas partições foram criadas, você pode continuar com Criando sistemas de arquivos.
1.
Alternativa: Usando o parted (principalmente para Pegasos) para
particionar seu disco
O parted, o Partition Editor (editor de partições), agora pode lidar com
partições HFS+ usadas pelo Mac OS e Mac OS X. Com esta ferramenta você pode
redimensionar suas partições de Mac e criar espaço para suas partições de Linux.
No entanto, o exemplo abaixo descreve como particionar para máquinas Pegasos
somente.
Para começar iniciamos o parted:
Listagem de código 1.1: Iniciando o parted |
# parted /dev/hda
|
Se o disco não estiver particionado, rode mklabel amiga para criar um
novo disklabel para o disco.
Você pode digitar print a qualquer momento no parted para mostrar a
tabela de partições atual. Se a qualquer momento você mudar de idéia ou fez um
erro você pode apertar Ctrl-c para abortar o parted.
Se você também tem a intenção de instalar o MorphOS em seu Pegasos crie um
sistema de arquivos affs1 chamado "BI0" (BI zero) no início do disco. 32MB devem
ser mais que o suficiente para armazenar o kernel do MorphOS. Se você tem um
Pegasos I ou tem a intenção de usar reiserfs ou xfs, você deverá armazenar o
kernel do Linux nessa partição também (o Pegasos II consegue carregar de
partições ext2/ext3 ou affs1). Para criar a partição rode mkpart primary
affs1 INÍCIO FIM onde INÍCIO e FIM devem ser substituídos com
a amplitude de megabytes (por exemplo, 0 32 cria uma partição de 32 MB
começando em 0MB e terminando em 32MB.
Você precisa criar duas partições para o Linux, um sistema de arquivos raiz
(root) para todos seus programas de arquivo e outras coisas e uma partição de
swap. Para criar um sistema de arquivos raiz (root) você precisa decidir-se
sobre qual sistema de arquivos usar. Opções possíveis são ext2, ext3, reiserfs e
xfs. A menos que você saiba o que está fazendo, use o ext3. Rode mkpart
primary ext3 INÍCIO FIM para criar uma partição ext3. Novamente, troque
INÍCIO e FIM com as marcas de início e fim em megabytes para a
partição.
É geralmente recomendável que você crie uma partição de swap de duas vezes o
tamanho da memória RAM em seu computador. Você provavelmente pode safar-se com
uma partição de swap menor a menos que você deseje rodar muitos aplicativos ao
mesmo tempo (embora no mínimo 512MB são recomendados). Para criar a partição de
swap, rode mkpart primary linux-swap INÍCIO FIM.
Escreva os últimos números das partições uma vez que eles são necessários
durante o processo de instalação. Para ver os últimos número rode print.
Seus discos são acessados com /dev/hdaX onde X é substituído com o
último número da partição.
Quando você terminar com o parted, simplesmente rode quit.
1.
Criando sistemas de arquivos
Introdução
Agora que suas partições foram criadas, está na hora de colocar um sistema de
arquivos nelas. Se você não se importa em escolher o sistema de arquivos e está
contente com o que usamos como padrão neste manual, continue com Aplicando um sistema de arquivos a uma partição.
Caso contrário, leia mais para aprender sobre os sistemas de arquivos
disponíveis...
Sistemas de arquivos?
Vários sistemas de arquivos estão disponíveis. ext2, ext3, ReiserFS e XFS estão
estáveis na arquitetura PPC.
O ext2 é o sistema mais testado e fiel ao Linux, mas não tem jornal de
meta-dados, o que significa que verificações rotineiras de sistemas de arquivo
ext2 podem levar bastante tempo. Existe agora uma razoável seleção de sistemas
de arquivos de nova geração com jornal que podem ter sua consistência verificada
rapidamente e que são geralmente preferíveis aos seus respectivos sistemas sem
jornal. Sistemas de arquivo com jornal previnem longas esperas quando você
carrega seu sistema e seu sistema de arquivos está em um estado inconsistente.
O ext3 é a versão com jornal do sistema de arquivos ext2, fornecendo
jornal de meta-dados para recuperação rápida, fora outros modos de jornal
aprimorados como dados completos e dados ordenados. O ext3 é um sistema de
arquivos muito bom e confiável. Tem uma opção adicional de catalogar hashed
b-trees que permite alta performance em quase todas situações. Você pode ativar
este catálogo adicionando -O dir_index ao comando mke2fs. Para
resumir, o ext3 é um excelente sistema de arquivos.
O ReiserFS é sistema de arquivos baseado em B*-trees que tem uma
performance em geral muito boa e muito superior a tanto o ext2 quanto o ext3 na
hora de lidar com arquivos pequenos (de menos de 4k), freqüentemente com um
fator de 10x-15x. O ReiserFS também escala extremamente bem e tem jornal de
meta-dados. A partir do kernel 2.4.18+, o ReiserFS está sólido e pronto para ser
usado tanto como um sistema de arquivos genérico quanto para casos extremos como
a criação de sistemas de arquivos enormes, uso de muitos arquivos pequenos,
arquivos muito grandes e diretórios contendo dezenas de milhares de arquivos.
O XFS é um sistema de arquivos com jornal de meta-dados que vem com um
robusto conjunto de funções e é otimizado para escalabilidade. Só recomendamos
usar este sistema de arquivos em sistemas rodando Linux com equipamento SCSI de
ponta e/ou armazenamento em canais de fibra e fonte de energia sem interrupção.
Pelo fato de o XFS criar cachês agressivamente de dados em uso na memória RAM,
programas mal desenhados (que não tomam precauções na hora de escrever os
arquivos em disco, e existem muitos deles) podem perder uma grande quantidade de
dados se o sistema for desligado sem aviso.
Aplicando um sistema de arquivos a uma partição
Para criar um sistema de arquivos em uma partição ou volume, existem ferramentas
disponíveis para cada sistema de arquivos possível:
| Sistema de arquivos |
Comando de criação |
| ext2 |
mkfs.ext2 |
| ext3 |
mkfs.ext3 |
| reiserfs |
mkfs.reiserfs |
| xfs |
mkfs.xfs |
Por exemplo, para ter a partição raiz (root) (/dev/hda4 em nosso
exemplo) em ext3 (como em nosso exemplo), você faria:
Listagem de código 1.1: Aplicando um sistema de arquivos a uma partição |
# mkfs.ext3 /dev/hda4
|
Agora crie os sistemas de arquivos em suas partições recém-criadas (ou volumes
lógicos).
Nota:
No PegasosII sua partição que contém o kernel deve ser ext2 ou ext3. Máquinas
NewWorld podem carregar de sistemas de arquivo ext2, ext3, XFS, ReiserFS ou até
mesmo HFS/HFS+. Em máquinas OldWorld carregando com BootX, o kernel deve ser
colocado em uma partição HFS, mas isto será completo quando você configurar seu
gerenciador de inicialização.
|
Ativando a partição de swap
mkswap é o comando usado para iniciar partições de swap:
Listagem de código 1.1: Criando uma assinatura de swap |
# mkswap /dev/hda3
|
Para ativar a partição de swap, use swapon:
Listagem de código 1.1: Ativando a partição de swap |
# swapon /dev/hda3
|
Crie e ative o swap agora.
1.
Montando
Agora que suas partições foram iniciadas e possuem um sistema de arquivos, está
na hora de montá-las. Use o comando mount. Não se esqueça de criar os
diretórios necessários de montagem para cada partição que você criou. Como
exemplo montamos a partição raiz (root):
Listagem de código 1.1: Montando partições |
# mkdir /mnt/gentoo
# mount /dev/hda4 /mnt/gentoo
|
Nota:
Se você quiser que seu /tmp resida em uma partição separada,
certifique-se de mudar suas permissões depois de montá-la: chmod 1777
/mnt/gentoo/tmp. O mesmo vale para /var/tmp.
|
Agora iremos montar o sistema de arquivos proc (uma interface virtual com o
kernel) em /proc. Porém, primeiro iremos colocar nossos arquivos
nas partições.
Continue com (Instalando os arquivos de instalação
do Gentoo).
|