Est-il possible de démarrer à partir d'une image ISO sur le réseau, et comment?

31

J'ai une machine avec une image ISO de démarrage stockée dessus, et j'ai une autre machine vierge, sur laquelle je veux installer l'ISO. Ils sont tous les deux sur le même réseau local (attachés au même commutateur). Comment procéder pour démarrer la machine vierge à partir de l'ISO stockée sur mon ordinateur principal?

George Kontridze
la source
si vous avez les étapes du tutoriel @George, peut-être pourriez-vous partager ici les liens ... car j'ai le cas similaire pour installer un ISO de Windows 8 sur un ordinateur vierge qui n'a pas de DVDRom attaché à la place une connexion LAN uniquement. : D
gumuruh

Réponses:

11

Je pense que vous voulez un moyen de démarrer pxe à partir d'images ISO. J'ai cherché un peu et j'ai trouvé cet article . Je crois que cette méthode devrait fonctionner pour toute image ISO de démarrage que vous pourriez avoir. Ceci est un autre article similaire .

Enfin, il semble que cet article explique comment procéder à partir d'un serveur PXE (Pre-boot eXecution Environment) que vous exécutez à partir de Windows.

James T Snell
la source
@datatoo - vous êtes les bienvenus, c'était un peu égoïste - je me suis posé la question avant moi-même.
James T Snell
@L'un des grands avantages de répondre aux questions est le processus de recherche. Vous avez tendance à apprendre des choses, et c'est bien.
KCotreau
Ces techniques fonctionnent-elles pour n'importe quel ISO amorçable? C'est à dire une fenêtre ISO? Ou fonctionnent-ils uniquement pour les distributions Linux?
AaronLS
@AaronLS - Je ne sais pas, mais je m'attends à ce que cela fonctionne pour tous les OS d'interface BIOS. Je suis moins sûr des EFI, mais je pourrais imaginer que les EFI fonctionnent généralement encore mieux pour ce genre de choses. J'espère que quelqu'un l'essaye et commente!
James T Snell
4

Oui, c'est tout à fait possible. Le type de système que vous pouvez démarrer dépendra du fonctionnement dudit système.

Habituellement, vous constaterez que des systèmes très simples (comme DOS ou Win98) et des systèmes très complexes (comme les distributions Linux modernes) sont facilement amorçables sur le réseau.

La façon d'accomplir cela sur les deux types de systèmes est très différente.

Voyons les deux façons plus en détail. Je suppose que vous avez déjà une configuration de serveur de démarrage PXE ; si vous ne le faites pas, allez-y et faites-le, c'est assez facile.

Je suppose également une dnsmasqconfiguration sur un serveur Linux avec tftproot /var/lib/tftpboot, mais vous devriez pouvoir adapter les instructions à toute autre configuration.

Pour les systèmes simples

Pour les systèmes simples, il vous suffit de charger l'image (ISO) dans la RAM et de faire croire au système qu'il s'agit d'une unité réelle. Cela se fait avec un peu d'aide du BIOS et d'un module logiciel appelé memdisk .

Le système que vous souhaitez charger sur le réseau est libre:

# /var/lib/tftpboot/pxelinux.cfg/default
UI vesamenu.c32

PROMPT 0
TIMEOUT 0

MENU DEFAULT freedos

LABEL freedos
MENU LABEL FreeDOS
KERNEL /syslinux/memdisk
INITRD /freedos.iso iso

C'est à peu près ça. Les premières lignes sont des menus passe-partout; les bits importants sont les quatre dernières lignes: charger le memdisk avec l'ISO donné.

Pour les systèmes complexes

Les systèmes modernes avec des éléments sophistiqués comme une bonne gestion de la mémoire et une détection matérielle appropriée ignorent à peu près tout ce que le BIOS a à dire.

Cela rend l' memdiskapproche utilisée ci-dessus à peu près inutile, car si vous chargez l'ISO de cette façon, une fois que le noyau a été lu à partir de l'ISO et chargé en mémoire (cela est fait par le chargeur de démarrage dans l'ISO; les chargeurs de démarrage font attention au BIOS) , les données ISO auraient disparu.

Que faites-vous alors? Eh bien, vous ne chargez pas réellement l'ISO à partir du réseau, mais dites plutôt au système qu'il peut accéder aux fichiers requis à partir de là.

Pour les systèmes Linux, extrayez le contenu ISO quelque part dans le tftproot et chargez directement le noyau et initrd, puis laissez-leur le soin de trouver le système de fichiers racine et de le monter.

Voici un exemple d'utilisation de l'incroyable CD System Rescue . J'ai en fait extrait l'ISO entier à la racine du serveur TFTP, car il s'intègre parfaitement dans ma structure de répertoires, donc les noyaux sont dedans /syslinux.

# /var/lib/tftpboot/pxelinux.cfg/default
UI vesamenu.c32

PROMPT 0
TIMEOUT 0

MENU DEFAULT sysrescd64

LABEL sysrescd64
MENU LABEL 1) SysResCD 4.2.0 (x64)
KERNEL /syslinux/rescue64
APPEND setkmap=us nomodeset netboot=nbd://pxe:sysrcd.dat
INITRD /syslinux/initram.igz

Le bit le plus important ici est la APPENDligne. Vous voyez netboot=à la fin? C'est ainsi que le système d'exploitation sait où se trouve son système de fichiers racine. La syntaxe est <protocol>://<server>:<path>.

J'avais commodément défini un nom DNS pxepour mon serveur. Si vous ne l'avez pas, vous utiliserez une adresse IP pour le serveur.

En outre, sysresccd est l'un des plus faciles car il utilise une image squashfs pour son système de fichiers racine, qui peut être facilement téléchargée et chargée en RAM avec n'importe quelle méthode. Ici, j'utilise nbd; vous pouvez également utiliser tftp, nfs et http .

Pour d'autres distributions, comme Ubuntu, je pense que vous ne pouvez utiliser que nfs.

Pour les systèmes Windows, c'est un peu plus complexe à faire . Le plan est:

  • Avoir une installation de Windows 7 sur un dossier partagé sur le serveur
  • Avoir un environnement Windows PE complet sur le serveur dans votre racine TFTP
  • Demandez à la machine client de charger le WinPE sur le réseau et appuyez sur F12pour obtenir une invite de commande
  • Mappez le dossier partagé avec l'installation de Windows 7 sur une lettre de lecteur
  • Démarrer l'installation à partir du dossier mappé

Je n'ai jamais essayé cela, et il semble que cela ne fonctionne pas pour certaines personnes. Pour les versions NT plus anciennes que Vista, je pense que ce n'est même pas possible. Pour Windows pré-NT (95, 98, ME, etc.), vous pouvez utiliser l'approche memdisk, mais leur démarrage est mauvais pour votre santé :-p

GnP
la source
3

L' appliance de déploiement ultime offre ce dont vous avez besoin. Leur page d'accueil décrit sa fonctionnalité; il est reformaté ici pour plus de commodité:


Qu'est-ce que l'appliance de déploiement ultime?

  • Installations de système d'exploitation sans assistance (Windows, Linux, ESX, Solaris) sur la configuration réseau en quelques minutes!
  • Publiez vos outils de récupération / maintenance système préférés sur le réseau!
  • Démarrage PXE, services d'installation à distance, Kickstart, Jumpstart, Autoyast dans une boîte!

Quand utiliseriez-vous cela?

  • Lorsque vous essayez d'installer un système qui n'a pas de lecteur de CD-ROM, mais qui a une carte réseau (de nos jours, les ordinateurs portables ultra-fins et autres n'ont pas de lecteur optique)
  • Lorsque vous devez installer un système d'exploitation sur différents composants matériels.
  • Lorsque vous devez installer des systèmes et que les choses doivent devenir automatisées et reproductibles.
  • Lorsque vous allez chez votre ami pour réparer son ordinateur, vous voulez être prêt. Au lieu de supprimer toutes ces choses indésirables, vous pourriez tout aussi bien recommencer à zéro. Apportez votre propre système (ordinateur portable?), Branchez-le au système foiré avec un câble croisé et commencez à réinstaller le système à partir de zéro sans surveillance. Direction le frigo ...
  • Lorsque vous devez effectuer la maintenance de votre système sans avoir à transporter une pile de CD live.
  • Lorsque vous voulez le faire sans payer beaucoup d'argent pour des produits commerciaux.

Comment ça marche?

  • Installation sans assistance L'appliance monte un fichier iso avec une distribution de votre système d'exploitation préféré et importe les fichiers de démarrage (réseau) nécessaires. Il crée un fichier de configuration par défaut pour votre installation automatisée et commence à héberger les fichiers de distribution du système d'exploitation pour le démarrage réseau.
  • Publication des outils système Les Live CD et autres outils sont entièrement importés dans l'appliance Ultimate Deployment et publiés pour un démarrage via le réseau via PXE.

UDA a une chaîne YouTube , où vous pouvez trouver une vidéo d'eux installant Windows 7 comme exemple de configuration dans UDA à Windows complètement installé.

JavaRocky
la source