jeudi 16 avril 2015

Ubuntu / Mint - monter une carte SD en ligne de commande

Voici une petite recette de cuisine pour monter une carte SD en ligne de commande.

J'ai une machine juste derrière moi, bien utile mais son clavier est mort... je travaille donc en SSH (donc ligne de commande). J'ai pourtant besoin de récupérer les photographiques qui y sont stockées par mon Nikon D5000.
Voici donc une petite recette de cuisine:

Identifier le device (périphérique)
Insérer la carte SD puis taper la commade dmesg.
Les messages de debug nous indiquerons le périphérique /dev ou nous pourrons trouver notre carte SD.

[  557.134222] perf samples too long (2524 > 2500), lowering kernel.perf_event_max_sample_rate to 50000
[  576.595295] EXT4-fs (mmcblk0): VFS: Can't find ext4 filesystem
[  576.595747] EXT4-fs (mmcblk0): VFS: Can't find ext4 filesystem
[  576.596201] EXT4-fs (mmcblk0): VFS: Can't find ext4 filesystem
[  576.596552] FAT-fs (mmcblk0): bogus number of reserved sectors
[  576.596557] FAT-fs (mmcblk0): Can't find a valid FAT filesystem
[  576.597091] FAT-fs (mmcblk0): bogus number of reserved sectors
[  576.597095] FAT-fs (mmcblk0): Can't find a valid FAT filesystem
[  586.441706] FAT-fs (mmcblk0): bogus number of reserved sectors
[  586.441713] FAT-fs (mmcblk0): Can't find a valid FAT filesystem
[  625.835340] FAT-fs (mmcblk0p1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[  952.916270] mmc0: card 0007 removed
[ 1660.553681] mmc0: new SDHC card at address 0007
[ 1660.553936] mmcblk0: mmc0:0007 SD8GB 7.63 GiB
[ 1660.556428]  mmcblk0: p1


Le log nous indique clairement un périphérique mmcblk0 et en faisant un peu plus attention, nous avons même l'information sur la partition p1

Le périphérique est donc mmcblk0p1

Pour s'en convaincre, il suffit de faire un petit ls /dev/mmcblk0* et nous obtenons:

/dev/mmcblk0 
/dev/mmcblk0p1

Monter la carte SD
Dans Linux Mint 17, les périphériques externes sont montés dans /media/nom_utilisation/ .

Nous allons commencer par créer le répertoire sur-lequel nous allons monter la carte SD.
Dans l'exemple ci-dessous, dom est le nom d'utilisateur.

cd /media/dom
mkdir sdcard


Puis effectuer le montage en fat32 (type "vfat") très communément répandu pour les cartes SD d'appareil photo.

sudo mount -t vfat /dev/mmcblk0p1 /media/dom/sdcard

Voila, reste plus qu'a aller explorer la carte.

cd /media/dom/sdcard
cd DCIM
cd 100D5000
ls *.JPG

Démonter la carte

Avant d'éjecter la carte du lecteur, vous devez vous assurer que toutes les données sont bien écrites dessus. Pas besoin d'espionner les entrées/sorties, il suffit de démonter le périphérique (unmount), cette commande se chargera de faire le ménage et les dernière opérations d'écritures en attente.

Démonter un périphérique est aussi simple que:

sudo umount /media/dom/sdcard

Ne pas oublier de retirer le répertoire sur lequel nous avons monté le périphérique... ce dernier n'est plus utile.

cd /media/dom
rmdir sdcard