Une fois que le principe de démarrer sur un système de fichiers dans une partition DOS est acquis, il y a de nombreuses autres choses que l'on peut faire.
S'il est possible de charger Linux depuis un fichier sur un disque dur DOS en utilisant une disquette de démarrage, alors il est clair qu'on peut faire la même chose en utilisant le disque dur lui-même.
Un menu de choix de configuration au démarrage peut être utilisé pour donner
l'option de lancer LOADLIN
depuis l'AUTOEXEC.BAT
. Ceci
donnera une séquence de démarrage plus rapide, mais c'est la seule
différence.
Utiliser LOADLIN
n'est qu'une des options possibles pour charger un
noyau Linux. Il y a aussi LILO
qui fait pratiquement la même chose,
mais sans nécessiter DOS.
Dans ce cas, la disquette au format DOS peut être remplacée par une disquette au format ext2fs. A part cela, les détails restent très similaires, le noyau et le disque virtuel initial étant encore des fichiers sur cette disquette.
La raison pour laquelle j'ai choisi la méthode avec LOADLIN
est que
les arguments qui doivent être données à LILO
sont légèrement plus
complexes. Le contenu de la disquette est aussi plus clair pour un observateur
lambda, puisqu'on peut la lire sous DOS.
J'ai essayé la méthode NTFS, et je n'ai pas eu de problème avec. Le support du système de fichier NTFS n'est pas une option standard du noyau, mais vous devez appliquer le patch de Martin von Löwis, qui est disponible sur sa page web. http://www.informatik.hu-berlin.de/~loewis/ntfs/. Ce logiciel est en version alpha et requiert un patch qui n'est pas totalement trivial à appliquer au noyau, mais pas trop difficile non plus.
Les seuls changements pour les options VFAT ou NTFS sont sur le disque virtuel
initial, le fichier /linuxrc
doit monter un système de fichiers
de type vfat ou ntfs plutôt que msdos.
Je ne connais pas de raison pour laquelle ceci ne marcherait pas aussi sur une partition VFAT.
Le processus d'installation de Linux sur un PC avec une distribution standard requiert de démarrer sur une disquette et de repartitionner le disque dur. Cette étape pourrait être remplacée par une disquette de démarrage qui crée un périphérique loopback vide et un fichier de swap. Ceci permettrait à l'installation de procéder normalement, sur le périphérique loopback plutôt que sur une partition.
Ceci pourrait être une alternative à une installation UMSDOS
, et serait
plus efficace pour l'utilisation du disque, puisque l'unité d'allocation minimale
sur un système de fichiers ext2 est de 1ko contre 32ko sur une partition DOS. On peut
aussi l'utiliser sur des disques VFAT et NTFS qui sinon posent un problème.
Cette méthode peut aussi être utilisée pour démarrer un système Linux depuis un périphérique qui n'est pas normalement amorçable.
Evidemment, de nombreux autres périphériques pourraient être utilisés, les partitions racines en NFS sont déjà incluses dans le noyau comme une option, mais la méthode présentée ici pourrait être utilisée à la place.