<?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>JoPa.Fr &#187; Disque dur</title>
	<atom:link href="http://www.jopa.fr/index.php/tag/disque-dur/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.jopa.fr</link>
	<description>001100010BIDOUILLE11101010111100010LIBRE1000100111100101</description>
	<lastBuildDate>Tue, 10 Jan 2012 21:59:31 +0000</lastBuildDate>
	<language>fr</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Raid logiciel : raid 1 vers raid 0</title>
		<link>http://www.jopa.fr/index.php/2010/07/26/raid-logiciel-raid-1-vers-raid-0/</link>
		<comments>http://www.jopa.fr/index.php/2010/07/26/raid-logiciel-raid-1-vers-raid-0/#comments</comments>
		<pubDate>Mon, 26 Jul 2010 20:40:21 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Disque dur]]></category>
		<category><![CDATA[Partition]]></category>
		<category><![CDATA[Sauvegarde]]></category>
		<category><![CDATA[Serveur]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=2314</guid>
		<description><![CDATA[Nous manquions cruellement de place sur un serveur installé avec deux disques en raid 1 logiciel. Plus particulièrement, sur une partition destinée à recevoir de gros volumes de données, mais ne nécessitant pas forcément le niveau de sécurité apporté par du &#171;&#160;mirroring&#160;&#187; . L&#8217;idée de casser cette partition pour la transformer en raid 0 (agrégation) s&#8217;est [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://www.jopa.fr/wp-content/uploads/2008/03/logo_disque_dur.jpg"><img class="size-full wp-image-17 alignright" title="Disque dur" src="http://www.jopa.fr/wp-content/uploads/2008/03/logo_disque_dur.jpg" alt="" width="301" height="274" /></a>Nous manquions cruellement de place sur un serveur installé avec deux disques en <em>raid 1</em> logiciel. Plus particulièrement, sur une partition destinée à recevoir de gros volumes de données, mais ne nécessitant pas forcément le niveau de sécurité apporté par du &laquo;&nbsp;mirroring&nbsp;&raquo; . L&#8217;idée de casser cette partition pour la transformer en <em>raid 0 (agrégation)</em> s&#8217;est donc imposée naturellement. Résultat : 2 fois plus de place, des performances légèrement accrues, mais au prix d&#8217;une absence de redondance.</p>
<p style="text-align: justify;"><em><span style="color: #000080;">La manipulation décrite ci-dessous est plus un pense-bête qu&#8217;un tutoriel ou un article en tant que tel. A le noter quelque part, autant le partager !</span></em></p>
<p style="text-align: justify;"><span id="more-2314"></span></p>
<p style="text-align: justify;"><span style="text-decoration: underline;"><strong>Attention : Le changement de type de raid nécessite un reformatage, donc une perte des données de la partitio</strong></span><span style="text-decoration: underline;"><strong>n.</strong></span></p>
<h2>1 &#8211; Etat des lieux :</h2>
<pre><span style="color: #800000;"># df -h</span></pre>
<pre><span style="color: #800000;">Sys. de fich.         Tail. Occ. Disp. %Occ. Monté sur</span></pre>
<pre><span style="color: #800000;">/dev/md1              4,9G  216M  4,4G   5% /</span></pre>
<pre><span style="color: #800000;">tmpfs                 996M     0  996M   0% /lib/init/rw</span></pre>
<pre><span style="color: #800000;">udev                   10M  152K  9,9M   2% /dev</span></pre>
<pre><span style="color: #800000;">tmpfs                 996M     0  996M   0% /dev/shm</span></pre>
<pre><span style="color: #800000;">/dev/md0               92M  9,6M   77M  12% /boot</span></pre>
<pre><span style="color: #800000;">/dev/md3               20G  632M   18G   4% /home</span></pre>
<pre><span style="color: #800000;">/dev/md5              3,9G   73M  3,6G   2% /tmp</span></pre>
<pre><span style="color: #800000;">/dev/md4              9,7G  707M  8,6G   8% /usr</span></pre>
<pre><span style="color: #800000;">/dev/md2               30G  2,6G   26G  10% /var</span></pre>
<pre><span style="color: #800000;">/dev/md6               87G  87G    13M 100% /<span style="color: #800000;">dat</span></span><span style="color: #800000;">a</span></pre>
<pre><span style="color: #800000;"></span></pre>
</p>
<div>C&#8217;est la partition <strong><em>/data</em></strong>, montée depuis le périphérique raid <strong><em>md6</em></strong> qui nous intéresse. Elle est bien bien pleine&#8230; Voyons comment est structuré le périphérique <em>raid</em> :</div>
</p>
<div>
<pre><span style="color: #800000;"># mdadm --detail /dev/md6</span></pre>
<pre><span style="color: #800000;">/dev/md6:</span></pre>
<pre><span style="color: #800000;">        Version : 00.90</span></pre>
<pre><span style="color: #800000;">  Creation Time : Fri Nov 21 16:39:44 2008</span></pre>
<pre><span style="color: #800000;">     Raid Level : raid1</span></pre>
<pre><span style="color: #800000;">     Array Size : 91072384 (86.85 GiB 93.26 GB)</span></pre>
<pre><span style="color: #800000;">  Used Dev Size : 91072384 (86.85 GiB 93.26 GB)</span></pre>
<pre><span style="color: #800000;">   Raid Devices : 2</span></pre>
<pre><span style="color: #800000;">  Total Devices : 2</span></pre>
<pre><span style="color: #800000;">Preferred Minor : 6</span></pre>
<pre><span style="color: #800000;">    Persistence : Superblock is persistent</span></pre>
<pre><span style="color: #800000;">
</span></pre>
<pre><span style="color: #800000;">    Update Time : Mon Jul 25 13:35:46 2010</span></pre>
<pre><span style="color: #800000;">          State : clean</span></pre>
<pre><span style="color: #800000;"> Active Devices : 2</span></pre>
<pre><span style="color: #800000;">Working Devices : 2</span></pre>
<pre><span style="color: #800000;"> Failed Devices : 0</span></pre>
<pre><span style="color: #800000;">  Spare Devices : 0</span></pre>
<pre><span style="color: #800000;">
</span></pre>
<pre><span style="color: #800000;">           UUID : 2656ada4:ef6970c5:bfe78010:bc810f04</span></pre>
<pre><span style="color: #800000;">         Events : 0.82</span></pre>
<pre><span style="color: #800000;">
</span></pre>
<pre><span style="color: #800000;">    Number   Major   Minor   RaidDevice State</span></pre>
<pre><span style="color: #800000;">       0       8        9        0      active sync   /dev/sda9</span></pre>
<pre><span style="color: #800000;">       1       8       25        1      active sync   /dev/sdb9</span></pre>
<pre><span style="color: #800000;"></span></pre>
</div>
</p>
<div>Ce sont les partitions <strong><em>sda9</em></strong> et <strong><em>sdb9 </em><span style="font-weight: normal;">qui sont utilisées</span></strong>, on le note et on casse tout !  <em>(C&#8217;est ici qu&#8217;une éventuelle sauvegarde s&#8217;impose !!!)</em></div>
<h2>2 &#8211; Destruction / Reconstruction</h2>
<div>Arrêt du raid pour <strong><em>md6</em></strong> :</div>
</p>
<pre><span style="color: #800000;"># mdadm --stop /dev/md6</span></pre>
<pre><span style="color: #800000;"></span></pre>
</p>
<div>On le reconstruit, mais en <em>niveau 0,</em> ce coup-ci :</div>
</p>
<pre><span style="color: #800000;"># mdadm --create /dev/md6 --level=0 --raid-devices=2 /dev/sda9 /dev/sdb9</span></pre>
<pre><span style="color: #800000;"></span></pre>
</p>
<div>Enfin, on formate et on remonte :</div>
</p>
<div><span style="color: #800000;"># mkfs.ext3 /dev/md6</span></div>
<pre><span style="color: #800000;"># mount /dev/md6</span></pre>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2010/07/26/raid-logiciel-raid-1-vers-raid-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Transférer un OS d&#8217;une machine vers QEMU</title>
		<link>http://www.jopa.fr/index.php/2009/01/25/transferer-un-os-dune-machine-vers-qemu/</link>
		<comments>http://www.jopa.fr/index.php/2009/01/25/transferer-un-os-dune-machine-vers-qemu/#comments</comments>
		<pubDate>Sun, 25 Jan 2009 18:15:36 +0000</pubDate>
		<dc:creator>Fabien</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Planet-Libre]]></category>
		<category><![CDATA[Disque dur]]></category>
		<category><![CDATA[Partition]]></category>
		<category><![CDATA[Sauvegarde]]></category>
		<category><![CDATA[Serveur]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=985</guid>
		<description><![CDATA[Ces derniers jours mon portable, une machine qui a quelques années derrière elle, s&#8217;est décidée à me faire des frayeurs: des gels réguliers pour soi-disant faire une réinitialisation du sous-système disque, c&#8217;est à dire des choses du genre: ata2.01: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen ata2.01: cmd a0/00:00:00:00:00/00:00:00:00:00/b0 tag 0 cdb [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Ces derniers jours mon portable, une machine qui a quelques années derrière elle, s&#8217;est décidée à me faire des frayeurs: des gels réguliers pour soi-disant faire une réinitialisation du sous-système disque, c&#8217;est à dire des choses du genre:</p>
<pre>ata2.01: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2 frozen
ata2.01: cmd a0/00:00:00:00:00/00:00:00:00:00/b0 tag 0
         cdb 00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00
         res 50/00:01:00:00:00/00:00:00:00:00/b0 Emask 0x2 (HSM violation)
ata2.01: status: { DRDY }
ata2: soft resetting link
.</pre>
<p style="text-align: justify;">Bref des choses qui me font dire que le disque dur n&#8217;est pas éternel et qu&#8217;il a déjà quelques heures de vol (smart me dit environ 3200 heures).</p>
<p style="text-align: justify;">J&#8217;ai sur cette machine 2 OS: une Debian dont je me sert quasiment exclusivement et un Windows XP qui me sert à compiler un logiciel développé à l&#8217;aide de la bibliothèque <a href="http://www.qtsoftware.com/">Qt</a>.</p>
<p style="text-align: justify;">Pour ce qui est de la Debian, je n&#8217;ai pas grand chose à sauvegarder: les sources du logiciel et quelques fichiers de configuration, donc je m&#8217;en débrouille très bien. Par contre pour ce qui est de la partition Windows, j&#8217;ai mis en place un environnement de compilation qui m&#8217;a donné beaucoup de fil à retordre et qui ne serait pas évident à réinstaller même avec les 10 pages de notes que j&#8217;avais prises à l&#8217;époque.</p>
<p style="text-align: justify;">D&#8217;autre part, depuis un bout de temps, j&#8217;avais envie de pouvoir m&#8217;affranchir du portable, de manière à pouvoir bosser indépendamment de la machine: je trimbale juste une clef usb bootable (une flash de Mandriva par exemple) et je peux m&#8217;installer sur n&#8217;importe quel PC pourvu qu&#8217;il y ait une connexion Internet. De là, je récupère par le réseau ce dont j&#8217;ai besoin et pour la &laquo;&nbsp;machine à compiler&nbsp;&raquo; Windows, je lance un QEMU situé sur un serveur.</p>
<p>Donc y&#8217;avait plus qu&#8217;à &#8230;</p>
<p><span id="more-985"></span></p>
<h2>Première étape: état des lieux.</h2>
<p>- le partitionnement de mon portable est le suivant:</p>
<pre>Disk /dev/sda: 100.0 GB, 100030242816 bytes
255 heads, 63 sectors/track, 12161 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000aa1b9

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1         261     2096451    6  FAT16
/dev/sda2             262        1477     9767520   83  Linux
/dev/sda3            1478        1599      979965   82  Linux swap / Solaris
/dev/sda4            1600       12161    84839265    5  Extended
/dev/sda5            1600       11325    78124063+  83  Linux
/dev/sda6           11326       12161     6715138+   7  HPFS/NTFS
.</pre>
<p style="text-align: justify;">On remarquera qu&#8217;il y a une partition en FAT16 (je ne sais pas ce qu&#8217;elle fait là, ça doit être une partition créée par le constructeur) et la partition qui m&#8217;intéresse, la sda6, celle en NTFS. Quand on est sous Windows, on voit 2 partition: la C: (sda1) et la H: (sda6).</p>
<p style="text-align: justify;">Donc, si vous avez suivi, vous savez que c&#8217;est la partition sda6 que je veux mettre dans mon QEMU. Je vais donc commencer par copier cette partition dans un fichier à l&#8217;aide d&#8217;un:</p>
<pre>dd if=/dev/sda6 of=sda6.img
.</pre>
<p style="text-align: justify;">Ce qui me donne un gros fichier contenant l&#8217;image de la partition Windows, qu&#8217;en fait, j&#8217;avais copié directement sur une autre machine via NFS, mais ça n&#8217;a pas d&#8217;importance.</p>
<h2>Deuxième étape: création de l&#8217;image disque.</h2>
<p>A l&#8217;aide de la commande qemu-img, je crée une image disque de 10 Go:</p>
<pre>qemu-img create disque.img 10G
.</pre>
<p style="text-align: justify;">Ensuite, le but du jeu étant de transférer l&#8217;image de la partition sur le disque, je démarre QEMU avec mon image disque toute neuve comme premier disque dur, l&#8217;image disque de la partition comme 2ème disque dur et le CD netinst de Debian (et oui, il faut bien pouvoir booter sur quelque chose):</p>
<pre>qemu -hda disque.img -hdb sda6.img -cdrom debian-40r1-i386-netinst.iso -boot d
.</pre>
<p style="text-align: justify;">Vous pouvez choisir ce que vous voulez comme CD de démarrage pourvu que vous ayez accès à un shell (alt+F2 avec le CD d&#8217;installation de Debian, de préférence une fois que le clavier est configuré et les modules d&#8217;installation chargés). On peut maintenant partitionner le disque à l&#8217;aide de fdisk.</p>
<pre style="text-align: justify;">fdisk /dev/hda
.</pre>
<p style="text-align: justify;">Vous créez une nouvelle partition (qui va être hda1) de type NTFS (7) et la rendez bootable (commande a dans fdisk). Faites attention de bien prendre le même nombre de cylindre que la partition originale (et n&#8217;oubliez pas qu&#8217;il y a toujours un piquet de plus que de pans de clôture), vous devez obtenir exactement le même nombre de blocs que dans le partitionnement original (dans mon cas  6715138 blocs).</p>
<p style="text-align: justify;">Ensuite, il nous faut copier l&#8217;image de la partition vers notre nouvelle partition toute neuve, toujours avec dd:</p>
<pre>dd if=/dev/hdb of=/dev/hda1
.</pre>
<p style="text-align: justify;">Là, vous pouvez aller boire une bière, voire même plusieurs&#8230; (vous êtes dans une machine virtuelle et ça se ressent). De plus, si vous êtes dans la même situation que moi (système Windows sur une partition autre que C:) , ça ne fonctionnera pas, on verra après pourquoi.</p>
<h2>Troisième étape: on tente de démarrer l&#8217;image transférée.</h2>
<p style="text-align: justify;">Pour éviter d&#8217;avoir à refaire le dd précédent et être obligé d&#8217;aller reboire des bières, vous pouvez soit faire une copie de votre nouvelle image disque, soit faire toutes les manips suivantes avec l&#8217;option -snapshot de QEMU qui n&#8217;écrira pas sur la nouvelle image disque les changements, sauf si vous lui demandez (une fois que tout fonctionne me parait être à un bon moment).</p>
<p style="text-align: justify;">On démarre maintenant la nouvelle image disque avec le CD d&#8217;installation de Windows XP, le but étant de recréer le MBR et le chargeur de démarrage. Vous pouvez, soit créer une image iso de votre CD d&#8217;installation, soit utiliser directement le périphérique de cdrom de linux avec QEMU. Perso, j&#8217;avais déjà l&#8217;image iso, donc je l&#8217;ai utilisée (non, je n&#8217;ai pas lancé un nouveau dd pour la créer de manière à aller boire une autre bière !).</p>
<pre>qemu -hda disque.img -cdrom /chemin/vers/Win_XP_Pro.iso -boot d
.</pre>
<p style="text-align: justify;">Une fois le programme d&#8217;installation lancé, vous choisissez l&#8217;option &#8216;R&#8217; (pour réparer), et si tout se passe bien il va vous détecter la partition système Windows que vous allez choisir (&#8217;1&#8242;). Vous vous retrouvez alors dans une sorte de shell avec quelques commandes disponibles (faut pas rêver, c&#8217;est pas une busybox non plus, et vous ne pouvez même pas éditer un fichier).</p>
<p style="text-align: justify;">Deux commandes vous nous être utiles: FIXMBR et  FIXBOOT, vous les lancez les 2. Peu importe l&#8217;ordre, FIXMBR va écrire un nouveau MBR (master boot record, les 512 premiers octets du disque dur) et FIXBOOT va copier le chargeur de démarrage.</p>
<p style="text-align: justify;">Il ne reste plus qu&#8217;à redémarrer (ça se fait tout seul si vous tapez exit)&#8230; et là si vous êtes dans le même cas que moi (partition système Windows autre que C:), vous croyez tenir le bon bout mais le système se fige lamentablement au démarrage; ça n&#8217;est pas la peine d&#8217;attendre et d&#8217;en profiter pour aller boire des bières, ça ne va pas plus loin.</p>
<p style="text-align: justify;">Après divers tests (avec plein de dd très longs) pour arriver à faire démarrer mon Windows, j&#8217;en ai déduit qu&#8217;il fallait absolument que le partitionnement de la nouvelle image disque ressemble le plus possible à celui de la machine originale de manière à avoir la partition système Windows sur H:. J&#8217;ai essayé avec fdisk sous Linux et je ne suis pas arrivé à mes fins. Après réflexion, je pense que ça doit être possible mais j&#8217;en ai un peu marre des essais à vrai dire.</p>
<p style="text-align: justify;">J&#8217;ai donc recréé le partitionnement de l&#8217;image disque avec le CD d&#8217;installation de windows (mode réparation) à l&#8217;aide de la commande diskpart. J&#8217;ai créé la première partition en FAT16 de la même taille que sda1 sur mon portable et plusieurs petites partitions en FAT16 (de 20 Mo) jusqu&#8217;à arriver à H: où j&#8217;ai créé la grosse partition NTFS. Dans diskpart, vous ne pouvez donner que des tailles en Mo, donc pour recréer le même nombre de blocs que dans votre partitionnement original, il vous faudra peut-être tâtonner un peu.</p>
<p style="text-align: justify;">Chez moi j&#8217;obtiens ça (le partitionnement a été fait avec diskpart, mais je l&#8217;affiche ici avec fdisk ):</p>
<pre>Disk /dev/hda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

   Device Boot      Start         End      Blocks   Id  System
/dev/hda1   *           1         261     2096451    6  FAT16
/dev/hda2             262        1304     8377897+   f  W95 Ext'd (LBA)
/dev/hda5             262         264       24066    6  FAT16
/dev/hda6             265         267       24066    6  FAT16
/dev/hda7             268         270       24066    6  FAT16
/dev/hda8             271         273       24066    6  FAT16
/dev/hda9             274        1109     6715138+   7  HPFS/NTFS
.</pre>
<p style="text-align: justify;">Une fois que le partitionnement est bon, vous pouvez recommencer depuis le début pour copier vos partitions (j&#8217;ai mis aussi la sda1 tant que j&#8217;y étais, mais je ne sais pas si c&#8217;était utile) avec la même méthode, vous démarrez QEMU avec les images des partitions comme disque dur et vous faites des dd.</p>
<p style="text-align: justify;">Si tout va bien, une fois que vous avez reconstruit le MBR et le chargeur de démarrage, vous aurez l&#8217;immense satisfaction de voir enfin démarrer votre Windows (avec quelques toussotements et crachotements puisque le matériel émulé par QEMU n&#8217;est surement pas le même que sur votre machine originale).</p>
<p style="text-align: justify;">Pour ma part, j&#8217;ai transférere l&#8217;image sur un serveur (via une ligne ADSL). J&#8217;ai compressé l&#8217;image avant de la transférer (avec bzip2) et je suis passé de 10 Go à 3,5 Go, donc c&#8217;est faisable, faut pas être pressé et puis vous pouvez en profiter pour aller boire une bière parce que, arrivé là, vous l&#8217;aurez bien méritée.</p>
<p style="text-align: justify;">Ensuite il ne reste plus qu&#8217;à lancer QEMU sur le serveur avec l&#8217;option -vnc pour l&#8217;utiliser à distance avec vncviewer (faites quand même attention à la sécurité, tout est prévu pour, alors faites un tour dans la doc de QEMU).</p>
<p style="text-align: justify;">N&#8217;oubliez pas une fois que tout est terminé d&#8217;effacer le Windows original car je doute que la licence de Windows vous permette de faire tourner plusieurs copies en même temps (je doute même que tout ce que je décris ci-dessus soit compatible avec la licence&#8230; si ça vous amuse, lisez-là).</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2009/01/25/transferer-un-os-dune-machine-vers-qemu/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Fonera 2.0 en serveur NFS sous Openwrt Kamikaze</title>
		<link>http://www.jopa.fr/index.php/2008/12/05/fonera-20-en-serveur-nfs-sous-openwrt-kamikaze/</link>
		<comments>http://www.jopa.fr/index.php/2008/12/05/fonera-20-en-serveur-nfs-sous-openwrt-kamikaze/#comments</comments>
		<pubDate>Thu, 04 Dec 2008 23:01:19 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Bidouilles]]></category>
		<category><![CDATA[Planet-Libre]]></category>
		<category><![CDATA[Disque dur]]></category>
		<category><![CDATA[Fonera]]></category>
		<category><![CDATA[Openwrt]]></category>
		<category><![CDATA[Réseau]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=933</guid>
		<description><![CDATA[Lors de précédents retours d&#8217;expériences, j&#8217;ai montré comment installer Openwrt et  gérer des périphériques de stockage usb sur une Fonera 2.0. L&#8217;idée aujourd&#8217;hui est de pousser plus loin en transformant cette Fonera en serveur NFS. Pour cela, je dispose d&#8217;une Fonera 2.0 flashée sous Openwrt kamikaze (8.09 RC1) sur laquelle est connecté un disque usb [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://www.jopa.fr/wp-content/uploads/2008/12/fonera_disque.jpg"><img class="alignleft size-full wp-image-941" title="fonera_disque" src="http://www.jopa.fr/wp-content/uploads/2008/12/fonera_disque.jpg" alt="" width="171" height="154" /></a>Lors de précédents retours d&#8217;expériences, j&#8217;ai montré comment <a title="http://www.jopa.fr/index.php/2008/10/22/flash-de-la-fonera-2-2202-avec-openwrt/" href="http://www.jopa.fr/index.php/2008/10/22/flash-de-la-fonera-2-2202-avec-openwrt/">installer Openwrt</a> et  <a title="http://www.jopa.fr/index.php/2008/10/24/openwrt-usbstorage-cle-usb/" href="http://www.jopa.fr/index.php/2008/10/24/openwrt-usbstorage-cle-usb/">gérer des périphériques de stockage usb</a> sur une <em>Fonera</em> 2.0. L&#8217;idée aujourd&#8217;hui est de pousser plus loin en transformant cette <em>Fonera</em> en serveur NFS.</p>
<p style="text-align: justify;">Pour cela, je dispose d&#8217;une <em>Fonera</em> 2.0 flashée sous <em>Openwrt</em> <em>kamikaze</em> (8.09 RC1) sur laquelle est connecté un disque usb formaté en ext3. Le réseau est correctement configuré et opérationnel.</p>
<p><span id="more-933"></span></p>
<p style="text-align: justify;">Commençons par installer quelques paquets indispensables :</p>
<ul>
<li><strong>kmod-usb2</strong> : gestion de l&#8217; USB,</li>
<li><strong>kmod-usb-storage</strong> : gestion des périphériques de stockages USB,</li>
<li><strong>kmod-fs-ext3</strong> : prise en charge des systèmes de fichiers ext3,</li>
<li><strong>nfs-kernel-server</strong> : serveur nfs,</li>
<li><strong>nfs-kernet-server-utils</strong> : utilitaires optionnels (tels que <em>nfstat</em>),</li>
<li><strong>portmap </strong>: indispensable pour le serveur nfs et pourtant oublié dans les dépendances.</li>
</ul>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p933code6'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p9336"><td class="code" id="p933code6"><pre class="sh" style="font-family:monospace;"># opkg update
# opkg install kmod-usb2
# opkg install kmod-usb-storage
# opkg install kmod-fs-ext3
# opkg install nfs-kernel-server
# opkg install nfs-kernel-server-utils
# opkg install portmap</pre></td></tr></table></div>

<p>Une fois les paquets installés, le disque devrait être reconnu et automatiquement monté dans <em>/mnt/usbdrive</em>.</p>
<p>Le suite consiste à configurer l&#8217;export <em>nfs</em>.</p>
<p>Pour cela, il faut éditer le fichier <em>/etc/exports</em>.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p933code7'); return false;">View Code</a> INI</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p9337"><td class="code" id="p933code7"><pre class="ini" style="font-family:monospace;">/mnt/usbdrive    192.168.7.0/<span style="">24</span> <span style="">&#40;</span>rw,no_root_squash,async<span style="">&#41;</span></pre></td></tr></table></div>

<ul>
<li>export de /mnt/usbdrive,</li>
<li>pour toutes les machines du réseau 192.168.7.0,</li>
<li>en lecture et écriture,</li>
<li>autoriser root à accéder aux fichiers,</li>
<li>en asynchrone.</li>
</ul>
<p>Il ne reste plus qu&#8217;à démarrer le serveur nfs :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p933code8'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p9338"><td class="code" id="p933code8"><pre class="sh" style="font-family:monospace;"># /etc/init.d/portmap start
# /etc/init.d/nfsd start</pre></td></tr></table></div>

<p>Pour activer le lancement automatique des démons au démarrage d&#8217;<em>openwrt :</em></p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p933code9'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p9339"><td class="code" id="p933code9"><pre class="sh" style="font-family:monospace;"># /etc/init.d/portmap enable
# /etc/init.d/nfsd enable</pre></td></tr></table></div>

<p>Côté client nfs, le montage se fait classiquement :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p933code10'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p93310"><td class="code" id="p933code10"><pre class="sh" style="font-family:monospace;"># mount -t nfs adresse_ip_fonera:/mnt/usbdrive /mnt/owrt</pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2008/12/05/fonera-20-en-serveur-nfs-sous-openwrt-kamikaze/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Raid logiciel sous Linux</title>
		<link>http://www.jopa.fr/index.php/2008/11/14/raid-logiciel-sous-linux/</link>
		<comments>http://www.jopa.fr/index.php/2008/11/14/raid-logiciel-sous-linux/#comments</comments>
		<pubDate>Fri, 14 Nov 2008 19:08:49 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Configurations]]></category>
		<category><![CDATA[Planet-Libre]]></category>
		<category><![CDATA[Disque dur]]></category>
		<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=763</guid>
		<description><![CDATA[A défaut de RAID matériel, la mise en place d&#8217;un RAID logiciel peut être une solution alternative pour sécuriser des données. Pour cela, il faut installer dmraid (Device-Mapper Raid) et les utilitaires raidutils. Ensuite, peu importe le type de RAID, tout se passe dans le fichier de configuration /etc/raidtab. En voici quelques exemples  : Chaque [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://www.jopa.fr/wp-content/uploads/2008/11/raid.png"><img class="alignright size-full wp-image-783" title="raid" src="http://www.jopa.fr/wp-content/uploads/2008/11/raid.png" alt="" width="250" height="189" /></a>A défaut de RAID matériel, la mise en place d&#8217;un RAID logiciel peut être une solution alternative pour sécuriser des données. Pour cela, il faut installer <em>dmraid</em> (Device-Mapper Raid) et les utilitaires <em>raidutils</em>.</p>
<p style="text-align: justify;">Ensuite, peu importe le type de RAID, tout se passe dans le fichier de configuration <em>/etc/raidtab</em>.</p>
<p style="text-align: justify;">En voici quelques exemples  :</p>
<p style="text-align: justify;"><span id="more-763"></span></p>
<p style="text-align: justify;">Chaque partition, utilisée pour construire le Raid doit être typée &laquo;&nbsp;fd&nbsp;&raquo; : Linux Raid auto.</p>
<h2>Raid 0 (Volumes agrégés)</h2>
<pre><span style="color: #800000;">raiddev /dev/md0
raid-level              0
nr-raid-disks           2
persistent-superblock   1
chunk-size              4
device                  /dev/sda1
raid-disk               0
device                  /dev/sdb1
raid-disk 1</span></pre>
<h2>Raid 1 (Miroir)</h2>
<pre><span style="color: #800000;">raiddev                   /dev/md0
raid-level                1
nr-raid-disks             2
persistent-superblock     1
chunk-size                16
device                    /dev/sda1
raid-disk                 0
device                    /dev/sdb1
raid-disk                 1</span></pre>
<h2>Raid 5 (Volumes agrégés par bandes)</h2>
<pre><span style="color: #800000;">raiddev                   /dev/md0
raid-level                5
nr-raid-disks             3
nr-spare-disks            0
persistent-superblock     1
parity-algorithm          left-symmetric
chunk-size                32
device                    /dev/sda1
raid-disk                 0
device                    /dev/sdb1
raid-disk                 1
device                    /dev/sdc1
raid-disk                 2
.</span></pre>
<p style="text-align: justify;">Le raid configuré, il se lance ou s&#8217;arrête avec les commandes &laquo;&nbsp;raidstart&nbsp;&raquo; et &laquo;&nbsp;raidstop&nbsp;&raquo;.</p>
<p><span style="color: #800000;"># raidstart /dev/md0</span></p>
<p style="text-align: justify;">Avant de l&#8217;utiliser, il convient, biensûr, de créer le système de fichier.</p>
<p><span style="color: #800000;"># mkfs.ext3 /dev/md0</span></p>
<p>Il ne reste plus qu&#8217;à monter la partition.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2008/11/14/raid-logiciel-sous-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Openwrt usb-storage &#8211; Montage d&#8217;une clé usb</title>
		<link>http://www.jopa.fr/index.php/2008/10/24/openwrt-usbstorage-cle-usb/</link>
		<comments>http://www.jopa.fr/index.php/2008/10/24/openwrt-usbstorage-cle-usb/#comments</comments>
		<pubDate>Thu, 23 Oct 2008 23:22:50 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Bidouilles]]></category>
		<category><![CDATA[Configurations]]></category>
		<category><![CDATA[Planet-Libre]]></category>
		<category><![CDATA[Disque dur]]></category>
		<category><![CDATA[Fonera]]></category>
		<category><![CDATA[Openwrt]]></category>
		<category><![CDATA[Usb]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=643</guid>
		<description><![CDATA[Notre Fonera (2202) fraîchement installée sous OpenWrt est (presque) prête à accueillir des périphériques de stockages USB. Voici un premier test avec une clé usb. Avant toute chose, il faudra installer les modules noyau pour la gestion du stockage usb et les systèmes de fichier fat (fat 16 et fat32). La clef utilisée étant formatée [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><a href="http://www.jopa.fr/wp-content/uploads/2008/10/cle.jpg"><img class="alignleft size-full wp-image-673" title="cle" src="http://www.jopa.fr/wp-content/uploads/2008/10/cle.jpg" alt="" width="228" height="204" /></a>Notre Fonera (2202) fraîchement installée sous OpenWrt est (presque) prête à accueillir des périphériques de stockages USB. Voici un premier test avec une clé usb.</p>
<p style="text-align: justify;">Avant toute chose, il faudra installer les modules noyau pour la gestion du stockage usb et les systèmes de fichier <em>fat </em>(<em>fat 16 et fat32</em>). La clef utilisée étant formatée en <em>fat16</em>.</p>
<p style="text-align: justify;"><span id="more-643"></span></p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p643code18'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p64318"><td class="code" id="p643code18"><pre class="sh" style="font-family:monospace;">root@OpenWrt:/# opkg install kmod-usb-storage
Installing kmod-usb-storage (2.6.26.5-atheros-1) to root...
Downloading http://downloads.openwrt.org/snapshots/atheros/packages/./kmod-usb-storage_2.6.26.5-atheros-1_mips.ipk
Connecting to downloads.openwrt.org (195.56.146.238:80)
kmod-usb-storage_2.6 100% |************************************************************************************************************| 47028  00:00:00 ETA
Installing kmod-scsi-core (2.6.26.5-atheros-1) to root...
Downloading http://downloads.openwrt.org/snapshots/atheros/packages/./kmod-scsi-core_2.6.26.5-atheros-1_mips.ipk
Connecting to downloads.openwrt.org (195.56.146.238:80)
kmod-scsi-core_2.6.2 100% |************************************************************************************************************| 69267  00:00:00 ETA
Configuring kmod-scsi-core
Configuring kmod-usb-storage
&nbsp;
root@OpenWrt:/# dmesg
...
SCSI subsystem initialized
Driver 'sd' needs updating - please use bus_type methods
Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
usb-storage: device found at 2
usb-storage: waiting for device to settle before scanning
scsi 0:0:0:0: Direct-Access     SanDisk  U3 Cruzer Micro  4.05 PQ: 0 ANSI: 2
sd 0:0:0:0: [sda] 8013453 512-byte hardware sectors (4103 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 03 00 00 00
sd 0:0:0:0: [sda] Assuming drive cache: write through
sd 0:0:0:0: [sda] 8013453 512-byte hardware sectors (4103 MB)
sd 0:0:0:0: [sda] Write Protect is off
sd 0:0:0:0: [sda] Mode Sense: 03 00 00 00
sd 0:0:0:0: [sda] Assuming drive cache: write through
 sda: sda1
sd 0:0:0:0: [sda] Attached SCSI removable disk
scsi 0:0:0:1: CD-ROM            SanDisk  U3 Cruzer Micro  4.05 PQ: 0 ANSI: 2
usb-storage: device scan complete</pre></td></tr></table></div>

<p style="text-align: justify;">Ok pour ça&#8230; On obtient un disque scsi émulé <strong>sda</strong> et une partition : <strong>sda1</strong>. Occupons nous maintenant de la gestion des systèmes de fichiers <em>fat</em>.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p643code19'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p64319"><td class="code" id="p643code19"><pre class="sh" style="font-family:monospace;">root@OpenWrt:/# opkg list|grep vfat
kmod-fs-vfat - 2.6.26.5-atheros-1 - Kernel module for VFAT filesystem support
&nbsp;
root@OpenWrt:/# opkg install kmod-fs-vfat
Installing kmod-fs-vfat (2.6.26.5-atheros-1) to root...
Downloading http://downloads.openwrt.org/snapshots/atheros/packages/./kmod-fs-vfat_2.6.26.5-atheros-1_mips.ipk
Connecting to downloads.openwrt.org (195.56.146.238:80)
kmod-fs-vfat_2.6.26. 100% |************************************************************************************************************| 37463  --:--:-- ETA
Installing kmod-nls-base (2.6.26.5-atheros-1) to root...
Downloading http://downloads.openwrt.org/snapshots/atheros/packages/./kmod-nls-base_2.6.26.5-atheros-1_mips.ipk
Connecting to downloads.openwrt.org (195.56.146.238:80)
kmod-nls-base_2.6.26 100% |************************************************************************************************************|  3704  --:--:-- ETA
Configuring kmod-fs-vfat
Configuring kmod-nls-base</pre></td></tr></table></div>

<p><span style="color: #800000;"><strong>Premier essai</strong></span> : pas très concluant :</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p643code20'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p64320"><td class="code" id="p643code20"><pre class="sh" style="font-family:monospace;">root@OpenWrt:/# mount -t vfat /dev/sda1 /mnt/usbdrive/
mount: mounting /dev/sda1 on /mnt/usbdrive/ failed: Invalid argument
&nbsp;
root@OpenWrt:/# logread
...
Oct 16 08:33:36 OpenWrt user.err kernel: FAT: codepage cp437 not found
Oct 16 08:38:49 OpenWrt user.err kernel: FAT: codepage cp437 not found
Oct 16 08:39:11 OpenWrt user.err kernel: FAT: codepage cp437 not found
Oct 16 08:39:45 OpenWrt user.err kernel: FAT: codepage cp437 not found
Oct 16 08:40:08 OpenWrt user.err kernel: FAT: codepage cp437 not found
Oct 16 08:40:37 OpenWrt user.err kernel: FAT: codepage cp437 not found</pre></td></tr></table></div>

<p>Il s&#8217;agit d&#8217;un problème de page d&#8217;encodage&#8230; Nous avons dû louper un module&#8230;</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p643code21'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p64321"><td class="code" id="p643code21"><pre class="sh" style="font-family:monospace;">root@OpenWrt:/# opkg list |grep cp437
kmod-nls-cp437 - 2.6.26.7-atheros-1 - Kernel module for NLS Codepage 437 (United States, Canada)
root@OpenWrt:/usr/local/apache2/htdocs/cam1# opkg install kmod-nls-cp437
Installing kmod-nls-cp437 (2.6.26.7-atheros-1) to root...
Downloading http://downloads.openwrt.org/snapshots/atheros/packages/./kmod-nls-cp437_2.6.26.7-atheros-1_mips.ipk
Connecting to downloads.openwrt.org (195.56.146.238:80)
kmod-nls-cp437_2.6.2 100% |*********************************************************************************************************************************************************|  2954  --:--:-- ETA
Configuring kmod-nls-cp437</pre></td></tr></table></div>

<p><strong><span style="color: #800000;">Deuxième essai</span> :</strong> On progresse&#8230; mais ce n&#8217;est pas ça !</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p643code22'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p64322"><td class="code" id="p643code22"><pre class="sh" style="font-family:monospace;">root@OpenWrt:/# mount -t vfat /dev/sda1 /mnt/usbdrive/
mount: mounting /dev/sda1 on /mnt/usbdrive/ failed: Invalid argument
&nbsp;
root@OpenWrt:/# logread
...
Oct 16 08:42:28 OpenWrt user.err kernel: FAT: IO charset iso8859-1 not found
Oct 16 08:43:10 OpenWrt user.err kernel: FAT: IO charset iso8859-1 not found</pre></td></tr></table></div>

<p>Codage caractères ce coup-ci&#8230;</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p643code23'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p64323"><td class="code" id="p643code23"><pre class="sh" style="font-family:monospace;">root@OpenWrt:/# opkg list|grep iso88
kmod-nls-iso8859-1 - 2.6.26.5-atheros-1 - Kernel module for NLS ISO 8859-1 (Latin 1)
kmod-nls-iso8859-15 - 2.6.26.5-atheros-1 - Kernel module for NLS ISO 8859-15 (Latin 9)
kmod-nls-iso8859-2 - 2.6.26.5-atheros-1 - Kernel module for NLS ISO 8859-2 (Latin 2)
&nbsp;
root@OpenWrt:/# opkg install kmod-nls-iso8859-1
Installing kmod-nls-iso8859-1 (2.6.26.5-atheros-1) to root...
Downloading http://downloads.openwrt.org/snapshots/atheros/packages/./kmod-nls-iso8859-1_2.6.26.5-atheros-1_mips.ipk
Connecting to downloads.openwrt.org (195.56.146.238:80)
kmod-nls-iso8859-1_2 100% |*******************************|  2622  --:--:-- ETA
Configuring kmod-nls-iso8859-1</pre></td></tr></table></div>

<p><span style="color: #800000;"><strong>Troisième essai</strong></span> : C&#8217;est la bonne !</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p643code24'); return false;">View Code</a> SH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p64324"><td class="code" id="p643code24"><pre class="sh" style="font-family:monospace;">root@OpenWrt:/# mount -t vfat /dev/sda1 /mnt/usbdrive/
root@OpenWrt:/#</pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2008/10/24/openwrt-usbstorage-cle-usb/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
		<item>
		<title>Partitions &#8211; Labels et espaces réservés</title>
		<link>http://www.jopa.fr/index.php/2008/03/22/partitions-labels-et-espaces-reserves/</link>
		<comments>http://www.jopa.fr/index.php/2008/03/22/partitions-labels-et-espaces-reserves/#comments</comments>
		<pubDate>Sat, 22 Mar 2008 10:34:37 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Disque dur]]></category>
		<category><![CDATA[Partition]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/index.php/2008/03/22/partitions-labels-et-espaces-reserves/</guid>
		<description><![CDATA[Lors de la création d&#8217;un système de fichiers, sous Linux,   5% des blocs sont réservés par défaut pour des processus privilégiés. Ceci dans le but d&#8217;éviter la fragmentation du système de fichiers et de permettre au processus systèmes (syslogd entre autres) de fonctionner correctement en cas de saturation de la partition. &#160; La commande tune2fs [...]]]></description>
			<content:encoded><![CDATA[<p align="justify"><img src="http://www.jopa.fr/wp-content/uploads/2008/03/280_r.png" alt="280_R" align="left" /> Lors de la création d&#8217;un système de fichiers, sous Linux,   5% des blocs sont réservés par défaut pour des processus privilégiés. Ceci dans le but d&#8217;éviter la fragmentation du système de fichiers et de permettre au processus systèmes (syslogd entre autres) de fonctionner correctement en cas de saturation de la partition.</p>
<p align="justify"><span id="more-44"></span></p>
<p align="justify">&nbsp;</p>
<p align="justify">La commande <em>tune2fs </em>va nous permettre, grâce à son option <em>&laquo;&nbsp;-m&nbsp;&raquo;</em>  d&#8217;ajuster ce pourcentage.</p>
<p align="justify">Par exemple, la commande :</p>
<blockquote>
<p align="justify">     # tune2fs -m 1 /dev/sda1</p>
</blockquote>
<p>va réajuster la réservation à 1%, pour la partition<em> sda1.</em></p>
<p align="justify">&nbsp;</p>
<p style="text-align: center"><img src="http://www.jopa.fr/wp-content/uploads/2008/03/disque_dur_r.jpg" alt="rr" align="left" height="63" width="47" /></p>
<p align="justify">Une autre option de <em>tune2fs</em>, qui mérite un petit mot, est l&#8217;option <em>&laquo;&nbsp;-L&nbsp;&raquo;</em> qui va nous permettre de changer le nom (label) d&#8217;une partition.<br />
Ainsi :</p>
<blockquote><p> # tune2fs -L &laquo;&nbsp;MonDisqueAMoi&nbsp;&raquo; /dev/sda1</p></blockquote>
<p>va donner le nom &laquo;&nbsp;MonDisqueAMoi&nbsp;&raquo; à la partition <em>sda1</em>.</p>
<p align="justify">L&#8217;intérêt n&#8217;est pas des moindres puisque nous pourrons utiliser ce label à la place du <em>device</em> pour monter la partition. Bien pratique pour des périphériques USB, qui, en l&#8217;absence de règle <em>udev</em>, sont attachés aux devices en fonction de leur ordre de connexion.</p>
<p>Pour un montage manuel :</p>
<blockquote><p># mount -L MonDiqueAMoi /mnt/hd</p></blockquote>
<p>Ou dans le <em>/etc/fstab</em></p>
<blockquote><p> LABEL=MonDisqueAMoi      /mnt/hd    ext3    defaults    0    2</p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2008/03/22/partitions-labels-et-espaces-reserves/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sauvegardes par &#171;&#160;snapshots&#160;&#187; &#8211; La puissance de rsync et des liens durs</title>
		<link>http://www.jopa.fr/index.php/2008/03/18/sauvegardes-differentielles-la-puissance-de-rsync-et-des-liens-durs/</link>
		<comments>http://www.jopa.fr/index.php/2008/03/18/sauvegardes-differentielles-la-puissance-de-rsync-et-des-liens-durs/#comments</comments>
		<pubDate>Tue, 18 Mar 2008 22:00:42 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Scripts]]></category>
		<category><![CDATA[Disque dur]]></category>
		<category><![CDATA[Sauvegarde]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=23</guid>
		<description><![CDATA[Je stocke une quantité inimaginable de scripts, de bouts de codes, de documents, de photos et de projets en tout genre sur mon serveur de fichiers. Quelques Go qui représentent des années de ma vie &#171;&#160;numérique&#160;&#187;. Le temps passe, le volume des données augmente et il devient urgent de trouver un moyen de sauvegarde plus [...]]]></description>
			<content:encoded><![CDATA[<p><img src="http://www.jopa.fr/wp-content/uploads/2008/03/sauvegardes.jpg" alt="Sauvegardes" align="left" /></p>
<p align="justify">Je stocke une quantité inimaginable de scripts, de bouts de codes, de documents, de photos et de projets en tout genre sur mon serveur de fichiers. Quelques Go qui représentent des années de ma vie &laquo;&nbsp;numérique&nbsp;&raquo;. Le temps passe, le volume des données augmente et il devient urgent de trouver un moyen de sauvegarde plus rapide, plus efficace et surtout moins fastidieux que la gravure sur DVD. <span style="color: #808080;">- Vous remarquerez au passage la photo prise en exclusivité pour l&#8217;illustration de cet article et sa superbe mise en scène réalisée sur le plan de travail de ma cuisine -</span><br />
La sauvegarde sur DAT ou DLT étant bien trop onéreuse et surtout trop lente, j&#8217;ai opté pour le montage d&#8217;un serveur de sauvegardes &laquo;&nbsp;maison&nbsp;&raquo;.</p>
<p><span id="more-23"></span></p>
<h3>Mise en place :</h3>
<p>* Côté matériel, un petit Céléron 900Mhz de récupération fera très bien l&#8217;affaire. Je le gonfle un peu en montant la ram à 384Mo et attribue le gros du budget au stockage en lui offrant deux beaux disques dur IDE de 320Go  <span style="color: #808080;">-  Ca ! C&#8217;est classe ! -<br />
</span><br />
* Côté logiciel, une distribution Debian et un petit script qui combine <em>rsync</em> pour optimiser les transferts réseaux et des liens durs pour garder un historique en limitant l&#8217;espace disque utilisé.</p>
<p align="justify">Pour simplifier les choses, nous allons appeler le serveur de fichiers &laquo;&nbsp;<em><strong>serv_file</strong></em>&nbsp;&raquo; et le serveur de sauvegardes &laquo;&nbsp;<em><strong>serv_nas</strong></em>&laquo;&nbsp;.</p>
<p align="justify">Les présentations étant faites, commençons par générer un bi-clés pour <em>ssh</em> sur <strong><em>serv_nas</em> </strong>et faire une copie de la clef publique sur <strong><em>serv_file</em></strong>, pour que mon premier puisse parler à<em> </em>mon second<em>, </em>via <em>ssh</em> et sans avoir à fournir de mot de passe. C&#8217;est quand même bien plus pratique pour automatiser le bazar !</p>
<p>Concrètement,  comment fait-on ?<br />
Sur <strong><em>serv_nas</em></strong> :</p>
<blockquote>
<pre><strong>srv_nas:~# ssh-keygen</strong>
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
/root/.ssh/id_rsa already exists.
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
2d:40:c4:09:67:06:...b:bf:06 root@srv_nas</pre>
</blockquote>
<blockquote>
<pre><strong>srv_nas:~# ssh-copy-id root@srv_file</strong>
root@srv_file's password :</pre>
</blockquote>
<p>Tout c&#8217;est bien passé ?  L&#8217;ouverture d&#8217;une session ssh de <strong><em>serv_nas</em></strong> vers <strong><em>serv_file</em></strong> devrait se faire sans mot de passe. Essayons&#8230;</p>
<blockquote>
<pre><strong>srv_nas:~# ssh srv_file</strong>
Last login: Mon Mar 17 18:10:25 2008 from 192.168.7.102
Linux srv_file 2.6.18-6-686 #1 SMP Sun Feb 10 22:11:31 UTC 2008 i686</pre>
<pre>The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.</pre>
<pre>Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.</pre>
<pre>srv_file:~#
<strong>srv_file:~# exit</strong>

srv_nas~#</pre>
</blockquote>
<p>Si ce n&#8217;est pas déjà fait, il faut maintenant installer rsync sur les deux machines :</p>
<blockquote>
<pre><strong>srv_nas:~# aptitude install rsync
srv_nas:~# ssh srv_file aptitude install rsync</strong></pre>
</blockquote>
<h3>Le script &#8211; Initialisation</h3>
<p align="justify">Allez ! Fini la rigolade, passons au script&#8230;<br />
La première chose à faire est de déclarer quelques variables&#8230;C&#8217;est quand bien plus propre et ça facilite la modification du script par la suite.</p>
<ul>
<li>le nom serveur à sauvegarder (<strong>$SERVER</strong>),</li>
<li>le répetoire local de stockage des sauvegardes (<strong>$DST</strong>),</li>
<li>le fichier de log (<strong>$LOG</strong>),</li>
<li> et une date formatée qui va être utilisée pour &laquo;&nbsp;horodater&nbsp;&raquo; la sauvegarde (<strong>$DATE</strong>).</li>
</ul>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p23code29'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2329"><td class="code" id="p23code29"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
<span style="color: #666666; font-style: italic;">#------Début du fichier /usr/local/scripts/snapshot.sh</span>
&nbsp;
<span style="color: #007800;">SERVEUR</span>=<span style="color: #ff0000;">&quot;srv_file&quot;</span>
<span style="color: #007800;">DST</span>=<span style="color: #ff0000;">&quot;/srv/sauvegardes&quot;</span>
<span style="color: #007800;">LOG</span>=<span style="color: #ff0000;">&quot;/var/log/snapshot-<span style="color: #007800;">$SERVEUR</span>.log&quot;</span>
<span style="color: #007800;">DATE</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">date</span> +<span style="color: #000000; font-weight: bold;">%</span>y<span style="color: #000000; font-weight: bold;">%</span>m<span style="color: #000000; font-weight: bold;">%</span>d-<span style="color: #000000; font-weight: bold;">%</span>H<span style="color: #000000; font-weight: bold;">%</span>M<span style="color: #000000; font-weight: bold;">`</span></pre></td></tr></table></div>

<h3>Le script &#8211; rsync :</h3>
<p align="justify">L&#8217;étape suivante, va consister à boucler sur les répertoires à sauvegarder (etc, home, root, data, srv et var dans l&#8217;exemple) pour en faire un miroir dans un dossier local nommé &laquo;&nbsp;<em>current</em>&nbsp;&raquo; (/srv/sauvegardes/current). Ce dernier contiendra toujours la dernière image des fichiers sauvegardés.<br />
La commande <em>rsync</em> avec les options suivantes est la plus à même de réaliser ce travail :</p>
<ul>
<li>-r  (récursif) pour inclure les sous répertoires,</li>
<li>-a  (archive) pour conserver les propriétés et les droits du fichier original,</li>
<li>&#8211;delete pour supprimer du répertoire destination tout fichier qui ne serait plus présent dans le répertoire source. Cette option est impérative pour la suite des opérations.</li>
</ul>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p23code30'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2330"><td class="code" id="p23code30"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># SYNCHRONISATION</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Début de la sauvegarde le <span style="color: #780078;">`date +%D`</span> à <span style="color: #780078;">`date +%H:%M`</span> &quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
<span style="color: #000000; font-weight: bold;">for</span> REP <span style="color: #000000; font-weight: bold;">in</span> etc home root data srv var ;  <span style="color: #000000; font-weight: bold;">do</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;    *    Sauvegarde de  <span style="color: #007800;">$REP</span>&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
    rsync <span style="color: #660033;">-ra</span> <span style="color: #660033;">--delete</span> <span style="color: #007800;">$SERVEUR</span>:<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$REP</span> <span style="color: #007800;">$DST</span><span style="color: #000000; font-weight: bold;">/</span>current <span style="color: #000000;">2</span><span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
<span style="color: #000000; font-weight: bold;">done</span>;</pre></td></tr></table></div>

<p align="justify">Le grand intérêt dans l&#8217;utilisation de la commande <em>rsync</em> réside dans le fait que, contrairement à <em>scp</em>, elle ne va copier que les fichiers différents ou inexistants dans le répertoire destination et donc procurer un immense gain de bande passante et de temps.</p>
<h3>Le script &#8211; Les liens durs :</h3>
<p align="justify">La dernière étape va créer une image datée du répertoire <em>&laquo;&nbsp;current&nbsp;&raquo;</em>, avant que la prochaine synchronisation ne vienne en altérer le contenu, en optimisant l&#8217;espace disque utilisé.</p>
<p align="justify">Pour cette opération, la puissante des <em>liens dur</em>s va nous être très utile.</p>
<p align="justify"><span style="color: #800000;">Les<strong><em> liens durs </em></strong>associent deux ou plusieurs fichiers à un même espace sur le disque. Les deux fichiers restent indépendants, tout en partageant le même espace disque et donc le même inode . Toute modification de l&#8217;un, modifie l&#8217;autre, mais la suppression de l&#8217;un, casse le lien et ne supprime pas physiquement l&#8217;autre.</span></p>
<p align="justify">Dans notre cas, nous allons créer un lien dur de notre dossier &laquo;&nbsp;current&nbsp;&raquo; et de son contenu vers un dossier portant la valeur de notre variable $DATE (la date et l&#8217;heure du début de la sauvegarde).<br />
Il suffit pour cela d&#8217;utiliser la commande &laquo;&nbsp;<em>cp</em>&nbsp;&raquo;  avec les options :</p>
<ul>
<li>-l  (lien) pour la copie par lien dur,</li>
<li>-a  (archive) pour conserver les propriétés et droits des fichiers.</li>
</ul>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p23code31'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2331"><td class="code" id="p23code31"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;"># SNAPSHOT</span>
&nbsp;
<span style="color: #c20cb9; font-weight: bold;">cp</span> <span style="color: #660033;">-al</span> <span style="color: #007800;">$DST</span><span style="color: #000000; font-weight: bold;">/</span>current <span style="color: #007800;">$DST</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$DATE</span> <span style="color: #000000;">2</span><span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
&nbsp;
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Fin de la sauvegarde le <span style="color: #780078;">`date +%D`</span> à <span style="color: #780078;">`date +%H:%M`</span> &quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;========================================&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#------Fin du fichier /usr/local/scripts/snapshot.sh</span></pre></td></tr></table></div>

<h3>En résumé :</h3>
<p align="justify">Juste après l&#8217;exécution du script, le répertoire <em>current</em> et le répertoire &laquo;&nbsp;daté&nbsp;&raquo; sont identiques. Comme le second est créé par &laquo;&nbsp;liens durs&nbsp;&raquo;, aucun espace disque supplémentaire n&#8217;est consommé.</p>
<p align="justify">Lors de la sauvegarde suivante, la commande<em> rsync </em>va modifier le répertoire &laquo;&nbsp;<em>current&nbsp;&raquo;</em> :</p>
<ul>
<li>
<p align="justify">En effaçant les fichiers supprimés sur le serveur depuis la dernière sauvegarde &#8211; les liens durs pour ces fichiers seront cassés,</p>
</li>
<li>
<p align="justify">En ajoutant les fichiers créés sur le serveur &#8211; pas d&#8217;action sur les liens,</p>
</li>
<li>
<p align="justify">En recopiant tout fichier modifié sur le serveur, ce qui revient à supprimer l&#8217;ancienne version et créer la nouvelle &#8211; les liens portant sur les anciens fichiers seront cassés.</p>
</li>
</ul>
<p align="justify">En résumé, cette mécanique va permettre de garder un historique des fichiers du serveur, jour après  jour, en ne consommant que l&#8217;espace utilisé par les ajouts ou modifications de fichiers.</p>
<p style="text-align: center"><img src="http://www.jopa.fr/wp-content/uploads/2008/03/capture-ssh-srv_nas.png" alt="Capture" width="525" height="240" /></p>
<p style="text-align: left" align="left">
<p style="text-align: left" align="left">La notion de lien est complètement transparente pour l&#8217;utilisateur et sous chaque répertoire, nous retrouvons l&#8217;ensemble des fichiers, tels qu&#8217;ils étaient sur le serveur à la date correspondante; d&#8217;où le nom de &laquo;&nbsp;<em>snapshot</em>&nbsp;&raquo; donné à cette technique (et à mon script !)</p>
<p style="text-align: left" align="left">Pour finir, voici le petit script en un seul morceau :</p>
<p style="text-align: left" align="left">

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p23code32'); return false;">View Code</a> BASH</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p2332"><td class="code" id="p23code32"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
<span style="color: #666666; font-style: italic;">#------Début du fichier /usr/local/scripts/snapshot.sh</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># PARAMETRE</span>
<span style="color: #007800;">SERVEUR</span>=<span style="color: #ff0000;">&quot;srv_file&quot;</span>
<span style="color: #007800;">DST</span>=<span style="color: #ff0000;">&quot;/srv/sauvegardes&quot;</span>
<span style="color: #007800;">LOG</span>=<span style="color: #ff0000;">&quot;/var/log/snapshot-<span style="color: #007800;">$SERVEUR</span>.log&quot;</span>
<span style="color: #007800;">DATE</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">date</span> +<span style="color: #000000; font-weight: bold;">%</span>y<span style="color: #000000; font-weight: bold;">%</span>m<span style="color: #000000; font-weight: bold;">%</span>d-<span style="color: #000000; font-weight: bold;">%</span>H<span style="color: #000000; font-weight: bold;">%</span>M<span style="color: #000000; font-weight: bold;">`</span>
&nbsp;
<span style="color: #666666; font-style: italic;"># SYNCHRONISATION</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Début de la sauvegarde le <span style="color: #780078;">`date +%D`</span> à <span style="color: #780078;">`date +%H:%M`</span> &quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
<span style="color: #000000; font-weight: bold;">for</span> REP <span style="color: #000000; font-weight: bold;">in</span> etc home root data srv var ;  <span style="color: #000000; font-weight: bold;">do</span>
    <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;    *    Sauvegarde de  <span style="color: #007800;">$REP</span>&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
    rsync <span style="color: #660033;">-ra</span> <span style="color: #660033;">--delete</span> <span style="color: #007800;">$SERVEUR</span>:<span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$REP</span> <span style="color: #007800;">$DST</span><span style="color: #000000; font-weight: bold;">/</span>current <span style="color: #000000;">2</span><span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
<span style="color: #000000; font-weight: bold;">done</span>;
&nbsp;
<span style="color: #666666; font-style: italic;"># SNAPSHOT</span>
<span style="color: #c20cb9; font-weight: bold;">cp</span> <span style="color: #660033;">-al</span> <span style="color: #007800;">$DST</span><span style="color: #000000; font-weight: bold;">/</span>current <span style="color: #007800;">$DST</span><span style="color: #000000; font-weight: bold;">/</span><span style="color: #007800;">$DATE</span> <span style="color: #000000;">2</span><span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Fin de la sauvegarde le <span style="color: #780078;">`date +%D`</span> à <span style="color: #780078;">`date +%H:%M`</span> &quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;========================================&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> <span style="color: #007800;">$LOG</span>
&nbsp;
<span style="color: #666666; font-style: italic;">#------Fin du fichier /usr/local/scripts/snapshot.sh</span></pre></td></tr></table></div>

]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2008/03/18/sauvegardes-differentielles-la-puissance-de-rsync-et-des-liens-durs/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Effacer un disque dur en plusieurs passes</title>
		<link>http://www.jopa.fr/index.php/2008/03/17/effacer-un-disque-dur-en-plusieurs-passes/</link>
		<comments>http://www.jopa.fr/index.php/2008/03/17/effacer-un-disque-dur-en-plusieurs-passes/#comments</comments>
		<pubDate>Mon, 17 Mar 2008 21:21:44 +0000</pubDate>
		<dc:creator>Jopa</dc:creator>
				<category><![CDATA[Astuces]]></category>
		<category><![CDATA[Disque dur]]></category>
		<category><![CDATA[fichiers]]></category>
		<category><![CDATA[Sécurité]]></category>

		<guid isPermaLink="false">http://www.jopa.fr/?p=18</guid>
		<description><![CDATA[Certaines sociétés ont des exigences très strictes en matière d&#8217;effacement de disques durs. Parmi de nombreuses méthodes, les plus efficaces sont sans aucun doute celles utilisant un broyeur&#8230; Ces solutions comportent cependant quelques inconvénients, surtout quand il s&#8217;agit de réutiliser les disques. &#160; Je vais vous proposer une méthode un peu moins &#171;&#160;violente&#160;&#187; et qui, [...]]]></description>
			<content:encoded><![CDATA[<p align="justify"><img src="http://www.jopa.fr/wp-content/uploads/2008/03/logo_disque_dur.thumbnail.jpg" alt="Disque dur" align="left" />Certaines sociétés ont des exigences très strictes en matière d&#8217;effacement de disques durs. Parmi de nombreuses méthodes, les plus efficaces sont sans aucun doute celles utilisant un broyeur&#8230; Ces solutions comportent cependant quelques inconvénients, surtout quand il s&#8217;agit de réutiliser les disques.</p>
<p align="justify">&nbsp;</p>
<p align="justify">Je vais vous proposer une méthode un peu moins &laquo;&nbsp;violente&nbsp;&raquo; et qui, bien que logicielle, reste bien plus efficace qu&#8217;un simple formatage.</p>
<p><span id="more-18"></span></p>
<p align="justify"> Nous allons pour cela utiliser l&#8217;utilitaire <em>shred </em>qui permet de &laquo;&nbsp;<em>déchiqueter</em>&nbsp;&raquo; un fichier en effectuant plusieurs passes d&#8217;écritures.</p>
<p>Pour donner un exemple, la commande :</p>
<blockquote><p>$ shred -n 40 -z -u mon_secret.txt</p></blockquote>
<p>va :</p>
<ul>
<li> Réécrire 40 fois le fichier <em>mon_secret.txt </em>avec des données aléatoires (<strong>-n 40</strong>),</li>
<li>effectuer un dernier passage avec des &laquo;&nbsp;0&#8243; pour masquer le &laquo;&nbsp;déchiquetage&nbsp;&raquo; (<strong>-z </strong>),</li>
<li>puis, finalement, tronquer et supprimer le fichier (<strong>-u</strong>).</li>
</ul>
<p align="justify">Grâce à l&#8217;approche <em>Unix/Linux</em> des périphériques (&laquo;&nbsp;tout est fichiers&nbsp;&raquo;) , nous pouvons  utiliser la même commande sur un disque ou une partition (de préférence démontée).</p>
<blockquote><p> # shred -n 40 -z /dev/[périphérique]</p></blockquote>
<p align="justify">[périphérique] remplace le nom (handler) associé à la partition ou au disque :<br />
Sur la plupart des systèmes Linux, le premier disque dur IDE est /dev/hda, le premier disque dur SCSI ou SATA est /dev/sda, le deuxième disque dur IDE est /dev/hdb, et ainsi de suite.<br />
Pour donner un autre exemple, la commande qui permettra d’effacer le premier disque dur maître IDE sera :</p>
<blockquote><p> # shred -n 40 -z /dev/hda</p></blockquote>
<p>Si on ne souhaite traiter que la première partition de ce disque :</p>
<blockquote><p> # shred -n 40 -z /dev/hda<strong>1</strong></p></blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.jopa.fr/index.php/2008/03/17/effacer-un-disque-dur-en-plusieurs-passes/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>

