Poum - Trucs & astucesDe la qualité logicielle, méthodes agiles et outils logiciels libres ...2023-08-25T16:53:12+01:00Poumurn:md5:6b5c625a812aff31ffa1cd1f3648e14bDotclearSynergy 1.8 avec coulis de framboiseurn:md5:94079313ab160a62e61ad35d437f520d2018-01-06T22:41:00+01:002018-01-08T22:03:18+01:00PoumTrucs & astuceschromiumClawsDebianFirefoxi3Raspberry Pi 2stretchSynergywayland<p><img src="http://philippe.poumaroux.free.fr/public/.synergy_s.png" alt="synergy.png" style="float:left; margin: 0 1em 1em 0;" title="synergy.png, janv. 2018" /><img src="http://philippe.poumaroux.free.fr/public/.raspberry_s.jpg" alt="raspberry.jpg" style="float:right; margin: 0 0 1em 1em;" title="raspberry.jpg, janv. 2018" /></p>
<p>Voilà-t'y pas que mon vieux PC vient de me lâcher sans que Meltdown ou Spectre y soient pour quelque chose (enfin je crois vu qu'ayant plus de 10 ans).</p>
<p>Qu'à cela ne tienne, j'ai un <a href="http://philippe.poumaroux.free.fr/index.php?tag/Raspberry%20Pi%202">Raspberry Pi 2</a> en stock, l'occasion de voir si ça tient la route pour un usage raisonné.... et oui, même pour regarder des vidéos ! Il faut juste s'habituer à des outils moins gourmands (<a href="http://philippe.poumaroux.free.fr/index.php?tag/chromium">chromium</a> en attendant que <a href="http://philippe.poumaroux.free.fr/index.php?tag/Firefox">Firefox</a> 57 soit utilisable, <a href="http://philippe.poumaroux.free.fr/index.php?tag/Claws">Claws</a>, <a href="http://philippe.poumaroux.free.fr/index.php?tag/i3">i3</a> - depuis le temps qu'il fallait que je m'y mette ...).</p>
<p>Mais à un moment donné, me vient l'idée de partager clavier et souris avec un autre PC plus puissant via <a href="http://philippe.poumaroux.free.fr/index.php?tag/Synergy">Synergy</a>....</p> <p>J'installe donc synergy via <code>apt-get</code> sur la framboise (qui sera le serveur), j'y crée le fichier de configuration <code>synergy.conf</code> suivant:</p>
<pre> section: screens
raspberry:
halfDuplexCapsLock = false
halfDuplexNumLock = false
halfDuplexScrollLock = false
xtestIsXineramaUnaware = false
switchCorners = none
switchCornerSize = 0
elite:
halfDuplexCapsLock = false
halfDuplexNumLock = false
halfDuplexScrollLock = false
xtestIsXineramaUnaware = false
switchCorners = none
switchCornerSize = 0
end
section: aliases
end
section: links
raspberry:
left = elite
elite:
right = raspberry
end
section: options
relativeMouseMoves = false
screenSaverSync = true
win32KeepForeground = false
switchCorners = none
switchCornerSize = 0
end</pre>
<p>ce qui fait que le serveur (<code>raspberry</code>) est à gauche et le client (<code>elite</code>) à droite.</p>
<p>Sur le raspberry, enfin, je lance le serveur:</p>
<pre> $ synergys -f --name raspberry -c synergy.conf</pre>
<p>et sur le client:</p>
<pre> $ synergy -f -name elite <IP du raspberry></pre>
<p>Notez l'option <code>-f</code> pour que synergy ne passe pas en tâche de fond afin de voir les messages de débogage ... et ça été utile !</p>
<p>Car, bien sûr, ça ne fonctionne pas.</p>
<pre> WARNING: failed to connect to server: Connection refused ....</pre>
<p>Bon, que dit le serveur ? Ben que les versions des protocoles du client et du serveur sont incompatibles (1.8.8 versus 1.5).</p>
<p>En effet, un:</p>
<pre> $ synergyc --version
synergyc 1.8.8, protocol version 1.6</pre>
<p>et</p>
<pre> $ synergys --version
synergys 1.5, protocol version 1.5</pre>
<p>le confirment.</p>
<p>Donc la version de synergy dans le dépôt <a href="http://philippe.poumaroux.free.fr/index.php?tag/stretch">stretch</a> de la <a href="http://philippe.poumaroux.free.fr/index.php?tag/Debian">Debian</a> ARM installée sur notre Raspberry s'avère trop ancienne.
Donc, idée géniale: récupérons la version 1.8.8 et compilons gaiement !</p>
<p>Ouai ... ben pas aussi simple à faire qu'à dire. Voici donc tout ce que j'ai du faire pour que la compilation fonctionne (la plupart des solutions ayant été glanées à droite et à gauche sur Internet, le reste à l'expérience)</p>
<h3>Récupération du code source:</h3>
<p>Voici le <a href="https://github.com/symless/synergy-core/archive/v1.8.8-stable.tar.gz" hreflang="en" title="sources de synergy 1.8.8">lien sur github</a>.</p>
<h3>Installation des paquets:</h3>
<pre> $ sudo apt-get install cmake \
libcurl4-openssl-dev libx11-dev libssl1.0-dev</pre>
<p>Oui, le dernier paquet est ancien mais <code>libssl-dev</code> provoque une erreur de compilation.</p>
<p>J'ai également installé <code>libgtest-dev</code> et <code>googletest</code> pour essayer de faire passer - sans succès - les étapes de test que j'ai fini par (spoiler) zapper purement et simplement (voir plus loin). Donc inutile de les installer.</p>
<h2>Modification du chemin d'accès des includes</h2>
<p>Modifier la ligne 199 du fichier <code>CMakeLists.txt</code> en remplaçant <code>/usr/local/include</code> par <code>/usr/include</code> comme c'est d'ailleurs indiqué en commentaire:</p>
<pre> else() # not-apple
# add include dir for bsd (posix uses /usr/include/)
set(CMAKE_INCLUDE_PATH "${CMAKE_INCLUDE_PATH}:/usr/include")</pre>
<h2>Configuration:</h2>
<pre> $ ./configure</pre>
<p>Notez qu'en cas de problème, il faut vider le cache avant de relancer la commande <code>configure</code> sinon les modifications ne seront pas prises en compte. Pour ce faire, supprimer le fichier <code>CMakeCache.txt</code>.</p>
<h2>Suppression des étapes de tests de <code>Makefile2</code>:</h2>
<p>Comme je l'ai dit plus haut, le <code>make</code> ne fonctionnera pas suite à cause des étapes de tests. Je prends le parti de sauter les tests (sur l'air de "ça va marcher").</p>
<p>Pour ça, je commente les parties suivantes du fichier <code>CMakeFiles/Makefile2</code>:</p>
<ul>
<li>lignes 1226 à 1229 (<code>src/test/CMakeFiles/gmock.dir/all</code>)</li>
<li>lignes 1263 à 1266 (<code>src/test/CMakeFiles/gtest.dir/all</code>)</li>
<li>lignes 1327 à 1330 (<code>src/test/CMakeFiles/gtest.dir/all</code>)</li>
<li>lignes 1391 à 1394 (<code>src/test/CMakeFiles/gtest.dir/all</code>)</li>
</ul>
<h2>Compilation:</h2>
<pre> $ make preinstall</pre>
<p>et voilà, les binaires sont dans le sous-répertoire <code>bin</code>.</p>
<pre> $ bin/synergys --version
synergys 1.8.8, protocol version 1.6</pre>
<p>On relance le client et le serveur et cette fois, ça marche ...</p>
<p>enfin presque: mon client Ubuntu 17.10 étant sous <a href="http://philippe.poumaroux.free.fr/index.php?tag/wayland">wayland</a>, on voit bien le passage du focus d'un PC à l'autre, le clavier fonctionne (mais en qwerty) quant au pointeur de la souris, il reste là où il était (pas de menus non plus, contextuels ou pas)... A suivre, donc ...</p>
<p>Bonne année !</p>Installer le package DBIx::Class sur Centos 6urn:md5:8cbe94a71452d7488eea2d8922c9fd032017-05-14T16:26:00+02:002017-05-14T16:26:00+02:00PoumTrucs & astucesCentos 6dockerEPELPerlperl-DBIx-Class <p><img src="http://philippe.poumaroux.free.fr/public/perl-logo.gif" alt="Perl" title="Perl, fév. 2012" /> <img src="http://philippe.poumaroux.free.fr/public/centos.png" alt="Centos" title="Centos, sept. 2014" /></p>
<p>Afin de construire une image <a href="http://philippe.poumaroux.free.fr/index.php?tag/docker">docker</a> pour travailler sur une application <a href="http://philippe.poumaroux.free.fr/index.php?tag/Perl">Perl</a> devant s'exécuter sur une machine <a href="http://philippe.poumaroux.free.fr/index.php?tag/Centos%206">Centos 6</a>, j'ai été confronté à l'impossibilité d'installer le package <a href="http://philippe.poumaroux.free.fr/index.php?tag/perl-DBIx-Class">perl-DBIx-Class</a> du fait d'une dépendance manquante avec le paquet <code>perl-MooseX-Types-JSON</code>.</p>
<p>Certes, il eût été possible d'installer le paquet via cpan, mais une autre contrainte est que la machine Centos n'a pas accès à Internet, donc pas à CPAN. Du coup, j'aurais été obligé de télécharger la distribution à la main - tout à fait faisable - mais également toutes ses dépendances, directes et indirectes.... Et là, j'ai reculé.</p>
<p>Précisons que <code>perl-DBIx-Class</code> nécessite d'activer <a href="http://philippe.poumaroux.free.fr/index.php?tag/EPEL">EPEL</a>, mais que notre paquet fugueur, bien évidemment, n'y figure pas.</p>
<p>A grands coups de recherche sur Internet, j'ai fini par trouver le paquet <code>perl-MooseX-Types-JSON</code> sur http://choonrpms.mirror.choon.net.
D'où la résolution suivante:</p>
<ol>
<li>installer epel</li>
<li>installer les paquets <code>perl-DBI</code> et <code>perl-MooseX-Types</code> dont on sent bien qu'ils seront des dépendances nécessaires</li>
<li>installer le paquet <code>perl-JSON-XS</code> dont on s'aperçoit après une première tentative que <code>perl-MooseX-Types-JSON</code> en a besoin</li>
<li>télécharger le rpm <a href="http://choonrpms.mirror.choon.net/centos/6/choonrpms/x86_64/perl-MooseX-Types-JSON-0.02-3.choon.centos6.noarch.rpm" hreflang="en" title="Le rpm sur choon">ici</a></li>
<li>installer notre rpm</li>
<li>installer finalement <code>perl-DBIx-Class</code></li>
</ol>
<p>ce qui donne:</p>
<pre> yum install epel-release
yum install perl-DBI perl-MooseX-Types perl-JSON-XS
wget http://choonrpms.mirror.choon.net/centos/6/choonrpms/x86_64/perl-MooseX-Types-JSON-0.02-3.choon.centos6.noarch.rpm
rpm -i perl-MooseX-Types-JSON-0.02-3.choon.centos6.noarch.rpm
yum install perl-DBIx-Class</pre>
<p>Voilà, en espérant que ça vous évitera de perdre autant de temps que moi pour surmonter cet obstacle si tant est que vous ayez besoin de vous plier aux mêmes contraintes que moi.</p>Des images Docker pour LibrePlanurn:md5:41e5f184e1aa4132873bc2048fe1f6f62016-04-11T23:49:00+02:002017-03-05T12:46:53+01:00PoumTrucs & astucesLibrePlanMariaDBMySQLPostgresql <p><img src="http://philippe.poumaroux.free.fr/public/docker.png" alt="docker" title="docker, déc. 2016" /> & <img src="http://philippe.poumaroux.free.fr/public/LibrePlan_Logo.png" alt="LibrePlan" title="LibrePlan, mar. 2012" /></p>
<p>Pour ceux qui veulent rapidement essayer (ou utiliser) <a href="http://www.libreplan.org" hreflang="en" title="Site LibrePlan">LibrePlan</a>, outil web de gestion de projet, je viens d'uploader sur le hub docker deux <a href="https://hub.docker.com/r/libreplan/libreplan/" hreflang="en" title="Images docker LibrePlan">images</a> prêtes à l'emploi, l'une qui fonctionne avec <a href="http://philippe.poumaroux.free.fr/index.php?tag/Postgresql">Postgresql</a>, l'autre avec <a href="http://philippe.poumaroux.free.fr/index.php?tag/MySQL">MySQL</a> ou <a href="http://philippe.poumaroux.free.fr/index.php?tag/MariaDB">MariaDB</a>. Le mode d'emploi détaillé est joint.</p>
<p>Vous trouverez également dans le <a href="https://github.com/LibrePlan/docker-images" hreflang="en" title="Dépôt Github des images docker LibrePlan">dépôt Github</a> associé la traduction du mode d'emploi en français et des fichiers docker-compose notamment pour jouer avec deux instances et les faires communiquer (oui, <a href="http://philippe.poumaroux.free.fr/index.php?tag/LibrePlan">LibrePlan</a> sait aussi faire ça).</p>
<p>Accessoirement, j'ai également commis une image (très perfectible) pour ceux qui veulent hacker Libreplan. Elle est <a href="https://hub.docker.com/r/poum/libreplan/" hreflang="en" title="Image docker pour hacker LibrePlan">ici</a>.</p>CMDBuild et Kerberos ADurn:md5:ca17287befc318f49e1c580db93b1c922016-01-16T17:55:00+01:002016-01-16T18:54:00+01:00PoumTrucs & astucesCMDBuildExtJSFirebugJasperReportJavaKerberoskeytabmod_ajpmod_auth_kerbmod_headersPostgresREMOTE_USERTomcatvirtualhost<p><img alt="cmdbuild.png" title="cmdbuild.png, janv. 2016" src="http://philippe.poumaroux.free.fr/public/cmdbuild.png" /></p><p><a hreflang="en" title="Site officiel de CMDBuild" href="http://www.cmdbuild.org/en/">CMDBuild</a> est une CMDB libre très souple bâtie sur <a href="http://philippe.poumaroux.free.fr/index.php?tag/Java">Java</a>, <a href="http://philippe.poumaroux.free.fr/index.php?tag/Postgres">Postgres</a>, <a href="http://philippe.poumaroux.free.fr/index.php?tag/ExtJS">ExtJS</a>, <a href="http://philippe.poumaroux.free.fr/index.php?tag/JasperReport">JasperReport</a> et d'<a hreflang="en" title="Briques logicielles uttilisées par CMDBuild" href="http://www.cmdbuild.org/en/prodotti/en/progetto/caratteristiche/tecnologia">autres</a>.</p><p>CMDBuild permet d'identifier les utilisateurs en créant des comptes dans sa base de données ou sur une source extérieure: LDAP, CAS ou, et c'est le sujet ici, <strong>Kerberos</strong>. Comme la documentation ne traite que de la configuration de CMDBuild, voici le reste.</p> <p>CMDBuild est une application Java web servie par <a href="http://philippe.poumaroux.free.fr/index.php?tag/Tomcat">Tomcat</a>. Dire que CMDBuild gère <a href="http://philippe.poumaroux.free.fr/index.php?tag/Kerberos">Kerberos</a> est un peu exagéré: en fait, CMDBuild peut faire confiance à un système tiers du moment que celui-ci passe dans un en-tête de la requête un champ indiquant l'identifiant d'un utilisateur qu'il connait.</p><p>Le principe est donc le suivant:</p><ul><li>on crée un utilisateur dans l'administration de CMDBuild. Le mot de passe associé peut être quelconque, il ne sera normalement pas utilisé.</li><li>on crée un compte de service et une <a href="http://philippe.poumaroux.free.fr/index.php?tag/keytab">keytab</a> sur le serveur Kerberos (non traité ici).</li><li>on utilise un serveur Apache HTTP qui aura trois choses à faire:<ul><li>faire proxy pour relayer les requêtes vers Tomcat (via le module <strong><a href="http://philippe.poumaroux.free.fr/index.php?tag/mod_ajp">mod_proxy_ajp</a></strong>)</li><li>faire l'authentification sur un Kerberos via le module <strong><a href="http://philippe.poumaroux.free.fr/index.php?tag/mod_auth_kerb">mod_auth_kerb</a></strong></li><li>ajouter dans la requête un en-tête contenant l'identifiant de l'utilisateur authentifié via la variable système <a href="http://philippe.poumaroux.free.fr/index.php?tag/REMOTE_USER">REMOTE_USER</a> (via le module <strong><a href="http://philippe.poumaroux.free.fr/index.php?tag/mod_headers">mod_headers</a></strong>)</li></ul></li><li>on configure CMDBuild pour lui dire d'utiliser en premier ce mode d'authentification et lui indiquer le nom de l'en-tête lui permettant de faire de lien avec les utilisateurs qu'il connait.</li></ul><p>Note: mod_proxy_ajp et mod_headers sont en principe déjà installés avec httpd. Seul mod_auth_kerb devra être installé en plus. Cette installation devrait également modifier la configuration pour charger le module au démarrage.</p><p>Donc, sur le serveur, on installe le serveur httpd d'Apache puis on ajoute une configuration de <a href="http://philippe.poumaroux.free.fr/index.php?tag/virtualhost">virtualhost</a> dans /etc/httpd/conf.d:</p><pre><code class="apache">
<virtualhost>
ServerName cmdbuild.poum.fr
ServerAlias cmdbuild
ProxyRequests Off
ProxyPreserveHost on
ErrorLog /var/log/httpd/tomcat.error.log
CustomLog /var/log/httpd/tomcat.log combined
<location />
AuthName "Connexion windows"
AuthType Kerberos
Krb5Keytab /etc/cmdbuild.keytab
KrbAuthRealms POUM.FR
KrbMethodNegotiate On
#KrbMethodK5Passwd Off
KrbVerifyKDC off
KrbServiceName HTTP
KrbSaveCredentials on
Require valid-user
<strong>RequestHeader</strong> set <em>X-Forwarded-User</em> %{REMOTE_USER}<strong>s</strong>
</location>
<proxy>
Order deny,allow
Allow from all
</proxy>
ProxyPass / ajp://localhost:8009/
ProxyPassReverse / ajp://localhost:8009/
</virtualhost>
</code></pre><p>Notez :</p><ul><li>qu'on utilise la commande RequestHeader et pas <del>Header</del> car ce sont les requêtes entrantes qu'on veut modifier (sinon, çà marche pas, 3 heures de perdues !)</li><li>le 's' après %{REMOTE_USER}s pour indiquer qu'on utilise une variable système (par opposition à 'e' par exemple pour une variable d'environnement</li><li>que X-Forwarded-User est un nom arbitraire qu'il faudra indiquer dans la configuration de CMDBuild</li><li>que KrbMethodK5Passwd permet de demander un identifiant / mot de passe à un utilisateur hors Kerberos mais qui aurait un compte par ailleurs. Sinon, décommenter la ligne.</li></ul><p>Ensuite, on modifie le fichier webapp/cmdbuild/WEB-INF/conf/auth.conf pour:</p><ul><li>modifier les modes d'authentification: auth.methods=<strong>HeaderAuthenticator</strong>,DBAuthenticator (on garde un mode secours sur le système interne)</li><li>indiquer le nom du champ: header.attribute.name=X-Forwarded-User</li></ul><p>Voilà, il ne reste plus qu'à <strong><ins>ET DANS CET ORDRE</ins></strong>:</p><ul><li>(re)lancer le serveur tomcat : # service tomcat restart</li><li>(re)lancer le serveur httpd: # service httpd start</li><li>aller à l'URL de CMDBuild (sur le port 80, pas le 8080)</li></ul><p>Çà devrait fonctionner. Dans le cas contraire, voir les logs:</p><ul><li>de httpd: /var/log/httpd/tomcat.error.log</li><li>de tomcat: /var/lib/tomcat7/logs/catalina.out ou cmdbuild.log</li></ul><p>ou regarder les requêtes (via <a href="http://philippe.poumaroux.free.fr/index.php?tag/Firebug">Firebug</a> par exemple)</p>Attendre qu'une page ExtJs soit chargée avec Seleniumurn:md5:5005c47b2ffa130d31a81046099b607e2015-02-07T12:31:00+01:002015-02-07T13:01:58+01:00PoumTrucs & astucesBDDJavascriptpage objectssplashscreen<p><img src="http://philippe.poumaroux.free.fr/public/moonraker.png" alt="Moonraker" title="Moonraker, fév. 2015" /></p>
<p>Il existe pleins de frameworks de tests d'IHM en <a href="http://philippe.poumaroux.free.fr/index.php?tag/Javascript">Javascript</a>, et notamment pour faire du test fonctionnel ou <a href="http://philippe.poumaroux.free.fr/index.php?tag/BDD">BDD</a>. Outre <a href="https://github.com/cucumber/cucumber-js" hreflang="en" title="site github de cucumber-js">cucumber-js</a>, on trouve aussi l'excellent <a href="https://github.com/acuminous/yadda" hreflang="en" title="site github de Yadda">Yadda</a> qui a le bon goût d'avoir une localisation en français... Et plus encore, on trouve le formidable <a href="https://github.com/LateRoomsGroup/moonraker" hreflang="fr" title="Site github Moonraker">Moonraker</a> qui propose une solution complète clef en main: Yadda plus <a href="http://mochajs.org/" hreflang="en" title="Site de Mocha">mocha</a>, <a href="https://code.google.com/p/selenium/wiki/WebDriverJs" hreflang="en" title="Documentation de WebDriverJs">WebDriverJs</a> et <a href="http://chaijs.com/" hreflang="en" title="Site de Chai">Chai</a> et, cerise sur le pompon: des <a href="http://philippe.poumaroux.free.fr/index.php?tag/page%20objects">page objects</a> !</p>
<p>Mais avec <a href="http://www.sencha.com/products/extjs/" hreflang="en" title="Site ExtJs">ExtJs</a>, quand on met un <a href="http://philippe.poumaroux.free.fr/index.php?tag/splashscreen">splashscreen</a> pendant le chargement et la création de la page, on a un problème: comment cliquer sur un élément seulement quand le splashscreen a disparu ?</p> <p>En effet, si on attend simplement que la page soit chargée et qu'on tente, par exemple, de cliquer sur un élément alors que le splashscreen n'a pas complètement disparu, on obtient une exception ressemblant à ça:</p>
<pre> UnknownError: unknown error: Element is not clickable at point (1531, 14). Other element would receive the click: <div class="x-mask splashscreen" id="ext-gen1020" style="opacity: 0.403855921654898;"></div></pre>
<p>On voit ici clairement qu'on était pas loin, vu la valeur d'opacity.</p>
<p>Donc, il faut que ce splashscreen ait une opacité à 0 exactement. A ce moment, style prend également la propriété visibility avec la valeur hidden.</p>
<p>Il suffit de récupérer, via <strong>xpath</strong> - ce qui est le plus simple avec ExtJS - la div ayant les classes <code>x-mask-msg</code> et <code>splashscreen</code> et le style <code>visibility</code> avec la valeur <code>hidden</code>:</p>
<pre>//div[contains(concat(' ', @class, ' '), 'x-mask-msg splashscreen')][contains(concat(' ',@style,' '), 'visibility: hidden')]</pre>
<p>Alternativement, on peut aussi chercher:</p>
<pre>//div[contains(concat(' ', @class, ' '), 'x-mask-msg splashscreen')][contains(concat(' ',@style,' '), 'opacity: 0;')]</pre>
<p>mais dans ce cas, ne pas oublier le '<code>;</code>' après le '<code>0</code>', sinon, ça fonctionnera dès que <code>opacity</code> vaudra 0.9 et on retombera sur l'erreur vue précédemment.</p>
<p>Du coup, comme Selenium utilisé par WebDriverJs va attendre de trouver l'élément indiqué, il ne rendra la main que quand le loading mask aura totalement disparu (il reste présent, mais n'est plus visible).</p>
<p>Dans le page object de Moonraker, on ajoute donc une méthode comme celle-ci:</p>
<pre>chargee: { get: function() { return this.element("//div<a href="http://philippe.poumaroux.free.fr/index.php?post/2015/02/07/contains(concat(' ', @class, ' '), x-mask-msg splashscreen')" title="contains(concat(' ', @class, ' '), x-mask-msg splashscreen')">contains(concat(' ', @class, ' '), ...</a><a href="http://philippe.poumaroux.free.fr/index.php?post/2015/02/07/contains(concat(' ',@style,' '), 'visibility: hidden')" title="contains(concat(' ',@style,' '), 'visibility: hidden')">contains(concat(' ',@style,' '), 'v...</a>", 'xpath'); } }</pre>
<p>Et dans la bibliothèque d'étapes:</p>
<pre> var pageAccueil = require('../pages/accueil.js');
...
exports.define = function (steps) {
...
steps.given("la page d'accueil", function () {
pageAccueil.visit();
pageAccueil.chargee;
});
...</pre>Créer une machine virtuelle de Centos 6.4 64bitsurn:md5:82a97522d8c4c22fa8dd19573143a7c42014-09-21T17:31:00+02:002014-09-21T17:31:00+02:00PoumTrucs & astuces <p><img src="http://philippe.poumaroux.free.fr/public/centos.png" alt="Centos" title="Centos, sept. 2014" /></p>
<p>Lors de la création d'une machine virtuelle d'une Centos 6.4 64bits, avec virt-manager, je bloquais sur le message suivant:</p>
<p><img src="http://philippe.poumaroux.free.fr/public/.centos-notfound_m.jpg" alt="centos-notfound.png" title="centos-notfound.png, sept. 2014" /></p>
<p>Pourtant le test de l'iso téléchargée pour ce faire était ok. Les tentatives suivantes n'ont pas eu plus de succès:</p>
<ul>
<li>ne pas tester l'image avant (car un message disait que le CD était éjecté à l'issue)</li>
<li>mettre l'iso dans un stockage créé pour l'occasion</li>
<li>utiliser l'iso minimal plutôt que la net-install</li>
<li>utiliser la Centos 6.5</li>
<li>tester avec VirtualBox</li>
</ul>
<p>Après un petit tour sur le net, voilà un contournement qui fonctionne:</p>
<ul>
<li>écouter <a href="http://youtu.be/aLR_bSzPTiY" hreflang="en" title="I'll take care of you">I'll take care of you</a> chanté par Beth Hart avec Joe Bonamassa à la guitare (facultatif mais fortement recommandé, merci Thierry)</li>
<li>choisir "URL media install" et entrer <a href="http://vault.centos.org/6.4/os/x86_64">http://vault.centos.org/6.4/os/x86_64</a> comme source.</li>
</ul>