Como o Windows NÃO pode corromper o sistema de arquivos do Linux ao bagunçar esquemas de partição?

2

Um amigo tem um sistema no qual instalei recentemente o Manjaro Linux em inicialização dupla com o Windows 10, usando o esquema de particionamento de inicialização dupla padrão do instalador. Ontem, o Windows decidiu se atualizar (a infame Atualização do Criador, eu acho), e o Manjaro não inicializaria. Eu instruí o amigo a fazer o login de um liveUSB e este é o sudo fdisk -l output:

Disk /dev/nvme0n1: 238,5 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: DBCB2883-9E10-40F3-8007-B1B409A79DF5

Dispositivo        Start      Fine   Settori   Size Tipo
/dev/nvme0n1p1      2048    206847    204800   100M EFI System
/dev/nvme0n1p2    206848    239615     32768    16M Microsoft reserved
/dev/nvme0n1p3    239616 123472110 123232495  58,8G Microsoft basic data
/dev/nvme0n1p4 497999872 500097023   2097152     1G Windows recovery environment
/dev/nvme0n1p5 123472112 497999871 374527760 178,6G Linux filesystem

Partition table entries are not in disk order.

Observe o Partition table entries are not in disk order. : aparentemente, agora existe uma partição ( /dev/nvme0n1p4 ) que é fisicamente após a principal do Linux ( /dev/nvme0n1p5 ), mas numericamente antes. Como isso parece muito fora do padrão, acho que o Windows bagunçou a tabela de partições.

Depois de fazer um:

sudo mount /dev/nvme0n1p5 /mnt
sudo mount /dev/nvme0n1p1 /mnt/boot/efi
sudo grub-install --target=x86_64-efi --efi-directory=/mnt/boot/efi --bootloader-id=manjaro --boot-directory=/mnt/boot --recheck --debug

O sistema começa de novo e parece estar funcionando normalmente.

A questão é:

como poderia o Windows mexer com a tabela de partições, no entanto sem corromper nada, dado que ela não tem nenhum conhecimento de ext4 que eu saiba? Alterou a ordem de partição "numérica"? O que exatamente isso fez?

    
por AF7 25.12.2017 / 18:29

1 resposta

3

Provavelmente, ele não fez nada para as partições, mas simplesmente reescreveu a inicialização EFI para (tentar) tornar-se o único SO / default. Como é claro, uma vez que você tenha o Windows 10 no disco, por que precisaria de mais alguma coisa?

Seus problemas aconteceram comigo duas ou três vezes, em máquinas diferentes, depois das atualizações, e eles sempre foram embora com uma simples atualização ou reinstalação do GRUB2.

Eu não acho que renumerar as partições possa fazer algo realmente ruim; se eles não bagunçarem o Windows, sou bem sólido para não mexerem no GRUB / GRUB2.

No entanto, não se esqueça de executar um e2fsck na partição Linux para garantir que ele não seja reduzido em um gigabyte. Se o FS dentro é marcado como maior que a partição onde ele deveria estar contido, porque o último foi redimensionado cegamente (o Windows tem conhecimento suficiente das partições para fazer isso ), você pode ter problemas quando o Linux sobrescreve os dados de recuperação, ou o Windows "atualiza" e escreve sobre o que o Linux ext4 decidiu colocar lá. Você pode precisar:

  • faça backup dos dados de 1 GB em um arquivo do Linux,
  • remova a partição e redefina a partição do Linux para o tamanho total,
  • reduza o sistema de arquivos para deixar 1 GB livre,
  • recriar a partição,
  • restaure o backup

para acomodar os dois sistemas operacionais e mantê-los em termos amigáveis.

    
por 25.12.2017 / 19:31