.png)
Como particionaria dois SSDs em um LVM para uma instalação do Linux? Eu tenho um SSD Samsung de 1 TB e um SSD NVMe de 480 GB no slot da placa de vídeo. Quero poder escolher determinados programas para instalar no NVMe de 480 GB para que funcionem na velocidade máxima, pois as velocidades de leitura e gravação serão maiores. Por exemplo, se eu instalar o VirtualBox, vou querer que ele seja instalado no NVMe para obter desempenho máximo.
Devo configurar minha partição inicial para repousar no NVMe e instalar coisas em minha casa que desejo que tenham o melhor desempenho? Devo fazer uma /opt
partição no NVMe? Como eu faria isso?
Responder1
Para uma estação de trabalho, tudo se resume à preferência pessoal. Eu provavelmente criaria um diretório /srv e montaria o sistema de arquivos do NVMe lá. /opt normalmente não é para armazenamento R/W. O desempenho do Virtualbox não se baseia em onde o binário do aplicativo está instalado, mas sim onde a imagem do disco está armazenada, por exemplo, em sua unidade NVMe é um bom local.
O LVM realmente não faz sentido para um único disco de sistema de arquivos. Ele não reconhece o sistema de arquivos, portanto, se você mesclá-los em um único grupo de volumes (VG), precisará criar volumes lógicos (LV) separados colocados em volumes físicos (PV) específicos. Em um caso de uso simples, como armazenar imagens de VM, eu desaconselho isso porque não oferece vantagens significativas, a menos que você esteja fazendo passagem de disco para VMs. Isso é muito mais complicado de gerenciar porque agora você precisa alocar manualmente LVs para cada VM e, em seguida, criar manualmente VMDKs de passagem de disco e, se quiser armazenar outros dados do sistema de arquivos no NVMe, precisará criar um LV para isso também.
Esta resposta pressupõe que você já esteja instalado no SSD e esteja usando o disco NVMe exclusivamente para armazenamento de alta velocidade. Caso contrário, a maioria dos instaladores permitirá criar partições arbitrárias e pontos de montagem conforme necessário.
Sem LVM (por exemplo, arquivos VDI no sistema de arquivos)
1. Crie uma partição e formate-a
Você pode usar gparted
para fazer isso graficamente. Selecione o dispositivo que deseja modificar e execute , então Device -> Create Partition Table
e Partition -> New
finalmente Partition -> Format
. Os padrões provavelmente são adequados para cada uma dessas ações. Lembre-se do tipo de sistema de arquivos que você escolheu na última etapa.
2. Atualize o fstab com o local de montagem
Use blkid
ou lsblk --fs
para obter o número UUID do seu novo sistema de arquivos. Como root, abra /etc/fstab em um editor como o nano e adicione uma linha como a seguinte
UUID=abcdef00-0000-0000-0000-000000000000 /srv ext4 defaults 0 2
Substitua o uuid pelo do seu sistema de arquivos. Não use aspas aqui. O tipo de sistema de arquivos deve ser alterado de ext4 para o tipo que você selecionou no gparted.
Teste a montagem do sistema de arquivos.
sudo mount /srv
df -h
Não forneça opções extras porque mount
elas devem ser detectadas nas alterações do fstab. Se você precisar fornecer opções, o fstab está errado e precisa ser editado. Se isso for bem-sucedido, df
deverá mostrar seu dispositivo NVMe montado em /srv. /srv agora será montado automaticamente na inicialização.
Digitalocean tem um detalhadoguia para criar e formatar uma partição usando as ferramentas de linha de comando.
Agora, ao criar discos virtuais no vbox, coloque-os em algum subdiretório de/srv. Talvez seja necessário alterar as permissões nos diretórios para que isso funcione (por exemplo, sudo chown $(whoami) /srv
para alterar o proprietário para você mesmo).
LVM (por exemplo, passagem de disco VMDK)
1. Particione como acima, mas não formate
Resista à tentação de usar um disco não particionado. É mais fácil cometer erros mais tarde, quando não há informações de partição.
Não é estritamente necessário, mas você pode definir o tipo de volume para Linux LVM.
2. Crie um grupo de volumes
Usando o dispositivo acima, execute vgcreate para inicializar um novo grupo de volumes.
sudo vgcreate nvme /dev/sdb1
Substitua /dev/sdb1 pela partição apropriada criada acima.
3. Crie um LV para passagem de disco
Se você quiser criar um volume de 30GiB para uma nova VM chamada vm1, execute lvcreate
sudo lvcreate -L30G -Cy -n vm1 nvme
Agora use vboxmanage para criar um arquivo VMDK para usar como disco
sudo VBoxManage internalcommands createrawvmdk -filename $HOME/vm1.vmdx -rawdisk /dev/mapper/nvme-vm1
Os nomes dos mapeadores de dispositivos para LVM estão no formato [nome vg]-[nome lv], portanto, se você alterou algum dos itens acima, altere-o apropriadamente aqui.
Neste ponto, você pode quereraltere as permissões do dispositivo para este LV usando o udev.
Existe uma system-config-lvm
ferramenta para gerenciar graficamente o LVM, mas não há nenhuma ferramenta gráfica para criar os arquivos de passagem do disco VMDK que eu conheça, e a interface gráfica do VBoxManage não pode executar a etapa 3 para você.