<?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>Blog de Baptiste Wicht &#187; Linux</title>
	<atom:link href="https://blog.developpez.com/wichtounet/pcategory/informatique-generale/linux/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.developpez.com/wichtounet</link>
	<description></description>
	<lastBuildDate>Fri, 25 Nov 2011 10:34:42 +0000</lastBuildDate>
	<language>fr-FR</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.1.42</generator>
	<item>
		<title>Encoder des fichiers Windows en UTF-8</title>
		<link>https://blog.developpez.com/wichtounet/p8218/informatique-generale/microsoft/encoder_des_fichiers_windows_en_utf_8</link>
		<comments>https://blog.developpez.com/wichtounet/p8218/informatique-generale/microsoft/encoder_des_fichiers_windows_en_utf_8#comments</comments>
		<pubDate>Wed, 21 Oct 2009 22:30:24 +0000</pubDate>
		<dc:creator><![CDATA[Baptiste Wicht]]></dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Comme beaucoup avant moi, j&#8217;ai rencontré des problèmes d&#8217;encodage de fichier suite à l&#8217;utilisation conjointe de Windows et Linux. Avant cela, je ne faisais vraiment pas attention à l&#8217;encodage et mon IDE encodait tous mes fichiers en windows-1252. Une fois mon serveur Linux monté, je me retrouvais donc avec des fichiers illisibles. Après quelques recherches, j&#8217;ai trouvé (on m&#8217;y a aidé ) un utilitaire Windows en ligne de commande permettant de convertir un fichier d&#8217;un [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Comme beaucoup avant moi, j&rsquo;ai rencontré des problèmes d&rsquo;encodage de fichier suite à l&rsquo;utilisation conjointe de Windows et Linux. </p>
<p>Avant cela, je ne faisais vraiment pas attention à l&rsquo;encodage et mon IDE encodait tous mes fichiers en windows-1252. </p>
<p>Une fois mon serveur Linux monté, je me retrouvais donc avec des fichiers illisibles. </p>
<p><span id="more-39"></span></p>
<p>Après quelques recherches, j&rsquo;ai trouvé (on m&rsquo;y a aidé <img src="https://blog.developpez.com/wichtounet/wp-includes/images/smilies/icon_wink.gif" alt=";)" class="wp-smiley" /> ) un utilitaire Windows en ligne de commande permettant de convertir un fichier d&rsquo;un format à un autre, <a href="http://gnuwin32.sourceforge.net/packages/libiconv.htm">iconv</a>. Qui s&rsquo;utilise de manière assez simple : </p>
<p>iconv -f windows-1252 -t UTF-8 file_src</p>
<p>Néanmoins, on est obligé de passer par un fichier temporaire car cette commande retourne sur la sortie standard le contenu encodé. Il faut donc détourner la sortie standard vers un nouveau fichier puis écraser l&rsquo;ancien fichier avec le nouveau. </p>
<p>Mais c&rsquo;est très facile à généraliser et à utiliser de manière récursive sur un dossier. Personellement, je l&rsquo;ai réalisé en Java, mais c&rsquo;est facilement faisable dans n&rsquo;importe quel langage de programmation. </p>
<p>Voici ce que j&rsquo;ai développé en Java pour réaliser ce traitement :</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:300px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">import java.io.File; <br />
import java.io.IOException; <br />
&nbsp;<br />
public class Converter { <br />
&nbsp; &nbsp; private static String src = &quot;WINDOWS-1252&quot;; <br />
&nbsp; &nbsp; private static String dest = &quot;UTF-8&quot;; <br />
&nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; public static void main(String[] args) { <br />
&nbsp; &nbsp; &nbsp; &nbsp; if(args.length &gt; 2){ <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; src = args[2]; <br />
&nbsp; &nbsp; &nbsp; &nbsp; } &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; if(args.length &gt; 1){ <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; dest = args[1]; <br />
&nbsp; &nbsp; &nbsp; &nbsp; } &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; if(args.length &gt; 0){ <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; String folder = args[0]; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; convertFolder(new File(folder)); <br />
&nbsp; &nbsp; &nbsp; &nbsp; } else { <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println(&quot;Not enough arguments !&quot;); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.out.println(&quot;Usage : Converter folder_path [encoding_dest] [encoding_src]&quot;); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; System.exit(-1); <br />
&nbsp; &nbsp; &nbsp; &nbsp; } <br />
&nbsp; &nbsp; } <br />
&nbsp;<br />
&nbsp; &nbsp; private static void convertFolder(File folder) { <br />
&nbsp; &nbsp; &nbsp; &nbsp; for(File f : folder.listFiles()){ <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(f.isFile()){ <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; convertFile(f); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; } else if(f.isDirectory()){ <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; convertFolder(f); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; } <br />
&nbsp; &nbsp; &nbsp; &nbsp; } <br />
&nbsp; &nbsp; } <br />
&nbsp;<br />
&nbsp; &nbsp; private static void convertFile(File f) &nbsp;{ <br />
&nbsp; &nbsp; &nbsp; &nbsp; try { <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; File converted = new File(f.getAbsolutePath() + &quot;.encoded&quot;); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; String cmd = &quot;iconv -f &quot; + src + &quot; -t &quot; + dest + &quot; \&quot;&quot; + f.getAbsolutePath() + &quot;\&quot; &gt; \&quot;&quot; + converted.getAbsolutePath() + &quot;\&quot;&quot;; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; Runtime runtime = Runtime.getRuntime(); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; String[] args = { &quot;cmd.exe&quot;, &quot;/C&quot;, cmd}; <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; runtime.exec(args).waitFor(); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; if(converted.exists()){ <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; f.delete(); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; converted.renameTo(f); <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; } <br />
&nbsp; &nbsp; &nbsp; &nbsp; } catch (IOException e) { <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; e.printStackTrace(); <br />
&nbsp; &nbsp; &nbsp; &nbsp; } catch (InterruptedException e) { <br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; e.printStackTrace(); <br />
&nbsp; &nbsp; &nbsp; &nbsp; } <br />
&nbsp; &nbsp; } <br />
}</div></div>
<p>Le code n&rsquo;a rien d&rsquo;optimal du tout, mais il est fonctionnel pour ce besoin, mais la gestion des erreurs est déplorable mais suffisante pour un programme a utiliser peu de fois <img src="https://blog.developpez.com/wichtounet/wp-includes/images/smilies/icon_wink.gif" alt=";)" class="wp-smiley" /></p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Installer Hudson sur Debian</title>
		<link>https://blog.developpez.com/wichtounet/p8208/informatique-generale/linux/installer_hudson_sur_debian</link>
		<comments>https://blog.developpez.com/wichtounet/p8208/informatique-generale/linux/installer_hudson_sur_debian#comments</comments>
		<pubDate>Mon, 19 Oct 2009 14:31:19 +0000</pubDate>
		<dc:creator><![CDATA[Baptiste Wicht]]></dc:creator>
				<category><![CDATA[Intégration continue]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mon serveur perso]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Je suis en train de m&#8217;installer un serveur perso à la maison sur une machine sous Debian Stable. Je viens d&#8217;installer Hudson sous Tomcat sur cette machine et j&#8217;ai rencontré bien quelques problèmes pour effectuer cette installation, alors je vais partager ma solution. 1. Installer Java La première chose à faire est bien sûr d&#8217;installer Java. Déja là, on tombe sur le premier problème, étant donné qu&#8217;il ne faut pas installer OpenJDK, mais le paquet [&#8230;]]]></description>
				<content:encoded><![CDATA[<p>Je suis en train de m&rsquo;installer un serveur perso à la maison sur une machine sous Debian Stable. </p>
<p>Je viens d&rsquo;installer Hudson sous Tomcat sur cette machine et j&rsquo;ai rencontré bien quelques problèmes pour effectuer cette installation, alors je vais partager ma solution. </p>
<p><span id="more-141"></span></p>
<p><strong>1. Installer Java</strong></p>
<p>La première chose à faire est bien sûr d&rsquo;installer Java. Déja là, on tombe sur le premier problème, étant donné qu&rsquo;il ne faut pas installer OpenJDK, mais le paquet de Sun. </p>
<p>Pour cela, il faut commencer par ajouter une nouvelle source dans le fichier /etc/apt/sources.list : </p>
<blockquote><p>deb http://ftp.de.debian.org/debian/ etch main non-free contrib</p></blockquote>
<p>Ensuite de quoi, on peut installer Java : </p>
<p><code class="codecolorer text default"><span class="text">aptitude install sun-java6-jre sun-java6-jdk</span></code></p>
<p><strong>Note</strong> : Pour ceux qui comme moi sont débutants sous Linux, pour valider la fenêtre de la licence de Java, il faut utiliser <Tab> puis <Enter> pour valider. </p>
<p>Pour vérifier que Java est correctement installé, il faut utiliser la commande : </p>
<p><code class="codecolorer text default"><span class="text">java -version</span></code></p>
<p>Si cette commande ne vous donne pas la bonne version, essayez de configurer la bonne version de java et javac avec les commandes suivantes :</p>
<div class="codecolorer-container text default" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">update-alternatives -–config java <br />
update-alternatives -–config javac</div></div>
<p><strong>2. Installation de Tomcat</strong></p>
<p>On va maintenant passer à l&rsquo;installation de Tomcat. </p>
<p>Pour cela, on va utiliser la commande suivante : </p>
<p><code class="codecolorer text default"><span class="text">apt-get install tomcat5.5 tomcat5.5-admin</span></code></p>
<p>Il faut ensuite désactiver le security manager de Tomcat dans le fichier /etc/default/tomcat5.5 : </p>
<blockquote><p>TOMCAT5_SECURITY=no</p></blockquote>
<p><strong>3. Installer Hudson</strong></p>
<p>On va commencer par créer un dossier pour Hudson, par exemple dans /home</p>
<p><code class="codecolorer text default"><span class="text">mkdir /home/hudson</span></code></p>
<p>Sans oublier de donner les droits à tomcat pour écrire dans ce répertoire : </p>
<p><code class="codecolorer text default"><span class="text">chown tomcat55:nogroup /home/hudson</span></code></p>
<p>Et ajouter la variable d&rsquo;environnement HUDSON_HOME pointant vers ce répertoire. </p>
<p><code class="codecolorer text default"><span class="text">export HUDSON_HOME=/home/hudson</span></code></p>
<p><strong>Note : </strong> Pour ne pas retaper cette commande à chaque fois, il faut également la mettre soit dans .bashrc soit dans /etc/init.d/tomcat5.5</p>
<p>Maintenant on peut déployer Hudson sur Tomcat, soit en utilisant l&rsquo;interface graphique, soit en ajoutant directement hudson.war dans le répértoire webapps de Tomcat. </p>
<p>Pour tester allez simplement sur http://localhost:8180/hudson et vous devriez y voir apparaître la page d&rsquo;accueil d&rsquo;Hudson. </p>
<p>Et voilà <img src="https://blog.developpez.com/wichtounet/wp-includes/images/smilies/icon_wink.gif" alt=";)" class="wp-smiley" /></p>
<p><strong>Note</strong> : Certaines de ces commandes (comme le security manager ou utiliser sun-java6-jre au lieu de OpenJDK ne sont pas nécessaire au fonctionnement général d&rsquo;Hudson, mais sont indispensables pour certaines de ses fonctionnalités comme la gestion de plugins. </p>
]]></content:encoded>
			<wfw:commentRss></wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
