<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Linux User Group of Mauritius &#187; Tip</title>
	<atom:link href="http://lugm.org/tag/tip/feed/" rel="self" type="application/rss+xml" />
	<link>http://lugm.org</link>
	<description>Promoting open source software in our beautiful island</description>
	<lastBuildDate>Wed, 25 Jan 2012 19:44:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.4</generator>
		<item>
		<title>Port Serie Saison I</title>
		<link>http://lugm.org/2010/04/24/port-serie-saison-i/</link>
		<comments>http://lugm.org/2010/04/24/port-serie-saison-i/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 14:06:49 +0000</pubDate>
		<dc:creator>Dominique Derrier</dc:creator>
				<category><![CDATA[Article]]></category>
		<category><![CDATA[Tip]]></category>
		<category><![CDATA[console]]></category>
		<category><![CDATA[grub]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[serial]]></category>
		<category><![CDATA[ttyS0]]></category>

		<guid isPermaLink="false">http://lugm.org/?p=364</guid>
		<description><![CDATA[Et ben, voila j'ai perdu un écran sur la machine qui me sert de routeur. Sans clavier ni écran le diagnostique n'est pas facile en cas d'erreur. Mais heureusement le mode console est là. Je ne sais pas depuis combien de temps cela existe dans le kernel, mais je pense que cela ne doit pas [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignleft size-thumbnail wp-image-375" title="db9_pinouts" src="http://lugm.org/wp-content/uploads/2010/04/db9_pinouts-150x150.gif" alt="db9_pinouts" width="150" height="150" />Et ben, voila j'ai perdu un écran sur la machine qui me sert de routeur. Sans clavier ni écran le diagnostique n'est pas facile en cas d'erreur. Mais heureusement le mode console est là. Je ne sais pas depuis combien de temps cela existe dans le kernel, mais je pense que cela ne doit pas être loin des origines.</p>
<p><span id="more-364"></span></p>
<h2>Embarcation sur le port série:</h2>
<p>L'astuce est de déporter les sorties/entrées standards sur le port série de votre PC... Il existe sur toutes les bonnes vieilles machines et sur des équipements évolués des ports serial qui permettent d'établir une communication avec des boitiers. Il ne faut pas s'attendre à des miracles, mais cela fonctionne.</p>
<p>Le port série est très répandu sur les équipements réseaux, switch, routeur, PABX, ... et encore sur nos bons vieux PC. J'ai donc utilisé le port série avec un cable (null modem) pour piloter mon PCrouteur via le port série.</p>
<p>Tous les exemples sont sur ttyS0 ... car je n'ai plus de carte mère avec deux ports serials.</p>
<h2>Ce qu'il faut:</h2>
<ul>
<li>Des ports séries entre vos PC.</li>
<li>Un cable null modem</li>
<li>screen sur le PC client</li>
<li>agetty / getty (qui permet d'initier des communications en mode console)</li>
</ul>
<p>Attention, il faut modifier des fichiers systèmes ... faire une erreur dans ces fichiers peut générer des complications non négligeables.</p>
<h2>Grub - Kernel - Bash</h2>
<p>Pour grub, c'est facile il suffit d'ajouter au début du fichier.</p>
<pre>serial --unit=0 --speed=9600
terminal serial</pre>
<p>Pour le kernel, il suffit d'ajouter l'argument console dans la ligne grub :</p>
<pre>kernel /boot/vmlinuz root=/dev/sda2 quiet console=ttyS0,9600n8</pre>
<p>Et il vous faut pour avoir un shell interactif modifier le fichier <strong>/etc/initab</strong> sur la machine sans écran.</p>
<pre>s0:12345:respawn:/sbin/agetty -L 9600 ttyS0 vt100</pre>
<p>il faut vérifier que vous avez bien ttySO dans le fichier <strong>/etc/securetty</strong> (sinon vous ne pourrez pas vous logguer via le port série)</p>
<p>Et hop ... vous êtes prêts pour l'aventure.</p>
<p>Lancer sur le poste client <strong>screen /dev/ttyS0</strong>, démarrer le PC serveur... et admirer GRUB/BOOT/jusqu'à la demande de password.</p>
<p><strong>Ps:</strong> cela fonctionne avec minicom, mais il y a trop d'options qui peuvent vite vous prendre la tête.</p>
<h2>Prochain épisode du port Série:</h2>
<p>Pas si sûr : Le port serial (et le port parallèle) ne sert plus à grand chose depuis l'arrivée de l'usb. Il faut des adaptateurs pour utiliser des ancestrales techniques... Les applications via IP sont de plus en plus répandues, l'astuce du port serie n'aura peut-être pas de nouvelle saison.</p>
<p>++</p>
<p>Dominique DERRIER</p>
]]></content:encoded>
			<wfw:commentRss>http://lugm.org/2010/04/24/port-serie-saison-i/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Grub 2</title>
		<link>http://lugm.org/2009/08/09/grub-2/</link>
		<comments>http://lugm.org/2009/08/09/grub-2/#comments</comments>
		<pubDate>Sun, 09 Aug 2009 06:01:08 +0000</pubDate>
		<dc:creator>Dominique Derrier</dc:creator>
				<category><![CDATA[Article]]></category>
		<category><![CDATA[Tip]]></category>
		<category><![CDATA[grub]]></category>

		<guid isPermaLink="false">http://lugm.org/?p=228</guid>
		<description><![CDATA[Dans la série je ne sais pas quoi faire le week-end, j'ai testé pour vous Grub2. Pour ceux qui ne savent pas, c'est le petit soft qui permet de démarrer votre machine, le mystérieux boot loader qui n'a rien d'effrayant. La version 2 permet d'avoir quelques fonctions gadgets histoire d'épater vos amis. C'est quoi GRand [...]]]></description>
			<content:encoded><![CDATA[<p>Dans la série je ne sais pas quoi faire le week-end, j'ai testé pour vous Grub2. Pour ceux qui ne savent pas, c'est le petit soft qui permet de démarrer votre machine, le mystérieux boot loader qui n'a rien d'effrayant. La version 2 permet d'avoir quelques fonctions gadgets histoire d'épater vos amis.</p>
<p><span id="more-228"></span></p>
<h1>C'est quoi</h1>
<p>GRand Unified Bootloader, c'est le boot loader: un petit programme qui se loge dans le premier secteur du disque dur est qui permet de choisir l'OS sur lequel vous voulez démarrer. Dans les temps anciens, lilo permettait de faire cela: mais les temps changent et les besoins en souplesse ont pris le dessus.</p>
<p>La première version permettait déjà pas mal de choses:</p>
<ul>
<li>rechercher un fichier de boot (ext2/ext3/reiserfs)</li>
<li>passer en mode graphique</li>
<li>mettre des paramètres au kernel</li>
<li>démarrer différents OS</li>
</ul>
<h1>La version 2</h1>
<p>Dans la version 2 l'équipe de Dev a ajouté la notion de module pour permettre de charger les différentes fonctionnalités. Cela permet de charger divers systèmes de fichiers différents de votre ext4.<br />
Cela permet aussi de charger des drivers VESEA pour afficher des images 65000 couleurs, des fonts sympas ... L'équipe a aussi pensé à une notion de script avancée (loop, tests, variables, ...)</p>
<p>Tous les plus sont aussi des moins ... en toute logique la segmentation est bonne pour pouvoir charger différents modules. Mais cela complique l'affaire car il faut connaitre les éléments nécessaires pour utiliser les diverses fonctionnalités. Heureusement que les "packageurs" maîtrisent les fichiers de configuration.</p>
<h1>Le test</h1>
<p>Une bonne vieille clef usb fera l'affaire.</p>
<p>Test de boot et hop, éclatez vous sans abimer votre machine.</p>
<p>Compilez les sources dans le prefix que vous souhaitez.<br />
<code><br />
mkfs.ext2 /dev/sdf1<br />
./grub-install --root-directory=/media/disk/ '(hd1)'</code></p>
<p><code> </code></p>
<p>Il faut ensuite faire un fichier de configuration qui va bien pour booter.</p>
<p><code><br />
set default=0<br />
set timeout=20<br />
set root=(hd0,1)</code></p>
<p><code>if font /boot/ascii.pff; then<br />
set gfxmode=640x480<br />
insmod gfxterm<br />
insmod vbe<br />
if terminal_output gfxterm ; then true ; else<br />
terminal gfxterm<br />
fi<br />
fi</code></p>
<p><code>insmod tga<br />
if background_image /boot/Lake_mapourika_NZ.tga; then<br />
true<br />
else<br />
set menu_color_normal=cyan/blue<br />
set menu_color_highlight=white/blue<br />
fi</code></p>
<p><code>if terminal_output gfxterm ; then true ; else<br />
terminal gfxterm<br />
fi</code></p>
<p><code>menuentry "Gentoo GNU/Linux" {<br />
set root=(hd1,1)<br />
linux /boot/vmlinuz root=/dev/sda2 quiet<br />
}</p>
<p></code></p>
<p><code>menuentry "other" {<br />
set root=(hd1,1)<br />
chainloader +1<br />
}<br />
</code></p>
<p>Si vous voulez utiliser le mode graphique il faut avoir un fichier de font pour que vous puissiez voir le texte (ascii.pff)</p>
<p>Un reboot sur la clef usb et le miracle devrait fonctionner...<br />
Si cela vous plait ... il suffit d'installer grub sur hd0</p>
<p>/!\ Attention, vous pouvez tout casser, et la seule solution sera le CD de rescue pour booter votre système</p>
<p>Dominique DERRIER</p>
]]></content:encoded>
			<wfw:commentRss>http://lugm.org/2009/08/09/grub-2/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>/proc le coffre aux trésors</title>
		<link>http://lugm.org/2009/06/25/proc-le-coffre-aux-tresors/</link>
		<comments>http://lugm.org/2009/06/25/proc-le-coffre-aux-tresors/#comments</comments>
		<pubDate>Thu, 25 Jun 2009 13:40:24 +0000</pubDate>
		<dc:creator>Dominique Derrier</dc:creator>
				<category><![CDATA[Tip]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[OS]]></category>
		<category><![CDATA[proc]]></category>
		<category><![CDATA[systeme]]></category>

		<guid isPermaLink="false">http://lugm.org/?p=148</guid>
		<description><![CDATA[Autour du kernel, nous utilisons tous une foule de programmes pour récupérer les informations et utiliser notre système du mieux possible. Sous linux, toutes ces informations sont accessibles via /proc. Un peu de curiosité vous montrera les bijoux techniques qu'il est possible de récupérer. Processus /proc permet de connaitre tous les processus qui tournent sur [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://lugm.org/wp-content/uploads/2009/06/coffre_tresor.jpg" alt="coffre_tresor" title="coffre_tresor" width="64" height="57" class="alignleft size-full wp-image-186" />Autour du kernel, nous utilisons tous une foule de programmes pour récupérer les informations et utiliser notre système du mieux possible. Sous linux, toutes ces informations sont accessibles via /proc. Un peu de curiosité vous montrera les bijoux techniques qu'il est possible de récupérer.<br />
<span id="more-148"></span></p>
<h2>Processus</h2>
<p>/proc permet de connaitre tous les processus qui tournent sur la machine. Chaque chiffre correspond au PID de processus, à l'intérieur se trouvent toutes les informations concernant le programme.</p>
<ul>
<li><strong>exe</strong>: le nom de l'executable</li>
<li><strong>cmdline</strong>: les paramètres de lancement</li>
<li><strong>root</strong>: le chroot du programme</li>
<li><strong>environ</strong>: les variables d'environnement valables pour le programme.</li>
<li><strong>fd/</strong> la liste des fichiers ouverts.</li>
<li><strong>maps</strong>: les liens avec les bibliothèques</li>
<li><strong>status:</strong> informations Ram, User,...</li>
</ul>
<p>Si vous supprimez des fichiers en cours d'utilisation, il est possible de copier le fichier qui est dans /proc/$PID/fd/[numero].</p>
<p><code>cp /proc/1/exe  /tmp/init.recup</code></p>
<p>/!\ certains root-kit modifient la libproc et peuvent se masquer. Pour faire cela avec /proc il faut recompiler et rebooter le kernel: Ce qui est moins évident à faire.</p>
<h2>Informations Kernel</h2>
<p>Il n'y a pas que les processus mais tout ce qui se passe en "live" sur votre machine.</p>
<ul>
<li>la ram: <a href="file:///proc/meminfo">/proc/meminfo</a> (used,free, swap, commited...)</li>
<li>le cpu: <a href="file:///proc/cpuinfo">/proc/cpuinfo</a> (capacité de traitement, nombre,...)</li>
<li>le réseau: <a href="file:///proc/dev/net">/proc/dev/net </a></li>
<li>le kernel: <a href="file:///proc/kcore">/proc/kcore</a> (gdb /boot/vmlinuz /proc/kcore)</li>
<li>l'activité:  <a href="file:///proc/stat">/proc/stat</a></li>
<li>les disques: <a href="file:///proc/diskstats">/proc/diskstats</a></li>
</ul>
<p>La documentation se trouve dans les sources du kernel et si le coeur vous en dit vous pouvez aller faire un tour dans les fichiers.c pour créer ou adapter à vos besoins.</p>
<h2>Ecriture</h2>
<p>En écrivant dans certains fichiers, il est possible de régler les paramètres du kernel plus ou moins complexes... Pour ma part j'utilise davantage ceux qui concernent le réseau (nf_conntrack_max, ip_forward ...). Mais il y a shmall (pour la mémoire partagée), les sémaphores, swappiness ... group process ...</p>
<p>Dominique DERRIER</p>
<h3>Ref</h3>
<p><a href="file:///usr/src/linux/Documentation/filesystems/proc.txt">file:///usr/src/linux/Documentation/filesystems/proc.txt</a><br />
<a href="file:///usr/src/linux/Documentation/cgroups/cgroups.txt">file:///usr/src/linux/Documentation/cgroups/cgroups.txt</a></p>
]]></content:encoded>
			<wfw:commentRss>http://lugm.org/2009/06/25/proc-le-coffre-aux-tresors/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

