[médias amovibles] Mes médias amovibles ne se monte plus automatiquement.

Reconnaissance et configuration du matériel / kernel linux
ignace72
Elfe
Messages : 520
Inscription : ven. 09 sept. 2011, 14:21

[médias amovibles] Mes médias amovibles ne se monte plus automatiquement.

Message par ignace72 »

Bonjour à tous.
Je suis sur Xfce avec thunar et mes cartes SD sur mon lecteur USB ne se monte plus.
J’ai bien tout coché dans Média et périphérique amovible.
La carte SD est bien vu par Gparted.
journalctl -afk me donne :

Code : Tout sélectionner

avril 24 17:43:04 ignace-pc kernel: sdg: detected capacity change from 120913920 to 0
avril 24 17:43:21 ignace-pc kernel: sd 16:0:0:0: [sdg] 120913920 512-byte logical blocks: (61.9 GB/57.7 GiB)
avril 24 17:43:21 ignace-pc kernel: sdg: detected capacity change from 0 to 120913920
avril 24 17:43:21 ignace-pc kernel:  sdg: sdg1
En attendant une solution, j’utilise le script shell suivant :

Code : Tout sélectionner

    #!/bin/sh
     
    usage()
    {
      echo "Utilisation :
      $0 [-u] [[/dev/]device | [/dev/disk/by-uuid/]uuid | [/dev/mapper/]uuid]
     
    Monte un système de fichier dans un sous-répertoire de /media via udisks ou
    udisks2.
    Si aucun périphérique n'est donné, fmount tente de deviner le dernier périphérique inséré.
     
    Option de l'application :
      -u Démonte le système de fichier
      -h Affiche ce message d'aide"
    }
     
    finddev()
    {
      DEV=$1
     
      if (echo $DEV | grep -q '^/dev/') && [ -e $DEV ]
      then
        echo $DEV
      fi
     
      if [ -e "/dev/disk/by-uuid/$DEV" ]
      then
        echo "/dev/disk/by-uuid/"$(echo $DEV | sed 's/.*/\L&/')
      fi
     
      if [ -e "/dev/$DEV" ]
      then
        echo "/dev/$DEV"
      fi
     
      if [ -e "/dev/mapper/$DEV" ]
      then
        echo "/dev/mapper/$DEV"
      fi
    }
     
    wrapper()
    {
      ACTION=$1
      DEVICE=$2
     
      case $ACTION in
        "mount")
          if [ -e /usr/bin/udisksctl ]
          then
            udisksctl mount -b $DEVICE
          else
            udisks --mount $DEVICE
          fi
          return $?
          ;;
        "umount")
          if [ -e /usr/bin/udisksctl ]
          then
            udisksctl unmount -b $DEVICE
          else
            udisks --unmount $DEVICE
          fi
          return $?
          ;;
        *)
          echo "Action invalide"
          return 1
          ;;
      esac
    }
     
    guesslast()
    {
      LOG=$(dmesg| tail -n 50 | grep 'Attached scsi generic' -A 11 | tail -n 12)
      PARTS=$(echo $LOG | grep "sd.: sd.")
      if [ "$PARTS" = "" ]
      then
        DEV=$(echo $LOG | sed '/\[sd/s/.*\[\(sd[^\]]*\)\].*/\1/')
      else
        DEV=$(echo $PARTS | sed '/sd.:/s/.*sd.: \(sd[^ ]*\).*/\1/')
      fi
      echo $DEV
    }
     
    ACTION="mount"
     
    if [ $# -ne 0 ] && [ $1 = "-u" ]
    then
      ACTION="umount"
      shift
    fi
     
    if [ $# -ne 0 ] && [ $1 = "-h" ]
    then
      usage
      exit 0
    fi
     
    if [ $# -ne 1 ]
    then
      DEV=$(guesslast)
    else
      DEV=$1
    fi
     
    DEV=$(finddev $DEV)
     
    if [ -z "$DEV" ]
    then
      echo "Impossible de trouver le périphérique $DEV."
      exit 1
    fi
     
    wrapper $ACTION $DEV
    exit $?

Si quelqu’un peut m’aider ?
Merci.
Ignace.
AMD Ryzen 3 1200 Quad-Core,32 Go de Ram DDR4, Wifi, USB3, S-ATA 3
21,5" LCD x2 sur AMD FirePro W5000 (pilote libre radeon).
KDE et BÉPO.
Site perso : https://ignace72.eu
Répondre