Dispositivos de troca / dev / mapper / *

1

Eu recebi uma caixa que tem / dev / mapper / root montada como / e mapeada para / dev / dm-0. Tem / dev / mapper / home montado como / home e mapeado para / dev / dm-2. O dispositivo dm-0 é 5G e o dispositivo dm-2 é 2T. Eu fui solicitado a trocá-los: make / 2T e / home 5G. Eu redimensionei, excluí e adicionei volumes lógicos. Existe uma maneira de trocar volumes lógicos?

Caso seja importante ... Eles querem usar isso como um servidor de banco de dados. O banco de dados está em / var / lib / mysql, que está em /, que tem apenas 5G e já está 80% cheio. / home está 1% cheio.

    
por kainaw 11.03.2016 / 14:23

1 resposta

1

Não há nenhuma maneira direta de trocar dois dispositivos, mas isso não é o que você precisa de qualquer maneira. Mantenha root como / e home como /home , reduza home para o tamanho menor desejado e amplie root usando o espaço que foi liberado.

Dependendo dos sistemas de arquivos, você pode ou não precisar desmontá-los para redimensioná-los. Os sistemas de arquivos Ext4 podem ser ampliados enquanto montados, mas não encolhidos; use o comando resize2fs . Os sistemas de arquivos Btrfs podem ser redimensionados em qualquer direção durante a montagem .

Para reduzir um volume lógico do LVM, use lvreduce . Certifique-se de que você não o encolha acidentalmente menor do que o sistema de arquivos - essa é a única etapa aqui em que uma manipulação incorreta pode causar perda de dados (e é muito provável que isso aconteça se você errar o número). Tenha cuidado, com LVM, sufixos minúsculos ( k , m , g ,…) usam potências de 1024, mas sufixos maiúsculos ( K , M , G ,…) usam potências de 1000 Para aumentar um volume lógico do LVM, use lvextend .

Por exemplo, com ext4:

umount /home
resize2fs /dev/mapper/home 5G
lvreduce -L 5g /dev/mapper/home    # note lowercase g
lvextend 2t /dev/mapper/root
resize2fs /dev/mapper/root

Observe que, se /home tiver realmente 2 TB e estiver 1% cheio, ele não caberá em 5 GB. Ajuste os tamanhos de acordo.

Como alternativa, você pode querer mover o banco de dados para um sistema de arquivos próprio. Geralmente, é uma boa ideia usar volumes separados para o sistema operacional e para grandes conjuntos de dados, porque eles podem ter diferentes diretivas de armazenamento (relacionadas a redundância, desempenho, backups, etc.). Se esse servidor for apenas um servidor de banco de dados, faria sentido ter dois sistemas de arquivos: / (incluindo os diretórios /home que não contêm muito mais do que os arquivos de configuração dos administradores) e /var/lib/mysql . / p>     

por 12.03.2016 / 02:48