Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
pratique:informatique:xen [30/06/2024 21:36] – [Rôles] Zatalyzpratique:informatique:xen [25/10/2025 19:26] (Version actuelle) – [Rôles] Zatalyz
Ligne 114: Ligne 114:
  
 Tout ça en root (sudo ou vraiment avec root).  Tout ça en root (sudo ou vraiment avec root). 
- 
-Ajout de la clé ssh personnelle dans le squelette des VM nouvellement créées : 
-<code>mkdir -p /etc/xen-tools/skel/root/.ssh 
-chmod -R 700 /etc/xen-tools/skel/root 
-nano /etc/xen-tools/skel/root/.ssh/authorized_keys</code> 
  
 Copie du home, ce qui permettra à nos users d'avoir leurs préférences : Copie du home, ce qui permettra à nos users d'avoir leurs préférences :
Ligne 143: Ligne 138:
 Un rôle est un script appelé à la fin de la création de la VM. Ce qui permet d'installer certains paquets et d'adapter ce que le squelette ne permet pas (dont les droits...).  Un rôle est un script appelé à la fin de la création de la VM. Ce qui permet d'installer certains paquets et d'adapter ce que le squelette ne permet pas (dont les droits...). 
  
-<WRAP center round todo 60%>+<WRAP center round todo 100%>
 Le fichier ci-dessous marche... en partie. chown et chmod ne fonctionnent pas... faut trouver comment les écrire. Le fichier ci-dessous marche... en partie. chown et chmod ne fonctionnent pas... faut trouver comment les écrire.
  
 En attendant une fois la vm faite : En attendant une fois la vm faite :
  
-chown -R zatalyz:zatalyz /home/zatalyz+<code>chown -R zatalyz:zatalyz /home/zatalyz
 chmod 0700 /home/zatalyz/.ssh chmod 0700 /home/zatalyz/.ssh
 chmod 0600 /home/zatalyz/.ssh/authorized_keys chmod 0600 /home/zatalyz/.ssh/authorized_keys
 chmod 644 /etc/locale.gen chmod 644 /etc/locale.gen
 locale-gen locale-gen
-chmod 644 /etc/default/locale+chmod 644 /etc/default/locale</code> 
 + 
 +Et j'ai encore eu un souci de locale... Donc faire :  
 +  sudo dpkg-reconfigure locales 
 +Puis se déco/reco.
 </WRAP> </WRAP>
  
 <code bash /etc/xen-tools/role.d/zatxen> <code bash /etc/xen-tools/role.d/zatxen>
- Vérifie que les trucs par défaut existent. Chemin valide sur Debian Bookworm.+#!/bin/sh 
 +prefix=$1 
 +Vérifie que les trucs par défaut existent. Chemin valide sur Debian Bookworm.
 if [ -e /usr/share/xen-tools/common.sh ]; then if [ -e /usr/share/xen-tools/common.sh ]; then
     . /usr/share/xen-tools/common.sh     . /usr/share/xen-tools/common.sh
Ligne 163: Ligne 164:
     echo "Installation problem"     echo "Installation problem"
 fi fi
 +# Log our start
 +#
 +logMessage Script $0 starting
 +
  
 # Installation des paquets par défaut # Installation des paquets par défaut
Ligne 168: Ligne 173:
 chroot ${prefix} /usr/bin/apt-get -y -f upgrade chroot ${prefix} /usr/bin/apt-get -y -f upgrade
 installDebianPackage ${prefix} nano  installDebianPackage ${prefix} nano 
 +installDebianPackage ${prefix} tree
 installDebianPackage ${prefix} bash-completion  installDebianPackage ${prefix} bash-completion 
 installDebianPackage ${prefix} cron logrotate  installDebianPackage ${prefix} cron logrotate 
Ligne 181: Ligne 187:
 installDebianPackage ${prefix} binutils  installDebianPackage ${prefix} binutils 
 installDebianPackage ${prefix} dnsutils installDebianPackage ${prefix} dnsutils
 +installDebianPackage ${prefix} minisign 
 +# La partie suivante, uniquement si on veut msmtp 
 +installDebianPackage ${prefix} msmtp  
 +installDebianPackage ${prefix} msmtp-mta  
 +installDebianPackage ${prefix} bsd-mailx
 # Création de mon utilisateur (conflit avec l'option xen-tool "accounts") # Création de mon utilisateur (conflit avec l'option xen-tool "accounts")
 # chroot ${prefix} useradd zatalyz -m -U -G sudo,www-data -s /bin/bash # chroot ${prefix} useradd zatalyz -m -U -G sudo,www-data -s /bin/bash
Ligne 187: Ligne 197:
 chroot ${prefix} /sbin/usermod -a -G sudo,www-data zatalyz -d /home/zatalyz -s /bin/bash chroot ${prefix} /sbin/usermod -a -G sudo,www-data zatalyz -d /home/zatalyz -s /bin/bash
 chown -R zatalyz:zatalyz ${prefix}/home/zatalyz chown -R zatalyz:zatalyz ${prefix}/home/zatalyz
- 
  
 # Donner les bons droits sur ssh  # Donner les bons droits sur ssh 
Ligne 197: Ligne 206:
 chroot ${prefix} /usr/sbin/locale-gen chroot ${prefix} /usr/sbin/locale-gen
 chmod 644 ${prefix}/etc/default/locale chmod 644 ${prefix}/etc/default/locale
 +
 +#  Log our finish
 +#
 +logMessage Script $0 finished
  
 </code> </code>
Ligne 206: Ligne 219:
   xen-create-image --hostname=vm5 --dhcp --role=zatxen   xen-create-image --hostname=vm5 --dhcp --role=zatxen
  
-===== Créer une VM =====+=== Trixie et soucis === 
 +Sous Trixie, y'a des soucis... En attendant les maj, oublions les rôles, qui n'aident pas. 
  
-Création d'une vm avec les paramètres par défaut et en laissant dhcp gérer les ip : +Vu que xen-tool est abandonné, cela crée aussi des soucis en pagaille, mais j'ai pas la fois de reprendre tout de zéro pour le moment. Donc ça marche (modulo des bugs) en installant une version bookworm. 
-  sudo xen-create-image --hostname=vm1test --dhcp+
  
 +  sudo xen-create-image --hostname=25oct25 --dhcp --size 10g --dist=bookworm 
 +
 +Et il manque divers outils ; on va se concentrer sur l'update surtout, et pour ça : 
 +  apt install ca-certificates
 +
 +Ensuite on passe à Trixie (enlever ''/etc/apt/sources.list'' et mettre ''/etc/apt/sources.list.d/debian.sources'') :
 +  apt upgrade --without-new-pkgs
 +  apt full-upgrade
 +===== Commandes pour les VM =====
 +
 +Création d'une vm avec les paramètres par défaut et en laissant dhcp gérer les ip, et en variant la taille :
 +  sudo xen-create-image --hostname=vm1test --dhcp  --role=zatxen --size 50g
 +
 +S'y connecter depuis l'hyperviseur :
 +  sudo xl console vm1test
 +
 +Pour sortir de la VM, depuis l’hôte :
 +
 +  crlt + ( ou 5
 +
 +Pour démarrer la VM :
 +  xl create /etc/xen/myvm.cfg
 +
 +Et l'option ''-c'' pour la démarrer en s'y connectant directement (et donc, voir ce qui s'y passe au démarrage).
 +
 +Pour éteindre une VM, depuis l'hôte :
 +
 +  xl shutdown myvm
 +
 +Forcer violemment une VM à s'éteindre (à éviter) :
 +
 +  xl destroy myvm
 +
 +Faire un snapshot
 +  lvcreate -L 10g -s -n NOMVM_snap_$(date --iso) /dev/VgNOM/NOMVM
 +
 +===== Pallier à une RAM trop basse =====
 +Sur une machine pas très puissante, la RAM est vite un plafond limitant. Pour éviter de swapper et avoir des soucis, on modifie ''/etc/xen/myvm.cfg'' avec ces deux valeurs :
 +
 +<code># Mémoire pour le démarrage (en Mo)
 +memory = '512'
 +# Mémoire qui peut être libéré par le Dom0 si disponible
 +maxmem = '2048'</code>
 +=> en temps normal la VM a très peu de ram, et même si plusieurs VM saturent, on ne dépasse pas le total de RAM physique. Et si besoin (genre quand on met à jour...) on peut remonter à 2Go de ram. 
 ===== Pare-feu etc ===== ===== Pare-feu etc =====
 +Voir [[pratique:informatique:parefeu:start]].
 +
 +===== Problèmes divers =====
 +==== Eth0 est utilisé à la place de enX0 ====
 +Sur la gueste, si ''ip a'' indique eth0, et que ''/etc/network/interfaces'' est bien paramétré sur ceci : 
 +<code>
 +# The loopback network interface
 +auto lo
 +iface lo inet loopback
 +
 +# The primary network interface
 +auto enX0
 +iface enX0 inet dhcp
 +
 +</code>
 +
 +Alors on va ajouter une règle udev. 
 +  sudo nano /etc/udev/rules.d/70-persistent-net.rules
 +
 +<code>SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="aa:bb:cc:dd:ee:ff", NAME="enX0"</code>
 +
 +Remplacer aa:bb:cc:dd:ee:ff par l’adresse MAC réelle de eth0.
  
 +On reboot et... ça va mieux.
  
 {{tag>Informatique Serveur Xen Sysadmin}} {{tag>Informatique Serveur Xen Sysadmin}}
pratique/informatique/xen.1719776173.txt.gz · Dernière modification : 30/06/2024 21:36 de Zatalyz