轉自 http://blog.chinaunix.net/uid-25906175-id-3030600.htmlhtml
前段時間升級了 thunar 後,發現沒法竟然點擊側邊欄的 windows 分區直 接掛載了,而是跳出個對話框顯示『Authentication is required.』, 這個問題可不得了,不能訪問 windows 分區顯然是不行的。因而,又開始 了網上的艱苦遊蕩。終於,在這裏找到了解決方法。這個其實不是 thunar 的問題,而是和 udisks 相關的。linux
編輯文件 /usr/share/polkit-1/actions/org.freedesktop.udisks.policy 找到 <action id=」org.freedesktop.udisks.filesystem-mount-system-internal」> 標籤,將裏面的 auth_admin_keep 修改成 yes,而後保存便可,不須要註銷或者重啓。windows
2012/03/04 更新:bash
今天才發現,直接修改上述文件並非很好的方法,由於每次 udisks 升級時會將其覆蓋掉。 按照 Archlinux 的 wiki 所述,能夠建立以下文件(須要 root 權限): /etc/polkit-1/localauthority/50-local.d/50-filesystem-mount-system-internal.pkla 其內容爲:session
[Mount a system-internal device] Identity=* Action=org.freedesktop.udisks.filesystem-mount-system-internal ResultActive=yes
這樣也能夠解決問題,並且升級時不會被覆蓋掉。app
2012/04/28 更新:less
今天又出現了權限問題,點擊側邊欄的 Windows 分區時,出現了『Not authorized to perform operation』的對話框。ide
因而又在網上游蕩起來,終於在這裏發現端倪: 原來,昨天升級時安裝了 udisks2,於是相應的分區掛載權限也由其接管。解決方法以下:ui
修改上面建立的配置文件,將其中的 udisks 替換爲 udisks2,即內容變爲.net
[Mount a system-internal device] Identity=* Action=org.freedesktop.udisks2.filesystem-mount-system ResultActive=yes
修改後,發現果真又能夠點擊掛載了。
2012/05/10 更新:
今天打開 Thunar,發現竟然又不能夠點擊掛載 Windows 分區了,再次出現 了上面的對話框,鬱悶!因而又是一番艱辛搜索,終於在 Arch 的 wiki 上 看到了相關信息,見此:=Note: slim is also ConsoleKit capable since version 1.3.3. Unless you happen to run an old version, you must no longer include ck-launch-session from your .xinitrc or slim.conf logincmd.= 原來,slim 升級到 1.3.3 後,已經不須要在 .xinitrc 文件中添加 ck-launch-session了,直接將其去掉,以下:
#!/bin/sh # # ~/.xinitrc # # Executed by startx (run your window manager from here) if [ -d /etc/X11/xinit/xinitrc.d ]; then for f in /etc/X11/xinit/xinitrc.d/*; do [ -x "$f"] && . "$f"done unset f fi exec dbus-launch /home/silver/.autostart.sh
註銷後從新登陸,此時果真又能夠直接點擊掛載了。
2012/11/01 更新:
今天將系統遷移到了 systemd,發現 thunar 又不能夠掛載內置分區了,點 擊時提示『Not authorized to perform operation』。網上搜尋了很久, 將配置文件改了又改,但是始終不行。
一度絕望之下,突然想到是否能夠直接修改 udisks2 的配置文件呢?編輯文件 /usr/share/polkit-1/actions/org.freedesktop.udisks2.policy 找到 <action id="org.freedesktop.udisks2.filesystem-mount-system"> 修改其中的 <allow_active>auth_admin</allow_active> 爲<allow_active>yes</allow_active> 再點擊試了下,果真能夠了!
對原文進行一些補充:(2013-05-25)
我搜到的比較完整的自建pkla文件的內容, 僅供參考. 不過對於使用systemd的系統, 可能沒有用了.
修改 etc/polkit-1/localauthority/50-local.d 新建文件,50-filesystem-mount-system-internal.pkla ,內容以下:
[Override udisks2 filesystem-mount-system rule] Identity=unix-user:yourusername Action=org.freedesktop.udisks2.filesystem-mount-system ResultAny=auth_admin ResultInactive=auth_admin ResultActive=yes
用 systemd 替換 udev 後, 若是想實現移動介質的自動掛載, 須要啓動 # systemctl enable lvm-monitoring.service. 這樣 u盤就不成問題了.
可是對於別的硬盤分區, 雖然能在 文件管理器 中看到, 但點擊掛載時, 卻提示:
Not authorized to perform operation
就要按上面文章中的方法來解決.