Montage automatique de clés USB sur Debian


10

J'utilise Debian Squeeze sur un ordinateur plug (donc SSH uniquement, pas d'interface graphique) et ce que j'essaie de faire, c'est de l'obtenir de sorte que lorsqu'une clé USB est branchée, elle soit automatiquement montée.

Ce que j'ai fait, c'est installer autofsqui, d'après ce que j'ai rassemblé, gère le montage automatique à condition qu'il sache où se trouve l'appareil /dev.

Le problème est que la clé USB ne porte pas toujours le même nom d'appareil. Parfois c'est /dev/sdc1, parfois /dev/sdd1, etc.

Je suppose que pour y remédier, je dois utiliser udevpour m'assurer que la clé USB porte toujours le même nom.

J'ai obtenu les informations suivantes de udevadm:

Udevadm info starts with the device specified by the devpath and then
walks up the chain of parent devices. It prints for every device
found, all possible attributes in the udev rules key format.
A rule to match, can be composed by the attributes of the device
and the attributes from one single parent device.

  looking at device '/block/sdd/sdd1':
    KERNEL=="sdd1"
    SUBSYSTEM=="block"
    DRIVER==""
    ATTR{partition}=="1"
    ATTR{start}=="63"
    ATTR{size}=="129339"
    ATTR{ro}=="0"
    ATTR{alignment_offset}=="0"
    ATTR{discard_alignment}=="0"
    ATTR{stat}=="      31      244      275      190        0        0        0        0        0      190      190"
    ATTR{inflight}=="       0        0"

  looking at parent device '/devices/platform/orion-ehci.0/usb1/1-1/1-1.2/1-1.2:1.0/host8/target8:0:0/8:0:0:0/block/sdd':
    KERNELS=="sdd"
    SUBSYSTEMS=="block"
    DRIVERS==""
    ATTRS{range}=="16"
    ATTRS{ext_range}=="256"
    ATTRS{removable}=="1"
    ATTRS{ro}=="0"
    ATTRS{size}=="129439"
    ATTRS{alignment_offset}=="0"
    ATTRS{discard_alignment}=="0"
    ATTRS{capability}=="51"
    ATTRS{stat}=="      56      727      783      520        0        0        0        0        0      520      520"
    ATTRS{inflight}=="       0        0"
    ATTRS{events}=="media_change"
    ATTRS{events_async}==""
    ATTRS{events_poll_msecs}=="-1"

  looking at parent device '/devices/platform/orion-ehci.0/usb1/1-1/1-1.2/1-1.2:1.0/host8/target8:0:0/8:0:0:0':
    KERNELS=="8:0:0:0"
    SUBSYSTEMS=="scsi"
    DRIVERS=="sd"
    ATTRS{device_blocked}=="0"
    ATTRS{type}=="0"
    ATTRS{scsi_level}=="3"
    ATTRS{vendor}=="        "
    ATTRS{model}=="Flash Disk      "
    ATTRS{rev}=="2.00"
    ATTRS{state}=="running"
    ATTRS{timeout}=="30"
    ATTRS{iocounterbits}=="32"
    ATTRS{iorequest_cnt}=="0x90"
    ATTRS{iodone_cnt}=="0x90"
    ATTRS{ioerr_cnt}=="0x0"
    ATTRS{modalias}=="scsi:t-0x00"
    ATTRS{evt_media_change}=="0"
    ATTRS{queue_depth}=="1"
    ATTRS{queue_type}=="none"
    ATTRS{max_sectors}=="240"

  looking at parent device '/devices/platform/orion-ehci.0/usb1/1-1/1-1.2/1-1.2:1.0/host8/target8:0:0':
    KERNELS=="target8:0:0"
    SUBSYSTEMS=="scsi"
    DRIVERS==""

  looking at parent device '/devices/platform/orion-ehci.0/usb1/1-1/1-1.2/1-1.2:1.0/host8':
    KERNELS=="host8"
    SUBSYSTEMS=="scsi"
    DRIVERS==""

  looking at parent device '/devices/platform/orion-ehci.0/usb1/1-1/1-1.2/1-1.2:1.0':
    KERNELS=="1-1.2:1.0"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb-storage"
    ATTRS{bInterfaceNumber}=="00"
    ATTRS{bAlternateSetting}==" 0"
    ATTRS{bNumEndpoints}=="02"
    ATTRS{bInterfaceClass}=="08"
    ATTRS{bInterfaceSubClass}=="06"
    ATTRS{bInterfaceProtocol}=="50"
    ATTRS{modalias}=="usb:v1976p6025d0100dc00dsc00dp00ic08isc06ip50"
    ATTRS{supports_autosuspend}=="1"

  looking at parent device '/devices/platform/orion-ehci.0/usb1/1-1/1-1.2':
    KERNELS=="1-1.2"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="80"
    ATTRS{bMaxPower}=="100mA"
    ATTRS{urbnum}=="383"
    ATTRS{idVendor}=="1976"
    ATTRS{idProduct}=="6025"
    ATTRS{bcdDevice}=="0100"
    ATTRS{bDeviceClass}=="00"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="00"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{speed}=="12"
    ATTRS{busnum}=="1"
    ATTRS{devnum}=="11"
    ATTRS{devpath}=="1.2"
    ATTRS{version}==" 1.10"
    ATTRS{maxchild}=="0"
    ATTRS{quirks}=="0x0"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{authorized}=="1"

  looking at parent device '/devices/platform/orion-ehci.0/usb1/1-1':
    KERNELS=="1-1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="e0"
    ATTRS{bMaxPower}=="100mA"
    ATTRS{urbnum}=="197"
    ATTRS{idVendor}=="1a40"
    ATTRS{idProduct}=="0101"
    ATTRS{bcdDevice}=="0111"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="01"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{speed}=="480"
    ATTRS{busnum}=="1"
    ATTRS{devnum}=="2"
    ATTRS{devpath}=="1"
    ATTRS{version}==" 2.00"
    ATTRS{maxchild}=="4"
    ATTRS{quirks}=="0x0"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{authorized}=="1"
    ATTRS{product}=="USB 2.0 Hub"

  looking at parent device '/devices/platform/orion-ehci.0/usb1':
    KERNELS=="usb1"
    SUBSYSTEMS=="usb"
    DRIVERS=="usb"
    ATTRS{configuration}==""
    ATTRS{bNumInterfaces}==" 1"
    ATTRS{bConfigurationValue}=="1"
    ATTRS{bmAttributes}=="e0"
    ATTRS{bMaxPower}=="  0mA"
    ATTRS{urbnum}=="24"
    ATTRS{idVendor}=="1d6b"
    ATTRS{idProduct}=="0002"
    ATTRS{bcdDevice}=="0206"
    ATTRS{bDeviceClass}=="09"
    ATTRS{bDeviceSubClass}=="00"
    ATTRS{bDeviceProtocol}=="01"
    ATTRS{bNumConfigurations}=="1"
    ATTRS{bMaxPacketSize0}=="64"
    ATTRS{speed}=="480"
    ATTRS{busnum}=="1"
    ATTRS{devnum}=="1"
    ATTRS{devpath}=="0"
    ATTRS{version}==" 2.00"
    ATTRS{maxchild}=="1"
    ATTRS{quirks}=="0x0"
    ATTRS{avoid_reset_quirk}=="0"
    ATTRS{authorized}=="1"
    ATTRS{manufacturer}=="Linux 2.6.38.8 ehci_hcd"
    ATTRS{product}=="Marvell Orion EHCI"
    ATTRS{serial}=="orion-ehci.0"
    ATTRS{authorized_default}=="1"

  looking at parent device '/devices/platform/orion-ehci.0':
    KERNELS=="orion-ehci.0"
    SUBSYSTEMS=="platform"
    DRIVERS=="orion-ehci"
    ATTRS{modalias}=="platform:orion-ehci"

  looking at parent device '/devices/platform':
    KERNELS=="platform"
    SUBSYSTEMS==""
    DRIVERS==""

J'ai essayé d'écrire des udevrègles pour forcer la clé USB à prendre le nom /dev/usbstickmais jusqu'à présent, je n'ai pas réussi.

Quelqu'un peut-il m'aider avec quelle règle je dois spécifier dans mon fichier de règles pour que cette clé USB obtienne toujours le même nom?

- Ou, y a-t-il un moyen beaucoup plus simple de monter automatiquement la clé USB qui me manque complètement?

METTRE À JOUR

OK, j'ai donc fait des progrès. J'ai ajouté la règle suivante:

SUBSYSTEMS=="scsi", ATTRS{model}=="Flash Disk ", DRIVERS=="sd", NAME="usbstick-%k" RUN+="mkdir /mnt/usbstick-%k; mount /dev/usbstick-%k /mnt/usbstick-%k"

Je sais que cela nécessite encore un peu de travail en termes de gestion de l'ajout / suppression, mais ce n'est qu'un test de base pour l'instant.

L'effet de ceci est que je parviens maintenant à obtenir trois nouveaux nœuds de périphérique /dev, à savoir /dev/usbstick-sdc, /dev/usbstick-sdc1et usbstick-sg2.

Cependant, ce que j'ai trouvé, c'est que le code de la RUNsection ne s'exécute qu'une seule fois et ne fait qu'un répertoire mnt/usbstick-sdc. J'ai également constaté que le répertoire est toujours vide, donc quelque chose ne tourne toujours pas rond! (même si je progresse).


Cette seconde était-elle /dev/sdc1censée être sdd1? Et vous pouvez utiliser blkidpour identifier de manière unique le lecteur (enfin, en fait la partition; cela changera si vous reformatez).
Kevin

Correct, juste corrigé ça. Tout ce que je veux, c'est que lorsqu'une clé USB est branchée, elle soit montée dans un répertoire. Je suis presque sûr que je devrais utiliser une udevrègle pour créer des nœuds de périphérique pour chaque partition, mais je ne sais pas pour quel niveau de udevadmsortie créer des règles!
jon

Votre règle semble trop compliquée. Essayez d'en faire un simple, avec juste un ACTION==, un KERNEL==et un ATTRS{something}==(c'est complètement faisable - c'est ce que j'utilise). Pensez également à exécuter un seul script à partir de la chaîne de commandes de RUN+=.
rozcietrzewiacz

Merci pour le conseil, mais la question demeure: quel niveau de l'arborescence des appareils dois-je cibler avec ma règle? Tout cela semble terriblement déroutant et il n'y a vraiment pas beaucoup d'informations en ligne pour expliquer cela. J'apprécie vraiment le temps que vous avez pris pour m'expliquer jusqu'à présent, j'ai l'impression que j'y suis presque mais que je manque juste le niveau à cibler.
jon

J'ai maintenant essayé cette règle très basique: KERNEL=="sd??", NAME="%k", RUN+="mkdir /mnt/usbstick-%k; mount /dev/usbstick-%k /mnt/usbstick-%k"- mais non, bien sûr, cela ne fonctionne pas non plus. Je suis de plus en plus frustré après avoir passé presque toute la journée à essayer simplement de trouver un moyen de brancher une clé USB pour qu'elle se monte. Les choses devraient-elles vraiment être si difficiles? La sortie de udevadm test /sys/block/sddest - bien sûr - pratiquement illisible, donc je n'ai aucun moyen de savoir où je me trompe. Quelqu'un peut-il m'orienter dans la bonne direction à ce sujet?
jon

Réponses:


13

J'ai pensé qu'il devrait y avoir un moyen beaucoup plus facile de résoudre un problème aussi courant, et c'est le cas. Voici ce que j'ai essayé sur mon serveur Wheezy / Sid:

sudo apt-get install usbmount

Branchez la clé USB, c'est fait! Mon stick est désormais accessible via /media/usb.

Btw, usbmount n'a pas de page de manuel, veuillez lire à la /usr/share/doc/usbmount/README.gzplace. Il semble que usbmount monte votre stick avec l'option de synchronisation par défaut. Il pourrait être bien mieux pour votre bâton de le monter en mode asynchrone et de l'exécuter syncou umountavant de le débrancher. C'est configurable.


voir aussipumount
Alex

Faites attention qui usbmountne supporte plus NTFS depuis Debian Jessie: bugs.debian.org/774149
malat

En exécutant cela sur Debian Jessie, usbmount ne semble jamais le monter. La page du package indique qu'elle n'est plus maintenue et j'exécute systemd. Je me demande si ce paquet ne fonctionne plus avec les modifications de systemd?
Travis Griggs du

En effet, n'a pas fonctionné pour moi sur Jessie, voir ma réponse (ceci: ddumont.wordpress.com/2015/09/27/… a fonctionné)
Paul

2

Notez que vous ne pouvez pas simplement avoir un seul nœud de périphérique pour représenter n'importe quelle clé USB connectée. Et si vous en branchez deux? Ou lorsque la clé USB a plus d'une partition?

Généralement, ce que vous utilisez pour créer un nœud d'appareil nommé personnalisé est SYMLINK+=. grep dans les règles pour voir comment il est utilisé: grep SYMLINK /etc/udev/rules.d/*. Comme dans toutes les commandes déclenchées par udev, vous pouvez utiliser certaines variables significatives décrites dans man udev. Vous pourriez vous rendre compte que vous n'avez pas vraiment besoin de donner un nom personnalisé à l'appareil, car vous pouvez donner son nom à un script (via la %kvariable).

En ce qui concerne la solution de montage automatique, jetez un œil à l' UAM , que j'ai décrit un peu dans la réponse à cette question .


Je comprends ces contraintes. En l'occurrence, je n'ai besoin que de prendre en charge une seule clé USB connectée à un moment donné à ce système particulier. Cependant, je devrais prendre en charge plusieurs partitions sur la clé USB (ce serait bien si elles pouvaient être montées dans des sous-dossiers à partir du point de montage). Compte tenu de ces exigences, avez-vous des conseils pour une solution potentielle? En raison de la nature du projet, je dois éviter d'utiliser autant que possible des logiciels tiers supplémentaires.
jon

Jetez ensuite un œil à l'édition que je viens de faire (la partie centrale). Serait-ce suffisant?
rozcietrzewiacz

Notez également que UAM n'est pas vraiment un programme - c'est un tas de bonnes udevrègles avec des scripts d'accompagnement. Vous pouvez consulter les règles et les adapter facilement à vos besoins.
rozcietrzewiacz

Merci pour le conseil. Une autre chose: pensez-vous que vous pourriez regarder ma sortie udevadmet me dire de quel appareil est le périphérique que je devrais réellement cibler avec ma règle? Les divers exemples que j'ai vus en ligne semblent tous impliquer des arbres beaucoup plus courts et chaque exemple semble cibler un niveau différent de périphérique, sans aucune explication sur celui qui devrait être ciblé et pourquoi.
jon

Vous venez d'ajouter une mise à jour ci-dessus, des idées? Merci!
jon

2

Voici comment je l'ai fait récemment, et je suis maintenant très satisfait de cette approche. C'est pour Ubuntu 12.04 + Gentoo, mais je suppose que toute distribution, qui permet d'installer udev et autofs devrait fonctionner.

Prérequis: Vous devez avoir installé udev + autofs.

Étape 1)

Créez le fichier "/etc/udev/rules.d/90-usbsd-auto.rules" suivant (vous pouvez bien sûr utiliser n'importe quel nom tant qu'il se termine par ".rules"). :

# Add symlink /dev/usbdisks/<label> to /dev/sd[a-z][1-9] 
# for automounter support

ACTION=="add", KERNEL=="sd*", ENV{DEVTYPE}=="partition", \
    ENV{ID_BUS}=="usb", \
    SYMLINK+="usbdisks/%k", MODE:="0660", \
    RUN+="/bin/rm /media/usb/%k", \
    RUN+="/bin/ln -sf /media/autousb/%k /media/usb/%k"

# Some FileSystems emit a "change" event when they are unmounted.
# UDEV seems to delete the device symlink in this case :-(
# So we need to re-create it here
ACTION=="change", KERNEL=="sd*", ENV{DEVTYPE}=="partition", \
    ENV{ID_BUS}=="usb", \
    SYMLINK+="usbdisks/%k", MODE:="0660"


# When device is removed, also remove /media/usb/<...>
ACTION=="remove", KERNEL=="sd*", ENV{DEVTYPE}=="partition", \
    ENV{ID_BUS}=="usb", \
    RUN+="/bin/rm /media/usb/%k"

Qu'est-ce que cela fait: il crée deux liens symboliques, un pour la partition du périphérique de stockage USB sous "/ dev / usbdisks / <...>".

Le deuxième lien symbolique reliera de "/ media / usb / <...>" à "/ media / autousb / <...>" ceci est fait pour le support de montage automatique (voir l'étape 2).

Pour vous assurer que udev lit ces règles, utilisez

sudo udevadm control --reload-rules

Remarque: Même nom pour la même clé USB: Possible mais peut-être dangereux: Vous pouvez utiliser par exemple "$ env {ID_FS_LABEL_ENC}", au lieu de "% k" dans les règles UDEV ci-dessus. Cela utilisera l'étiquette de volume pour créer / media / usb / <...>, mais que se passe-t-il si vous branchez deux clés USB et que les deux utilisent la même étiquette de volume ...

Avec ce fichier de règles udev, tout est configuré pour monter automatiquement la partition du périphérique de stockage USB. Notez cependant que pour le moment, l'appareil ne sera PAS monté automatiquement (intentionnellement). Il sera monté automatiquement une fois que vous l'utiliserez avec

Étape 2)

Configurer autofs pour monter automatiquement / media / autousb / <...>: J'ai ajouté la ligne suivante à mon fichier "/etc/auto.master" (pour Ubuntu 12.04):

/media/autousb /etc/auto.usb --timeout=60

Cela signifie qu'AutoFS démontera l'appareil après 60 secondes d'inactivité. Vous voudrez peut-être en utiliser moins ou plus, selon votre goût.

Pour Gentoo, vous devez modifier "/etc/autofs/auto.master" afin qu'il soit logique d'utiliser

/media/autousb /etc/autofs/auto.usb --timeout=60

Maintenant, j'ai créé "auto.usb" avec le contenu suivant:

#!/bin/bash

key=${1}
fstype=$(/sbin/blkid -o value -s TYPE /dev/usbdisks/${key})
if [ "${fstype}" = "vfat" ] ; then
  echo "-fstype=vfat,sync,uid=0,gid=plugdev,umask=007 :/dev/usbdisks/${key}"
  exit 0
fi
if [ "${fstype}" = "ntfs" ] ; then
  echo "-fstype=fuse.ntfs-3g,sync,uid=0,gid=plugdev,umask=007 :/dev/usbdisks/${key}"
  exit 0
fi
if [ "${fstype}" = "ext4" ] ; then
  echo "-fstype=ext4,sync,nocheck :/dev/usbdisks/${key}"
  exit 0
fi

exit 1

Ce fichier auto.usb doit être exécutable, afin que autofs l'utilise comme un script (bash). Donc par exemple

sudo chmod 0755 /etc/auto.usb

Qu'est-ce que cela fait: ce script indiquera à AutoFS (/ usr / sbin / automount) comment monter la partition du périphérique de stockage USB.

Le script utilisera d'abord "/ sbin / blkid" pour savoir quel type de système de fichiers se trouve sur la partition.

Le script fournira alors les bonnes options de montage en fonction de la partition du périphérique.

Remarque: J'ai inclus un exemple de code pour les systèmes de fichiers "vfat" (probablement les plus courants pour les clés USB), "ntfs" et "ext4". Bien sûr, il est assez facile de l'étendre pour prendre en charge davantage de systèmes de fichiers.

Étape 3)

Facultatif ... Pour "éjecter" == démonter votre clé USB (ou vos partitions sur votre clé USB), créez un script sous / sbin / usbeject:

#!/bin/bash
# make sure everything is written to USB disk(s)
sync
# sending SIUGSR1 to automount will unmount the media
killall -s SIGUSR1 /usr/sbin/automount

Avec ce script, vous pouvez utiliser "sudo usbeject" pour démonter toutes les partitions de périphérique USB montées (en disant à automount de les démonter).

Bien sûr, vous pouvez simplement vous assurer que la partition n'est utilisée nulle part; automounter démontera ensuite la partition après l'expiration du délai de 60 secondes ...

La vraie astuce ici est d'utiliser des liens symboliques de "/ media / usb" vers "/ media / autousb":

  • Les liens symboliques "/ media / usb" seront créés par udev, donnant à un utilisateur un aperçu simple des partitions de périphérique de stockage usb présentes
  • AutoFS montera ensuite automatiquement la partition à la demande si vous l'utilisez via / media / usb
  • Avec le fichier scripté "auto.usb", vous pouvez prendre en charge tout type de système de fichiers et vous pouvez également prendre en charge tout type de schéma de dénomination.
  • Cette approche prend en charge les clés USB avec plusieurs partitions, même si ces partitions utilisent différents types de système de fichiers.

Puis-je vous montrer comment l'indice autofs détruit mon répertoire / home / frank? Je vous remercie.
Frank

1

Désolé de répondre à ma propre question, et merci beaucoup à rozcietrzewiacz pour sa contribution, mais j'ai finalement réussi à faire des progrès importants en utilisant la règle suivante après des heures de lecture en ligne:

SUBSYSTEMS=="scsi", KERNEL=="sd[a-h]1", SYMLINK+="removable", RUN+="/bin/mount /dev/removable /path/to/mount"

Cela montera la première partition de tout périphérique SCSI. Je suppose que la question suivante sera de savoir comment monter plusieurs partitions, mais c'est un autre problème pour un autre jour.


1
Ce n'est pas une bonne règle. Cela correspondra également aux partitions des disques durs . il y a un removableattribut que vous devriez tester, et non à la blockplace scsi.
rozcietrzewiacz

1

J'ai trouvé que la meilleure réponse est devenue obsolète, car elle n'est pas maintenue et ne fonctionne pas sur / depuis Jessie (voir le commentaire de malat)

Pour moi (sur Jessie), la solution de ce blog a fonctionné comme un charme.

Crédits à "ddumont", mais en affichant ici un aperçu de son blog / réponse, pour faire face à une éventuelle pourriture des liens à l'avenir.

Ajoutez la ligne suivante à /etc/fstab

/dev/sr0 /media/bluray auto defaults,nofail,x-systemd.automount 0 2

Vous pouvez le faire en utilisant nano:

sudo nano /etc/fstab

Explication:

/dev/sr0est le fichier du périphérique. Vous pouvez également utiliser l'un des liens symboliques configurés par udev dans / dev / disk / by-id. Vous devrez le modifier en fonction du fichier de votre appareil ( sudo fdisk -lpour répertorier les appareils)

/media/blurayest le point de montage. Vous pouvez choisir un autre point de montage

nofail est nécessaire pour éviter le rapport d'échec lors du démarrage sans disque dans le lecteur optique

x-systemd.automount est l'option pour configurer systemd pour monter automatiquement le disque inséré

Ne spécifiez pas noauto: cela empêcherait systemd de monter automatiquement un disque, ce qui va à l'encontre de l'objectif.

Tester

Exécutez la commande journalctl -x -fdans un terminal pour vérifier ce qui se passe avec systemd

Rechargez la configuration systemd avec sudo systemctl daemon-reload.

charger un disque dans votre lecteur optique

Ensuite, journalctl devrait montrer quelque chose comme:

Sept. 27 16:07:01 frodo systemd[1]: Mounted /media/bluray.

Plus loin

Pour monter avec succès des lecteurs NTFS, j'ai dû installer ntfs-3g (anciens ntfsprogs)

sudo apt-get install ntfs-3g

Je n'ai pas eu à installer hfsprogs pour faire fonctionner une clé USB au format OSX, mais vous devriez le vérifier vous-même.


Il ne se monte pas automatiquement sur ma jesse Debian avec un disque dur USB.
buhtz

@buhtz mais le montage manuel fonctionne? En fait, les étapes ci-dessus ne fonctionnaient pour moi que pour les disques qui étaient dans le système au démarrage, pas pour l'insertion et la suppression "dynamiques" d'USB pendant que le système fonctionne.
Paul
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.