<?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 Jean-Christophe Lavocat &#187; Linux</title>
	<atom:link href="http://jice.lavocat.name/blog/category/informatique/linux/feed/" rel="self" type="application/rss+xml" />
	<link>http://jice.lavocat.name/blog</link>
	<description>Mon Bioblog (humeurs, tendances et aventures en tout genres)</description>
	<lastBuildDate>Mon, 07 Jun 2010 14:53:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Installer Ubuntu sur un Acer Aspire M1201</title>
		<link>http://jice.lavocat.name/blog/2008/08/installer-ubuntu-sur-un-acer-aspire-m1201/</link>
		<comments>http://jice.lavocat.name/blog/2008/08/installer-ubuntu-sur-un-acer-aspire-m1201/#comments</comments>
		<pubDate>Sat, 23 Aug 2008 06:40:01 +0000</pubDate>
		<dc:creator>Jice</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Ubuntu]]></category>

		<guid isPermaLink="false">http://jice.lavocat.name/blog/?p=915</guid>
		<description><![CDATA[De nombreuses personnes auront profiter récemment d&#8217;une offre chez Rue du Commerce concernant un ordinateur Acer Aspire, livré sans OS. Pensant pouvoir installer facilement Ubuntu dessus, je me suis jeté dessus. Hors l&#8217;architecture du PC (AMD 64), fait qu&#8217;il faut télécharger une version dédiée de Ubuntu. Procédure d&#8217;installation : Procurez-vous la version pour architecture 64 [...]]]></description>
			<content:encoded><![CDATA[<p align="justify">De nombreuses personnes auront profiter récemment d&#8217;une offre chez <a href="http://www.rueducommerce.fr/" target="_blank">Rue du Commerce</a> concernant un <a href="http://www.rueducommerce.fr/Ordinateurs/PC/PC-de-bureau-Grand-Public/ACER/438529-PC-Acer-Aspire-M1201-BM7X-Atlhon-64-X2-5000-ATI-Radeon-HD-3450-320Go-3Go.htm" target="_blank">ordinateur Acer Aspire</a>, livré sans OS. Pensant pouvoir installer facilement <strong>Ubuntu </strong>dessus, je me suis jeté dessus. Hors l&#8217;architecture du PC (AMD 64), fait qu&#8217;il faut télécharger une version dédiée de Ubuntu.</p>
<h3>Procédure d&#8217;installation :</h3>
<p align="justify">Procurez-vous la version pour architecture 64 sur le site de Ubuntu : <a href="http://www.ubuntu-fr.org/telechargement" target="_blank">http://www.ubuntu-fr.org/telechargement</a> vous pouvez aussi télécharger le torrent que j&#8217;ai utilisé pour mon installation (torrent fabriqué par ubuntu-fr : ubuntu 8.04, amd64, gnome) : <a href="doc/informatique/ubuntu-8.04.1-desktop-amd64.iso.torrent" target="_blank">torrent</a>.</p>
<p align="justify">Gravez ensuite l&#8217;image du disque une fois téléchargée (téléchargement avec <a href="http://www.utorrent.com/download.php" target="_blank">u torrent</a> par exemple, et gravure avec <a href="http://infrarecorder.sourceforge.net/" target="_blank">Infra Recorder</a> &lt;&lt;&#8211; ces deux logiciels sont pour les utilisateurs windows).</p>
<p align="justify">Redémarrer votre ordinateur avec le CD gravé dans le lecteur, la procédure de boot commence (si votre BIOS est bien configuré). Lors du premier Splash screen, choisissez l&#8217;option F6 -&gt; <strong>ACPI=OFF</strong> (pressez 2 fois F6 pour voir l&#8217;option, &#8220;entrer&#8221; pour sélectionner, et &#8220;echap&#8221; pour revenir au menu principal). Sans celà, vous aurez un petit message d&#8217;erreur qui empêchera l&#8217;installation.</p>
<p align="justify">
<h3>Lancez le système correctement :</h3>
<p>Si vous lancez le système tel quel après l&#8217;installation, vous retrouverez le petit message d&#8217;erreur obtenu si vous aviez tenté l&#8217;installation sans &#8220;ACPI OFF&#8221;. Nous allons donc devoir modifier légèrement la procédure de démarrage de Ubuntu.</p>
<p>Redémarrez avec le CD, en mode Live CD et avec l&#8217;option ACPI=OFF.</p>
<p align="justify">Une fois Ubuntu Live lancé, rendez-vous sur le disque dur (là où se trouve installé Ubuntu). Parcourez vos emplacement, et trouvez le fichier <strong>menu.lst </strong>dans le répertoire /boot/grub (chez moi il se trouve à : /media/disk/boot/grub). Notez son emplacement. Ouvrez alors une console, et tapez :</p>
<blockquote><p><em>sudo gedit /media/disk/boot/grub/menu.lst</em></p></blockquote>
<p>Cela vous permettra d&#8217;enregistrer les changements (sudo permet de s&#8217;attribuer les droits de root). Regardez la fin du fichier qui ressemblera à :</p>
<blockquote><p><em> kernel		/boot/vmlinuz-2.6.24-19-generic root=/dev/sda1 ro &#8230;<br />
</em></p></blockquote>
<p>et rajouter l&#8217;option acpi=off :</p>
<blockquote><p><em> kernel		/boot/vmlinuz-2.6.24-19-generic root=/dev/sda1 acpi=off ro &#8230;</em></p></blockquote>
<p>Enregistrez les changements et redémarrez. Ca devrait être bon.</p>
<p>Source d&#8217;aide principale : <a href="http://ubuntuforums.org/showthread.php?t=887797" target="_blank">http://ubuntuforums.org/showthread.php?t=887797</a></p>
<p>N&#8217;hésitez pas à poster des commentaires pour demander de l&#8217;aide.</p>
]]></content:encoded>
			<wfw:commentRss>http://jice.lavocat.name/blog/2008/08/installer-ubuntu-sur-un-acer-aspire-m1201/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Modifier de façon récursive les droits des dossiers [Script Bash]</title>
		<link>http://jice.lavocat.name/blog/2008/03/modifier-de-facon-recursive-les-droits-des-dossiers-script-bash/</link>
		<comments>http://jice.lavocat.name/blog/2008/03/modifier-de-facon-recursive-les-droits-des-dossiers-script-bash/#comments</comments>
		<pubDate>Sun, 23 Mar 2008 06:31:56 +0000</pubDate>
		<dc:creator>Jice</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[Sécurité]]></category>

		<guid isPermaLink="false">http://jice.lavocat.name/blog/?p=912</guid>
		<description><![CDATA[Vous êtes étudiants à l&#8217;Ecole Centrale Marseille? Vous êtes sur un réseau où les administrateurs se font du soucis pour la sécurité? Il y a fort à parier que la publication d&#8217;un site web présente quelques difficultés pour le néophyte. En effet, le serveur qui affichera vos pages web (apache?) se basera sur les droits [...]]]></description>
			<content:encoded><![CDATA[<p>Vous êtes étudiants à l&#8217;Ecole Centrale Marseille? Vous êtes sur un réseau où les administrateurs se font du soucis pour la sécurité? Il y a fort à parier que la publication d&#8217;un site web présente quelques difficultés pour le néophyte.</p>
<p>En effet, le serveur qui affichera vos pages web (apache?) se basera sur les droits que vous accordez à vos fichiers. Si ceux-ci sont mal réglés, vous n&#8217;aurez pas le droit d&#8217;y accéder par le web.</p>
<p>Voilà le code source d&#8217;un script bash pour faire les changements automatiquement sur votre fichier web :</p>
<blockquote><p><em> #!/bin/bash<br />
find . -type f -exec chmod 644 {} \;              #fichiers en général<br />
find . -name &#8216;*.php&#8217; -exec chmod 600 {} \;     #tous les fichiers qui portent l&#8217;extension php<br />
find . -type d -exec chmod 751 {} \;              #tous les répertoires<br />
chmod 755 visible                                     #un répertoire visible de l&#8217;extérieur qui s&#8217;appelle &#8216;visible&#8217;<br />
</em></p>
<p><em> </em></p></blockquote>
<h3>Utilisation :</h3>
<p>Créer un fichier vierge : &#8216;touch nom_script.sh&#8217;, dans lequel vous allez copier le texte ci-dessus. Pour l&#8217;exécuter, donner lui les droits nécessaire (&#8216;chmod 700&#8242; devrait suffire).</p>
<p>Lancez le ensuite grâce à &#8216; ./nom_script.sh&#8217;.</p>
]]></content:encoded>
			<wfw:commentRss>http://jice.lavocat.name/blog/2008/03/modifier-de-facon-recursive-les-droits-des-dossiers-script-bash/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Modifier rapidement un ensemble de fichiers sous linux [BASH]</title>
		<link>http://jice.lavocat.name/blog/2008/01/modifier-rapidement-un-ensemble-de-fichiers-sous-linux-bash/</link>
		<comments>http://jice.lavocat.name/blog/2008/01/modifier-rapidement-un-ensemble-de-fichiers-sous-linux-bash/#comments</comments>
		<pubDate>Tue, 01 Jan 2008 06:27:53 +0000</pubDate>
		<dc:creator>Jice</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Bash]]></category>
		<category><![CDATA[Script]]></category>

		<guid isPermaLink="false">http://jice.lavocat.name/blog/?p=909</guid>
		<description><![CDATA[Vous vous trouvez sous Linux, vous désirez changer une chaîne de caractère avec une faute d&#8217;orthographe dans l&#8217;ensemble des fichiers d&#8217;un dossier? Utilisez le script suivant : En Bref : #!/bin/bash for file in *.php do echo &#8220;Traitement de $file &#8230;&#8221; sed -e &#8220;s/eMssage avec erreur/Message sans erreur/g&#8221; &#8220;$file&#8221; &#62; &#8220;$file&#8221;.tmp &#38;&#38; mv -f &#8220;$file&#8221;.tmp [...]]]></description>
			<content:encoded><![CDATA[<p>Vous vous trouvez sous Linux, vous désirez changer une chaîne de caractère avec une faute d&#8217;orthographe dans l&#8217;ensemble des fichiers d&#8217;un dossier? Utilisez le script suivant :</p>
<h3>En Bref :</h3>
<blockquote><p><em>#!/bin/bash</em></p>
<p><em>for file in *.php</em></p>
<p><em>do</em></p>
<p><em> echo &#8220;Traitement de $file &#8230;&#8221;</em></p>
<p><em> sed -e &#8220;s/eMssage avec erreur/Message sans erreur/g&#8221; &#8220;$file&#8221; &gt; &#8220;$file&#8221;.tmp &amp;&amp; mv -f &#8220;$file&#8221;.tmp &#8220;$file&#8221;</em></p>
<p><em>done</em></p></blockquote>
<p>Pour cela, ouvrir une console :</p>
<ul>
<li><em>cd /chemin/dossier</em> (placez vous dans le dossier concerné)</li>
<li><em>touch monscript.sh</em> (créer un fichier vide nommé monscript)</li>
</ul>
<p>éditez le fichier et collez le script ci-dessus en faisant les changement nécessaire</p>
<ul>
<li><em>./monscript.sh</em> (executer lescript en local)</li>
</ul>
<p><strong>Le principe </strong>:</p>
<p><em><em>for file in *.php &lt;- Tous les fichiers du répertoire qui finissent par l&#8217;extension .php</em></em></p>
<p><em><em> echo &#8220;Traitement de $file &#8230;&#8221; &lt;- On indique leur nom</em></em></p>
<p><em><em> sed -e &#8220;s/eMssage avec erreur/Message sans erreur/g&#8221; &#8220;$file&#8221; &gt; &#8220;$file&#8221;.tmp &amp;&amp; mv -f &#8220;$file&#8221;.tmp &#8220;$file&#8221; </em></em></p>
<p align="justify"><em><em>&lt;- On substitue (s) le premier message par le deuxième message, à toutes les lignes (g). On applique cela à tous les fichiers que l&#8217;on traite actuellement, et onrenomme les fichiers temporaires créés pour l&#8217;occasion<br />
</em></em></p>
<p>Plus d&#8217;info sur : <a title="SED" href="http://fr.wikipedia.org/wiki/Sed_(logiciel)" target="_blank">http://fr.wikipedia.org/wiki/Sed_(logiciel)</a></p>
<h3>Remplacer un texte dans des fichiers : Méthode évoluée</h3>
<p align="justify">A présent je veux remplacer dans l&#8217;ensemble de mes fichiers .php la chaine &#8220;&lt;?&#8221; par la chaîne &#8220;&lt;?php&#8221;. Evidemment, je ne veux pas remplacer les bonnes chaînes déjà existantes, sinon j&#8217;aurai : &#8220;&lt;?&lt;?php&#8221; ce qui ne sera pas bon.</p>
<p align="justify">Première méthode, je le fais à la bourrin, je remplace tous les &#8220;&lt;?&#8221; puis je remplace les &#8220;&lt;?&lt;?&#8221; par &#8220;&lt;?&#8221;.</p>
<p align="justify">Deuxième méthode, je suis plus doux, et je vais : chercher les fichiers .php à modifer, effectuer la modification ciblée.</p>
<p>Pour trouver les fichiers à modifier :</p>
<ul>
<li><em>find /rep -name &#8220;*.php&#8221; | xargs grep &#8220;&lt;?[^php]&#8221;<br />
</em></li>
</ul>
<p align="justify"><strong>Le principe</strong>: le find permet de trouver les fichiers ayant l&#8217;extension .php. Le grep permet de trouver dans un fichier une expression donnée (ici &#8220;&lt;?&#8221; privée de &#8220;php&#8221; à sa suite, voir expressions rationnelles). Le xargs permet de lire les fichiers envoyé par le pipe de find.</p>
<p align="justify">Si on a peur d&#8217;obtenir beaucoup de résultats on peux demander uniquement l&#8217;affichage du nom des fichiers en question :</p>
<ul>
<li><em>find /rep -name &#8220;*.php&#8221; | xargs grep -l &#8220;&lt;?[^php]&#8220;</em></li>
</ul>
<blockquote><p>&#8230; ou bien plus de précision en demandant l&#8217;affichage de la ligne :</p></blockquote>
<ul>
<li> <em>find /rep -name &#8220;*.php&#8221; | xargs grep -n &#8220;&lt;?[^php]&#8220;</em></li>
</ul>
<p>Script à utiliser pour la modification :</p>
<blockquote><p><em> #!/bin/sh</p>
<p>old_value=&#8221;&lt;?&#8221;;<br />
new_value=&#8221;&lt;?php&#8221;;<br />
ignore_value=&#8221;&lt;?php&#8221;;<br />
SUCCESS=0</p>
<p>for file in $(find . -name &#8220;*.php&#8221;)<br />
do<br />
echo &#8220;Traitment de : $file&#8221;<br />
grep -q &#8220;$old_value&#8221; &#8220;$file&#8221;<br />
if [ $? -eq $SUCCESS ]<br />
# if grep -q &#8220;$word&#8221; &#8220;$filename&#8221;   can replace lines 5 &#8211; 7.<br />
then<br />
mv $file $file.old2<br />
sed &#8220;/$ignore_value/!s/$old_value/$new_value/g&#8221; &lt; $file.old2 &gt; $file<br />
rm $file.old2<br />
fi<br />
done</em></p></blockquote>
<p>On le place dans /html et on exécute. Pensez à sauver auparavant, sait-on jamais.</p>
]]></content:encoded>
			<wfw:commentRss>http://jice.lavocat.name/blog/2008/01/modifier-rapidement-un-ensemble-de-fichiers-sous-linux-bash/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
