2.4. Criando uma Nova Partição

Como a maior parte dos outros sistemas operacionais, o LFS geralmente é instalado em uma partição dedicada. A abordagem recomendada para construir um sistema LFS é a de usar uma partição disponível vazia ou, se você tiver espaço suficiente não particionado, criar uma.

A minimal system requires a partition of around 10 gigabytes (GB). This is enough to store all the source tarballs and compile the packages. However, if the LFS system is intended to be the primary Linux system, additional software will probably be installed which will require additional space. A 30 GB partition is a reasonable size to provide for growth. The LFS system itself will not take up this much room. A large portion of this requirement is to provide sufficient free temporary storage as well as for adding additional capabilities after LFS is complete. Additionally, compiling packages can require a lot of disk space which will be reclaimed after the package is installed.

Como nem sempre existe Memória de Acesso Aleatório (RAM) suficiente disponível para processos de compilação, é uma boa ideia usar uma pequena partição de disco como espaço de swap. Ele é usado pelo kernel para armazenar dados raramente usados e deixa mais memória disponível para processos ativos. A partição de swap para um sistema LFS pode ser a mesma que aquela usada pelo sistema anfitrião, caso no qual não é necessário criar outra.

Inicie um aplicativo de particionamento de disco como o "cfdisk" ou o "fdisk" com uma opção de linha de comando indicando o disco rígido no qual a nova partição será criada—por exemplo "/dev/sda" para a unidade primária de disco. Crie uma partição nativa do "Linux" e uma partição "swap", se necessária. Por favor, recorra a "cfdisk(8)" ou a "fdisk(8)" se você ainda não sabe como usar os aplicativos.

[Nota]

Nota

Para usantes experientes, outros esquemas de particionamento são possíveis. O novo sistema LFS pode estar em um vetor de software RAID ou em um volume lógico LVM. Entretanto, algumas dessas opções exigem um initramfs, o que é um tópico avançado. Essas metodologias de particionamento não são recomendadas para usantes iniciantes do LFS.

Lembre-se da designação da nova partição (por exemplo, sda5). Este livro se referirá a essa como a partição do LFS. Lembre-se também da designação da partição swap. Esses nomes serão necessários posteriormente para o arquivo /etc/fstab.

2.4.1. Outros Problemas de Partição

Solicitações de conselhos a respeito de particionamento do sistema frequentemente são postados nas listas de discussão do LFS. Esse é um tópico altamente subjetivo. O padrão para a maioria das distribuições é o de usar a unidade inteira com a exceção de uma pequena partição de swap. Isso não é ideal para o LFS por várias razões. Isso reduz flexibilidade; torna o compartilhamento de dados entre múltiplas distribuições ou construções do LFS mais difícil; torna as cópias de segurança mais demoradas; e podem desperdiçar espaço de disco devido à alocação ineficiente de estruturas do sistema de arquivos.

2.4.1.1. A Partição Raiz

Uma partição raiz do LFS (não confundir com o diretório /root) de vinte (20) gigabytes é uma boa escolha para a maior parte dos sistemas. Ela fornece espaço suficiente para construir o LFS e a maior parte do BLFS, mas é pequena o suficiente de forma que múltiplas partições podem ser criadas facilmente para experimentação.

2.4.1.2. A Partição Swap

A maioria das distribuições automaticamente cria uma partição swap. Geralmente o tamanho recomendado da partição swap é o de cerca de o dobro da quantidade de RAM física, entretanto isso raramente é necessário. Se o espaço de disco for limitado, [então] mantenha a partição swap com dois (2) gigabytes e monitore a quantidade de troca de disco.

Se você quiser usar o recurso da hibernação do Linux (suspend-to-disk), copia o conteúdo da RAM para a partição swap antes de desligar a máquina. Nesse caso o tamanho da partição swap deveria ser pelo menos tão grande quanto a RAM instalada do sistema.

O uso de swap nunca é bom. Para unidades rígidas mecânicas você geralmente pode dizer se um sistema está usando swap simplesmente monitorando a atividade do disco e observando como o sistema reage a comandos. Com um SSD você não estará apta(o) a monitorar swap, porém você consegue dizer quanto espaço de swap está sendo usado executando os aplicativos top ou free. O uso de um SSD para uma partição swap deveria ser evitado se possível. A primeira reação em caso de uso de swap deveria ser verificar se existe um comando irracional como tentar editar um arquivo de cinco gigabytes. Se o uso de swap se tornar uma ocorrência recorrente, [então] a melhor solução é a de comprar mais RAM para seu sistema.

2.4.1.3. A Partição de BIOS do Grub

Se o disco de inicialização tiver sido particionado com a Tabela de Partição GUID (GPT), então uma partição pequena, tipicamente um (1) MB, precisará ser criada se o sistema estiver sendo inicializado com BIOS e ela já não existir. Essa partição não é formatada, porém precisa estar disponível para o GRUB usar durante a instalação do carregador de inicialização. Essa partição normalmente será rotulada de 'BIOS Boot' se usar o fdisk ou terá um código de EF02 se usar o comando gdisk.

Se o disco de inicialização estiver particionado com uma Tabela MBR de Partição ou um rótulo DOS de disco, então essa partição não será necessária, pois já existe espaço antes da primeira partição que o Grub consegue usar.

[Nota]

Nota

A Partição de BIOS do Grub precisa estar na unidade que o BIOS usa para inicializar o sistema. Essa não é necessariamente a unidade que mantém a partição raiz do LFS. Os discos em um sistema possivelmente usem tipos diferentes de tabela de partição. A necessidade da partição de BIOS do Grub depende somente do tipo de tabela de partição do disco de inicialização.

2.4.1.4. A Partição EFI de Sistema

Essa partição, também conhecida como a ESP, é necessária ao inicializar o sistema com UEFI. Ela armazena o aplicativo EFI que é executado durante a inicialização. A unidade de inicialização pode ser particionada com a Tabela MBR de Partição ou DOS, mas problemas de compatibilidade tenderão a surgir como um resultado. Portanto, é sempre uma boa ideia, nesse caso, particionar a unidade de inicialização com uma Tabela GUID de Partição (GPT). Se você estiver inicializando somente o LFS a partir da partição, 20 MB ou menos podem ser suficientes. A partição deveria ser maior que o tamanho da imagem da EFI, porque o GRUB despeja muitos dados na partição antes de criar a imagem da EFI. Para maior segurança, de 128 MB a 256 MB é recomendado, mas pode ser reduzida consideravelmente com alguma experimentação. O rótulo da partição deveria ser 'EFI System' se usar fdisk.

Para Grub, a Partição EFI de Sistema deveria estar localizada em /boot/efi.

Muitos sistemas UEFI têm um Módulo de Suporte de Compatibilidade (MSC) ou opção de Inicialização Legada, permitindo inicializar com BIOS. Poderia ser uma boa ideia criar uma partição de BIOS do Grub se teu sistema suportar MSC, caso a inicialização UEFI não funcione como esperado.

2.4.1.5. Partições de Conveniência

Existem várias outras partições que não são exigidas, porém deveriam ser consideradas ao se projetar um layout de disco. A lista seguinte não é abrangente, mas é entendida como um guia.

  • /boot – Altamente recomendada. Use essa partição para armazenar os kerneis e outras informações de inicialização. Para minimizar potenciais problemas de inicialização com discos maiores, torne essa a primeira partição física na sua primeira unidade de disco. Um tamanho de partição de duzentos (200) megabytes é adequado.

  • /home – Altamente recomendada. Compartilhe teu diretório lar e personalizações de usante entre múltiplas distribuições ou construções do LFS. O tamanho geralmente é bastante grande e depende do espaço de disco disponível.

  • /usr – No LFS, /bin, /lib e /sbin são links simbólicos para seus homólogos em /usr. Assim /usr contém todos os binários necessários para o sistema executar. Para o LFS, uma partição separada para /usr normalmente não é necessária. Se, de qualquer maneira, você criá-la, [então] você deveria tornar uma partição grande o suficiente para acomodar todos os aplicativos e bibliotecas no sistema. A partição raiz pode ser bem pequena (talvez apenas um gigabyte) nessa configuração, de forma que ela seja adequada para um "thin client" ou estação de trabalho sem disco (onde /usr é montado a partir de um servidor remoto). Entretanto, você deveria estar ciente de que um initramfs (não coberto pelo LFS) será necessário para inicializar um sistema com partição /usr separada.

  • /opt – Esse diretório é mais útil para o BLFS onde múltiplos pacotes grandes como o KDE ou o Texlive podem ser instalados sem embutir os arquivos na hierarquia /usr. Se usado, 5 a 10 gigabytes geralmente é adequado.

  • /tmp – Por padrão, o systemd monta um tmpfs aqui. Se você quiser substituir esse comportamento, siga Seção 9.10.3, “Desabilitando tmpfs para /tmp” quando configurar o sistema LFS.

  • /usr/src – Essa partição é muito útil para disponibilizar um local para armazenar os arquivos fonte do BLFS e compartilhá-los entre construções do LFS. Ela também pode ser usada como um local para construir pacotes do BLFS. Uma partição razoavelmente grande de 30 a 50 gigabytes fornece abundância de espaço.

Qualquer partição separada que você queira montada automaticamente quando o sistema iniciar precisa ser especificada no arquivo /etc/fstab. Detalhes a respeito do como especificar partições serão discutidos na Seção 10.2, “Criando o Arquivo /etc/fstab”.

2.4.2. Um Esquema de Disco de Exemplo

Abaixo, está um exemplo de esquema para uma unidade de disco vazia.

Number  Start (sector)    End (sector)        Size   Code  Name
   1            2048           22527       10.0 MiB  EF00  EFI system partition
   2           22528           24575     1024.0 KiB  EF02  BIOS boot partition
   3           24576         1048575      500.0 MiB  8300  /boot
   4         1048576         5242879        2.0 GiB  8200  swap
   5         5242880        89128959       40.0 GiB  8300  lfs13.0+
   6        89128960       173015039       40.0 GiB  8300  /home

O exemplo acima faz algumas presunções:

  • A tabela de partições é uma GUID Partition Table (GPT).

  • Ambas as partições de inicialização, EFI e BIOS, estão presentes, embora somente uma será usada. Qual será usada depende do firmware do sistema. Se o sistema for antigo, ele não terá recursos UEFI em absoluto. Alguns sistemas mais recentes conseguem desabilitar a UEFI por intermédio da configuração do firmware, desabilitando a "Inicialização Segura" e habilitando o "Suporte Legado" ou o "CSM" (Compatibility Support Module). Se você souber antecipadamente qual modo usará, a outra partição pode ser omitida.

  • A partição EFI precisa ser formatada como VFAT.

  • A partição do BIOS não está formatada.

  • A partição de área de troca precisa ser inicializada.

  • A partição /boot pode ser formatada como ext2, já que ela raramente é escrita (e mesmo assim, somente pelo(a) root) e não precisa de um diário.

  • A recomendação para todas as outras partições é a de usar formatação ext4.

  • Outra partição pode ser adicionada para instalar o sistema "anfitrião" para construir o LFS. Uma partição de tamanho mínimo, de 10 GiB, deveria ser suficiente. Se você estiver construindo o sistema usando um LiveCD, uma partição de anfitrião possivelmente não seja exigida.