Un amico ha un sistema su cui ho recentemente installato Manjaro Linux in dual boot con Windows 10, utilizzando lo schema di partizionamento dual-boot predefinito dal programma di installazione.
Ieri Windows ha deciso di aggiornarsi (il famigerato Creator's Update, immagino ), e Manjaro non si avviava.
Ho incaricato l'amico di accedere da un liveUSB e questo è il sudo fdisk -l
uscita:
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.
Nota che Partition table entries are not in disk order.
:a quanto pare, ora c'è una partizione (/dev/nvme0n1p4
) che è fisicamente dopo quello principale di Linux (/dev/nvme0n1p5
), ma numericamente prima. Dal momento che questo sembra piuttosto non standard, suppongo che Windows abbia incasinato la tabella delle partizioni.
Dopo aver eseguito un:
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
Il sistema si riavvia e sembra funzionare normalmente.
La domanda è:
come potrebbe Windows pasticciare con la tabella delle partizioni, tuttavia senza corrompere nulla, dato che non ha alcun ext4
conoscenza che io sappia? Ha appena alterato l'ordine di partizione "numerico"? Che cosa ha fatto esattamente?
Risposta accettata:
È probabile che non abbia fatto nulla alle partizioni, ma ha semplicemente riscritto l'avvio EFI per (provare a) diventare l'unico sistema operativo predefinito. Dal momento che, ovviamente, una volta che hai Windows 10 sul disco, perché avresti bisogno di qualcos'altro?
I tuoi problemi sono capitati anche a me due o tre volte, su macchine diverse, dopo gli aggiornamenti, e sono sempre andati via con un semplice aggiornamento o reinstallazione di GRUB2.
Non penso che rinumerare le partizioni possa fare qualcosa di veramente negativo; se non fanno pasticci con Windows, sono abbastanza sicuro che non pasticceranno con GRUB/GRUB2.
Tuttavia, assicurati di eseguire un e2fsck sulla partizione Linux per assicurarti che non sia stato ridotto di un gigabyte. Se la FS all'interno è contrassegnata come più grande della partizione in cui dovrebbe essere contenuta, perché quest'ultima è stata ridimensionata alla cieca (Windows ha sufficiente conoscenza delle partizioni per fare questo ), potresti incontrare problemi quando Linux sovrascrive i dati di ripristino o Windows li "aggiorna" e scrive su qualsiasi cosa Linux ext4 abbia deciso di inserire lì. Potrebbe essere necessario:
- esegui il backup dei dati da 1 GB in un file Linux,
- rimuovere la partizione e reimpostare la partizione Linux alla dimensione completa,
- riduci il filesystem per lasciare 1 GB libero,
- ricrea la partizione,
- ripristinare il backup
per ospitare entrambi i sistemi operativi e mantenerli in condizioni amichevoli.