tag:linuxfr.org,2005:/tags/mauvaise/publicLinuxFr.org : les contenus étiquetés avec « mauvaise »2015-02-20T17:16:27+01:00/favicon.pngtag:linuxfr.org,2005:Diary/356092015-02-12T15:41:59+01:002015-02-12T15:41:59+01:00systemd: je me lanceLicence CC By‑SA http://creativecommons.org/licenses/by-sa/4.0/deed.fr<h2 class="sommaire">Sommaire</h2>
<ul class="toc">
<li><a href="#etcinittab">/etc/inittab</a></li>
<li><a href="#chkconfig">chkconfig</a></li>
<li><a href="#mount">mount</a></li>
<li><a href="#config-r%C3%A9seau">config réseau</a></li>
<li><a href="#firewall">firewall</a></li>
<li><a href="#fstab">fstab</a></li>
<li><a href="#conclusion">Conclusion</a></li>
</ul><p>Salut Journal,</p>
<p>Aujourd'hui, je me suis forcé à faire un peu de veille technologique afin de me préparer aux prochaines mises à jour de mes serveurs.</p>
<p>Je te le dis tout de suite: j'ai un gros a priori sur systemd. Je ne suis pas un dinosaure, mais en 20 ans j'ai pris mes petites habitudes, et à vrai dire l'init SystemV est une des choses qui m'a séduit à mes débuts (quoi qu'on en dise, personnellement, j'avais trouvé ce système simple et élégant).<br>
En plus de ca, tout ce que j'ai pu lire sur systemd ne me rassurait pas.</p>
<p>Alors c'est parti, je me lance, une installation de RHEL7.<br>
Bon, des choses ont changé, mais je recherche surtout ce qui est lié à systemd.</p>
<h2 id="etcinittab">/etc/inittab</h2>
<p>Alors ca c'est sympa, l'inittab est là. Certes il ne sert plus a rien, mais un commentaire indique comment gérer le Ctrl-Alt-Del et le runlevel par défaut.</p>
<p>Pour le runlevel, c'est simple, il suffit de faire un symlink de <code>/lib/systemd/system/multi-user.target</code> vers <code>/etc/systemd/system/default.target</code>. Bon, ok. Ma mauvaise foi me pousserait bien à dire que les paths sont un peu chiants à taper (la complétion n'aide pas trop), mais honnêtement, je trouve ca tout aussi bien comme technique.</p>
<p>Le Ctrl-Alt-Del est géré par <code>/etc/systemd/system/ctrl-alt-del.target</code>. Souci, il n'est pas présent. C'est pas grave, je vais voir dans <code>/lib/systemd/system/</code>, il est bien là, je vois qu'il est prédéfini pour un reboot. En principe, je désactive cette combinaison de touche dangereuse en faisant un echo plutôt qu'un reboot. Je me dis que vu que le lien n'est pas fait dans <code>/etc/systemd/system/</code>, le reboot est bien désactivé. Je tente… bon ben ca reboot. Râté.</p>
<p>En 2 secondes, je trouve la solution sur le net: <code>ln -s /dev/null /etc/systemd/system/ctrl-alt-del.target</code> … mouais.</p>
<h2 id="chkconfig">chkconfig</h2>
<p>Pour ceux qui ne sont pas familiers avec RHEL, <code>chkconfig --list</code> permet de lister les services lancés (ou non) au boot. Je tente et la pareil, on m'indique que maintenant il faut voir la commande <code>systemctl list-unit-files</code>. Ca fonctionne, j'en ai 325… soit 5 fois plus d'entrées que je n'avais sur une config équivalente de RHEL6.<br>
Là encore, je pourrais être de mauvaise foi, mais cette commande est (je pense) volontairement verbeuse. <code>systemctl list-units</code> est déjà plus raisonnable.</p>
<p>Note pour plus tard: regarder tout ca.</p>
<h2 id="mount">mount</h2>
<p>Je ne sais plus trop pourquoi (par réflexe sûrement), je regarde ce qui est monté. Le résultat fait 28 lignes, 11 pour des cgroups. Bon, là j'avoue que je ne connais pas trop ces histoires de cgroups, et puis systemd n'est peut-être pas le seul fautif. N'empêche que ca commence à me faire mal aux yeux.</p>
<p>Note pour plus tard: regarder tout ca.</p>
<h2 id="config-réseau">config réseau</h2>
<p>Là encore j'ai mes petites habitudes: je désactive NetworkManager:</p>
<blockquote>
<p>systemctl stop NetworkManager<br>
systemctl disable NetworkManager</p>
</blockquote>
<p>Je fais mes modifs dans <code>/etc/sysconfig/network-scripts/</code> et je redémarre le "old-fashioned" service… oui mais lequel? En faisant mon chkconfig tout à l'heure, j'ai vu qu'il y avait encore le service "network" mais j'ai vu un service de ce nom dans <code>systemctl list-unit-files</code>… Je regarde dans <code>/etc/systemd/system/</code>, pas de symlink pour network, du coup je lance façon SysV: <code>/etc/init.d/network start</code>. Bizarre, j'ai le message "Starting network (via systemctl)" et effectivement cette commande fait la même chose que <code>systemctl start network</code>. ah… ma théorie comme quoi les services effectivement démarrés sont dans <code>/etc/systemd/system/</code> s'écroule pour de bon.</p>
<p>Les Unit files dans <code>/lib/systemd/system/</code> ne m'apprennent pas plus de choses (network et network-online contiennent seulement une description et un lien vers la doc, j'ai lu le man une fois, j'ai pas mieux compris). Systemd démarre mon réseau, mais je ne sais pas comment.</p>
<p>Note pour plus tard: prendre un doliprane, relire le man.</p>
<h2 id="firewall">firewall</h2>
<p>Un peu par réflexe, je fais un <code>iptables -L</code>. euh, wow… firewalld doit faire partie de l'install par défaut. Résultat: je n'ai encore rien configuré que j'ai déjà 24 chaînes… Les gars, franchement… c'est bien gentil de me mâcher le travail, mais si je pouvais organiser ma machine comme je veux…</p>
<p>Note pour plus tard: <s>regarder tout ca</s> penser à désactiver firewalld.</p>
<h2 id="fstab">fstab</h2>
<p>J'ai tenté un "bug" connu, à savoir: que se passe-t-il si une entrée dans fstab ne peut pas être montée lors du boot?</p>
<p>Alors c'est parti, je m'invente un <code>sdb1</code> à monter dans <code>/mnt</code> avec les options par défaut.</p>
<p>Effectivement, au boot, j'ai un timeout puis le choix de retenter ou d'entrer dans un shell de secours. Sympa, on m'indique la commande <code>journalctl -xb</code> pour m'aider à trouver l'erreur. Je regarde dedans mais il faut dire qu'il ne faut pas être pressé de booter: l'erreur apparaît bien, mais un peu plus de 400 lignes avant la fin du-dit log.<br>
Le côté sympa s'arrête donc là: je vois l'erreur, mais aucune idée de ce qu'il faut faire pour passer outre.</p>
<p>Là encore, internet est notre ami: la solution est <code>systemctl mask mnt.mount</code>, ce qui bazarde le lien symbolique correspondant. Ca veut dire qu'au prochain reboot, si je ne pense pas à faire un "unmask", alors le disque ne sera pas monté.</p>
<p>Ca veut aussi dire que si une chose de ce genre m'arrive, j'ai intérêt à avoir une version papier de la doc de systemd, parce que sans accès à internet, je risque de mettre du temps avant de démarrer mon pc…</p>
<p>Note pour plus tard: acheter un deuxième PC et penser à ne jamais les rebooter en même temps.</p>
<h2 id="conclusion">Conclusion</h2>
<p>Comme je le disais, j'ai un a priori, donc je ne suis pas objectif. Ceci dit, quand je me suis mis à Unix, je n'ai jamais éprouvé le besoin de lire la doc de SysV. Ce côté assez "simple" et "transparent" de la phase d'init a disparu avec systemd. (C'est d'autant plus dommage que systemd n'a pas seulement un impact sur la phase de boot).</p>
<p>Après, il faut dire que les mainteneurs des différentes distributions ont bien travaillé. Je m'attendais franchement à tomber sur des "No such file or directory" quand j'allais lire /etc/inittab. Au lieu de ca, j'ai qqs lignes qui m'expliquent la nouvelle procédure.</p>
<p>Il reste plein de choses à voir, là j'ai seulement joué avec durant 30 minutes. Mais finalement, je n'ai pas fait de gros blocage et il y a des solutions à tout.</p>
<p>Malgré tout, avant le passage en prod, je crois que le passage obligé c'est RTFM (et ca c'est la vraie conclusion!)</p>
<p>Allez… dans qqs heures c'est vendredi!</p><div><a href="https://linuxfr.org/users/apkwa/journaux/systemd-je-me-lance.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/104779/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/apkwa/journaux/systemd-je-me-lance#comments">ouvrir dans le navigateur</a>
</p>
apkwahttps://linuxfr.org/nodes/104779/comments.atomtag:linuxfr.org,2005:Diary/290942009-11-30T15:08:46+01:002009-11-30T15:08:46+01:00Lisaac: sorti de la 0.39beta
Lisaac est le seul langage à prototype compilé. Il propose de bonne performance, tout en ayant des concepts de haut niveau. Il permet par exemple l'héritage multiple et dynamique. Il est suffisamment bas niveau pour faire un OS (isaacOS). C'est le grand écart entre smalltalk (et self ) et le C.<br />
<br />
Après une léthargie apparente, le projet vient de sortir une version 0.39beta et un nouveau site web. Le but est de trouver les derniers bugs pour sortir une version stable 0.39 avant de partir dans de nouvelles fonctionnalités.<br />
<br />
"On" essaye d'améliorer le rythme de sortie pour éviter d'avoir des troues de plus de 6 mois.<br />
<br />
Lisaac est donc maintenant compatible 16, 32, 64 bits et non plus seulement 32 bits. La sortie est du C89 ce qui permet d'utiliser d'autre compilateur que gcc (pour l'embarquer par exemple).<br />
<br />
Par rapport à la précédente version, on peut signaler un meilleur système de build : les .lip. Et encore une amélioration des performances avec de la gestion d'aliasing de structures. Le système de type est encore renforcé avec la couverture des derniers troues de typage comme les type block (en lisaac, il y a des slots qui sont indifféremment une donnée ou une méthode).<br />
<br />
La syntaxe ne devrait plus être modifié, seul quelques ajout sont prévus pour le future.<br />
<br />
Pour anticiper les remarques sur le langage, il faut savoir que sa syntaxe "étrange" est dû à la grande simplicité de sa grammaire. Celle-ci tient sur 30 lignes. Il est ainsi impossible d'avoir des "surprises", tout s'écrit toujours de la même façon.<br />
<br />
Je signal la mise en ligne de présentation vidéo en français sur le sujet : <a href="http://www.lisaac.org/documentation/about">http://www.lisaac.org/documentation/about</a><br />
<br />
<a href="http://www.lisaac.org/">http://www.lisaac.org/</a><br />
<br />
Bon visionnage/lecture/test !<div><a href="https://linuxfr.org/users/niconico/journaux/lisaac-sorti-de-la-039beta.epub">Télécharger ce contenu au format EPUB</a></div> <p>
<strong>Commentaires :</strong>
<a href="//linuxfr.org/nodes/55397/comments.atom">voir le flux Atom</a>
<a href="https://linuxfr.org/users/niconico/journaux/lisaac-sorti-de-la-039beta#comments">ouvrir dans le navigateur</a>
</p>
Nicolas Boulayhttps://linuxfr.org/nodes/55397/comments.atom