<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
	<id>https://wiki.blaxeen.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ben</id>
	<title>BlaxWiki - Contributions de l’utilisateur [fr]</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.blaxeen.com/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Ben"/>
	<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php/Sp%C3%A9cial:Contributions/Ben"/>
	<updated>2026-04-18T13:25:09Z</updated>
	<subtitle>Contributions de l’utilisateur</subtitle>
	<generator>MediaWiki 1.36.1</generator>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=Trucs_%26_Astuces_Linux&amp;diff=4114</id>
		<title>Trucs &amp; Astuces Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=Trucs_%26_Astuces_Linux&amp;diff=4114"/>
		<updated>2016-12-30T10:48:52Z</updated>

		<summary type="html">&lt;p&gt;Ben : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
Cette page regroupe quelques trucs &amp;amp; astuces sur des problèmes divers rencontrés&lt;br /&gt;
&lt;br /&gt;
===== Accès internet =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver que l&amp;#039;on pingue internet (resolution dns &amp;amp; gw ok) mais pas d&amp;#039;accès internet via IE ou lynx. Cela est souvent du à un problème de négociation sur le switch ou sur l&amp;#039;eth &lt;br /&gt;
qui est en half duplex&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Charge CPU et leap seconde =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Parfois, le 31/12 avant minuit une leap seconde est ajoutée sur les serveurs root ntp. Cela a pour conséquence une charge cpu et mémoire élevée sur les services de base de données et services utilisant&lt;br /&gt;
java. Il suffit de relancer les services pour corriger&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Copie de fichier =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Un problème de copie de fichier peut arriver quand la locale entre les 2 serveurs n&amp;#039;est pas la même (utf8 &amp;amp; latin par exemple). Faire un copier coller du nom du fichier, puis sur le serveur de destination faire un touch du nom du fichier pour voir si il prend bien les memes caracteres&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== DNS =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Lorsque l&amp;#039;on modifie le resolv.conf, il faut restarter les différents services qui l utilisent (sendmail, etc..) car ceux ci ne le lise qu un fois lorsqu ils démarrent et apres le garde en cache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== ELF &amp;amp; no such file or directory =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver qu un programme ne se lance pas et marque &amp;quot;no such file or directory&amp;quot; alors que le fichier mentionné est bien&lt;br /&gt;
présent. Cela arrive lorsque l OS est en 64 bits et que le soft est en 32 bits, et que le package ia32-libs sous debian (ou glibc.i686 suivant les OS) n&amp;#039;est pas installé.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Enregistrement de session =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Si l&amp;#039;on veut logguer les commandes qui sont faites dans les sessions des users, ajouter dans /etc/profile :&lt;br /&gt;
export PROMPT_COMMAND=&amp;#039;RETRN_VAL=$?;logger -p local6.debug &amp;quot;$(whoami) [$$]: $(history 1 | sed &amp;quot;s/^[ ]*[0-9]\+[ ]*//&amp;quot; ) [$RETRN_VAL]&amp;quot;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On peut mettre ca dans une autre local bien sur, puis rajouter dans le rsyslog.conf : local6.*                /var/log/session.log.&lt;br /&gt;
Cela va nous donner des choses comme :&lt;br /&gt;
Jul  8 12:48:55 serveur benj: benj [351]: Jul/06 -- 21:23:03 su [0]&lt;br /&gt;
Jul  8 12:48:56 serveur benj: benj [351]: Jul/08 -- 12:48:56 ls [0]&lt;br /&gt;
Jul  8 12:48:57 serveur benj: benj [351]: Jul/08 -- 12:48:57 dir [0]&lt;br /&gt;
Jul  8 12:48:59 serveur benj: root [32543]: Jul/08 -- 12:48:49 tail -f /var/log/ben.log  [130]&lt;br /&gt;
Jul  8 12:50:25 serveur benj: root [32543]: Jul/08 -- 12:50:02 vim /etc/rsyslog.conf [0]&lt;br /&gt;
&lt;br /&gt;
Cela ne loggue pas ce qui est fait en ssh sans shell, pour ca il faut utiliser snoopy master qui loggue tout&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Grub =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On peut avoir des problèmes avec grub lors d&amp;#039;un grub install, voir https://wiki.blaxeen.com/index.php/Creation_de_VM_linux#Installation_de_grub pour la solution&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== History &amp;amp; date =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Pour avoir la date et l&amp;#039;heure des commandes passées dans l&amp;#039;history, il faut rajouter dans /etc/profile ou .bashrc : export &lt;br /&gt;
Debian : export HISTTIMEFORMAT=&amp;#039;%F %T &amp;#039;&lt;br /&gt;
Centos : export HISTTIMEFORMAT=&amp;quot;%h/%d -- %H:%M:%S &amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Interface bridge en boucle =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver que lorsqu&amp;#039;on fait une mauvaise conf d&amp;#039;interfaces eth &amp;amp; bridge, et que dans /var/log/message on ait ce message en boucle, et qu en faisant un brctl show, le brige&lt;br /&gt;
apparaisse et disparaisse. Il faut déplacer les 2 fichiers de conf des interfaces back275 et eth1.275 ailleurs que dans /etc/sysconfig/network-scripts/ (les renommer ne sert à rien).&lt;br /&gt;
Puis faire des ifconfig back275 down, ifconfig eth1.275 down (voir des brct delbr back275), et le problème devrait se résoudre&lt;br /&gt;
&lt;br /&gt;
Mar 21 16:37:27 kvm1 kernel: back275: port 1(eth1.275) entering disabled state&lt;br /&gt;
Mar 21 16:37:27 kvm1 kernel: device eth1.275 entered promiscuous mode&lt;br /&gt;
Mar 21 16:37:27 kvm1 kernel: back275: port 1(eth1.275) entering disabled state&lt;br /&gt;
Mar 21 16:37:27 kvm1 kernel: device eth1.275 entered promiscuous mode&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Interface ethX =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Si on a des pb d interrfaces (eth2 au lieu de eth0) , et cela est valable aussi lorsqu on fait des images d OS en tar.GZ, il faut supprimer ce qu il y a dans le fichier /etc/udev&lt;br /&gt;
/rules.d/70-persistent-net.rules (ou similaire suivant les OS), mais le fichier doit exister&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Log martians &amp;amp; route &amp;amp; syslog =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Dans certaines circonstances il peut être intéressant d&amp;#039;activer les logs martians pour la résolution de problème, par exemple des problèmes de routes manquantes.&lt;br /&gt;
Le cas est arrivé sur un serveur syslog qui recevait des logs d&amp;#039;un switch. Le tcpdump voyait bien les paquets arriver sur l&amp;#039;eth0 du serveur, syslog écoutait bien sur eth0, mais rien&lt;br /&gt;
ne logguait, et un strace sur le pid de syslog ne voyait pas l&amp;#039;ip du switch. &lt;br /&gt;
En fait, le paquet arrivait sur eth0, mais la route pour joindre le switch passe par eth1 (alors que les paquets arrivent sur eth0), on a donc une route assymétrique, et meme si le &lt;br /&gt;
paquet ne repart pas hors du serveur, il lui faut quand meme une chemin de routage cohérent. Il a fallu ajouter une route pour l&amp;#039;ip du switch en lui demandant de passer par eth0,&lt;br /&gt;
et là le serveur syslog a bien réussi à récuperer les logs du switch.&lt;br /&gt;
L&amp;#039;activation des logs martians a permis de mettre en évidence cela&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Loggin en root en boucle =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver que lorsqu&amp;#039;on veuille se logguer en root, il demande bien le login et le mdp, mais il le redemande en boucle (sans mettre de message Acces denied ou invalid password).&lt;br /&gt;
Dans le cas que j&amp;#039;ai rencontré, cela arrive lorsque le selinux (ou autre systeme de sécurité) est activé. Il faut alors le désactiver ou le modifier pour pouvoir se logguer (reboot en &lt;br /&gt;
mode pxe ou livecd obligé). IL faut aussi vérifier que dans /etc/securetty on ait bien les différentes tty (ou Stty pour la console)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== No route to host &amp;amp; problème de route =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver que depuis un serveur l&amp;#039;on arrive bien à pinguer une ip Y, mais lorsque l&amp;#039;on veut faire un ssh, wget ou autre on a le message : &amp;quot; No route to host&amp;quot;, alors que la route&lt;br /&gt;
existe bien. Cela signigie en général qu&amp;#039;il y a un firewall entre les 2 qui filtre ce service&lt;br /&gt;
&lt;br /&gt;
Si problème de route, ou on arrive pas à joindre la passerelle alors que tout  à l air bon, voir un arp -a pour voir si la mac de la gw remonte. Sinon verifier que la route native (pas la route par &lt;br /&gt;
defaut) de l interface réseau en question est bien là, si elle ne l est pas , faire un ifdown &amp;amp;&amp;amp; ifup pour réafficher la route native&lt;br /&gt;
&lt;br /&gt;
Vérifer que la route de retour existe, et que l&amp;#039;interface par laquelle arrive le paquet et bien l interface par laquelle le paquet ressort&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Partitionnement d&amp;#039;un disque &amp;amp; /dev/sdaX =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Lorsque l&amp;#039;on créé des partitions sur un disque, au moment du formatage avec mkfs.ext3 il se peut que le /dev/sdaX n&amp;#039;ait pas toutes les partitions (qu&amp;#039;il ait juste sda1 et sda2 et pas&lt;br /&gt;
sda3,4...), il faut alors rebooter. Avec des kernels récents on peut utiliser partprobe (partprobe /dev/sdb ; echo $?) ou partx -a /dev/sda pour mettre à jour la table des partitions&lt;br /&gt;
 dans /dev. Si le /dev/sdX n&amp;#039;existe pas il n y a pas d autres moyen que de rebooter&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Problème mot de passe &amp;amp; entropie =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Les programmes tel que mkpasswd ou passwd (entre autres) se servent de /dev/random ou /dev/urandom pour générer des chiffres &amp;amp; lettres aléatoires. Si ces mots de passe comportent  &lt;br /&gt;
toujours les mêmes lettres, il y a de fortes chances que /dev/random ou /dev/urandom ne soient pas bon.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Prompt bash =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Souvent le prompt par défaut  n&amp;#039;utilise pas le fqdn du serveur, ce qui peut etre embetant. Sous Debian, pour corriger cela, dans le /etc/bashrc et /root/.bashrc (ou /etc/bash.bashrc &lt;br /&gt;
suivant les distrib), modifier la ligne avec PS1 pour remplacer le &amp;quot;h:&amp;quot; par &amp;quot;H:&amp;quot;.&lt;br /&gt;
Bien renseigner le fqdn dans /etc/hostname, et faire /etc/init.d/hostname.sh start pour le prendre en compte.&lt;br /&gt;
Sous debian, décommenter aussi les lignes suivantes dans le /etc/bash.bashrc (voir changer aussi le /root/.bashrc et mettre dans le /etc/hosts le fqdn en premier sur la ligne du &lt;br /&gt;
127.0.0.1)&lt;br /&gt;
&lt;br /&gt;
case &amp;quot;$TERM&amp;quot; in&lt;br /&gt;
xterm*|rxvt*)&lt;br /&gt;
    PROMPT_COMMAND=&amp;#039;echo -ne &amp;quot;\033]0;${USER}@${HOSTNAME}: ${PWD}\007&amp;quot;&amp;#039;&lt;br /&gt;
    ;;&lt;br /&gt;
*)&lt;br /&gt;
    ;;&lt;br /&gt;
esac &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Segfault =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Si on a des erreurs de segfault, il faut bien regarder, ici c est le binaire h64 qui fait ces segfaults, et dans le cas présents le serveur c etait fait hacke.&lt;br /&gt;
line 23695 : Oct  5 20:18:01 www1c kernel: h64[8877]: segfault at ffffffffffffffd0 rip 00000000004242d3 rsp 00007fff89bcb178 error 6&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Warning: `xxxx&amp;#039; uses 32-bit capabilities (legacy support in use) =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On peut avoir ce warning au restart de certain soft (proftp, bind...), il faut dans ce cas là installer libcal-devel. La recompilation peut etre nécessaire pour ne plus avoir ce &lt;br /&gt;
message.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Yum et curl =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Yum se sert de pycurl (donc de curl) pour fonctionner. Si curl est compilé avec une version d&amp;#039;openssl différente de celle sur le system ou compilé sans openssl, voilà le message &lt;br /&gt;
d&amp;#039;erreur que l&amp;#039;on a :&lt;br /&gt;
There was a problem importing one of the Python modules&lt;br /&gt;
required to run yum. The error leading to this problem was:&lt;br /&gt;
   /usr/lib64/python2.6/site-packages/pycurl.so: undefined symbol: CRYPTO_set_locking_callback&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Linux]]&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=Trucs_%26_Astuces_Linux&amp;diff=4113</id>
		<title>Trucs &amp; Astuces Linux</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=Trucs_%26_Astuces_Linux&amp;diff=4113"/>
		<updated>2016-12-30T10:46:25Z</updated>

		<summary type="html">&lt;p&gt;Ben : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
Cette page regroupe quelques trucs &amp;amp; astuces sur des problèmes divers rencontrés&lt;br /&gt;
&lt;br /&gt;
===== Accès internet =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver que l&amp;#039;on pingue internet (resolution dns &amp;amp; gw ok) mais pas d&amp;#039;accès internet via IE ou lynx. Cela est souvent du à un problème de négociation sur le switch ou sur l&amp;#039;eth &lt;br /&gt;
qui est en half duplex&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Charge CPU et leap seconde =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Parfois, le 31/12 avant minuit une leap seconde est ajoutée sur les serveurs root ntp. Cela a pour conséquence une charge cpu et mémoire élevée sur les services de base de données et services utilisant&lt;br /&gt;
java. Il suffit de relancer les services pour corriger&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== DNS =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Lorsque l&amp;#039;on modifie le resolv.conf, il faut restarter les différents services qui l utilisent (sendmail, etc..) car ceux ci ne le lise qu un fois lorsqu ils démarrent et apres le garde en cache&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== ELF &amp;amp; no such file or directory =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver qu un programme ne se lance pas et marque &amp;quot;no such file or directory&amp;quot; alors que le fichier mentionné est bien&lt;br /&gt;
présent. Cela arrive lorsque l OS est en 64 bits et que le soft est en 32 bits, et que le package ia32-libs sous debian (ou glibc.i686 suivant les OS) n&amp;#039;est pas installé.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Enregistrement de session =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Si l&amp;#039;on veut logguer les commandes qui sont faites dans les sessions des users, ajouter dans /etc/profile :&lt;br /&gt;
export PROMPT_COMMAND=&amp;#039;RETRN_VAL=$?;logger -p local6.debug &amp;quot;$(whoami) [$$]: $(history 1 | sed &amp;quot;s/^[ ]*[0-9]\+[ ]*//&amp;quot; ) [$RETRN_VAL]&amp;quot;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
On peut mettre ca dans une autre local bien sur, puis rajouter dans le rsyslog.conf : local6.*                /var/log/session.log.&lt;br /&gt;
Cela va nous donner des choses comme :&lt;br /&gt;
Jul  8 12:48:55 serveur benj: benj [351]: Jul/06 -- 21:23:03 su [0]&lt;br /&gt;
Jul  8 12:48:56 serveur benj: benj [351]: Jul/08 -- 12:48:56 ls [0]&lt;br /&gt;
Jul  8 12:48:57 serveur benj: benj [351]: Jul/08 -- 12:48:57 dir [0]&lt;br /&gt;
Jul  8 12:48:59 serveur benj: root [32543]: Jul/08 -- 12:48:49 tail -f /var/log/ben.log  [130]&lt;br /&gt;
Jul  8 12:50:25 serveur benj: root [32543]: Jul/08 -- 12:50:02 vim /etc/rsyslog.conf [0]&lt;br /&gt;
&lt;br /&gt;
Cela ne loggue pas ce qui est fait en ssh sans shell, pour ca il faut utiliser snoopy master qui loggue tout&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Grub =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On peut avoir des problèmes avec grub lors d&amp;#039;un grub install, voir https://wiki.blaxeen.com/index.php/Creation_de_VM_linux#Installation_de_grub pour la solution&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== History &amp;amp; date =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Pour avoir la date et l&amp;#039;heure des commandes passées dans l&amp;#039;history, il faut rajouter dans /etc/profile ou .bashrc : export &lt;br /&gt;
Debian : export HISTTIMEFORMAT=&amp;#039;%F %T &amp;#039;&lt;br /&gt;
Centos : export HISTTIMEFORMAT=&amp;quot;%h/%d -- %H:%M:%S &amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Interface bridge en boucle =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver que lorsqu&amp;#039;on fait une mauvaise conf d&amp;#039;interfaces eth &amp;amp; bridge, et que dans /var/log/message on ait ce message en boucle, et qu en faisant un brctl show, le brige&lt;br /&gt;
apparaisse et disparaisse. Il faut déplacer les 2 fichiers de conf des interfaces back275 et eth1.275 ailleurs que dans /etc/sysconfig/network-scripts/ (les renommer ne sert à rien).&lt;br /&gt;
Puis faire des ifconfig back275 down, ifconfig eth1.275 down (voir des brct delbr back275), et le problème devrait se résoudre&lt;br /&gt;
&lt;br /&gt;
Mar 21 16:37:27 kvm1 kernel: back275: port 1(eth1.275) entering disabled state&lt;br /&gt;
Mar 21 16:37:27 kvm1 kernel: device eth1.275 entered promiscuous mode&lt;br /&gt;
Mar 21 16:37:27 kvm1 kernel: back275: port 1(eth1.275) entering disabled state&lt;br /&gt;
Mar 21 16:37:27 kvm1 kernel: device eth1.275 entered promiscuous mode&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Interface ethX =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Si on a des pb d interrfaces (eth2 au lieu de eth0) , et cela est valable aussi lorsqu on fait des images d OS en tar.GZ, il faut supprimer ce qu il y a dans le fichier /etc/udev&lt;br /&gt;
/rules.d/70-persistent-net.rules (ou similaire suivant les OS), mais le fichier doit exister&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Log martians &amp;amp; route &amp;amp; syslog =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Dans certaines circonstances il peut être intéressant d&amp;#039;activer les logs martians pour la résolution de problème, par exemple des problèmes de routes manquantes.&lt;br /&gt;
Le cas est arrivé sur un serveur syslog qui recevait des logs d&amp;#039;un switch. Le tcpdump voyait bien les paquets arriver sur l&amp;#039;eth0 du serveur, syslog écoutait bien sur eth0, mais rien&lt;br /&gt;
ne logguait, et un strace sur le pid de syslog ne voyait pas l&amp;#039;ip du switch. &lt;br /&gt;
En fait, le paquet arrivait sur eth0, mais la route pour joindre le switch passe par eth1 (alors que les paquets arrivent sur eth0), on a donc une route assymétrique, et meme si le &lt;br /&gt;
paquet ne repart pas hors du serveur, il lui faut quand meme une chemin de routage cohérent. Il a fallu ajouter une route pour l&amp;#039;ip du switch en lui demandant de passer par eth0,&lt;br /&gt;
et là le serveur syslog a bien réussi à récuperer les logs du switch.&lt;br /&gt;
L&amp;#039;activation des logs martians a permis de mettre en évidence cela&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Loggin en root en boucle =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver que lorsqu&amp;#039;on veuille se logguer en root, il demande bien le login et le mdp, mais il le redemande en boucle (sans mettre de message Acces denied ou invalid password).&lt;br /&gt;
Dans le cas que j&amp;#039;ai rencontré, cela arrive lorsque le selinux (ou autre systeme de sécurité) est activé. Il faut alors le désactiver ou le modifier pour pouvoir se logguer (reboot en &lt;br /&gt;
mode pxe ou livecd obligé). IL faut aussi vérifier que dans /etc/securetty on ait bien les différentes tty (ou Stty pour la console)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== No route to host &amp;amp; problème de route =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Il peut arriver que depuis un serveur l&amp;#039;on arrive bien à pinguer une ip Y, mais lorsque l&amp;#039;on veut faire un ssh, wget ou autre on a le message : &amp;quot; No route to host&amp;quot;, alors que la route&lt;br /&gt;
existe bien. Cela signigie en général qu&amp;#039;il y a un firewall entre les 2 qui filtre ce service&lt;br /&gt;
&lt;br /&gt;
Si problème de route, ou on arrive pas à joindre la passerelle alors que tout  à l air bon, voir un arp -a pour voir si la mac de la gw remonte. Sinon verifier que la route native (pas la route par &lt;br /&gt;
defaut) de l interface réseau en question est bien là, si elle ne l est pas , faire un ifdown &amp;amp;&amp;amp; ifup pour réafficher la route native&lt;br /&gt;
&lt;br /&gt;
Vérifer que la route de retour existe, et que l&amp;#039;interface par laquelle arrive le paquet et bien l interface par laquelle le paquet ressort&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Partitionnement d&amp;#039;un disque &amp;amp; /dev/sdaX =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Lorsque l&amp;#039;on créé des partitions sur un disque, au moment du formatage avec mkfs.ext3 il se peut que le /dev/sdaX n&amp;#039;ait pas toutes les partitions (qu&amp;#039;il ait juste sda1 et sda2 et pas&lt;br /&gt;
sda3,4...), il faut alors rebooter. Avec des kernels récents on peut utiliser partprobe (partprobe /dev/sdb ; echo $?) ou partx -a /dev/sda pour mettre à jour la table des partitions&lt;br /&gt;
 dans /dev. Si le /dev/sdX n&amp;#039;existe pas il n y a pas d autres moyen que de rebooter&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Problème mot de passe &amp;amp; entropie =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Les programmes tel que mkpasswd ou passwd (entre autres) se servent de /dev/random ou /dev/urandom pour générer des chiffres &amp;amp; lettres aléatoires. Si ces mots de passe comportent  &lt;br /&gt;
toujours les mêmes lettres, il y a de fortes chances que /dev/random ou /dev/urandom ne soient pas bon.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Prompt bash =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Souvent le prompt par défaut  n&amp;#039;utilise pas le fqdn du serveur, ce qui peut etre embetant. Sous Debian, pour corriger cela, dans le /etc/bashrc et /root/.bashrc (ou /etc/bash.bashrc &lt;br /&gt;
suivant les distrib), modifier la ligne avec PS1 pour remplacer le &amp;quot;h:&amp;quot; par &amp;quot;H:&amp;quot;.&lt;br /&gt;
Bien renseigner le fqdn dans /etc/hostname, et faire /etc/init.d/hostname.sh start pour le prendre en compte.&lt;br /&gt;
Sous debian, décommenter aussi les lignes suivantes dans le /etc/bash.bashrc (voir changer aussi le /root/.bashrc et mettre dans le /etc/hosts le fqdn en premier sur la ligne du &lt;br /&gt;
127.0.0.1)&lt;br /&gt;
&lt;br /&gt;
case &amp;quot;$TERM&amp;quot; in&lt;br /&gt;
xterm*|rxvt*)&lt;br /&gt;
    PROMPT_COMMAND=&amp;#039;echo -ne &amp;quot;\033]0;${USER}@${HOSTNAME}: ${PWD}\007&amp;quot;&amp;#039;&lt;br /&gt;
    ;;&lt;br /&gt;
*)&lt;br /&gt;
    ;;&lt;br /&gt;
esac &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Segfault =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Si on a des erreurs de segfault, il faut bien regarder, ici c est le binaire h64 qui fait ces segfaults, et dans le cas présents le serveur c etait fait hacke.&lt;br /&gt;
line 23695 : Oct  5 20:18:01 www1c kernel: h64[8877]: segfault at ffffffffffffffd0 rip 00000000004242d3 rsp 00007fff89bcb178 error 6&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Warning: `xxxx&amp;#039; uses 32-bit capabilities (legacy support in use) =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
On peut avoir ce warning au restart de certain soft (proftp, bind...), il faut dans ce cas là installer libcal-devel. La recompilation peut etre nécessaire pour ne plus avoir ce &lt;br /&gt;
message.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===== Yum et curl =====&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Yum se sert de pycurl (donc de curl) pour fonctionner. Si curl est compilé avec une version d&amp;#039;openssl différente de celle sur le system ou compilé sans openssl, voilà le message &lt;br /&gt;
d&amp;#039;erreur que l&amp;#039;on a :&lt;br /&gt;
There was a problem importing one of the Python modules&lt;br /&gt;
required to run yum. The error leading to this problem was:&lt;br /&gt;
   /usr/lib64/python2.6/site-packages/pycurl.so: undefined symbol: CRYPTO_set_locking_callback&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Linux]]&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=HyperV_snapshot&amp;diff=4107</id>
		<title>HyperV snapshot</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=HyperV_snapshot&amp;diff=4107"/>
		<updated>2016-12-29T13:13:04Z</updated>

		<summary type="html">&lt;p&gt;Ben : Ben a déplacé la page HyperV snapshot vers HyperV Snapshot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECTION [[HyperV Snapshot]]&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=HyperV_Snapshot&amp;diff=4106</id>
		<title>HyperV Snapshot</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=HyperV_Snapshot&amp;diff=4106"/>
		<updated>2016-12-29T13:13:04Z</updated>

		<summary type="html">&lt;p&gt;Ben : Ben a déplacé la page HyperV snapshot vers HyperV Snapshot&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== MEMO ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Quand on veut rester à l état actuel (état de la VM à l heure de maintenant) : il faut delete le snapshop&lt;br /&gt;
Si l on veut revenir à l état de la vm lorsque l&amp;#039;on a créé le snapshot : il faut faire appply (c’est-à-dire qu’un retour à l’état antérieur sera effectué. Toutes les modifications effectuées depuis la création de ce snapshot seront effacées.)&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
De base, lorsqu&amp;#039;une vm est créé, aucun snapshot n&amp;#039;existe, si l&amp;#039;on regarde dans la fenetre snapshot, on ne verra rien.&lt;br /&gt;
&lt;br /&gt;
Lorsque l&amp;#039;on créé un snapshot sur une vm, un nouveau fichier .avhd(x) va être créé dans le même répertoire que le fichier .vhd de la vm (où un autre suivant comment est configuré le snapshot dans les paramètres de la vm ou dans la configuration globale de l&amp;#039;hyperV).&lt;br /&gt;
Toutes les nouvelles modifications, ajout de programmes et autres, vont donc être maintenant enregistrés dans ce fichier .avhd et non plus dans le fichier vhd. Le soucis est que la taille&lt;br /&gt;
fixée dans les settings de la vm concerne le fichier .vhd et non le fichier .avhd(x) du snapshot. Il est donc possible de saturer à terme le disque de l&amp;#039;hyperviseur.&lt;br /&gt;
&lt;br /&gt;
Plusieurs méthodes pour ne plus avoir de snapshot tout en conservant les modifications effectuées&lt;br /&gt;
&lt;br /&gt;
* 1ere méthode&lt;br /&gt;
Eteindre la vm, puis sur le snapshot faire delete. Le fichier .avhd a disparu, et les modifications ont bien été appliquées. Il est plus prudent de faire un export une fois la vm éteinte&lt;br /&gt;
avant de faire le delete du snapshot&lt;br /&gt;
&lt;br /&gt;
* 2eme méthode&lt;br /&gt;
Faire un delete du snapshot alors que la vm tourne. Le fichier .avhd continue d&amp;#039;augmenter et de se mettre à jour lorsque l&amp;#039;on fait des modifications, mais au niveau du &amp;quot;Server manager&amp;quot;,&lt;br /&gt;
on ne voit plus de snapshot sur la vm. Lorsque l&amp;#039;on arrete la vm, le fichier .avhd est fusionné, il disparait, et les modifications ont bien été appliquées&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Virtualisation]]&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=Esxi_backup_vm&amp;diff=4105</id>
		<title>Esxi backup vm</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=Esxi_backup_vm&amp;diff=4105"/>
		<updated>2016-12-29T13:12:41Z</updated>

		<summary type="html">&lt;p&gt;Ben : Ben a déplacé la page Esxi backup vm vers Esxi Backup vm&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECTION [[Esxi Backup vm]]&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=Esxi_Backup_vm&amp;diff=4104</id>
		<title>Esxi Backup vm</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=Esxi_Backup_vm&amp;diff=4104"/>
		<updated>2016-12-29T13:12:40Z</updated>

		<summary type="html">&lt;p&gt;Ben : Ben a déplacé la page Esxi backup vm vers Esxi Backup vm&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Pour sauvegarder proprement une sous Esxi, on peut utiliser [https://{{SERVERNAME}}/index.php/Esxi_backup_GhettoVCB GhettoVcb]. Si on ne peut pas installer ce soft, il faut effectuer&lt;br /&gt;
une sauvegarde manuelle.&lt;br /&gt;
&lt;br /&gt;
Dans le cadre d’une sauvegarde de VM, il est avant tout essentiel de sauvegarde les fichiers de disque soit les .vmdk et –flat.vmdk. Selon l’interface que l’on utilise pour se connecter &lt;br /&gt;
à ESXi les fichiers –flat.vmdk peuvent ou pas être affichés.&lt;br /&gt;
&lt;br /&gt;
Voilà les fichiers qui composent une vm :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    .vmx : le fichier de configuration de la machine virtuelle,&lt;br /&gt;
    .vmdk: le fichier de metadata (c.a.d. configuration) d’un disque virtuel,&lt;br /&gt;
    -flat.vmdk: le fichier contenant les données du disque virtuel,&lt;br /&gt;
    .vmsn: le fichier de metadata d’un disque de snapshot,&lt;br /&gt;
    -delta.vmdk: le fichier contenant les données du snapshot de fichier virtuel.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour récupérer les fichiers concernés, on peut :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
 - utiliser le vspher client pour parcourir le datastore et downloader les fichiers sur son poste&lt;br /&gt;
 - faire un cp en ssh des fichiers d&amp;#039;un emplacement à un autre&lt;br /&gt;
 - la meilleur solution : en ssh, utiliser la commande vmkfstool –i /vmfs/volumes/datastore1/xp/xp.vmdk /vmfs/volumes/datastore2/xp.vmdk (le -i correspond à --clonevirtualdisk)&lt;br /&gt;
Vmkfstools  dispose d’une option forte intéressante : le mode « Thin». Avec cette option, seuls les secteurs utilisés du disque sont effectivement copiés. Ainsi, si la VM dispose d’un &lt;br /&gt;
disque de 20Go dont seulement 2Go sont utilisés, la copie ne portera que sur 2Go. Le temps de sauvegarde est considérablement réduit :&lt;br /&gt;
# vmkfstool –i /vmfs/volumes/datastore1/xp/xp.vmdk –d thin /vmfs/volumes/datastore2/xp.vmdk&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
[[Catégorie:Virtualisation]]&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=Esxi_backup_GhettoVCB&amp;diff=4103</id>
		<title>Esxi backup GhettoVCB</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=Esxi_backup_GhettoVCB&amp;diff=4103"/>
		<updated>2016-12-29T13:12:28Z</updated>

		<summary type="html">&lt;p&gt;Ben : Ben a déplacé la page Esxi backup GhettoVCB vers Esxi Backup GhettoVCB&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;#REDIRECTION [[Esxi Backup GhettoVCB]]&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
	<entry>
		<id>https://wiki.blaxeen.com/index.php?title=Esxi_Backup_GhettoVCB&amp;diff=4102</id>
		<title>Esxi Backup GhettoVCB</title>
		<link rel="alternate" type="text/html" href="https://wiki.blaxeen.com/index.php?title=Esxi_Backup_GhettoVCB&amp;diff=4102"/>
		<updated>2016-12-29T13:12:28Z</updated>

		<summary type="html">&lt;p&gt;Ben : Ben a déplacé la page Esxi backup GhettoVCB vers Esxi Backup GhettoVCB&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;=== Introduction ===&lt;br /&gt;
GhettoVCB est un script SH permettant la sauvegarde au chaud ou froid et la restauration de machines virtuelles sous ESX ou ESXi : http://communities.vmware.com/docs/DOC-8760 /&lt;br /&gt;
&lt;br /&gt;
=== Principe ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
C’est très simple, avez-vous déjà essaye de copier une machine virtuelle d’un hôte vers un autre sans l’éteindre ? Essayez et vous verrez que cela vous pette une erreur. Pourquoi ? &lt;br /&gt;
Car lorsqu’une VM est allumée, les vmdk ou fichier de disques virtuels sont lockés (verrouilles). Comment faire alors ? C’est simple, pour enlever ce lock sur le vmdk il faut et il &lt;br /&gt;
suffit … de faire un snapshot de la VM. Ah bon ? Ben oui ! Un snapshot après tout c’est quoi ? Un fichier différentiel à partir d’un instant T dans lequel esxi va écrire les modifs &lt;br /&gt;
jusqu’au delete ou merge de ce différentiel. Des lors que le snapshot est créé, le fichier du snapshot est locke et le lock du vmdk initial relâché. Scriptez ce principe et vous &lt;br /&gt;
obtiendrez Ghettovcb.sh. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Fonctionnalités ===&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Support de backups multiples de VMDKs par VM.&lt;br /&gt;
Backup des VMDK valides uniquement.&lt;br /&gt;
Backup a chaud.&lt;br /&gt;
Possibilité d’éteindre la VM avant d’initier le backup puis de la redémarrer ensuite.&lt;br /&gt;
Vérification de la bonne suppression des snapshots issus des backups précédents avant chaque backup.&lt;br /&gt;
Les vms contenant déjà des snapshots ne sont pas backupees L .&lt;br /&gt;
Possibilité de choisir le type des fichiers de disques de backup des VMDK (split 2Go, …).&lt;br /&gt;
Support des disques (virtuels) IDE et SCSI.&lt;br /&gt;
Support des VMDk éparpillés sur plusieurs datastores.&lt;br /&gt;
Possibilité de compresser les backups (fonctionnalités en beta)&lt;br /&gt;
Possibilité de définir des stratégies de sauvegarde différentes selon les VMs.&lt;br /&gt;
Possibilité d’inclure/exclure certains vmdk pour une certaine VM.&lt;br /&gt;
Création de log de sortie.&lt;br /&gt;
Timeout pour l’arrêt des VMS (optionnel) et la création de snapshots.&lt;br /&gt;
Snapshots paramétrables (mémoire, etc…).&lt;br /&gt;
Debugging durant l’exécution du script.&lt;br /&gt;
Support RDM.&lt;br /&gt;
Support d’une liste d’exclusion de VMS.&lt;br /&gt;
Possibilité de backuper toutes les vms d’un hôte sans passer par une liste.&lt;br /&gt;
Mécanismes de locks pour éviter l’exécution simultanée du script plusieurs fois sur le même hote.&lt;br /&gt;
Arborescence de répertoires pour les backups (rsync) .&lt;br /&gt;
Email de log/resultat (expérimental).&lt;br /&gt;
Support Rsync (expérimental).&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Installation ===&lt;br /&gt;
&lt;br /&gt;
[https://github.com/lamw/ghettoVCB/downloads Télécharger la dernière version] et la mettre sur l&amp;#039;ESXi avec scp ou WinSCP, puis, décompresser l&amp;#039;archive pour l&amp;#039;installer :&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# tar -xzf lamw-ghettoVCB-518cef7.tar.gz&lt;br /&gt;
# rm lamw-ghettoVCB-518cef7.tar.gz&lt;br /&gt;
# mv lamw-ghettoVCB-518cef7 ghettoVCB&lt;br /&gt;
# cd ghettoVCB&lt;br /&gt;
# ls -hl&lt;br /&gt;
-rw-rw-r-- 1 root root   281 Nov 28  2011 README&lt;br /&gt;
-rwxrwxr-x 1 root root 15.6k Nov 28  2011 ghettoVCB-restore.sh&lt;br /&gt;
-rw-rw-r-- 1 root root   309 Nov 28  2011 ghettoVCB-restore_vm_restore_configuration_template&lt;br /&gt;
-rw-rw-r-- 1 root root   356 Nov 28  2011 ghettoVCB-vm_backup_configuration_template&lt;br /&gt;
-rw-rw-r-- 1 root root   631 Nov 28  2011 ghettoVCB.conf&lt;br /&gt;
-rwxrwxr-x 1 root root 48.2k Nov 28  2011 ghettoVCB.sh&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Sauvegarde ===&lt;br /&gt;
La sauvegarde se fait en utilisant le script ghettoVCB.sh&lt;br /&gt;
&lt;br /&gt;
* Configuration&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
La configuration se fait en modifiant le fichier ghettoVCB.conf&lt;br /&gt;
&lt;br /&gt;
 * VM_BACKUP_VOLUME : Datastore et répertoire dans lequel les sauvegardes sont entreposées, si le répertoire n&amp;#039;existe pas, il sera crée.&lt;br /&gt;
 * DISK_BACKUP_FORMAT : Format de disque, peut être paramétré à zeroedthick, eagerzeroedthick, thin ou 2gbsparse.&lt;br /&gt;
 * VM_BACKUP_ROTATION_COUNT : Nombre de rotation de sauvegarde pour un machine virtuelle.&lt;br /&gt;
 * POWER_VM_DOWN_BEFORE_BACKUP : Indique si le script doit stopper la machine virtuelle avant d&amp;#039;en faire la sauvegarde. Si la VM est stoppe avant sauvegarde, elle ne sera pas &lt;br /&gt;
sauvegarde en utilisant la méthode des cliché instantané (snapshot)&lt;br /&gt;
 * ENABLE_HARD_POWER_OFF : Force un arrêt de la VM si l’option précédente est activée et que la VM n’as pas les tools (0=false/non 1=true/oui). &lt;br /&gt;
 * ITER_TO_WAIT_SHUTDOWN : Indique le nombre de minutes d&amp;#039;attente avant l&amp;#039;arrêt brutale d&amp;#039;une machine virtuelle si ENABLE_HARD_POWER_OFF est activé.&lt;br /&gt;
 * POWER_DOWN_TIMEOUT : nombre de minutes a attendre avant extinction de la VM avant de l’ignorer et passer a la suivante. &lt;br /&gt;
 * SNAPSHOT_TIMEOUT : nombre de minutes a attendre pendant le snapshot avant d’ignorer et passer a la VM suivante. &lt;br /&gt;
 * ENABLE_COMPRESSION : Activation ou non de la compression. (Expérimental)&lt;br /&gt;
 * ADAPTER_FORMAT : Format du contrôleur de stockage des VMDK de sortie (lsilogic | buslogic). &lt;br /&gt;
 * VM_SNAPSHOT_MEMORY et VM_SNAPSHOT_QUIESCE : Activer ou désactiver les options de mémoire et d’attente du snapshot. (Désactivé par défaut)&lt;br /&gt;
 * EMAIL_LOG : Activer l’envoi du log par e-mail (0=false/non 1=true/oui)&lt;br /&gt;
 * EMAIL_DEBUG : Si l-envoi du mail est OK, en conserver une copie sur l’hôte quand même (0=false/non 1=true/oui)&lt;br /&gt;
 * EMAIL_SERVER : Adresse du serveur mail.&lt;br /&gt;
 * EMAIL_SERVER_PORT : Port du serveur mail a utiliser.&lt;br /&gt;
 * EMAIL_TO : Adresse a laquelle part le mail.&lt;br /&gt;
 * EMAIL_FROM : Émetteur du mail.&lt;br /&gt;
 * RSYNC_LINK : Support d’un lien symbolique RSYNC. &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Manuel&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
SYNTAXE : ./ghettoVCB.sh -f [VM_BACKUP_UP_LIST] -c [VM_CONFIG_DIR] -l [LOG_FILE] -d [DEBUG_LEVEL] -g [GLOBAL_CONF] -e [VM_EXCLUSION_LIST]&lt;br /&gt;
&lt;br /&gt;
OPTIONS :&lt;br /&gt;
   -a     Sauvegarder toutes les machines virtuelles de l&amp;#039;hôte.&lt;br /&gt;
   -f     Liste des machines virtuelles à sauvegarder.&lt;br /&gt;
   -e     Liste des machines virtuelles à exclure de la sauvegarde.&lt;br /&gt;
   -c     Dossier contenant un fichier de configuration spécifique à la sauvegarde de machines virtuelles.&lt;br /&gt;
   -g     Chemin d&amp;#039;excès du fichier de configuration global de ghettoVCB.&lt;br /&gt;
   -l     Fichier journal.&lt;br /&gt;
   -d     Niveau de débogage [info|debug|dryrun] (Par défaut: info)&lt;br /&gt;
&lt;br /&gt;
Sauvegarder les VM indiquées dans une liste&lt;br /&gt;
        ./ghettoVCB.sh -f vms_to_backup&lt;br /&gt;
&lt;br /&gt;
Sauvegarder toutes les VM d&amp;#039;un hôte&lt;br /&gt;
        ./ghettoVCB.sh -a&lt;br /&gt;
&lt;br /&gt;
Sauvegarder toutes les VM d&amp;#039;un hôte sauf celle listées.&lt;br /&gt;
        ./ghettoVCB.sh -a -e vm_exclusion_list&lt;br /&gt;
&lt;br /&gt;
Sauvegarder les VM en utilisant la configuration stocké dans un répertoire spécifique&lt;br /&gt;
        ./ghettoVCB.sh -f vms_to_backup -c vm_backup_configs&lt;br /&gt;
&lt;br /&gt;
Sauvegarder les VM en utilisant le fichier de configuration global&lt;br /&gt;
        ./ghettoVCB.sh -f vms_to_backup -g /global/ghettoVCB.conf&lt;br /&gt;
&lt;br /&gt;
Spécification de l&amp;#039;emplacement des journaux (Ceux-ci sont par défaut dans /tmp/ghettoVCB.log)&lt;br /&gt;
        ./ghettoVCB.sh -f vms_to_backup -l /vmfs/volume/local-storage/ghettoVCB.log&lt;br /&gt;
&lt;br /&gt;
Essai à blanc (Aucune sauvegarde ne sera faite)&lt;br /&gt;
        ./ghettoVCB.sh -f vms_to_backup -d dryrun&lt;br /&gt;
&lt;br /&gt;
Les fichiers de listes de machines virtuelles à sauvegarder ou exclure est de la forme suivante :&lt;br /&gt;
&lt;br /&gt;
VM01&lt;br /&gt;
VM02&lt;br /&gt;
VM03&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Utilisation&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Les disques des machines virtuelles à sauvegarder ne doivent pas être déclarés comme indépendants, si c&amp;#039;est le cas, un test de sauvegarde à blanc (option -d dryrun) remontera &lt;br /&gt;
l&amp;#039;erreur suivante :&lt;br /&gt;
&lt;br /&gt;
Snapshots can not be taken for indepdenent disks!&lt;br /&gt;
&lt;br /&gt;
Exemple d&amp;#039;utilisation :&lt;br /&gt;
&lt;br /&gt;
# ./ghettoVCB.sh -f ./vm_backup_list -g ./ghettoVCB.conf -l ./testBackup.log&lt;br /&gt;
Insufficient arguments.&lt;br /&gt;
2012-08-23 14:50:28 -- info: ============================== ghettoVCB LOG START ==============================&lt;br /&gt;
&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - USING GLOBAL GHETTOVCB CONFIGURATION FILE = ./ghettoVCB.conf&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - VERSION = 2011_11_19_1&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - GHETTOVCB_PID = 9436587&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - VM_BACKUP_VOLUME = /vmfs/volumes/5e909b68-89b5a355&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - VM_BACKUP_ROTATION_COUNT = 3&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - VM_BACKUP_DIR_NAMING_CONVENTION = 2012-08-23_14-50-27&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - DISK_BACKUP_FORMAT = thin&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - POWER_VM_DOWN_BEFORE_BACKUP = 1&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - ENABLE_HARD_POWER_OFF = 0&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - ITER_TO_WAIT_SHUTDOWN = 3&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - POWER_DOWN_TIMEOUT = 5&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - SNAPSHOT_TIMEOUT = 15&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - LOG_LEVEL = info&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - BACKUP_LOG_OUTPUT = ./testBackup.log&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - VM_SNAPSHOT_MEMORY = 0&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - VM_SNAPSHOT_QUIESCE = 0&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - VMDK_FILES_TO_BACKUP = all&lt;br /&gt;
2012-08-23 14:50:28 -- info: CONFIG - EMAIL_LOG = 0&lt;br /&gt;
2012-08-23 14:50:28 -- info:&lt;br /&gt;
Datastore not found.&lt;br /&gt;
&lt;br /&gt;
Datastore not found.&lt;br /&gt;
&lt;br /&gt;
Datastore not found.&lt;br /&gt;
&lt;br /&gt;
2012-08-23 14:50:31 -- info: Powering off initiated for CentOS6.0-MEP-base_ssh_snmp, backup will not begin until VM is off...&lt;br /&gt;
2012-08-23 14:50:32 -- info: VM is powerdOff&lt;br /&gt;
2012-08-23 14:50:32 -- info: Initiate backup for CentOS6.0-MEP-base_ssh_snmp&lt;br /&gt;
Destination disk format: VMFS thin-provisioned&lt;br /&gt;
Cloning disk &amp;#039;/vmfs/volumes/datastore2/CentOS6Test/CentOS6Test.vmdk&amp;#039;...&lt;br /&gt;
Clone: 94% done.&lt;br /&gt;
2012-08-23 14:52:50 -- info: Backup Duration: 2.30 Minutes&lt;br /&gt;
2012-08-23 14:52:50 -- info: Successfully completed backup for CentOS6.0-MEP-base_ssh_snmp!&lt;br /&gt;
&lt;br /&gt;
Datastore not found.&lt;br /&gt;
&lt;br /&gt;
Datastore not found.&lt;br /&gt;
&lt;br /&gt;
Datastore not found.&lt;br /&gt;
&lt;br /&gt;
2012-08-23 14:52:52 -- info: ###### Final status: All VMs backed up OK! ######&lt;br /&gt;
&lt;br /&gt;
2012-08-23 14:52:53 -- info: ============================== ghettoVCB LOG END ================================&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Il est bien entendu possible de rediriger vers /dev/null les messages, ceci est fortement conseillé si GhettoVCB est utilisé via une crontab.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
# ./ghettoVCB.sh -f ./vm_backup_list -g ./ghettoVCB.conf -l ./testBackup.log &amp;gt; /dev/null&lt;br /&gt;
&lt;br /&gt;
Une fois la sauvegarde terminée, celle-ci est stocké dans un répertoire du type $VM_BACKUP_VOLUME/$NOM_VM/$NOM_VM-$(date +%Y-%m-%d_%H-%M-%S)/&lt;br /&gt;
Ce qui, pour la VM d&amp;#039;exemple ci-dessus donne quelque chose du type :&lt;br /&gt;
&lt;br /&gt;
# ls -hl /vmfs/volumes/ESXBackup/CentOS6.0-MEP-base_ssh_snmp/CentOS6.0-MEP-base_ssh_snmp-2012-08-23_14-50-27/&lt;br /&gt;
-rw------- 1 root root 8.0G Aug 23 14:52 CentOS6Test-flat.vmdk&lt;br /&gt;
-rw------- 1 root root  516 Aug 23 14:52 CentOS6Test.vmdk&lt;br /&gt;
-rwxr-xr-x 1 root root 2.8k Aug 23 14:50 CentOS6Test.vmx&lt;br /&gt;
-rw-r--r-- 1 root root   30 Aug 23 14:52 STATUS.ok&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Restauration ===&lt;br /&gt;
La restauration d&amp;#039;une sauvegarde se fait en utilisant le script ghettoVCB-restore.sh&lt;br /&gt;
&lt;br /&gt;
Ce script ne fait que restaurer les fichiers de la VM dans un nom de dossier contenant la date de la sauvegarde, si vous restaurez une VM dans un état antérieur (celle-ci n&amp;#039;a pas été &lt;br /&gt;
supprimé) il sera nécessaire de faire un renommage pour que la VM utilise les fichiers restauré. Si vous restaurer une VM supprimé corp et biens, celle-ci sera automatiquement recrée &lt;br /&gt;
et visible sous vSphere.&lt;br /&gt;
&lt;br /&gt;
Si lors du démarrage via vSphere d&amp;#039;une VM restaurée de A à Z vous recevez un message vous indiquand que l&amp;#039;UUID provient d&amp;#039;une VM copié ou déplacé, indiquez que vous avez copié ladite &lt;br /&gt;
VM.&lt;br /&gt;
&lt;br /&gt;
* Configuration&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
La configuration de la restauration se fait créant un fichier de configuration pour la/les machine(s) virtuelle(s) à restaurer, ce fichier est ensuite donnée à la commande de &lt;br /&gt;
restauration.&lt;br /&gt;
&lt;br /&gt;
Le syntaxe du fichier de configuration est la suivante :&lt;br /&gt;
&lt;br /&gt;
&amp;quot;&amp;lt;DIRECTORY or .TGZ&amp;gt;;&amp;lt;DATASTORE_TO_RESTORE_TO&amp;gt;;&amp;lt;DISK_FORMAT_TO_RESTORE&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
Avec :&lt;br /&gt;
 * DIRECTORY or .TGZ : Le répertoire contenant la sauvegarde.&lt;br /&gt;
 * DATASTORE_TO_RESTORE_TO : Le Datastore contenant la VM à restaurer.&lt;br /&gt;
 * DISK_FORMAT_TO_RESTORE : Nombre indiquant le format de disque-dur de la VM à restaurer. (1 : zeroedthick, 2 : 2gbsparse, 3 : thin, 4 : eagerzeroedthick)&lt;br /&gt;
Ajouter une ligne par VM à restaurer, en indiquand plusieurs lignes, il est possible de restaurer plusieurs VM.&lt;br /&gt;
&lt;br /&gt;
Par exemple, pour restaurer la VM précédemment sauvegarder, indiquer la ligne suivante :&lt;br /&gt;
&lt;br /&gt;
&amp;quot;/vmfs/volumes/ESXBackup/CentOS6.0-MEP-base_ssh_snmp/CentOS6.0-MEP-base_ssh_snmp-2012-08-24_08-38-21;/vmfs/volumes/datastore2;3&amp;quot;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
* Manuel&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
SYNTAXE: ./ghettoVCB-restore.sh -c [VM_BACKUP_UP_LIST] -l [LOG_FILE] -d [DRYRUN_DEBUG_INFO]&lt;br /&gt;
&lt;br /&gt;
OPTIONS:&lt;br /&gt;
   -c     Liste des machines virtuelles à sauvegarder.&lt;br /&gt;
   -l     Fichier journal.&lt;br /&gt;
   -d     Essai à blanc/Information de débogage [1|2]&lt;br /&gt;
&lt;br /&gt;
Afficher les messages de sortie à l&amp;#039;écran (pas de fichier journal spécifié)&lt;br /&gt;
        ./ghettoVCB-restore.sh -c vms_to_restore&lt;br /&gt;
&lt;br /&gt;
Mettre les messages de sortie dans /tmp/ghettoVCB-restore.log&lt;br /&gt;
        ./ghettoVCB-restore.sh -c vms_to_restore -l /tmp/ghettoVCB-restore.log&lt;br /&gt;
&lt;br /&gt;
Essai à blanc/Information de débogage (Pas de restauration)&lt;br /&gt;
        ./ghettoVCB-restore.sh -c vms_to_restore -d 1&lt;br /&gt;
        ./ghettoVCB-restore.sh -c vms_to_restore -d 2&lt;br /&gt;
&lt;br /&gt;
* Utilisation&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Exemple d&amp;#039;utilisation :&lt;br /&gt;
&lt;br /&gt;
# ./ghettoVCB-restore.sh -c vm_restore_list&lt;br /&gt;
################## Restoring VM: CentOS6.0-MEP-base_ssh_snmp  #####################&lt;br /&gt;
Start time: Fri Aug 24 09:10:22 UTC 2012&lt;br /&gt;
Restoring VM from: &amp;quot;/vmfs/volumes/ESXBackup/CentOS6.0-MEP-base_ssh_snmp/CentOS6.0-MEP-base_ssh_snmp-2012-08-24_08-38-21&amp;quot;&lt;br /&gt;
Restoring VM to Datastore: &amp;quot;/vmfs/volumes/datastore2&amp;quot; using Disk Format: &amp;quot;thin&amp;quot;&lt;br /&gt;
Creating VM directory: &amp;quot;/vmfs/volumes/datastore2/CentOS6.0-MEP-base_ssh_snmp-2012-08-24_08-38-21&amp;quot; ...&lt;br /&gt;
Copying &amp;quot;CentOS6Test.vmx&amp;quot; file ...&lt;br /&gt;
Restoring VM&amp;#039;s VMDK(s) ...&lt;br /&gt;
Updating VMDK entry in &amp;quot;CentOS6Test.vmx&amp;quot; file ...&lt;br /&gt;
Destination disk format: VMFS thin-provisioned&lt;br /&gt;
Cloning disk &amp;#039;/vmfs/volumes/ESXBackup/CentOS6.0-MEP-base_ssh_snmp/CentOS6.0-MEP-base_ssh_snmp-2012-08-24_08-38-21/CentOS6Test.vmdk&amp;#039;...&lt;br /&gt;
Clone: 100% done.&lt;br /&gt;
Registering CentOS6.0-MEP-base_ssh_snmp ...&lt;br /&gt;
608&lt;br /&gt;
End time: Fri Aug 24 09:22:39 UTC 2012&lt;br /&gt;
################## Completed restore for CentOS6.0-MEP-base_ssh_snmp! #####################&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Start time: Fri Aug 24 09:10:22 UTC 2012&lt;br /&gt;
End   time: Fri Aug 24 09:22:39 UTC 2012&lt;br /&gt;
Duration  : 12.28 Minutes&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Crontab ===&lt;br /&gt;
Pour la mise en place dans la crontab, voir : https://{{SERVERNAME}}/index.php/Esxi#Crontab&lt;br /&gt;
&lt;br /&gt;
=== Statistiques ===&lt;br /&gt;
Le backup est la restauration ont un effet bien sur sur le cpu, reseau et I/O de l&amp;#039;esxi plus ou moins important suivant&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Test de sauvegarde :&lt;br /&gt;
- VM éteinte : 8 Gio en 2 minutes 30&lt;br /&gt;
- VM allumé (sauvegarde par cliché instantané) : 8 Gio en 2 minutes 42 (Ping vers esxi-ins à 0,8 ~ 0,9 ms pendant la sauvegarde, 0,11 ms après)&lt;br /&gt;
&lt;br /&gt;
Test de restauration (Disque-dur supprimée de la VM et recrée vierge via vSphere) :&lt;br /&gt;
- Restauration via GhettoVCB : 8 Gio en 12 minutes 28.&lt;br /&gt;
- Demande un renommage/déplacement de fichier ou dossier.&lt;br /&gt;
- Machine fonctionnelle, disque restaurée convenablement.&lt;br /&gt;
&lt;br /&gt;
Test de restauration d&amp;#039;une VM (VM totalement supprimée via vSphere) :&lt;br /&gt;
- Restauration via GhettoVCB : 8 Gio en 12 minutes 28.&lt;br /&gt;
- VM recrée sous vSphere automatiquement.&lt;br /&gt;
- Machine fonctionnelle, disque restaurée convenablement.&lt;br /&gt;
- Remarque de vSphere au démarrage de la VM indiquant que son UUID provient d&amp;#039;une VM copiée, clonée ou déplacée.&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
[[Catégorie:Virtualisation]]&lt;/div&gt;</summary>
		<author><name>Ben</name></author>
	</entry>
</feed>