web-dev-qa-db-fra.com

Comment déverrouiller de manière permanente les partitions du lanceur en 16.04

J'ai essayé de déverrouiller les partitions du lanceur, mais elles réapparaissent après chaque redémarrage. Existe-t-il un bon moyen de supprimer définitivement les partitions du lanceur?

Cela se produit uniquement sur Ubuntu 16.04

enter image description here

2
Severus Tux

Bien que la solution ci-dessous ne soit pas un correctif à ce que semble être un bug mineur, vous pouvez l'utiliser comme solution de contournement pour mettre automatiquement les périphériques sur liste noire au démarrage (connectez-vous).

La solution

... est un petit script qui se souvient de vos éléments sur liste noire lors de la connexion. Il s'exécute avec deux arguments: get et set. Le premier consiste à lire les éléments de la liste noire actuelle, le second à (re) définir la liste sur la dernière version lue.

En pratique

  • Supprimez les appareils du lanceur Unity comme vous en avez l'habitude.
  • Exécutez la commande /path/to/remember_blacklist.sh get Cela fera un instantané des appareils actuellement sur liste noire.

Désormais, la prochaine fois que vous vous connecterez ou redémarrerez, les appareils figurant sur la liste noire seront automatiquement supprimés. Bien sûr, vous pouvez ajouter la commande à un raccourci.

Comment utiliser/configurer

  • Copiez le script ci-dessous dans un fichier vide, enregistrez-le sous remember_blacklist.sh

    #!/bin/bash
    
    arg=$1
    blacklist=~/.currblacklist
    key="com.canonical.Unity.Devices blacklist"
    
    if [ "$arg" == "get" ]
    then
     printf "$(gsettings get $key)" > $blacklist
    Elif [ "$arg" == "set" ]
    then
      if [ "$(cat $blacklist)" == "@as" ]
      then 
        gsettings set $key []
      else
        gsettings set $key "$(cat $blacklist)"
      fi
    fi
    
  • rendez-le exécutable (!)

  • Ajoutez les éléments suivants à Dashboard des applications de démarrage> Applications de démarrage> Ajouter. Ajoutez la commande

    /bin/bash -c "sleep 10 && /path/to/remember_blacklist.sh set"
    
  • Retirez les appareils du lanceur comme d'habitude
  • Pour vous en souvenir, exécutez: /path/to/remember_blacklist.sh get

Explication

Si vous supprimez un appareil du lanceur, il s'agit de liste noire. Vous pouvez lire la liste actuelle des appareils sur liste noire avec la commande:

gsettings get com.canonical.Unity.Devices blacklist

Cela produira quelque chose comme

['0A444ED409660B91-intern_1', '2899FAA548C61099-intern_2']

Ce que fait le script est:

  • lorsqu'il est exécuté avec l'argument get: il lit la liste noire actuelle et enregistre la sortie dans un fichier caché: ~/.currblacklist
  • lorsqu'il est exécuté avec l'argument set: il lit le contenu du fichier ~/.currblacklist et définit la liste noire avec la commande:

    gsettings set com.canonical.Unity.Devices blacklist <content_of_the_file>
    
5
Jacob Vlijm