2.6. Alocando o espaço em disco
Anterior | Capítulo 2. Instalando o FreeBSD | Próxima

## 2.6. Alocando o espaço em disco

O próximo menu é usado para determinar o método de alocação de espaço em disco. As opções disponíveis no menu dependem da versão do FreeBSD sendo instalada.

Figura 2.10. Opções de Particionamento

bsdinstall fornece ao usuário quatro métodos para alocar espaço em disco:

- O particionamento `Auto (UFS)` configura automaticamente as partições do disco usando o sistema de arquivos `UFS`.

- O particionamento `Manual` permite que usuários avançados criem partições personalizadas a partir das opções de menu.

- `Shell` abre um prompt de shell no qual usuários avançados podem criar partições personalizadas usando utilitários de linha de comando como gpart(8), fdisk(8), e bsdlabel(8).

- O particionamento `Auto (ZFS)` cria um sistema root-on-ZFS com suporte opcional à criptografia GELI para boot environments.

Esta seção descreve o que considerar ao definir as partições de disco. Em seguida, demonstra como usar os diferentes métodos de particionamento.

### 2.6.1. Criando o layout da partição

Ao criar os sistemas de arquivos, lembre-se de que os discos rígidos transferem dados mais rapidamente das trilhas externas para as internas. Assim, sistemas de arquivos menores e mais acessados devem estar mais próximos da parte externa da unidade, enquanto partições maiores, como `/usr`, devem ser colocadas em direção às partes internas do disco. É uma boa idéia criar partições em uma ordem similar a: `/`, swap, `/var` e `/usr`.

O tamanho da partição `/var` reflete o uso pretendido para a máquina. Esta partição é usada para armazenar caixas de correio, arquivos de log e spools de impressora. Caixas de correio e arquivos de log podem crescer até tamanhos inesperados, dependendo do número de usuários e de quanto tempo os arquivos de log são mantidos. Na média, a maioria dos usuários raramente precisa de mais do que cerca de um gigabyte de espaço livre em disco no `/var`.

### Nota:

Às vezes, é necessário muito espaço em disco no `/var/tmp`. Quando um novo software é instalado, as ferramentas de empacotamento extraem uma cópia temporária dos pacotes no `/var/tmp`. Grandes pacotes de software, como o Firefox ou LibreOffice podem ser difíceis de instalar se não houver espaço em disco suficiente no `/var/tmp`.

A partição `/usr` contém muitos dos arquivos que suportam o sistema, incluindo o a Coleção de Ports do FreeBSD e o código-fonte do sistema. Pelo menos 2 gigabytes de espaço são recomendados para esta partição.

Ao selecionar os tamanhos das partições, lembre-se dos requisitos de espaço. Ficar sem espaço em uma partição enquanto mal usa outra pode ser um aborrecimento.

Como regra geral, a partição swap deve ter o dobro do tamanho da memória física (RAM). Sistemas com pouca memória RAM podem ter um melhor desempenho com mais swap. Configurar um swap pequeno pode levar a ineficiências no código de verificação de página da VM e pode criar problemas mais tarde, se mais memória for adicionada.

Em sistemas maiores com vários discos SCSI ou vários discos IDE operando em diferentes controladoras, é recomendável que uma area de swap seja configurada em cada unidade, até quatro unidades. As partições de swap devem ter aproximadamente o mesmo tamanho. O kernel pode manipular tamanhos arbitrários, mas as estruturas internas de dados podem ser dimensionadas para 4 vezes a maior partição de swap. Manter as partições de swap próximas do mesmo tamanho permitirá que o kernel otimize o espaço de swap entre discos. Partições grandes de swap são uma coisa boa, mesmo se o swap não for muito usado. Pode ser mais fácil de se recuperar de um programa devorador de memória antes de ser forçado a reinicializar.

Ao particionar adequadamente um sistema, a fragmentação introduzida nas partições menores e intensas em gravação não vai prejudicar as partições que são maioritariamente de leitura. Manter as partições com maior carga de gravação mais próximas da borda do disco aumentará o desempenho de I/O nas partições onde ela é mais necessária. Embora o desempenho de I/O nas partições maiores possa ser necessário, mudá-las mais para a borda do disco não levará a uma melhoria de desempenho significativa em relação à movimentação de `/var` para a borda.

### 2.6.2. Particionamento Guiado Usando UFS

Quando este método é selecionado, um menu exibirá o(s) disco(s) disponível(s). Se vários discos estiverem conectados, escolha aquele em que o FreeBSD deve ser instalado.

Figura 2.11. Selecionando a partir de vários discos

Depois que o disco é selecionado, o próximo menu solicita a instalação no disco inteiro ou a criação de uma partição usando o espaço livre. Se [ Entire Disk ] for escolhido, um layout de partição geral que preenche todo o disco é criado automaticamente. Selecionar [Partition] cria um layout de partição do espaço não utilizado no disco.

Figura 2.12. Selecionando todo o disco ou partição

Após [ Entire Disk ] ser escolhido, bsdinstall exibe uma caixa de diálogo indicando que o disco será apagado.

Figura 2.13. Confirmação

O próximo menu mostra uma lista com os tipos de esquema de partição. O GPT é geralmente a opção mais apropriada para computadores amd64. Computadores mais antigos que não são compatíveis com o GPT devem usar o MBR. Os outros esquemas de partição são geralmente usados para computadores incomuns ou antigos. Mais informações estão disponíveis em Tabela 2.1, “Esquemas de Particionamento”.

Figura 2.14. Selecionar Esquema de Particionamento

Depois que o layout da partição tiver sido criado, revise-o para garantir que ele atenda às necessidades da instalação. Selecionar [ Revert ] redefinirá as partições para seus valores originais e pressionar [Auto] recriará as partições automáticas do FreeBSD. As partições também podem ser criadas, modificadas ou excluídas manualmente. Quando o particionamento estiver correto, selecione [Finish] para continuar com a instalação.

Figura 2.15. Revise as partições criadas

Depois que os discos são configurados, o próximo menu fornece a última chance de fazer alterações antes que os discos selecionados sejam formatados. Se for necessário fazer alterações, selecione [Back] para retornar ao menu principal de particionamento. [ Revert & Exit ] sairá do instalador sem fazer alterações no disco. Selecione [ Commit ] para iniciar o processo de instalação.

Figura 2.16. Confirmação final

Para continuar com o processo de instalação, vá para Seção 2.7, “Fazendo o download dos arquivos de distribuição”.

### 2.6.3. Particionamento Manual

Selecionar este método abre o editor de partições:

Figura 2.17. Criar partições manualmente

Realce a unidade de instalação (`ada0` neste exemplo) e selecione [ Create ] para exibir um menu dos esquemas de partição disponíveis:

Figura 2.18. Criar partições manualmente

O GPT é geralmente a opção mais apropriada para computadores amd64. Computadores mais antigos que não são compatíveis com o GPT devem usar o MBR. Os outros esquemas de partição são geralmente usados para computadores incomuns ou antigos.

Tabela 2.1. Esquemas de Particionamento

Abreviação | Descrição
--- | ---
APM | Apple Partition Map, usado no PowerPC®.
BSD | O Label BSD sem um MBR, às vezes chamado de modo perigosamente dedicado porque os utilitários de discos não BSD podem não reconhecê-lo.
GPT | Tabela de Partição GUID ( http://en.wikipedia.org/wiki/GUID_Partition_Table ).
MBR | Registro mestre de inicialização ou MBR ( http://en.wikipedia.org/wiki/Master_boot_record ).
VTOC8 | Tabela de Volume do Conteúdo usado pelos computadores Sun SPARC64 e UltraSPARC.

Depois que o esquema de particionamento for selecionado e criado, selecione [Create] novamente para criar as partições.A tecla Tab é utilizada para navegação entre os campos.

Figura 2.19. Criar partições manualmente

Uma instalação padrão do FreeBSD GPT usa pelo menos três partições:

- `freebsd-boot` - Mantém o código de inicialização do FreeBSD.

- `freebsd-ufs` - Um sistema de arquivos UFS do FreeBSD.

- `freebsd-zfs` - Um sistema de arquivos ZFS do FreeBSD. Mais informações sobre o ZFS estão disponíveis em Capítulo 19, O sistema de arquivos Z (ZFS).

- `freebsd-swap` - Espaço de swap do FreeBSD.

Consulte gpart(8) para obter informações de todos os tipos de partições GPT disponíveis.

Várias partições do sistema de arquivos podem ser criadas e algumas pessoas preferem um layout tradicional com partições separadas para `/`, `/var`, `/tmp` e `/usr`. Veja Exemplo 2.1, “Criando partições tradicionais para um sistema de arquivos dividido” para um exemplo.

O `tamanho` pode ser digitado com abreviações comuns: K para kilobytes, M para megabytes, ou G para gigabytes.

### Dica:

O alinhamento adequado do setor fornece o melhor desempenho, e ao definir os tamanhos das partições em múltiplos de 4K bytes ajuda a garantir o alinhamento em discos com setores de 512 ou 4 bytes. Geralmente, usar tamanhos de partições que são múltiplos de 1M ou 1G é a maneira mais fácil de garantir que cada partição comece em um múltiplo par de 4K. Há uma exceção: a partição freebsd-boot não deve ser maior que 512K devido às limitações atuais do código de inicialização.

Um `Mountpoint` é necessário se a partição contiver um sistema de arquivos. Se apenas uma única partição UFS for criada, o ponto de montagem deve ser `/`.

O `Label` é um nome pelo qual a partição será conhecida. Nomes ou números de unidades podem mudar se a unidade estiver conectada a um controlador ou porta diferente, mas a etiqueta da partição não muda. Referir-se a rótulos em vez de nomes de unidade e números de partição em arquivos como o `/etc/fstab` torna o sistema mais tolerante a alterações de hardware. Os rótulos GPT aparecem em `/dev/gpt/` quando um disco é anexado. Outros esquemas de particionamento têm diferentes capacidades de rótulos e seus rótulos aparecem em diferentes diretórios no `/dev/`.

### Dica:

Use um rótulo único e exclusivo para cada uma das partições para evitar conflitos de rótulos idênticos. Algumas letras do nome, uso ou localização do computador podem ser adicionadas ao rótulo. Por exemplo, use `labroot` ou `rootfslab` para a partição raiz UFS no computador chamado `lab`.

Exemplo 2.1. Criando partições tradicionais para um sistema de arquivos dividido

Para um layout de partição tradicional em que os diretórios `/`, `/var`, `/tmp` e `/usr` são sistemas de arquivos separados em suas próprias partições, crie um esquema de particionamento GPT e crie as partições conforme mostrado. Os tamanhos de partição mostrados são típicos para um disco de destino de 20G. Se houver mais espaço disponível no disco de destino, partições maiores de swap ou `/var` podem ser úteis. Os rótulos mostrados aqui são prefixados com `ex` para “exemplo”, mas os leitores devem usar outros valores de rótulo exclusivos, conforme descrito acima.

Por padrão, o `gptboot` do FreeBSD espera que a primeira partição UFS seja a partição `/`.

Tipo de Partição | Tamanho | Ponto de montagem | Rótulo
--- | --- | --- | ---
`freebsd-boot` | `512K` |  |
`freebsd-ufs` | `2G` | `/` | `exrootfs`
`freebsd-swap` | `4G` |  | `exswap`
`freebsd-ufs` | `2G` | `/var` | `exvarfs`
`freebsd-ufs` | `1G` | `/tmp` | `extmpfs`
`freebsd-ufs` | aceite o padrão (restante do disco) | `/usr` | `exusrfs`

Depois que as partições personalizadas forem criadas, selecione [Finish] para continuar com a instalação e vá para Seção 2.7, “Fazendo o download dos arquivos de distribuição”.

### 2.6.4. Particionamento Guiado Usando Root-on-ZFS

Este modo de particionamento funciona apenas com discos inteiros e apagará por completo o conteúdo do disco. O menu de configuração principal do ZFS oferece várias opções para controlar a criação do pool.

Figura 2.20. Menu de particionamento do ZFS

Aqui está um resumo das opções que podem ser usadas neste menu:

- `Instalar` - Prosseguir a instalação com as opções selecionadas.

- `Tipo de Pool/Discos` - Permite configurar o `Tipo de Pool` e o(s) disco(s ) que irão constituir o pool. Atualmente o instalador ZFS automático suporta apenas a criação de uma única camada superior vdev, exceto em modo stripe. Para criar pools mais complexos, use as instruções em Seção 2.6.5, “Particionamento do modo shell” para criar o pool.

- `Re-escanear Dispositivos` - Re-popular a lista de discos disponíveis.

- `Disk Info` - Disk Info pode ser usado para inspecionar cada disco, incluindo sua tabela de partição e várias outras informações, como o número do modelo do dispositivo e o número de série, se disponíveis.

- `Pool Name` - Define o nome do pool. O nome default é zroot.

- `Force 4K Sectors?` - Forçar o uso de setores em 4K. Por padrão, o instalador irá automaticamente criar partições alinhadas com limites em 4K e forçar o ZFS a usar setores de 4K. Isto é seguro mesmo com discos de setores de 512 bytes, e tem o benefício adicional de garantir que pools criados em discos de 512 bytes conseguirão ter setores de 4K adicionados no futuro, seja como espaço de armazenamento adicional ou como substituição ode discos e falha. Aperte a tecla Enter para escolher ativar isso ou não.

- `Encrypt Disks?` - A criptografia dos discos permite ao usuário criptografar os discos usando GELI. Mais informação sobre criptografia de discos está disponível em Seção 17.12.2, “Criptografia de Disco com `geli`”. Aperte a tecla Enter para escolher ativá-la ou não.

- `Partition Scheme` - Permitei escolher o esquema de partição. GPT é a opção recomendada na maioria dos casos. Aperte a tecla Enter para escolher entre diferentes opções.

- `Swap Size` - Determina a quantidade de espaço para swap.

- `Mirror Swap?` - Permite ao usuário espelhar o swap entre os discos. Fique atento, o espelhamento da swap irá quebrar dumps de crash. Pressione a tecla Enter para ativar ou não.

- `Encrypt Swap?` - Permite ao usuário criptografar a swap. Criptografa a swap com uma chave temporária toda vez que o sistema inicializa e a descarta na reinicialização. Pressione a tecla Enter para ativar ou não. Mais informação sobre criptografia de swap em Seção 17.13, “Criptografando Swap”.

Selecione T para configurar o `Pool Type` e o(s) disco(s) que irá constituir o pool.

Figura 2.21. Tipo de pool ZFS

Aqui está um resumo dos `Pool Type` que podem ser selecionados neste menu:

- `stripe` - Striping provê a capacidade máxima de todos os dispositivos conectados, mas não redundância. Se um disco falhar os dados do pool estarão perdidos de forma irrevogável.

- `mirror` - O espelhamento armazena uma completa cópia de todos os dados em todos os discos. O espelhamento provê uma boa performance em leitura porque os dados são lidos the todos os discos em paralelo. A performance da escrita é mais lenta pois os dados precisam ser escritos em todos os discos do pool. Torna possível que haja falha nos discos, menos um. Esta opção requer ao menos dois discos.

- `raid10` - Striped mirrors. Provê a melhor performance, mas o menor armazenamento. Esta opção necessita de um número par de discos e no mínimo quatro discos.

- `raidz1` - RAID Único Redundante. Permite que haja falha concorrente de um disco. Esta opção necessita de ao menos três discos.

- `raidz2` - RAID Duplo Redundante. Permite que até dois discos falhem concorrentemente. Esta opção necessita de ao menos quatro discos.

- `raidz3` - RAID Triplo Redundante. Permite que até três discos falhem concorrentemente. Esta opção necessita de ao menos cinco discos.

Quando um `Pool Type` for selecionado, uma lista de discos disponíveis será exibida, e o usuário é solicitado a selecionar um ou mais discos para compor o pool. A configuração é então validada, para garantir que discos suficientes sejam selecionados. Caso contrário, selecione <Change Selection> para retornar à lista de discos ou <Backgt> para alterar o `Pool Type`

Figura 2.22. Seleção de disco
Figura 2.23. Seleção inválida

Se um ou mais discos estiverem faltando na lista, ou se os discos foram anexados depois que o instalador foi iniciado, selecione - Rescan Devices para preencher novamente a lista de discos disponíveis.

Figura 2.24. Dispositivos de Reescaneamento

Para evitar apagar acidentalmente o disco errado, o menu - Disk Info pode ser usado para inspecionar cada disco, incluindo sua tabela de partição e várias outras informações, como o número do modelo do dispositivo e o número de série, se disponíveis.

Figura 2.25. Analisando um disco

Selecione N para configurar o `Pool Name`. Entre com o nome desejado e então selecione <OK> para confirmar ou <Cancel> para retornar ao menu principal e deixar o nome padrão.

Figura 2.26. Nome do Pool

Selecione S para escolher a quantidade de swap. Entre com a quantidade desejada e então selecione <OK> para confirmar isto ou <Cancel> para retornar ao menu principal e deixar a quantidade padrão.

Figura 2.27. Quantidade de Swap

Uma vez que todas opções estejam setadas com os valores desejados, selecione a opção >>> Install no topo do menu. O instalador oferece uma última chance de cancelar antes que o conteúdo das unidades selecionadas seja destruído para criar o pool do ZFS.

Figura 2.28. Última chance

Se a criptografia de disco GELI foi ativada, o instalador solicitará duas vezes que a frase secreta seja usada para criptografar os discos. E depois dissoa inicialização da criptografia é iniciado.

Figura 2.29. Senha de criptografia de disco
Figura 2.30. inicializando Criptografia

A instalação então prossegue normalmente. Para continuar com a instalação, vá para Seção 2.7, “Fazendo o download dos arquivos de distribuição”.

### 2.6.5. Particionamento do modo shell

Ao criar instalações avançadas, os menus de particionamento do bsdinstall podem não fornecer o nível de flexibilidade necessário. Usuários avançados podem selecionar a opção Shell no menu de particionamento para particionar manualmente as unidades, criar o(s) sistema(s) de arquivos, preencher o `/tmp/bsdinstall_etc/fstab` e montar os sistemas de arquivos em `/mnt`. Feito isso, digite `exit` para retornar ao bsdinstall e continue com a instalação.

Anterior | Acima | Próxima
2.5. Usando o bsdinstall | Principal | 2.7. Fazendo o download dos arquivos de distribuição

All FreeBSD documents are available for download at https://download.freebsd.org/ftp/doc/

Questions that are not answered by the documentation may be sent to <freebsd-questions@FreeBSD.org>.
Send questions about this document to <freebsd-doc@FreeBSD.org>.