Installation d'Ubuntu à partir du réseau. Installation d'Ubuntu sur le réseau via PXE. Montage via fstab

Tout d'abord, vous aurez besoin d'un ordinateur avec Ubuntu ou un autre Répartition Linux(ce manuel est écrit pour Ubuntu) à partir duquel vous installerez le système (serveur de démarrage réseau), et Image ISO Disque alternatif avec la version requise d'Ubuntu .

Configuration du serveur de démarrage réseau

Pour télécharger sur le réseau, vous devrez installer sur le serveur TFTP, http Et DHCP services pour permettre à un deuxième ordinateur de se connecter et de télécharger tous les fichiers nécessaires.

Pour installer tout ce dont vous avez besoin, il est préférable d'utiliser aptitude , qui est prêt à l'emploi avec Ubuntu depuis la version 10.10. Par conséquent, installez d'abord aptitude via n'importe quel installateur de package ou avec la commande

sudo apt-get install aptitude sudo aptitude -R install apache2 atftpd tftpd-hpa dhcp3-server

Le commutateur -R est nécessaire pour qu'atftpd soit installé sans serveur inetd, dont vous n'avez pas du tout besoin.

Il est maintenant temps de configurer tous les composants.

Serveur TFTP

Le démon utilisant ces fichiers est /etc/hosts.allow Et /etc/hosts.deny pour restreindre l'accès.

Ouvrez le fichier /etc/default/atftpd dans n'importe quel éditeur de texte avec les droits de superutilisateur, comme ceci :

sudo nano /etc/default/atftpd

Changez la première ligne de

USE_INETD=vrai USE_INETD=faux

N'oubliez pas non plus le répertoire qui se trouve à la fin de la ligne OPTIONS. Ce sera probablement /srv/tftp , mais sur les anciens Ubuntu, ce sera peut-être /var/lib/tftpboot . Modifiez le fichier /etc/default/tftpd-hpa :

sudo nano /etc/default/tftpd-hpa

entrée, répertoire mémorisé

TFTP_DIRECTORY="/srv/tftp"

Maintenant, lancez ftpd :

sudo /etc/init.d/atftpd start

Créez maintenant le dossier ubuntu dans le répertoire OPTIONS. De plus, nous supposerons partout que le répertoire /srv/tftp est utilisé :

mkdir / srv / tftp / ubuntu

Après cela, vous devez monter votre image ISO dans le répertoire nouvellement créé. Vous pouvez le faire avec la commande suivante :

sudo mount -o loop /home/ tux/ ubuntu-11.04 -alternate-i386.iso / srv/ tftp/ ubuntu/

Si vous n'avez pas d'image ISO du disque, mais que vous avez un disque alternatif gravé, insérez-le simplement dans votre lecteur de CD/DVD. Le disque est automatiquement monté sur /media/cdrom . Ensuite, il vous suffit de créer un lien symbolique pour le serveur TFTP : sudo ln -s / media/ cdrom / srv/ tftp/ ubuntu

Ceci termine la configuration TFTP.

Serveur Web Apache

Il n'est pas nécessaire de modifier quoi que ce soit dans les paramètres d'Apache, il suffit de rendre disponible via HTTP le répertoire ubuntu créé dans la section précédente. Pour ce faire, créez un lien symbolique vers celui-ci à partir du dossier de travail Apache :

sudo ln -s / srv/ tftp/ ubuntu / var/ www/ ubuntu

Si vous n'utilisez pas une image ISO, mais un disque gravé, exécutez sudo ln -s / media/ cdrom / var/ www/ ubuntu

Serveur DHCP

Il ne reste plus qu'à configurer correctement le serveur DHCP. Ouvrez le fichier /etc/dhcp3/dhcpd.conf dans n'importe quel éditeur de texte avec des droits de superutilisateur, par exemple, avec la commande

sudo nano /etc/dhcp3/dhcpd.conf

Dans ce fichier, vous devez modifier les paramètres suivants :

# Le nom de votre domaine interne. Si cela ne signifie rien pour vous, ne le changez pas. option nom de domaine "domain.ru" ; # Ton Serveur dnsà utiliser sur l'ordinateur connecté. Il s'agit le plus souvent de l'adresse IP du routeur. option serveurs de noms de domaine 192.168.0.1 ; # Décommentez simplement cette ligne autoritaire; # Nous devons maintenant définir le réseau pour le serveur DHCP : # D'abord le sous-réseau et le masque de sous-réseau souhaités. sous-réseau 192.168.0.0 masque de réseau 255.255.255.0 ( # La plage d'adresses émises par le serveur plage 192.168.0.100 192.168.0.199 ; # Routeur pour l'accès à Internet routeurs d'options 192.168.0.1 ; # Quel fichier charger lors du démarrage réseau - spécifiez-le dans ce formulaire. nom de fichier= "ubuntu/install/netboot/pxelinux.0"; }

Après cela, nous devons dire à notre serveur DHCP d'écouter sur l'une des interfaces. Pour ce faire, ouvrez le fichier /etc/default/dhcp3-server et ajoutez le nom de l'interface souhaitée au paramètre INTERFACES. Par exemple, comme ceci :

INTERFACES="eth0"

Vous devez maintenant démarrer le serveur DHCP et vous pouvez procéder à l'installation. Cependant, avant de commencer, assurez-vous qu'il n'y a pas d'autres serveurs DHCP en cours d'exécution sur votre réseau. Le plus souvent, DHCP s'exécute sur des routeurs, auquel cas vous devez vous rendre sur le routeur et arrêter ce service dessus.

Donc, pour démarrer le serveur DHCP, exécutez simplement la commande

sudo /etc/init.d/dhcp3-server start

Vous devez maintenant mettre le deuxième ordinateur en mode de démarrage réseau. Vous devriez alors voir l'écran d'installation d'Ubuntu.

Installation du logiciel à l'aide d'un CD minimal

Si, pour une raison quelconque, vous ne pouvez pas utiliser un disque complet avec Ubuntu, mais que votre ordinateur dispose toujours d'un lecteur de CD et d'une connexion Internet, vous pouvez installer le système sur le réseau en démarrant à partir d'un petit CD Minimal.

Dans ce cas, le système sera entièrement installé à partir du référentiel Internet et le disque ne sera nécessaire que pour démarrer le processus d'installation.

Toute personne qui, au moins occasionnellement, fait du commerce dans l'administration a eu au moins une fois besoin d'installer un système d'exploitation sur un ordinateur. Et souvent, tout se passe comme ceci : l'image est téléchargée, écrite sur un disque ou une clé USB, chargée et installée. Mais il se peut qu'il n'y ait pas de lecteur flash ou de disque à portée de main, et l'installation doit être effectuée hier ... Ensuite, vous pouvez démarrer sur le réseau, et il n'y a pas de problèmes particuliers avec Linux à cet égard. Une configuration typique est un tas DHCP, TFTP Et NFS. Mais je n'avais pas de kit sous la main. NFS, mais était Samba. J'ai donc dû trouver comment utiliser Samba au lieu de NFS.

Il semble que ce ne soit rien de tel, j'ai changé les paramètres et c'est tout, mais quelque chose n'a pas fonctionné au début, j'ai dû shaman...

Mais je vais commencer par le début ici. Vous devez donc d'abord vous procurer un kit de distribution. Depuis qu'on a mis Menthe Linux , à la recherche d' une nouvelle image . On télécharge le kit de distribution qui nous convient (j'ai installé celui avec COPAIN, mais évidemment cela n'a pas vraiment d'importance). Après avoir téléchargé l'image, vous devez accéder aux fichiers image. Certains guides recommandent de déballer l'image, mais je ne vois pas l'intérêt de le faire, donc je soutiens l'idée qu'il s'agit de monter l'image comme boucle. Afin de ne pas interférer avec l'ordre existant, nous créons simplement un nouveau répertoire, où nous montons l'image :

# mkdir /mnt/menthe
# mount -o loop /home/user/download/linuxmint-17-mate-64bit-v2.iso /mnt/mint

L'étape suivante consiste à rendre les fichiers disponibles sur le réseau pour être lus par le programme d'installation. Comme je l'ai dit plus haut, j'ai à cet effet Samba. Par conséquent, ouvrez le fichier de configuration et ajoutez un nouveau partage en ajoutant la section suivante :


chemin = /mnt/menthe
disponible = oui
navigable = oui
publique = oui
inscriptible = non

Devrait fonctionner sur les paramètres par défaut Samba. Si cela ne fonctionne pas, vous avez probablement modifié quelque chose vous-même, ce qui signifie que vous trouverez comment résoudre le problème. Nous avons donc ajouté une balle menthe, à travers lequel vous pouvez obtenir des fichiers pour l'installation à partir du réseau. N'oubliez pas de redémarrer Samba pour accepter les nouveaux paramètres.

Pour archlinux:

# systemctl redémarrer smbd
# systemctl redémarrer nmbd

Pour Gentoo:

# /etc/init.d/samba redémarrage

Ensuite, vous devez préparer le chargeur de réseau. Ce programme nous aidera TFTP-HPA. DANS archlinux et en Gentoo le paquet s'appelle ainsi. Vous devez placer les fichiers du bootloader dans le répertoire de travail du serveur ftp (en arch /srv/tftp). Copiez le noyau et l'initrd à partir de l'image montée ici :

# cp /mnt/mint/casper/(vmlinux,initrd.lz) /srv/http

# cp /usr/lib/syslinux/bios/(pxelinux.0,menu.c32,ldlinux.c32,libutil.c32) /srv/http

Menu PAR DÉFAUT.c32
ÉTIQUETTE Linux Mint
NOYAU vmlinuz
APPEND showmounts toram root=/dev/cifs boot=casper netboot=cifs nfsroot=//192.168.0.1/mint NFSOPTS=-oguest,ro initrd=initrd.lz nosplash

192.168.0.1 - notre adresse IP relative à la machine sur laquelle nous parierons. Ah oui, et nfs là - ce n'est pas une faute de frappe, dans le mode de fonctionnement avec caf, vous devez passer des options de type comme pour nfs, Je ne peux pas dire pourquoi. Une attention particulière doit être accordée à l'option toram, car sans elle, tout tombe à mi-chemin et nous ne pouvons pas démarrer (c'est peut-être une fonctionnalité de samba). Mais avec cette option, vous devez vous rappeler que la machine cible doit disposer de suffisamment de RAM pour y copier le programme d'installation. Le serveur TFTP doit être démarré. Pour archlinux:

# systemctl tftpd.socket start

Pour Gentoo:

# /etc/init.d/in.tftpd start

Maintenant, vous devez en quelque sorte dire au bios de la machine cible d'où il est chargé. Cela nous aidera dnsmasq(mais pas nécessairement, vous pouvez utiliser un autre serveur DHCP, ici je décris ce qui était à portée de main). Configurer la distribution IP (option gamme DHCP) à votre discrétion, dans le cadre de votre "réseau" entre machines. Pour l'installation, nous n'avons besoin que de trois options :

dhcp-boot=/pxelinux.0
dhcp-option=fournisseur:PXEClient,6,2b
pxe-service=x86PC, "Installer Linux", pxelinux

Ils doivent être ajoutés à la configuration. dnsmasq, et bien sûr l'exécuter (ou le redémarrer).

Pour archlinux:

# systemctl démarre dnsmasq

Pour Gentoo:

# /etc/init.d/dnsmasq start

Rappelez-vous, pour que tout fonctionne, il faut que les ports sur DHCP(UDP 67.68), TFTP(UDP 69) Samba(UDP 137 138, TCP 139 445) doit être ouvert, veillez à en tenir compte dans la configuration de votre pare-feu. S'il n'y a pas de pare-feu ou si l'interface est complètement ouverte - eh bien, d'accord, cela devrait fonctionner.

Note: étant donné que les systèmes sont constamment mis à jour, les chemins de fichiers indiqués peuvent ne pas être valides, c'est-à-dire différents de ceux de votre système. Par conséquent, examinez attentivement la structure des packages de votre système.

Pour moi pendant longtemps c'était un mystère pourquoi il n'y a que deux options dans Ubuntu disque d'installation– Ordinateur de bureau et alternatif. Dans Debian, en plus des disques d'installation complets habituels qui installent immédiatement GNOME ou KDE complet, il existe également un disque NetInstall conçu pour installer le système sur le réseau.

Le CD de démarrage de cette version est conçu pour exécuter un programme d'installation qui installe l'ensemble de packages minimum requis. Tout le reste, si nécessaire, est téléchargé et installé à partir du réseau. Cette option suppose plus de compétences de la part de l'utilisateur effectuant l'installation, mais offre une flexibilité dans l'installation uniquement composants nécessaires systèmes. Il économise également de l'espace disque.

Il s'est avéré qu'Ubuntu possède également une variante du disque d'installation, conçue pour une installation sur le réseau. C'est juste que le lien de téléchargement ne se trouve pas sur page d'accueil placer. Et caché à l'adresse suivante.

je m'intéressais à quoi taille minimale vous pouvez installer Ubuntu sans faire de trucs spéciaux. Pour le test, il a été décidé d'installer Ubuntu c disque minimal dans Virtual Box.

La taille minimale de l'image disque est de 11 Mo. Ce n'est pas beaucoup et vous permet de le pomper à n'importe quelle vitesse, même la plus petite.

Mais lors de l'installation, il est souhaitable d'avoir un canal vers Internet plus rapidement. Parce que le disque minimum, à l'exception du programme d'installation lui-même, ne contient rien. Par conséquent, pendant le processus d'installation, tout sera téléchargé. Vraiment tout !

J'ai fait ma première tentative d'installation d'Ubuntu à partir d'un disque minimal en me connectant à Internet via ADSL à 128 kbps. L'installation (principalement le téléchargement de packages) a pris plusieurs heures.

Pour une deuxième expérience, nous avons réussi à trouver une connexion à une vitesse nettement plus élevée.

Lors du démarrage à partir d'un disque minimal, nous sommes d'abord accueillis par une invite de texte :

puis le menu graphique de démarrage Ubuntu standard (!):

L'élément "Installation en ligne de commande" ne signifie pas que l'installation sera effectuée à partir de la ligne de commande. Dans tous les cas, le programme d'installation est lancé en mode texte.

L'item "Options avancées" contient un menu supplémentaire :

vous permettant d'effectuer une installation experte. Lorsqu'il est sélectionné, un menu apparaît avec les étapes d'installation, vous permettant de les exécuter dans un ordre presque arbitraire :

Je choisis l'élément - "Installer".

Le programme d'installation de texte est normal. Identique à Disque alternatif. La seule différence est que les paquets ne sont pas extraits du disque, mais téléchargés sur le réseau.

L'installateur demande traditionnellement la langue :

configure la disposition du clavier :

vous invite ensuite à sélectionner un référentiel :

qui par défaut est local pour le pays sélectionné :

( 2018-04-10 )

PXE est un environnement de démarrage d'ordinateur utilisant une carte réseau sans utiliser de support local. Les possibilités d'application sont assez larges : du simple démarrage initial du système au lancement de systèmes de travail à part entière sans utiliser de disque local.

Il y a quelque temps, l'auteur de ces lignes est tombé sur un vieil IBM ThinkCentre S51 8171 avec un lecteur de CD défectueux. Le démarrage à partir d'un lecteur flash créé avec UNetBootin posait également des problèmes et le dernier espoir subsistait : démarrer le programme d'installation via PXE. Dans ce qui suit, l'expérience acquise sera brièvement décrite.

IBM ThinkCentre S51 8171 a un très bon matériel pour une machine de 2006 : Pentium 4 540, 2x512 Mo DDR, 30 Go ATA HDD. Mais en 2018, elle a l'air fanée, même si maintenant elle peut trouver de nombreuses utilisations. Le principal problème : le processeur ne supporte pas l'EMT64 et donc le système d'exploitation doit être en 32 bits. Heureusement, Ubuntu 16.04 existe dans l'édition i386 et il a été décidé de l'installer.

Il a été décidé d'utiliser comme serveur de téléchargement serveur domestique exécutant Ubuntu 16.04. Pour la distribution des adresses dans réseau local isc-dhcp-server est utilisé. Le reste de la configuration du serveur est assez typique. Pour créer un environnement PXE, nous avons besoin d'un -server. Nous allons utiliser le package "tftpd-hpa". Installez-le, ainsi que (juste au cas où) un client TFTP :

apt-get install tftpd-hpa tftp-hpa

Par défaut, tftpd-hpa utilise le répertoire "/var/lib/tftpboot". Si, pour une raison quelconque, cela doit être modifié, vous devez modifier le fichier "/etc/default/tftpd-hpa" en conséquence et redémarrer le service "tftpd-hpa". Mais nous sommes assez satisfaits de la configuration par défaut.

Une liste des programmes d'installation d'Ubuntu 16.04 disponibles pour le démarrage PXE et l'installation réseau se trouve sur cette page. Nous sommes intéressés par une archive appelée "netboot.tar.gz" pour l'architecture i386. Téléchargez-le et décompressez-le dans le répertoire du serveur tftp :

Wget http://archive.ubuntu.com/ubuntu/dists/xenial-updates/main/installer-i386/current/images/netboot/netboot.tar.gz mkdir -p /var/lib/tftpboot/ubuntu/ tar zxfv netboot.tar.gz -C /var/lib/tftpboot/ubuntu/

Ceci termine la préparation du serveur TFTP et il reste à configurer le serveur DHCP. Toute la configuration se résume à ajouter la ligne :

# Chemin d'accès au fichier "pxelinux.0" relatif au nom de fichier du répertoire du serveur TFTP "ubuntu/pxelinux.0" ;

Cette chaîne peut être ajoutée à la description d'un sous-réseau, d'un groupe d'hôtes ou même d'un hôte spécifique. L'essentiel est que la machine pour laquelle tout cela est fait reçoive la configuration souhaitée. Après cela, vous pouvez allumer la machine et sélectionner le démarrage PXE pour procéder à l'installation du système. Après avoir téléchargé le programme d'installation, l'installation se déroulera de la manière habituelle, comme si elle avait été chargée à partir d'un "MinimalCD".

Cela pourrait être la fin, mais il y a un autre point intéressant : l'installation automatique. Le programme d'installation d'Ubuntu prend partiellement en charge le format de configuration kickstart de RedHat Linux. Vous pouvez lire plus. S'il est nécessaire d'utiliser un script d'installation automatique, vous devez d'abord créer un fichier de script et le placer sur un serveur Web sur le réseau local, puis vous devez modifier légèrement le fichier "/var/lib/tftpboot/ubuntu /ubuntu-installer/i386/boot-screens/txt.cfg":

#append vga=788 initrd=ubuntu-installer/i386/initrd.gz --- quiet append ks=http://192.168.2.1/ks.cfg vga=788 initrd=ubuntu-installer/i386/initrd.gz -- - calme

Ici, le paramètre "ks=" spécifie l'URL où se trouve le script de configuration kickstart. Nous laissons au lecteur une étude plus détaillée de ce sujet.

C'est tout. Bon travail !

Dans les salles de serveurs, les serveurs sans lecteur de CD/DVD sont de plus en plus nombreux. De temps en temps, vous devez installer un système d'exploitation sur eux, et l'installation réseau peut grandement aider à cela. Vous allumez simplement le serveur et lancez l'installation. Carte réseau doit prendre en charge la technologie PXE. PXE - Pre-Boot Execution Environment - vous permet de démarrer sur le réseau.

Mais PXE ne suffit pas pour un bonheur complet, une technologie qui vous permettra d'automatiser entièrement l'installation est le kickstart (développé par Red Hat). Son essence est simple - nous pré-compilons un fichier contenant les valeurs de toutes les options qui peuvent être nécessaires lors de l'installation. De plus, nous pouvons exécuter nos scripts avant et après l'installation, définissant ainsi les paramètres du futur système d'exploitation.

L'installation d'un kit Linux typique à l'aide de kickstart prend 5 à 7 minutes.

Le serveur d'installation nécessite 3 services et 1 package.


  • DHCP fournit des informations d'identification réseau aux clients

  • TFTP est un moyen simple de partager des fichiers sur le réseau

  • Syslinux contient le chargeur pxelinux.0 et quelques autres fichiers

  • NFS permet d'accéder au système de fichiers sur le réseau
Le processus d'installation peut être décomposé en étapes :

  1. pxe - Le micrologiciel pxe commence à fonctionner lorsque nous définissons l'installation réseau dans le BIOS ou lorsque le MBR est introuvable sur le disque dur.

  2. DHCP phase 1 - le client reçoit les détails du réseau et l'adresse du serveur tftp, ainsi que le nom du fichier de chargement (pxelinux.0). Par défaut, le serveur TFTP est un serveur DHCP.

  3. TFTP - le chargeur de démarrage pxelinux.0 contacte le serveur TFTP et lui demande initrd.img (disque RAM initial, disque temporaire système de fichiers), Noyau Linux.

  4. Noyau - Transfert du contrôle au noyau Linux.

  5. DHCP phase 2 - Le noyau Linux fait une demande au serveur DHCP pour obtenir les informations d'identification du réseau et ensuite l'adresse du serveur NFS.

  6. NFS - l'étape où la partition NFS est montée

  7. init - /sbin/init est démarré et le contrôle lui est transféré. Init est le processus principal du système, les autres processus sont des processus enfants d'init.
En présentation libre :

Le serveur DHCP écoute les requêtes bootp sur son réseau ; après avoir reçu une demande, il regarde l'adresse MAC source, et s'il a une entrée correspondante pour une telle adresse MAC, il commence à travailler avec. Le serveur DHCP donne au client les détails du réseau (adresse IP, passerelle, serveurs DNS, ...) et envoie image de démarrage pxelinux.0. Cette image est suffisante pour afficher le menu de sélection du système d'exploitation.

Après avoir sélectionné le système d'exploitation, nous commençons à charger le noyau et commençons l'installation, en choisissant la source d'installation - le serveur NFS. Sur le serveur NFS, vous devez publier le contenu préparé du futur système opérateur et assurez-vous que les répertoires appropriés sont exportés.

DHCP

Installez DHCPD et ajoutez-le au démarrage :
# miam -y installer dhcp
# chkconfig dhcpd activé

Nous créons le fichier /etc/dhcpd.conf comme ceci :

intermédiaire de style mise à jour ddns ;
ignorer les mises à jour du client ;
sous-réseau 192.168.146.0 masque de réseau 255.255.255.0 (
routeurs d'options 192.168.146.1 ;
masque de sous-réseau d'option 255.255.255.0 ;
option nom de domaine "domaine.local" ;
option serveurs de noms de domaine 192.168.146.1 ;
durée de bail par défaut 21600 ;
max-bail-time 43200 ;
Autoriser bootp ;
autoriser le démarrage ;
hôte unixbox(
matériel Ethernet 00:0c:29:77:9c:9c ;
adresse fixe 192.168.146.128 ;
nom de fichier "pxelinux.0" ;
option nom d'hôte "unixbox" ;
serveur suivant 192.168.146.1 ;
}
}

Démarrez DHCPD ou redémarrez s'il a été démarré :
# redémarrage du service dhcpd

Désactivez le pare-feu, qui est activé par défaut (sinon, l'ordinateur cible recevra une erreur "Destination ICMP inaccessible (Hôte administrativement interdit)") lors du démarrage :
# le service iptables s'arrête
# chkconfig iptables désactivé

TFTP

Installez le package tftp-server à partir du dépôt :
# yum -y install tftp-server

Il faut maintenant activer tftp dans la configuration de xinetd, pour cela, dans le fichier /etc/xinetd.d/tftp, changer « disable = yes » en « disable = no » et activer xinetd :
# démarrage du service xinetd

Vérifiez que le port du serveur tftp est à l'écoute (tftp s'exécute sur le port 69) :
# netstat-nlp | grep:69
udp 0 0 0.0.0.0:69 0.0.0.0:* 3105/xinetd

syslinux

Le package contient un ensemble de fichiers à télécharger sur le réseau. Nous avons besoin de pxelinux.0 , que nous donnerons comme image de démarrage via DHCP, et menu.c32 , avec lequel un menu utilisateur plus attrayant sera dessiné. (Pour CentOS 4, le syslinux mis à jour avec les dépendances peut être téléchargé à partir de rpmfind.net .)

# cp $(rpm -ql syslinux | grep menu.c32) /tftpboot/
# cp $(rpm -ql syslinux | grep pxelinux.0) /tftpboot/

NFS

Par défaut, le système a très probablement NFS, sinon, installez-le en utilisant yum.
# chkconfig nfs activé

Ajoutez une entrée au fichier /etc/exports :
echo "/var/install-server/ *(ro,no_root_squash)" >> /etc/exports

Démarrez le serveur nfs :
# démarrage du service nfs

Vérifiez que le répertoire a été exporté :
# exportfs
/var/install-server

Nous créons la structure du serveur TFTP, ajoutons du contenu au serveur :
# mkdir -p /tftpboot/(pxelinux.cfg,centos5_x86)
# mkdir -p /var/install-server/centos5_x86

Nous montons notre DVD avec CentOS 5 et téléchargeons le contenu sur /var/install-server/centos5_x86 :
# monter /dev/cdrom /mnt/
# cp -r /mnt/* /var/install-server/centos5_x86/
# cp /var/install-server/centos5_x86/images/p xeboot/* /tftpboot/centos5_x86/

Dans le répertoire /tftpboot/pxelinux.cfg, créez un fichier par défaut et remplissez-le comme indiqué ci-dessous :
menu par défaut.c32

invite 0
délai d'attente 100

noyau /centos5_x86/vmlinuz
ajouter initrd=/centos52_x86/initrd.img
étiquette Quitter
démarrage local 0

Installer le système d'exploitation sur le réseau

Après toutes les manipulations décrites ci-dessus, nous pouvons procéder à l'installation du système d'exploitation. Nous démarrons notre machine avec l'adresse MAC 00:0c:29:77:9c:9c, y compris dans démarrage du BIOS sur le réseau. Lorsque l'installation démarre, nous faisons tout de manière standard, sauf que dans la liste où installer le système d'exploitation, vous devez sélectionner NFS, puis, lorsqu'on vous le demande, indiquez:
Nom du serveur NFS : 192.168.146.1
Répertoire CentOS : /var/install-server/centos5_x86

Automatisation de l'installation avec Kickstart

Pour automatiser, vous devez créer un fichier contenant toutes les informations nécessaires qui peuvent être requises pendant le processus d'installation. Un tel fichier est créé par le programme system-config-kickstart (outil GUI) dans n'importe quel CentOS avec X Window :
# yum -y install system-config-kickstart
# système-config-kickstart

Après avoir créé le fichier à l'aide de system-config-kickstart, nous devons le transférer sur le serveur d'installation et le rendre disponible via l'un des protocoles HTTP, NFS ou FTP. Puisque NFS est activement utilisé dans le travail du serveur d'installation, nous l'utiliserons.

Dans mon cas, le fichier kickstart se trouve dans /var/install-server/centos5_x86/centos5_ x86_ks.cfg .

Tout ce que vous avez à faire dans /tftpboot/pxelinux.cfg/default est d'ajouter une directive ks avec l'emplacement du fichier kickstart. Exemple avec le fichier kickstart :
menu par défaut.c32
titre du menu Serveur d'installation Linux. Veuillez choisir le système d'exploitation à installer.
invite 0
délai d'attente 100
étiquette CentOS 5 x86 Installation personnalisée
noyau /centos5_x86/vmlinuz
ajouter initrd=/centos5_x86/initrd.img
étiquette CentOS 5 x86 Kickstart Install
noyau /centos52_x86/vmlinuz
ajouter initrd=/centos5_x86/initrd.img ks=nfs:192.168.146.1:/var/install-server/c entos5_x86/centos5_x86_ks.cfg
étiquette Quitter
démarrage local 0

Maintenant, après avoir sélectionné "CentOS 5 x86 Kickstart Install" dans le menu de sélection du système d'exploitation, nous n'aurons plus qu'à attendre le serveur sur lequel le système d'exploitation est installé.

Vous trouverez ci-dessous un exemple de mon fichier Kickstart. Je voulais que le système d'exploitation installé ait l'option "PermitRootLogin yes" dans les paramètres sshd. Le fichier Kickstart permet non seulement de définir les paramètres d'installation du système d'exploitation, mais également d'exécuter des scripts avant l'installation (%pre) et après (%post). Ainsi, vous pouvez écrire de nombreux scripts de réglage et obtenir un système d'exploitation complètement fini en 5 à 10 minutes d'installation.

#platform=x86, AMD64 ou Intel EM64T
# Informations d'autorisation du système
auth --useshadow --enablemd5
# Configuration du chargeur de démarrage du système
chargeur de démarrage --location=mbr
# Effacer l'enregistrement de démarrage principal
zérombr
# Informations d'effacement de partition
clearpart --all --initlabel
# Utiliser l'installation en mode texte
texte
#Configuration du pare-feu
pare-feu -- désactivé
# Exécutez l'agent de configuration au premier démarrage
premier démarrage --disable
# Clavier système
clavier nous
# Langue du système
lang fr_US
# Niveau de journalisation de l'installation
journalisation --level=info
# Utiliser le support d'installation NFS
nfs --server=192.168.146.1 --dir=/var/install-server/centos5_x86
# informations sur le réseau
réseau --bootproto=dhcp --device=eth0 --onboot=on
mot de passe #root
rootpw --iscrypted $1$Bz09jb2I$hfzh2vApqMjG0sEPsAwNr/
#Configuration SELinux
selinux --désactivé
# Ne pas configurer le système X Window
sauterx
# Fuseau horaire du système
fuseau horaire Europe/Moscou
# Installer le système d'exploitation au lieu de mettre à niveau
installer
# Informations sur le partitionnement du disque
échange de partie --bytes-per-inode=4096 --fstype=”swap” --size=512
partie / --bytes-per-inode=4096 --fstype="ext3" --grow --size=1

%post --interp /bin/bash
CHEMIN=/un travail
/bin/mkdir $CHEMIN
/bin/sed -e ‘s/#PermitRootLogin yes/PermitRootLogin yes/g’ /etc/ssh/sshd_config > $PATH/sshd_config_edited
/bin/cp $PATH/sshd_config_edited /etc/ssh/sshd_config
/bin/rm -rf $CHEMIN