![polkit 在 Ubuntu 16 中无法正常工作](https://linux22.com/image/907579/polkit%20%E5%9C%A8%20Ubuntu%2016%20%E4%B8%AD%E6%97%A0%E6%B3%95%E6%AD%A3%E5%B8%B8%E5%B7%A5%E4%BD%9C.png)
我有双启动,为了从 Ubuntu 挂载 Windows 文件系统,我已经将其设置为需要输入密码,以防止我意外单击错误的按钮来挂载系统。
我通过编辑/var/lib/polkit-1/localauthority/10-vendor.d/com.ubuntu.desktop.pkla
文件做到了这一点。
在该[Mounting, checking, etc. of internal drives]
地区,我ResultActive=yes
改为ResultActive=auth_admin
当我使用主(管理员)帐户登录时,此操作正常。每次我尝试安装驱动器时,它都会要求我输入密码。但是,当我以非特权用户身份(出于安全原因我已设置)登录我的计算机时,它的行为有所不同。
ResultActive=auth_admin
表现为ResultActive=auth_admin_keep
,即使我末尾没有_keep
。它会要求我输入管理员帐户的密码,然后记住已输入密码,并且不会再次询问。
事实上,对于非管理员帐户ResultActive=no
,其行为也类似ResultActive=auth_admin_keep
。如果我以管理员身份登录,则no
意味着no
,我无法安装 Windows。对于非管理员则不是这样,no
意味着“询问您的管理员密码,我会记住它并且不会再询问”。
答案1
我找到了解决方案。需要修改的文件是:
/usr/share/polkit-1/actions/org.freedesktop.UDisks2.policy
第二个操作“在系统设备上挂载文件系统”底部有:
<allow_active>auth_admin_keep</allow_active>
我将其改为:
<allow_active>auth_admin</allow_active>