Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1276 connectés 

  FORUM HardWare.fr
  Linux et OS Alternatifs
  Installation

  monter automatiquement une clé usb ?? [résolu]

 


 Mot :   Pseudo :  
 
 Page :   1  2
Page Précédente
Auteur Sujet :

monter automatiquement une clé usb ?? [résolu]

n°229672
arghbis
salops de dauphins
Posté le 27-02-2003 à 09:08:40  profilanswer
 

salut tout le monde!!
je viens de recevoir ma clé usb et j'aimerais bien qu'elle se monte automatiquement lorsque je la branche!
auriez vous une idée, une piste??
 
chuis sous RH8 avec un kernel 2.4.xx et je sais bien sûr comment faire pour monter ma clé à la mano, mais le faire toujours en tant que root et à la main, c lourd!
 
 
merci!!
 
--edit--
 
c bourrin mais ça marche!! je donne le code demain (qd j'aurais mon pc koi!!)  [:spikler]


Message édité par arghbis le 27-02-2003 à 21:15:24
mood
Publicité
Posté le 27-02-2003 à 09:08:40  profilanswer
 

n°229676
jaycee
DivX is GooD :)
Posté le 27-02-2003 à 09:16:01  profilanswer
 

tu crées un script avec le sticky bit pour le faire...


---------------
DivX is GooD :)
n°229704
arghbis
salops de dauphins
Posté le 27-02-2003 à 09:56:23  profilanswer
 

sticky bit???

n°229764
e_esprit
Posté le 27-02-2003 à 11:36:33  profilanswer
 

tu peux essayer de regarder du cote de hotplug http://linux-hotplug.sourceforge.net.
Si t'y arrives, j'aimerais bien des explications parce que perso j'ai pas reussi...
 
Sinon y'a auto.fs qui peut peut etre fonctionner...

n°229768
Goon
Posté le 27-02-2003 à 11:39:55  profilanswer
 

Ah oui moi aussi ça m'intéresse !

n°229877
arghbis
salops de dauphins
Posté le 27-02-2003 à 13:54:49  profilanswer
 

bon alors j'ai rien compris du tout à hot plug (pas compris ce qu'il fallait modifier pour que ça marche).
cependant, je me pose une question : pour faire ce que je veux, il y une méthode bourrin :
- créer un script bash qui test si le periph sda1 (chez moi) est présent :  
       => si oui, tester s'il est monter, et s'il ne l'est pas, le monter
       => si non, on fait rien
 
-on met ça dans la crontab toutes les secondes et pis rulez!!
 
une méilleure idée?? untruc plus fin??

n°229915
arghbis
salops de dauphins
Posté le 27-02-2003 à 14:26:38  profilanswer
 

Code :
  1. #!/usr/bin/perl -w
  2. open (R, "/var/log/messages" );
  3. while (<R> )
  4. {
  5.     push (@lignes, $_);
  6. }
  7. $i=$#lignes;
  8. while ($i)
  9. {
  10.     if ($lignes[$i] =~ /kernel: hub\.c: USB new device connect/)
  11.     {
  12. open (R2, "/etc/mtab" );
  13. while (<R2> )
  14. {
  15.     if ($_ =~ /^\/dev\/sda1/)
  16.     {
  17.  $mount='ok';
  18.     }
  19. }
  20. close (R2);
  21. if (!$mount)
  22. {
  23.     `mount -t vfat /dev/sda1 /home/machin/usb`;
  24.     exit;
  25. }
  26. exit;
  27.     }
  28.     elsif ($lignes[$i] =~ /kernel: usb\.c: USB disconnect/)
  29.     {
  30. open (R2, "/etc/mtab" );
  31. while (<R2> )
  32. {
  33.     if ($_ =~ /^\/dev\/sda1/)
  34.     {
  35.  $mount='ok';
  36.     }
  37. }
  38. close (R2);
  39. if ($mount)
  40. {
  41.     `umount /home/machin/usb`;
  42.     exit;
  43. }
  44. exit;
  45.     }
  46.    
  47.     $i--;
  48. }
  49. close (R);


 
bon voilà, j'ai fais ça en perl (paske le perl c bon, mangez-en !!!  [:fuel] )! en manuel ça fait ce que je veux, alors je vais le mettre dans ma crontab!!
 
des remarques???
 
bon je sais, c bourrin, mais bon c simple et ça marche!! alors si jamais un gourou passe par là et a une méilleure idée, je prends!!

n°229927
arghbis
salops de dauphins
Posté le 27-02-2003 à 14:33:41  profilanswer
 

argh non, j'ai un bug!!
 
déjà je peux pas mettre un cront toutes les secondes et pis un pb de umount!
 
bon, je check!

n°229935
GUG
Posté le 27-02-2003 à 14:37:23  profilanswer
 

si tarrive a trouver comment faire pour toutes les secondes je veux bien ta methode :) j ai un archose et ce serait sympas :)
par contre je peux pas t aider sauf testersi camarche :D parceque moi et le perl hum

n°229944
e_esprit
Posté le 27-02-2003 à 14:47:19  profilanswer
 

cron ne fonctionne qu'en minute au mieux...
Par contre tu peux faire une boucle + sleep()
 
Pour le umount je vois pas trop comment tu vas gerer ca :-/

mood
Publicité
Posté le 27-02-2003 à 14:47:19  profilanswer
 

n°230019
arghbis
salops de dauphins
Posté le 27-02-2003 à 15:52:15  profilanswer
 

nouvelle version qui ce coup ci marche vraiment!!
 

Code :
  1. #!/usr/bin/perl -w
  2. while ()
  3. {
  4.     `sleep 5`;
  5.     open (R, "/var/log/messages" );
  6.    
  7.     while (<R> )
  8.     {
  9. push (@lignes, $_);
  10.     }
  11.     close (R);
  12.     $i=$#lignes;
  13.  
  14.     open (R2, "/etc/mtab" );
  15.     while (<R2> )
  16.     {
  17. if ($_ =~ /\/dev\/sda1/)
  18. {
  19.     $mount='ok';
  20. }
  21.     }
  22.          
  23.     close (R2);
  24.  
  25.     while ($i)
  26.     {
  27.  if ($lignes[$i] =~ /kernel: hub\.c: USB new device connect/)
  28. {
  29.     if (!$mount)
  30.     {
  31.  `mount -t vfat /dev/sda1 /home/machin/usb`;
  32.     }
  33.     last;
  34. }
  35. elsif ($lignes[$i] =~ /kernel: usb\.c: USB disconnect/)
  36. {
  37.     if ($mount)
  38.     {
  39.  `umount /home/machin/usb`;
  40.     }
  41.     last;
  42. }
  43. $i--;
  44.     }
  45.    
  46.     $mount='';
  47. }


 
bon par contre, je sais pas comment faire pour dire que l'utilisateur  "macin" monte le périph dans un dossier de son /home, et que c pas root qui s'en occupe!
paske pour l'instant, si tu mets ce script dans les actions du boot (au hasard rc.d5??) c root qui le fait, mais le user ne possède pas son dossier et le periph. Une idée??
 
en fait, je demande ça paske j'aimerais bien le mettre dans le bashrc ou profile pitêtre!!
 
en tout cas, j'attends vos commentaires!!
 
--edit--
comment on fait dans ce forum pour avoir une identation correecte et la coloration syntaxique???  :whistle:


Message édité par arghbis le 27-02-2003 à 15:53:44
n°230036
e_esprit
Posté le 27-02-2003 à 16:05:04  profilanswer
 

Comme ca :
 

Code :
  1. #!/usr/bin/perl -w
  2. while ()
  3. {
  4.     `sleep 5`;
  5.     open (R, "/var/log/messages" );
  6.    
  7.     while (<R> )
  8.     {
  9. push (@lignes, $_);
  10.     }
  11.     close (R);
  12.     $i=$#lignes;
  13.  
  14.     open (R2, "/etc/mtab" );
  15.     while (<R2> )
  16.     {
  17. if ($_ =~ /\/dev\/sda1/)
  18. {
  19.     $mount='ok';
  20. }
  21.     }
  22.          
  23.     close (R2);
  24.  
  25.     while ($i)
  26.     {
  27.  if ($lignes[$i] =~ /kernel: hub\.c: USB new device connect/)
  28. {
  29.     if (!$mount)
  30.     {
  31.  `mount -t vfat /dev/sda1 /home/machin/usb`;
  32.     }
  33.     last;
  34. }
  35. elsif ($lignes[$i] =~ /kernel: usb\.c: USB disconnect/)
  36. {
  37.     if ($mount)
  38.     {
  39.  `umount /home/machin/usb`;
  40.     }
  41.     last;
  42. }
  43. $i--;
  44.     }
  45.    
  46.     $mount='';
  47. }


Sinon ton histoire de monter par l'utilisateur, sépatro possible, car je te rapelle que Linux est un OS multi-utilisateurs, donc commentsavoir qui a pluggué la clef USB ???
 
Et pour le demontage, ca fonctionne ? alors que ton dev est plus la ?

n°230038
arghbis
salops de dauphins
Posté le 27-02-2003 à 16:06:27  profilanswer
 

oui oui, le démontage marche très bien!!
 
je veux pas vraiment le faire monter par le user, mais je cherche l'option de mount qui permet au user d'écrire sur le périph!! j'ai essayé -o user, mais ça marche poas!

n°230045
arghbis
salops de dauphins
Posté le 27-02-2003 à 16:19:33  profilanswer
 

allo????
y'a pas quelqu'un qui sait comment faire pour donner un accès en lecture à un user sur un periph monté par le root?? (sans faire de chmod bien sûr, uniquement avec une option de mount)
 
aller  [:kecje]

n°230047
Klaimant
?
Posté le 27-02-2003 à 16:20:34  profilanswer
 

arghbis a écrit :

allo????
y'a pas quelqu'un qui sait comment faire pour donner un accès en lecture à un user sur un periph monté par le root?? (sans faire de chmod bien sûr, uniquement avec une option de mount)
 
aller  [:kecje]  


 
mount --help  :whistle:  
 
La sortie :??: Ha oui c'est par la ...


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
n°230049
e_esprit
Posté le 27-02-2003 à 16:21:32  profilanswer
 

-o guid=group_user
ou  
-o mode=666
 
enfin un truc dans le style...
Apres je suppose que c'est de la fat32 donc y a peut etre des changement au niveau du nom des options...

n°230051
arghbis
salops de dauphins
Posté le 27-02-2003 à 16:22:16  profilanswer
 

tu voulais dire  :  [:sh@rdar]  
 
 
 [:madyodaseb]  [:fuel]  
 
Ps : sans rancune!!
 
edit
 
merci e_esprit, vais voir ça!!


Message édité par arghbis le 27-02-2003 à 16:22:54
n°230056
Klaimant
?
Posté le 27-02-2003 à 16:24:22  profilanswer
 

arghbis a écrit :

tu voulais dire  :  
 [:madyodaseb]  


 
:'(


---------------
Fais le ou ne le fais pas, mais il n'y a pas d'essai !!!
n°230057
arghbis
salops de dauphins
Posté le 27-02-2003 à 16:25:57  profilanswer
 

aller koi, fais pas la tête!! on rigole là!!
 
 :hello:

n°230068
arghbis
salops de dauphins
Posté le 27-02-2003 à 16:33:31  profilanswer
 

bon alors, aux dernières nouvelles, il prends pas en compte de chown ou chmod après le mount (spacool ça)!
 
sinon, j'ai ajouté une tite feature qui ouvre une fenêtre konqueror directement dans le dossier où est montée la clé (je m'en sert pas, mais c marrant de voir que ça marche!!)
 
j'attends toujours une idée pour permettre au user de pouvoir écrire dessus qd même!!

n°230072
freds45
Posté le 27-02-2003 à 16:39:21  profilanswer
 

Je m'incruste [:cupra], j'ai un petit pb avec un periph usb (un apn fuji) : s'il est branche lors du boot ca marche, mais si je branche une fois le systeme lance et que je fais mon mount, il dit que /dev/sda1 n'est pas un valid block device (de memoire)  :sweat:  
Comment je peux faire ? charger le module usb-storage que lorsque j'en ai besoin ? :heink:
 
Merci ! :hello:


---------------
Filmstory : gardez trace des films que vous avez vu ! :D
n°230074
arghbis
salops de dauphins
Posté le 27-02-2003 à 16:41:30  profilanswer
 

regardes le lien hotplug filé en haut de page, j'ai vu un truc sur le coldplug et un patch hotplug pour ton genre de périph!

n°230077
e_esprit
Posté le 27-02-2003 à 16:42:37  profilanswer
 

arghbis a écrit :

bon alors, aux dernières nouvelles, il prends pas en compte de chown ou chmod après le mount (spacool ça)!
 
sinon, j'ai ajouté une tite feature qui ouvre une fenêtre konqueror directement dans le dossier où est montée la clé (je m'en sert pas, mais c marrant de voir que ça marche!!)
 
j'attends toujours une idée pour permettre au user de pouvoir écrire dessus qd même!!


le -o mode=??? ne marche pas ?
zarb...

n°230080
arghbis
salops de dauphins
Posté le 27-02-2003 à 16:45:20  profilanswer
 

ben y'a rien dans la doc sur ton -mode!!

n°230083
Mjules
Modérateur
Parle dans le vide
Posté le 27-02-2003 à 16:46:10  profilanswer
 

pour le pb des droits :
 
déjà, il faut que le dossier de montage ai les bon droits
 
pour faire monter par le user, essaye de mettre une ligne dans fstab (man fstab) avec un umask=0
 


---------------
Celui qui pose une question est idiot 5 minutes. Celui qui n'en pose pas le reste toute sa vie. |  Membre du grand complot pharmaceutico-médico-scientifico-judéo-maçonnique.
n°230084
e_esprit
Posté le 27-02-2003 à 16:46:19  profilanswer
 

Autant pour moi, pour la fat c'est :
-o gid=group,umask=XXX
 

n°230092
arghbis
salops de dauphins
Posté le 27-02-2003 à 16:52:39  profilanswer
 

dans mon fstab, j'ai mis ça :
/dev/sda1          /mnt/USBkey          auto   rw,noauto,user,unhide     0 0
 
donc maintenant, faut que je mette le mnt/USBkey en 666??
c pas très sécurisé ça non??

n°230098
e_esprit
Posté le 27-02-2003 à 16:57:27  profilanswer
 

si t'as un group 'users' sert t'en !
gid="users",umask=660
 
Ou quelque chose dans le genre...
Sinon, tu peux toujours formater ta clef en ext2 (enfin peut etre... mais c'est risqué :D )

n°230101
arghbis
salops de dauphins
Posté le 27-02-2003 à 17:00:45  profilanswer
 

ben c possible de formater en ext2, mais le principe de clé usb c d'échanger les données entre différentes plateformes. Or, l'ext2 en dehors de linux, c pas bien lu (c possible, mais c pas simple), alors que la vfat est supportée pratiquement partout facilement!!
 
j'ai pas de groupe users!

n°230105
e_esprit
Posté le 27-02-2003 à 17:07:56  profilanswer
 

arghbis a écrit :

ben c possible de formater en ext2, mais le principe de clé usb c d'échanger les données entre différentes plateformes. Or, l'ext2 en dehors de linux, c pas bien lu (c possible, mais c pas simple), alors que la vfat est supportée pratiquement partout facilement!!
 
j'ai pas de groupe users!


Bah t'en crée un... ou un autre nom... enfin un groupe qui regroupe que tes utilisateurs autorisés a ecrire sur la clef.

n°230107
arghbis
salops de dauphins
Posté le 27-02-2003 à 17:09:18  profilanswer
 

ayé!!! ça marche!!
 
 [:spikler]  
 
j'ai ajouté mon user machin au groupe users, mis  
-o gid="users",umask=660
 
et ça rulez!!
 
re  [:spikler]

n°230110
arghbis
salops de dauphins
Posté le 27-02-2003 à 17:15:05  profilanswer
 

dernière question : y-a-t-il un moyen de faire faire une tache en root au login d'un utilisateur (genre un utilisateur se log et ça lance une commande enb root)??

n°230115
e_esprit
Posté le 27-02-2003 à 17:24:45  profilanswer
 

arghbis a écrit :

dernière question : y-a-t-il un moyen de faire faire une tache en root au login d'un utilisateur (genre un utilisateur se log et ça lance une commande enb root)??


regardes du coté de sudo...

n°230243
GUG
Posté le 27-02-2003 à 19:59:43  profilanswer
 

salut , le script marche tout seul ? ou il faut faire des manip en plus  
la je regarde du cote de hot plug mais ca a l air d etre le bordel ;)  

n°230277
arghbis
salops de dauphins
Posté le 27-02-2003 à 20:42:30  profilanswer
 

ben mon script marche tout seul et très bien d'ailleurs!!
le dernier code que j'ai donné marche, mais que pour root!
là je suis pas sur mon pc, donc je filerais le code demain, de même que le code écrit pour le service (je démarre le script au moment du boot, c plus pratique).
 
@demain

n°230299
GUG
Posté le 27-02-2003 à 21:00:56  profilanswer
 

oki merci :) tres sympas
ps hotplug c vraiment le bins ;)  

n°230486
arghbis
salops de dauphins
Posté le 28-02-2003 à 10:13:03  profilanswer
 

Code :
  1. #!/usr/bin/perl -w
  2. while ()
  3. {
  4.     `sleep 2`;
  5.     open (R, "/var/log/messages" );
  6.    
  7.     while (<R> )
  8.     {
  9. push (@lignes, $_);
  10.     }
  11.     close (R);
  12.     $i=$#lignes;
  13.  
  14.     open (R2, "/etc/mtab" );
  15.     while (<R2> )
  16.     {
  17. if ($_ =~ /\/dev\/sda1/)
  18. {
  19.     $mount='ok';
  20. }
  21.     }
  22.          
  23.     close (R2);
  24.  
  25.     while ($i)
  26.     {
  27.  if ($lignes[$i] =~ /kernel: hub\.c: USB new device connect/)
  28. {
  29.     if (!$mount)
  30.     {
  31.  `mount -t vfat -o gid="users",umask=660 /dev/sda1 /mnt/USBkey`;
  32.     }
  33.     last;
  34. }
  35. elsif ($lignes[$i] =~ /kernel: usb\.c: USB disconnect/)
  36. {
  37.     if ($mount)
  38.     {
  39.  `umount /dev/sda1`;
  40.     }
  41.     last;
  42. }
  43. $i--;
  44.     }
  45.    
  46.     $mount='';
  47.      @lignes='';
  48. }


 
alors ça c mon script perl, que j'ai appelé automountUSBKey.pl
 
maintenant, il faut mettre un automountUSBKey dans le /etc/init.d/ et le rendre exécutable :

Code :
  1. #!/bin/sh
  2. # description: mount auto for usb mass storage support
  3. # chkconfig: 2345 99 00
  4. case "$1" in
  5. 'start')
  6. perl /home/machin/automountUSBKey.pl & 2>&1 >/dev/null
  7. touch /var/lock/subsys/automountUSBKEY
  8. ;;
  9. 'stop')
  10. rm -f /var/lock/subsys/automountUSBKEY
  11. ;;
  12. *)
  13. echo "Usage: $0 { start | stop }"
  14. ;;
  15. esac
  16. exit 0


 
à modifier évidemment en fonction de votre arborescence de fichiers!!

n°230488
e_esprit
Posté le 28-02-2003 à 10:16:15  profilanswer
 

Et le demontage ca fonctionne ? il rale pas ?

n°230489
arghbis
salops de dauphins
Posté le 28-02-2003 à 10:17:52  profilanswer
 

ben pq il ralerait????  [:the time]

n°230492
e_esprit
Posté le 28-02-2003 à 10:25:08  profilanswer
 

arghbis a écrit :

ben pq il ralerait????  [:the time]  


Parce que quand tu lui dit de demonter, le device n'est deja plus la, (puisque la commande umount est executé quand le périphérique a été detecté comme 'disconnected';).

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2
Page Précédente

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Linux et OS Alternatifs
  Installation

  monter automatiquement une clé usb ?? [résolu]

 

Sujets relatifs
[Blackbox] Lancer un programme automatiquement au démarrage ?[RESOLU] Soucis avec cdrecord
prob eroaster et dépendances [résolu]Squid : Prob de configuration <= Résolu
[Boulay inside] [Graveur] : il grave mais n'importe quoi. RESOLU ![Resolu] probleme de route sur passerelle
[RESOLU] Comment tester si FIND renvoi quelques chosesprobleme curieux avec un script [RESOLU]
Utiliser linux en cluster weblogic pour monter un site web[Debian] gérer les daemon [résolu]
Plus de sujets relatifs à : monter automatiquement une clé usb ?? [résolu]


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR