我意思这个是系统默认的,我取消过默认
但是我最后发现我也是要这样打勾那两个选项,所以无需修改。
如果英文我没看错的话,
mint里面
你要是非要这么认为我也没办法

你哪怕是点一点试一下呢
我意思这个是系统默认的,我取消过默认
但是我最后发现我也是要这样打勾那两个选项,所以无需修改。
如果英文我没看错的话,
mint里面
你要是非要这么认为我也没办法

你哪怕是点一点试一下呢
你要是非要这么认为我也没办法

你哪怕是点一点试一下呢
所以还是读书不够的原因啊

完成的是这个样子:
文件名 /etc/polkit-1/rules.d/wheel_mount.rules(其实可以任意取名)
内容(语*):
polkit.addRule(function(action, subject) {
if (action.id == "org.freedesktop.udisks2.filesystem-mount-system" &&
subject.isInGroup("wheel") &&
subject.local &&
subject.active) {
return polkit.Result.YES;
}
});
action.id代表执行的动作,可以用pkaction看,也可以直接进文件夹 /usr/share/polkit-1/actions/一个一个找;subject.isInGroup是当前用户所在的用户组,可以用 groups [用户名]看,通常wheel就是管理员,有时候也用admin、sudo等;subject.local是指用户通过本地登录不是网络;subject.active是用户已经登录系统。代码还是比较简单的,大家可以对照自己系统的实际情况修改一下。写好以后会立即生效(不需要重启)
可以参考:https://polkit.pages.freedesktop.org/polkit/polkit.8.html
我甚至参考 /usr/share/polkit-1/rules.d
下的rules ,写的规则,也不顶用
也不知deepin魔改了哪些地方
我甚至参考 /usr/share/polkit-1/rules.d
下的rules ,写的规则,也不顶用
也不知deepin魔改了哪些地方
发出来看看吧,还有你的用户组(用 groups [你的用户名]看)
我中间插话问mint下面。
我一台deepin,一台mint。
mint都是英文,看不懂没地方问,只好来这里
自动挂载在deepin下是没问题的,
mint下面必须启动后点一下各分区,才能正常使用,但是系统设置里面默认是自动挂载的,
deepin的自动挂载是文件管理器的功能:gnome磁盘编辑器是用的系统fstab。不一样的
发出来看看吧,还有你的用户组(用 groups [你的用户名]看)
groups test
test : test disk lp sudo users netdev lpadmin scanner sambashare
polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.udisks2.filesystem-mount-system" ||
action.id == "org.freedesktop.udisks2.filesystem-mount-other-seat" ||
action.id == "org.freedesktop.udisks2.filesystem-mount") &&
subject.isInGroup("disk") &&
subject.local &&
subject.active) {
return polkit.Result.YES;
}
});
试过 subject.user == "test" 也试过 sudo 组,都还是需要授权才能挂载分区
groups test
test : test disk lp sudo users netdev lpadmin scanner sambashare
polkit.addRule(function(action, subject) {
if ((action.id == "org.freedesktop.udisks2.filesystem-mount-system" ||
action.id == "org.freedesktop.udisks2.filesystem-mount-other-seat" ||
action.id == "org.freedesktop.udisks2.filesystem-mount") &&
subject.isInGroup("disk") &&
subject.local &&
subject.active) {
return polkit.Result.YES;
}
});
试过 subject.user == "test" 也试过 sudo 组,都还是需要授权才能挂载分区
在我的arch上测试了一下是能正确执行的,应该不是代码的问题。你可以查看日志 journalctl -u polkit -r,看看他有没有正确加载。
另外你也可以执行 udiskctl mount -b /dev/设备号来看看是不是因为图形界面的问题,这个和文管的挂载是一样的,如果没有权限的话会弹窗提示输入密码。
在我的arch上测试了一下是能正确执行的,应该不是代码的问题。你可以查看日志 journalctl -u polkit -r,看看他有没有正确加载。
另外你也可以执行 udiskctl mount -b /dev/设备号来看看是不是因为图形界面的问题,这个和文管的挂载是一样的,如果没有权限的话会弹窗提示输入密码。
好像是加载失败了
4月 05 19:05:20 honor-PC polkitd(authority=local)[704]: Operator of unix-session:2 FAILED to authenticate to gain authorization for action org.freedesktop.udisks2.filesystem-mount-system for system-bus-name::1.130 [/usr/bin/dde-file-manager -n] (owned by unix-user:honor)
我用的是23 alpha2
好像是加载失败了
4月 05 19:05:20 honor-PC polkitd(authority=local)[704]: Operator of unix-session:2 FAILED to authenticate to gain authorization for action org.freedesktop.udisks2.filesystem-mount-system for system-bus-name::1.130 [/usr/bin/dde-file-manager -n] (owned by unix-user:honor)
我用的是23 alpha2
不对,这个不是加载失败,这个是你打开验证对话框没有输入密码,他会记录下来
另外我看这里的操作是用户honor发起的,你有研究过honor用户的用户组吗
不对,这个不是加载失败,这个是你打开验证对话框没有输入密码,他会记录下来
另外我看这里的操作是用户honor发起的,你有研究过honor用户的用户组吗
honor@honor-PC:~$ id honor
uid=1000(honor) gid=1000(honor) 组=1000(honor),6(disk),7(lp),27(sudo),100(users),101(systemd-journal),109(netdev),113(lpadmin),120(scanner),121(sambashare)
honor@honor-PC:~$ groups honor
honor : honor disk lp sudo users systemd-journal netdev lpadmin scanner sambashare
txt里是系统上所有的组
我实在看不出有啥问题😂
honor@honor-PC:~$ id honor
uid=1000(honor) gid=1000(honor) 组=1000(honor),6(disk),7(lp),27(sudo),100(users),101(systemd-journal),109(netdev),113(lpadmin),120(scanner),121(sambashare)
honor@honor-PC:~$ groups honor
honor : honor disk lp sudo users systemd-journal netdev lpadmin scanner sambashare
txt里是系统上所有的组
我实在看不出有啥问题😂
我突然想到一个问题,deepin v23用的polkit是哪个版本的?如果是0.105的话,好像是没有rules这个东西,需要用pklocalauthority配置(上面的帖子里面我也提到了)
https://www.freedesktop.org/software/polkit/docs/0.105/pklocalauthority.8.html

你能用 apt show policykit-1(或者差不多的包名)帮我看一下吗
我突然想到一个问题,deepin v23用的polkit是哪个版本的?如果是0.105的话,好像是没有rules这个东西,需要用pklocalauthority配置(上面的帖子里面我也提到了)
https://www.freedesktop.org/software/polkit/docs/0.105/pklocalauthority.8.html

你能用 apt show policykit-1(或者差不多的包名)帮我看一下吗
honor@honor-PC:~$ apt list --installed |grep -i policykit
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
policykit-1/未知,now 0.105.11.2-1+dde amd64 [已安装,自动]
😂 果然是这个版本 我再研究一下您给的链接
不过,我尝试写了一个pkla ,内容如下,请过目
root@honor-PC:/etc/polkit-1/localauthority/50-local.d# cat 10-udisks.pkla
[udisks2]
Identity=unix-group:disk
Action=org.freedesktop.udisks2.filesystem-mount;org.freedesktop.udisks2.filesystem-mount-system;org.freedesktop.udisks2.encrypted-unlock;org.freedesktop.udisks2.eject-media;org.freedesktop.udisks2.power-off-drive
ResultAny=yes
[udisks2-other-seat]
Identity=unix-group:disk
Action=org.freedesktop.udisks2.filesystem-mount-other-seat;org.freedesktop.udisks2.filesystem-unmount-others;org.freedesktop.udisks2.encrypted-unlock-other-seat;org.freedesktop.udisks2.eject-media-other-seat;org.freedesktop.udisks2.power-off-drive-other-seat
ResultAny=yes
deepin的自动挂载是文件管理器的功能:gnome磁盘编辑器是用的系统fstab。不一样的
manjaro我要也是kde和cinnamon测试,不是fstab,也是文件管理器挂载,对比下来很多都和deepin一样,难道真是policykit版本的问题?
我突然想到一个问题,deepin v23用的polkit是哪个版本的?如果是0.105的话,好像是没有rules这个东西,需要用pklocalauthority配置(上面的帖子里面我也提到了)
https://www.freedesktop.org/software/polkit/docs/0.105/pklocalauthority.8.html

你能用 apt show policykit-1(或者差不多的包名)帮我看一下吗
先感谢
根据这个链接里的例子,我重写了pkla
搞定!
内容如下,请过目
[udisks2]
Identity=unix-group:disk
Action=org.freedesktop.udisks2.filesystem-mount;org.freedesktop.udisks2.filesystem-mount-system;org.freedesktop.udisks2.encrypted-unlock;org.freedesktop.udisks2.eject-media;org.freedesktop.udisks2.power-off-drive
ResultAny=no
ResultInactive=no
ResultActive=yes
manjaro我要也是kde和cinnamon测试,不是fstab,也是文件管理器挂载,对比下来很多都和deepin一样,难道真是policykit版本的问题?
你被他弄懵了

他说的问题是自动挂载,你说的是挂载需要密码。早知道我就让他去另外发个帖子去了
honor@honor-PC:~$ apt list --installed |grep -i policykit
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
policykit-1/未知,now 0.105.11.2-1+dde amd64 [已安装,自动]
😂 果然是这个版本 我再研究一下您给的链接
不过,我尝试写了一个pkla ,内容如下,请过目
root@honor-PC:/etc/polkit-1/localauthority/50-local.d# cat 10-udisks.pkla
[udisks2]
Identity=unix-group:disk
Action=org.freedesktop.udisks2.filesystem-mount;org.freedesktop.udisks2.filesystem-mount-system;org.freedesktop.udisks2.encrypted-unlock;org.freedesktop.udisks2.eject-media;org.freedesktop.udisks2.power-off-drive
ResultAny=yes
[udisks2-other-seat]
Identity=unix-group:disk
Action=org.freedesktop.udisks2.filesystem-mount-other-seat;org.freedesktop.udisks2.filesystem-unmount-others;org.freedesktop.udisks2.encrypted-unlock-other-seat;org.freedesktop.udisks2.eject-media-other-seat;org.freedesktop.udisks2.power-off-drive-other-seat
ResultAny=yes
赞

最后我希望有人能比较下v23比v20是到底缺了什么
赞

最后我希望有人能比较下v23比v20是到底缺了什么
deepin20现在也不能自动挂载,uos是可以的。
uos22和deepin20.8用的都是 policykit-1/未知,apricot,now 0.105.10.19-1+dde amd64 [已安装,自动]
也未发现用rules,不知道uos是咋实现自动挂载的。
感谢楼上所有的老哥,解决了这个问题,现在不用鉴权而且能自动挂载了,具体方案是:
sudo sucd /etc/polkit-1/localauthority/50-local.dnano 10-udisks.pkla 然后写入下面的内容。[udisks2]
Identity=unix-group:sudo
Action=org.freedesktop.udisks2.filesystem-mount;org.freedesktop.udisks2.filesystem-mount-system;org.freedesktop.udisks2.encrypted-unlock;org.freedesktop.udisks2.eject-media;org.freedesktop.udisks2.power-off-drive
ResultAny=no
ResultInactive=no
ResultActive=yes
mint作的最好。限权无任何意义!
/usr/share/polkit-1/actions/org.freedesktop.UDisks2.policy
下 对中的 auth_admin 改为 yes
此贴可终结。
热门活动
查看更多
目前是双系统,三块硬盘。
在v23下开机只能自动挂载v23的分区,内置硬盘的其他分区均不能自动挂载,而移动硬盘可以自动挂载。
文件管理器中的自动挂载设置项设置了也无效。
20.8系统如果boot分区是单独挂载的,是可以自动挂载其他分区的,包括Windows的,但到了23这样也不行。
如果是一根到底的分区方式,20.8也是无法挂载其他分区。
用修改fstab文件的方式20.8和23都是可以自动挂载的,但倾向于不使用这种方式,这是比较敏感的操作,普通用户也不建议改这个。
请问: