如何在16.04中从启动器永久解锁分区

我试图从启动器中解锁分区,但每次重启后它们都会重新出现。 有没有什么好方法可以从启动器中永久删除分区?

这只发生在Ubuntu 16.04上

在此处输入图像描述

虽然下面的解决方案不能解决 看起来很小的错误,但您可以将其用作解决方法,以便在启动时自动将设备列入黑名单(登录)。

解决方案

…是一个小脚本,可以在登录时记住您列入黑名单的项目。它运行两个参数: getset 。 第一个是读取当前列入黑名单的项目,第二个是(重新)将列表设置为最后读取的版本。

在实践中

  • 像您习惯的那样从Unity Launcher中删除设备。
  • 运行命令/path/to/remember_blacklist.sh get这将生成当前列入黑名单的设备的快照。

现在,下次登录或重新启动时,将自动删除列入黑名单的设备。 当然,您可以将命令添加到快捷方式。

如何使用/设置

  • 将下面的脚本复制到一个空文件中,将其另存为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 
  • 让它可执行 (!)

  • 将以下内容添加到“启动应用程序”快捷方式>启动应用程序>添加。 添加命令

     /bin/bash -c "sleep 10 && /path/to/remember_blacklist.sh set" 
  • 像往常一样从发射器中取出设备
  • 要记住,运行: /path/to/remember_blacklist.sh get

说明

如果您从启动器中删除设备,则会将其列入黑名单 。 您可以使用以下命令读取列入黑名单的设备列表:

 gsettings get com.canonical.Unity.Devices blacklist 

这将输出类似的东西

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

脚本的作用是:

  • 当使用参数get运行时:它读取当前的黑名单并将输出保存在隐藏文件中: ~/.currblacklist
  • 当使用参数set运行时:它读取文件~/.currblacklist的内容,并使用以下命令设置blaclist:

     gsettings set com.canonical.Unity.Devices blacklist