GNU/Linux >> Tutoriels Linux >  >> Linux

Installation d'Alpine (ou autre Linux) sur VPS ou Bare Metal Server

Lorsque vous obtenez un VPS ou un serveur dédié (bare metal), l'hébergeur vous laisse choisir le système d'exploitation que vous souhaitez installer.

En règle générale, vous pouvez choisir parmi une liste d'environ dix systèmes. Que faire si votre système Linux préféré ne figure pas dans cette liste ?

Il existe peut-être plusieurs méthodes pour installer une distribution Linux particulière de votre choix sur un serveur distant .

Je voulais utiliser le Linux Alpine ultra léger. Il est disponible en option sur Linode mais pas sur OVH. J'utilise principalement OVH, j'ai donc utilisé cette méthode pour obtenir Alpine sur mon serveur.

Cela peut également convenir à d'autres distributions sur d'autres fournisseurs de serveurs :

  1. Installez un "OS par défaut", celui proposé par votre fournisseur de serveur.
  2. Utilisez ce système pour télécharger une image du système d'exploitation souhaité ; cette image doit être utilisable comme environnement en direct .
  3. Redémarrez dans cet environnement en direct.
  4. Installez le nouveau système d'exploitation (à côté du système d'exploitation par défaut).

Les étapes 3 et 4 sont similaires à l'installation d'un système d'exploitation sur un ordinateur portable ou de bureau via un "support actif", sauf que le support physique est remplacé par un fichier ISO.

Les principaux outils à utiliser dans ce tutoriel sont :

  • IPMI/KVM sur IP, ou tout outil similaire.
  • GNU GRUB, le chargeur de démarrage bien connu.

Le premier doit être pris en charge par le fournisseur (sinon ne pas commencez à appliquer les instructions suivantes !), et vous permet de surveiller et de contrôler le processus de démarrage de la machine.

Ce dernier est généralement déjà installé avec le système d'exploitation par défaut, mais peut être (ré)installé et modifié en fonction de vos besoins.

Quel que soit votre cas, veuillez lire attentivement ce guide et assurez-vous de le comprendre avant de faire quoi que ce soit. Expérimentez sur un serveur hors production, pour lequel vous pouvez effectuer des redémarrages et des réinstallations à tout moment via le service Web du fournisseur. Cette méthode ne fonctionnera pas pour tous les systèmes ; J'ai essayé avec Void Linux mais j'ai échoué, probablement à cause de mon manque relatif de connaissances sur les schémas de démarrage de Linux. Je partage ce guide car, d'après mon expérience, Alpine Linux fonctionne comme un charme lorsqu'il est installé de cette façon.

Étape 1 :Installez le système d'exploitation par défaut sur le nouveau serveur

Un choix courant est Debian GNU/Linux, mais quel que soit votre choix, il est préférable de le conserver après l'installation d'Alpine (nous ferons un double démarrage).

De cette façon, Debian sera votre système de "sauvetage" personnalisé, plus rapide d'accès que le mode de secours habituel proposé par le fournisseur. Étant donné que cette façon d'installer un système d'exploitation semble quelque peu "expérimentale", vous aurez peut-être besoin d'un autre système.

Dans le reste de cet article, le système d'exploitation principal par défaut est supposé être Debian .

Une fois que Debian est prête et en cours d'exécution, connectez-vous en SSH. Vous n'avez pas besoin de vous connecter à un compte root, mais vous aurez peut-être besoin de sudo car vous allez télécharger le nouveau système d'exploitation et vous souhaiterez peut-être le stocker à un emplacement appartenant à root (par exemple /boot/ ou même / ).

Et si vous devez suivre l'étape 3.1, vous aurez à nouveau besoin des privilèges root.

Assurez-vous que GRUB est installé. S'il existe un répertoire tel que /boot/grub/ , vous pouvez parier que ça va !

Étape 2 :Obtenir le système d'exploitation souhaité (Alpine Linux dans notre cas)

Obtenons la dernière version d'Alpine ! Visitez la page de téléchargement afin de copier le lien vers la saveur souhaitée. Généralement, vous choisirez un x86_64 image. Pour un VPS, qui ressemble à un serveur bare metal mais qui est en fait une machine virtuelle (comme l'indique le "V"), vous avez probablement besoin du "virtuel " Fichier ISO.

Les exemples à travers cet article montrent le virtuel, mais bien sûr remplacez-le par celui qui correspond à vos besoins.

Téléchargez Alpine Linux en utilisant le lien que vous avez copié précédemment.

cd /
sudo wget https://dl-cdn.alpinelinux.org/alpine/v3.14/releases/x86_64/alpine-virt-3.14.2-x86_64.iso

Vérifiez si le fichier est OK ou corrompu :vous pouvez exécuter sha256sum ...

sha256sum alpine-virt-3.14.2-x86_64.iso
fcba6ecc8419da955d326a12b2f6d9d8f885a420a1112e0cf1910914c4c814a7  alpine-virt-3.14.2-x86_64.iso

…et comparez la valeur de hachage avec celle que vous pouvez trouver sur la page de téléchargement. Si les deux chaînes correspondent, c'est OK.

Étape 3 :Démarrez le fichier image

Le jeu réel commence maintenant !

3.1 :Regardez la structure ISO

Tout d'abord, vous devez trouver l'emplacement de deux fichiers importants dans le fichier ISO que vous venez de télécharger :le kernel et le initramfs (ou initrd ).

Une solution consiste à monter l'ISO et à l'inspecter :

$ sudo mount -o loop alpine-virt-3.14.2-x86_64.iso /mnt/
mount: /mnt: WARNING: device write-protected, mounted read-only.
$ ls -l /mnt/
total 6
dr-xr-xr-x 1 root root 2048 August  27 11:11 apks
dr-xr-xr-x 1 root root 2048 August  27 11:11 boot
dr-xr-xr-x 1 root root 2048 August  27 11:11 efi
$ ls -l /mnt/boot/
total 28554
-r--r--r-- 1 root root   123781 August  27 11:11 config-virt
dr-xr-xr-x 1 root root     2048 August  27 11:11 dtbs-virt
dr-xr-xr-x 1 root root     2048 August  27 11:11 grub
-r--r--r-- 1 root root  6022546 August  27 11:11 initramfs-virt
-r--r--r-- 1 root root 13258752 August  27 11:11 modloop-virt
dr-xr-xr-x 1 root root     2048 August  27 11:11 syslinux
-r--r--r-- 1 root root  3632749 August  27 11:11 System.map-virt
-r--r--r-- 1 root root  6194624 August  27 11:11 vmlinuz-virt

Nous les avons trouvés :boot/vmlinuz-virt et boot/initramfs-virt . Vous pouvez maintenant sudo umount /mnt .

Il n'est pas évident que vmlinuz soit le noyau Linux. Si vous ne l'avez pas vu auparavant, sachez qu'il s'agit d'un nom commun pour le fichier du noyau, avec un "z" (là où vous vous attendriez à un "x") pour signifier que le fichier est compressé.

3.2 :Redémarrer

Fermez la ou les sessions SSH. Il est temps d'utiliser KVM (ou technologie similaire), vous le trouverez normalement sur l'interface Web :

Cela vous mène à quelque chose comme la console montrée sur la capture d'écran ci-dessous. C'est l'écran que vous auriez si vous étiez devant un moniteur physiquement connecté au serveur.

Ici, il y a un "Envoyer CtrlAltDel ", il suffit donc de cliquer dessus. Mais vous pouvez également vous connecter et sudo reboot .

Après avoir utilisé KVM pour vous connecter à un compte sur un serveur, je vous recommande de changer votre mot de passe dès que possible, avec une connexion SSH normale. Qui sait combien de couches logicielles votre mot de passe non crypté traverse, de votre navigateur Web au système d'exploitation distant.

3.3 :Utiliser le fichier ISO

Une fois redémarrée, la machine affiche le menu GRUB. Vite , cliquez sur la console pour vous assurer que cet élément de la page Web a le focus, puis appuyez sur une touche fléchée pour arrêter le compte à rebours GRUB.

Si vous souhaitez arrêter ce didacticiel et relancer Debian, choisissez la première option. Pour continuer ce didacticiel, appuyez sur c pour accéder à l'invite de ligne de commande GRUB .

Vous devrez peut-être sélectionner la partition sur laquelle vous avez stocké l'image du système d'exploitation téléchargée (le fichier ISO). Lorsque cela est possible, GRUB monte la première partition du premier disque et la sélectionne implicitement comme périphérique racine .

Si votre partition Debian est la première partition et que vous y avez stocké le fichier ISO (comme nous l'avons fait à l'étape 2), vous n'avez rien à faire. Sinon, vous devez redéfinir le périphérique racine, avec une commande telle que set root=(hd0,2) . Veuillez consulter le manuel GRUB pour plus d'explications.

Dites à GRUB de monter le fichier ISO en tant que périphérique de bloc virtuel :

grub> loopback l /alpine-virt-3.14.2-x86_64.iso

Ici, j'ai choisi un identifiant simple, l , mais vous pouvez utiliser tout ce que vous voulez qui n'entre pas en conflit avec autre chose (un nom de commande GRUB ou un nom de fichier). Notez qu'à l'étape 2, j'ai choisi de mettre le fichier à la racine du système de fichiers, c'est pourquoi j'écris /alpine… .

Ensuite, définissez le linux (noyau) et initrd objets, en utilisant les résultats que vous avez obtenus à l'étape 3.1 :

grub> linux (l)/boot/vmlinuz-virt
grub> initrd (l)/boot/initramfs-virt

Les parenthèses autour de l'objet loopback sont obligatoires. (l)/ agit comme le répertoire racine du système de fichiers interne du fichier ISO.

Lancez le système défini, c'est-à-dire initrd environnement basé sur linux noyau. Le tout est un mini init temporaire système pour charger et exécuter le "vrai" système en direct.

grub> boot
À partir de ce moment, le vrai cauchemar peut apparaître. Selon le système d'exploitation ciblé, vous pouvez rencontrer plusieurs problèmes. N'oubliez pas que vous pouvez toujours redémarrer votre serveur (il sera par défaut sur Debian); pour l'instant les données sur disque(s) ne sont toujours pas modifiées (à l'exception de la présence de l'image que vous avez téléchargée). Maintenant, les étapes décrites seront spécifiques à Alpine, mais elles vous donneront une idée de ce que vous êtes susceptible de rencontrer lors de l'installation d'autres systèmes Linux.

Quelques secondes après avoir entré le boot commande, le système d'initialisation s'arrête avec un message d'erreur tel que "Montage du support de démarrage :échec ".

En effet, ce processus doit charger l'environnement en direct Alpine, mais l'image ISO n'est plus montée (vous avez quitté GRUB pour entrer dans un autre système). Un coque d'urgence vous est présenté avec lequel vous pouvez remonter l'image :

Méthode A :si vous ne prévoyez pas de redimensionner ou déplacer la partition contenant le fichier ISO

Si vous avez déjà redimensionné la partition et fait de la place pour Alpine, vous pouvez remonter le système live de la manière la plus simple :

$ mount /dev/sda1 /media/sda1
$ mount -o loop -t iso9660 /media/sda1/alpine-virt-3.14.2-x86_64.iso /media/cdrom

À l'étape 4, vous ne pourrez pas redimensionner sda1 (du moins, c'est difficile).
Bien sûr, remplacez sda1 avec le nom de périphérique approprié si le fichier ISO n'est pas stocké sur la première partition du premier disque. Répertoires des points de montage /media/sdXN sont déjà créés en fonction des partitions détectées.

Vous devez ajouter le -t iso9660 option et spécifiez /media/cdrom comme répertoire cible, sinon cela ne fonctionnera pas.

Méthode B :Si vous souhaitez redimensionner ou déplacer la partition contenant le Fichier ISO

Si la partition Debian prend tout l'espace disque disponible, ou pour toute autre raison vous devez modifier la partition qui contient le fichier ISO, le fait que le fichier ISO lui-même contienne le système live vous empêchera de démonter le système de fichiers de la partition.

Une solution consiste à copier le fichier ISO dans la RAM, puis à remonter cette copie :

Votre machine doit disposer de suffisamment de RAM pour gérer à la fois le fichier ISO et le système en cours d'exécution. Alpine a une très petite taille, donc 1G est suffisant. Pour les systèmes plus grands, 4 Go de mémoire devraient suffire.
# mount /dev/sda1 /media/sda1
# cp /media/sda1/alpine-virt-3.14.2-x86_64.iso /dev/shm
# umount /dev/sda1
# mount -o loop -t iso9660 /dev/shm/alpine-virt-3.14.2-x86_64.iso /media/cdrom

Les mêmes remarques que pour la méthode A (concernant les détails de la ligne de commande) s'appliquent. Ici, nous montons temporairement sda1 , juste pour obtenir une copie du fichier ISO.

Que vous ayez suivi la méthode A ou B, saisissez le exit commande (ou en appuyant sur ^D) continue ensuite le processus de démarrage du système Alpine en direct.

D'après les minuscules lettres sur la capture d'écran ci-dessus, vous pouvez deviner que le système Alpine Live fonctionne correctement et attend une connexion, bien qu'elle soit mineure une erreur s'est produite.

Étape 4 :Installer le nouveau système d'exploitation (Alpine Linux)

Vous y êtes presque.

4.1 :Utiliser le programme d'installation

Le processus exact d'installation du système d'exploitation dépasse le cadre de ce didacticiel. Utilisez le programme d'installation et les autres outils proposés par l'environnement en direct pour gérer les partitions (vous aurez peut-être besoin de LVM) et installer le système d'exploitation.

Pour Alpine, connectez-vous en tant que root (pas de mot de passe par défaut) et essayez le setup-* commandes. Vous pouvez apk add parted e2fsprogs e2fsprogs-extra pour obtenir des outils utiles pour gérer les systèmes de fichiers et les partitions. Plus d'informations sur le wiki Alpine.

Dans tous les cas :

  • N'oubliez pas que vous utilisez toujours KVM ; choisissez des mots de passe temporaires pour les utilisateurs root et normaux.
  • Assurez-vous que le réseau est correctement configuré non seulement pour le système en direct, mais aussi pour le système en cours d'installation sur disque . De plus, un serveur SSH doit être installé avec le système d'exploitation.
  • Sauf si vous savez ce que vous faites, ne réinstallez pas GRUB, ni ne modifiez sa configuration, à partir d'ici . Il est plus facile de modifier la configuration GRUB à partir de votre installation Debian "de secours" alternative.

Disons que vous avez installé Alpine sur sda2 . Vous pouvez maintenant dire au système en direct de reboot le serveur, ou vous pouvez vous déconnecter puis cliquer sur Envoyer CtrlAltDel bouton (le cas échéant).

4.2 :Ajouter une entrée GRUB

Démarrez Debian. Vous pouvez garder la fenêtre KVM ouverte, mais vous devez vous connecter en utilisant une connexion SSH normale à partir de votre shell local. Vous aurez besoin de racine accéder.
Le but est maintenant de dire à GRUB qu'il y a un autre système d'exploitation disponible sur une autre partition, nous allons donc ajouter une entrée au menu GRUB .

Tout d'abord, mount /dev/sda2 /mnt et inspectez /mnt/boot . Vérifiez le nom du noyau et le initrd pour le nouveau système d'exploitation que vous venez d'installer. Ils doivent être identiques à ceux que vous avez trouvés lorsque vous avez inspecté le dossier de démarrage du fichier ISO à l'étape 3.1, mais ce n'est pas obligatoire. umount /mnt .
Exécutez blkid et notez l'UUID associé à /dev/sda2 .

Modifier /etc/grub.d/40_custom . Ajoutez la section "Alpine Linux" avec les informations que vous venez d'obtenir (remplacez {UUID} avec la chaîne UUID concrète) :

#!/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 "Alpine Linux" {
    search --no-floppy --fs-uuid --set=root {UUID}
    linux /boot/vmlinuz-virt root=UUID={UUID} modules=sd-mod,ext4
    initrd /boot/initramfs-virt
}

Il s'agit d'une entrée de menu minimale et vous êtes susceptible d'ajouter d'autres options et modules à linux ligne, au fur et à mesure que vous affinez votre installation. Vous avez besoin du sd-mod afin que le noyau puisse lire vos disques, et le module ext4 un si vous avez installé Alpine sur un système de fichiers Ext4.

"Alpine Linux" est le titre qui apparaîtra dans le menu GRUB, vous pouvez le changer en ce que vous voulez.

Aussi, peut-être voudriez-vous qu'Alpine soit par défaut choix au redémarrage du serveur. Modifier /etc/default/grub et modifiez le GRUB_DEFAULT ligne . Par défaut, ce paramètre est défini sur 0 et fait référence à la première entrée. Dans notre exemple, Alpine est la troisième entrée, alors réglez-la sur 2 .

Afin de prendre en compte les modifications apportées à ces fichiers, vous devez regénérer /boot/grub/grub.cfg . Debian a un outil simple pour cela :lancez simplement update-grub . Testez vos modifications en redémarrant le serveur et en surveillant ce qui se passe via KVM.

Lancez Alpine (si vous en avez fait le choix d'entrée par défaut, il devrait démarrer automatiquement) et voyez s'il démarre et se comporte correctement ou nécessite des modifications dans l'entrée GRUB. Si vous souhaitez tester les modifications dans l'entrée GRUB sans les rendre permanentes, appuyez sur e au lieu de Entrée une fois l'entrée Alpine sélectionnée dans le menu de démarrage :

4.3 :Considérations finales

Une fois que le système d'exploitation nouvellement installé fonctionne correctement, vous pouvez vous y connecter en SSH et modifier les mots de passe vous avez précédemment défini via KVM. Fermez l'outil KVM dans votre navigateur Web. Utilisez KVM uniquement pour redémarrer sur Debian ou surveiller le processus de démarrage d'Alpine .

Vous pouvez maintenant installer des programmes et modifier votre système. Bonne chance !

Informations sur l'auteur :Paul Desplanque est 100 % autodidacte en matière d'informatique. Avec 8 ans d'expérience en développement PHP derrière lui, Paul est assez doué pour l'auto-hébergement.


Linux
  1. Comment mesurer les performances de votre serveur VPS Linux

  2. Quel est le meilleur VPS :Windows ou Linux ?

  3. Serveur Linux d'administration

  4. Installer GDAL sur le serveur Linux Ubuntu ?

  5. Installation du serveur Postgres 9.6 sur Amazon Linux

Comment installer le serveur Web Nginx sur Alpine Linux

Comment installer le serveur Web Apache sur Alpine Linux

Comment installer le serveur OpenSSH sur Alpine Linux

12 choses à faire après l'installation d'un serveur Linux

Comment installer SHOUTCast Radio Server sur Linux VPS ?

Comment vérifier les paramètres du serveur VPS avec la commande Linux