Je me retrouve souvent dans des situations où j'ai besoin d'exécuter une distro vivante pour faire quelque chose (par exemple redimensionner la partition de démarrage principale). Le processus normal pour cela serait de trouver un lecteur usb que je n'utilise pas pour autre chose, de créer un live usb à partir de celui-ci, puis de démarrer sur celui-ci. Le problème est souvent dans le "trouver un usb que je n'utilise pas pour autre chose". Je pensais récemment et je me demandais s'il n'y avait pas un moyen de démarrer une distribution live sans l'usb. Je sais que vous pouvez utiliser le toram
option kernal pour fonctionner entièrement dans la RAM. Cela me fait me demander s'il serait possible d'utiliser une certaine magie Grub pour démarrer le système directement depuis la RAM sans avoir besoin d'utiliser une usb.
Réponse
Trop de publicités?J'ai une entrée de menu dans mon /etc/grub.d/40_custom
que j'active via sudo update-grub
pour démarrer sur un fichier iso de Lubuntu.
#!/bin/sh
exec tail -n +3 $0
# This file provides an easy way to add custom menu entries. Simply type the
# menu entries you want to add after this comment. Be careful not to change
# the 'exec tail' line above.
menuentry "Lubuntu 18.04.1 Desktop iso" {
set isofile="/lubuntu-18.04.1-desktop-amd64.iso"
loopback loop (hd0,1)$isofile
linux (loop)/casper/vmlinuz boot=casper iso-scan/filename=$isofile noprompt noeject
initrd (loop)/casper/initrd.lz
}
Cela fonctionne comme prévu, mais même lorsque je l'ai poussé dans la RAM avec l'option de démarrage toram
(à la fin de la ligne 'linux'), il ne m'a pas laissé démonter la partition, où le fichier iso est stocké, monté à /isodevice
.
Je stocke le fichier iso dans la partition racine de mon système installé, ce qui signifie que je ne peux pas le modifier ou le réparer avec des outils qui ne fonctionnent que lorsque la partition cible est démontée.
-
Il est possible de stocker le fichier iso dans une partition séparée, qui n'est pas utilisée par le système d'exploitation installé . De cette façon, vous pouvez utiliser le système vivant démarré à partir du fichier iso pour modifier la ou les partition(s) de votre système d'exploitation installé.
Alors, modifiez
(hd0,1)
surloopback loop (hd0,1)$isofile
pour pointer vers cette partition séparée.
-
S'il y a une partition d'échange sur le disque interne et que vous voulez la modifier, vous devez la déconnecter.
sudo swapoff /dev/sdxn
où x est la lettre du périphérique et n est le numéro de la partition