[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: RE : USB + ide-scsi + usb-storage



Guichard Ghyslain a écrit :

Je veux bien plus d'infos car j'ai le même souci.

dans ton /etc/fstab tu met un truc du genre
LABEL=cleusb /cle ext3 users,noauto,defaults 0 0
et tu couples çà avec hotplug ...
si tu veux plus d'info j'hesite pas je fais çà sans soucis chez moi

Merci d'avance.

Ghyslain


la commande e2label permet de donner un nom à un device pour pouvoir le représenter dans le fstab indépendamment de /dev/sd[x] ensuite hotplug permet de detecter l'introduction de tel ou tel peripherique et de le monter àl 'aide d'un script automatiquement. Pour cela, dans le fichier /etc/hotplug/usb.usermap rajouter une ligne du type : cleusb 0x0003 0x08ec 0x0011 0x0000 0x0000 0x00 0x00 0x00 0x00 0x00 0x00 0x0000000 0x08ec : represente l'id du constructeur et 0x0011 l'id du peripherique (ici je donne l'example pour ma cle usb iomega ie 0x08ec = iomega et 0x0011 = ma cle) cleusb : est le nom du script a lancer lors de l'introduction de ce peripherique (script a copier dans /etc/hotplug/usb/)

pour connaitre l'id constructeur et celui du peripherique, faire un cat de /proc/bus/usb/devices (il faut bien sur avoir /proc/bus/usb de monté pour celà)

PS : je joins mon script cleusb pour l'example (le script est un peu cracra, mais bon il marche)
#!/usr/bin/perl -w
use strict;
my $ligneHost ;
my $vendor    ;
my $bus       ;
my $host      ;
my $target    ;
my $lun       ;
my $type      ;
my $mount     ;

my $remover = $ENV{"REMOVER"};
my $action = $ENV{"ACTION"};


open(SCSI,"</proc/scsi/scsi");

$ligneHost=<SCSI>;


while (<SCSI>) {
  $ligneHost=$_;
  $vendor=<SCSI>;
  $type=<SCSI>;
  if ($ligneHost=~/^Host:\s+scsi(\d+)\s+Channel: (\d+)\s+Id:\s+(\d+)\s+Lun:\s+(\d+)/) {
    #Nouveau peripherique
    $host=$1;
    $bus=$2;
    $target=$3;
    $lun=$4;
    $host=~s/0(\d)/$1/;
    $bus=~s/0(\d)/$1/;
    $target=~s/0(\d)/$1/;
    $lun=~s/0(\d)/$1/;
    if ($vendor=~/Vendor: I0MEGA   Model: Mini 128\*IOM/) {
      $mount="mount -t ext3 -o users,exec,noauto,defaults /dev/scsi/host$host/bus$bus/target$target/lun$lun/part1 /cle";
      system($mount);
    }
  }
}
close(SCSI);

Reply to: