Puoi fare update-grub da un CD live su un Ubuntu Distro installato (anche se suppongo che funzioni con qualsiasi distribuzione Linux [basata su debian?]. È "obbligatorio" (ci possono essere altri metodi ma conoscendo questo, io non lo so se ne frega affatto) se clonate il vostro disco e avete già installato quello nuovo nel computer. Cito qui la clonazione ampiamente, perché in un certo senso il passo update-grub è un sottoinsieme di esso e gli approcci hanno lo stesso durante una sessione live. Anche questo metodo è stato scoperto attraverso la ricerca nel contesto della clonazione. Se non si esegue la clonazione, è possibile ottenere ciò di cui si ha bisogno e il processo sarà semplificato.
Dovrei qualificarlo qui; soprattutto per la clonazione, non ancora per l'aggiornamento-grub: l'ho fatto solo su sistemi BIOS. Non l'ho provato su un sistema UEFI. Il sistema UEFI richiede una partizione FAT per il caricamento di avvio e non ho testato se questa partizione dovesse venire durante la corsa durante le fasi di copia della clonazione. Mi aspetto che influisca sul montaggio richiesto [bind-] che sintetizza l'ambiente di grub nativo durante la sessione live ...
Ctrl+ Alt+ Tper il terminale Bash e immettere una shell superutente ( sudo -s
) durante una sessione live.
montare la partizione completa dell'unità di installazione (quella che è [o diventerà] la directory principale permanente del filesystem Linux).
2a. Se l'installazione completa esiste già sul disco rigido, passare a (2). SE STAI CLONANDO: [basato sul presupposto che non stai eseguendo una nuova installazione, poiché in questo caso è del tutto completamente automatico] se la tua installazione completa non esiste già su questa partizione, ora è il momento di semplicemente
rsync -a /existing/linux/filesystem/live-mount-point/ /new/linux/filesystem/live-mount-point/
[questi punti di montaggio sono puramente relativi all'ambiente di sessione live - in Ubuntu sono generalmente nella forma "/ media / ubuntu / ???"] sulla nuova unità [partizione].
2b. Altre installazioni complete del sistema operativo possono essere gestite allo stesso modo qui. In genere ho usato una risorsa basata su Windows per copiare in anticipo partizioni Windows su nuove unità in anticipo, ma ho anche usato rsync e ha funzionato per Win XP (supponendo che tu abbia il supporto per il formato di partizione corretto, come ntfs; Penso che il i media di sessioni live generalmente comprendono il supporto di formati alternativi). Fai solo attenzione all'ortografia e usa il trailing /
nella directory di origine se stai nominando completamente la destinazione.
bind-mount delle directory live /dev
, /proc
e, /sys
nelle rispettive directory sulla partizione di installazione completa permanente [montata] che si desidera utilizzare. Lo script dettagliato nel link sopra lo compie molto elegantemente con un'istruzione "for". Inoltre, lo script fornito non deve essere eseguito come script di per sé. Può essere inserito dal prompt di bash, riga per riga.
chroot
alla partizione di installazione completa permanente. Dopo aver eseguito (3) e (4), il sistema ora "risiede virtualmente" nel "filesystem finale" e GRUB funzionerà in modo omogeneo. Senza questi passaggi, grub supporrà che il tuo sistema sia semplicemente una sessione live e non so esattamente cosa fa in quel caso, ma sufficientemente non è il risultato desiderato, su quale è stato accennato sopra in questo thread.
eseguire grub-install sul /dev/sdX
(drive, non mount point) corrispondente all'installazione permanente (o qualunque drive ospiterà GRUB se un sistema multi-drive [, multi-boot]). La flessibilità qui può dipendere dalla tua annata e dal BIOS. Per quanto ne so l'esecuzione di "grub-install" non fa nulla di dannoso se non necessario, quindi lo faccio sempre se sto usando questo metodo di sessione live.
esegui update-grub e funzionerà come se il sistema in esecuzione fosse nidificato nella futura partizione permanente, scoprendo tutti i kernel e i sistemi operativi di avvio che potresti avere disponibili.
Se non hai modificato fisicamente i dischi rigidi, passa a (5). Altrimenti modifica o verifica il tuo /new/linux/filesystem/live-mount-point/etc/fstab
file per garantire la corretta struttura del file system per il tuo [nuovo] ambiente. Se sei a questo livello sicuramente sai già come usarlo blkid
per raccogliere gli UUID per fstab.
IMHO: dovresti sempre usare gli UUID in formato fstab (non "dev / sdXY") dal momento che nel suo ambito è immune alla riconfigurazione del disco rigido fisico, oltre al grado in cui ciò richiede aggiornamenti letterali dei valori UUID (come se a qualche punto in futuro installerai un HDD aggiuntivo per la tua directory / home, ecc.). È semplicemente l'approccio più fondamentale, solido e invariante.
esci dal chroot, esci da supershell, esci da bash, spegni e avvia il sistema senza il live media. Ora dovresti essere dove volevi.
Nota importante: gli argomenti per mount
e chroot
sono directory (generalmente, PUNTI DI MONTAGGIO come /mnt/??
o /media/??
) corrispondenti alla sessione live. Nella maggior parte se non in tutti i casi, un'installazione completa risiede nella propria partizione, quindi i termini "directory" e "mount point" sono essenzialmente sinonimi qui. L'argomento per grub-install è un DRIVE FISICO (generalmente /dev/sdX
, dove "X" è una lettera corrispondente all'unità nel tuo sistema, sda, sdb, ecc. E non dovrebbe dipendere dalla sessione).
Ora dovresti aver finito. Ho clonato simultaneamente Windows (XP e 7) in varie permutazioni insieme a Ubuntu e Puppy usando questo metodo e non mi ha deluso. Penso che puoi usare un supporto live di una distro diversa (ho usato solo diversi gusti Ubuntu e Mint per questo) purché forniscano la versione di GRUB che intendi utilizzare. Puoi spostare le partizioni, scambiare unità, combinare altre installazioni del sistema operativo e clonare da o verso SSD usando questo. Posso solo parlarci lavorando nella stessa macchina, comunque. Presumo che i driver che potrebbero essere richiesti per una macchina diversa potrebbero essere stati saltati durante la precedente installazione completa. La mia regola empirica è che cambiare unità in un computer richiede questo metodo, ma cambiare computer con un'unità richiede una [re] installazione completa.