From: Alexey Morozov <morozov_ml@ngs.ru>
To: ALT Linux Team development discussions <devel@lists.altlinux.org>
Subject: [devel] Bring the boys back^W^W^W^WВерните мне моё флэшко!
Date: Thu, 22 Nov 2012 12:54:21 +0700
Message-ID: <50ADBE0D.3000407@ngs.ru> (raw)
Здравствуйте!
Несмотря на то, что будущее уже почти наступило, космические корабли
вот-вот забороздят, а systemd вот-вот заколоси^W заработает, как
Леннарту мечталось в самых сладких его снах, остались ещё некоторые
проблемы в отдельных областях социалистического хозяйства.
Проблема, которая меня выбешивает^W беспокоит вот уже на протяжении
длительного времени - это работоспособность всей чудесной, чудесной
связки ConsoleKit + PolicyKit (который в народе нынче любовно клычуть
полкIтом) + udisks обеих версий + KDE.
Вкратце, проблема эта с udisks-1.x, которым до 4.8.x пользовался Solid в
KDE, выглядит так:
alex@rhyme ~ $ udisks --mount
/dev/sdc
Mount failed: Not Authorized
alex@rhyme ~ $ _
При этом, волшебные советы не ходить нищеб^W^W^W завести себе консольную
сессию не работают, т.к. она уже есть:
alex@rhyme ~ $
ck-list-sessions
Session2:
unix-user = '500'
realname = 'Алексей Морозов'
seat = 'Seat1'
session-type = ''
active = TRUE
x11-display = ':0'
x11-display-device = '/dev/tty7'
display-device = ''
remote-host-name = ''
is-local = TRUE
on-since = '2012-11-22T03:14:52.061085Z'
login-session-id = '4294967295'
alex@rhyme ~ $ _
Насколько я успел увидеть, я не первый среди пользователей ALT'а,
который побегал по этим граблям
http://lists.altlinux.org/pipermail/sisyphus/2012-May/357588.html
Приятно стоять на плечах гигантов, чо.
По счастью, для udisks-1.x есть специальная чудодейственная мазь,
почерпнутая с http://unixforum.org/index.php?showtopic=132351 :
------------- 8< ---
/etc/polkit-1/localauthority/50-local.d/10-users-mount.pkla --- >8
---------------------
[Storage Permissions]
Identity=unix-group:users
Action=org.freedesktop.udisks.filesystem-mount;org.freedesktop.udisks.filesystem-unmount-others;org.freedesktop.udisks.drive-eject;org.freedesktop.udisks.drive-detach;org.freedesktop.udisks.luks-unlock;org.freedesktop.udisks.inhibit-polling;org.freedesktop.udisks.drive-set-spindown
ResultAny=yes
ResultActive=yes
ResultInactive=yes
--------------8<
---------------------------------------------------------------------------------------
>8 -----------------------
Ну, то есть, решение то ещё (спрашивается, нафейхоа было городить весь
этот огород с тремя демонами и пятью интерфейсами, если всё в итоге
свелось к обычным unix groups), но да ладно. Типа, издержки
поступательного движения ко всеобщему счастью.
И всё было хорошо, пока я не проапгрейдился до KDE-4.9.x. В нём
какой-то, м-м-м, прогрессор придумал, что теперь "все знатные татары в
Париже"(1) должны использовать udisks-2. В (альтовских) настройках
которого, о чудо! стоит обязательная аутентификация при монтировании диска:
alex@rhyme ~ $ udisksctl mount -b /dev/sdc
==== AUTHENTICATING FOR org.freedesktop.udisks2.filesystem-mount ===
Authentication is required to mount USB2.0 Flash Disk (/dev/sdc)
Authenticating as: Алексей Морозов (alex)
Password:
==== AUTHENTICATION COMPLETE ===
Mounted /dev/sdc at /run/media/alex/001B-9622.
alex@rhyme ~ $ _
Не, оно мне, конечно, приятно... Лишний раз увидеть на экране монитора
своё имя, да и меньше шансов забыть пароль из-за надвигающегося склероза.
Но есть одно но. KDE (as of 4.9.3) к такому вероломству и патологической
недоверчивости, видимо, не готов, и обламывается монтировать флэшки на
таких дискриминационных, по его мнению, условиях. В логах почти-что
пусто, только в .xsession-errors появляется довольно невнятное:
got invalid reply for cache: "Name"
got invalid reply for cache: "DeviceNumber"
got invalid reply for cache: "Device"
file:///usr/share/kde4/apps/plasma/plasmoids/notifier/contents/ui/DeviceItem.qml:66:
TypeError: Result of expression 'notifierDialog.highlightItem' [null] is
not an object.
dbus-monitor кажет следующее на _сессионной_ шине:
signal sender=:1.15 -> dest=(null destination) serial=1731
path=/org/kde/solid/Device__2Forg_2Ffreedesktop_2FUDisks2_2Fblock_5Fdevices_2Fsdc;
interface=org.kde.Solid.Device; member=setupRequested
signal sender=:1.15 -> dest=(null destination) serial=1732
path=/org/kde/solid/Device__2Forg_2Ffreedesktop_2FUDisks2_2Fblock_5Fdevices_2Fsdc;
interface=org.kde.Solid.Device; member=setupDone
int32 1
string "An unspecified error has occurred: Not authorized to perform
operation"
Как поймать сообщения летающие между solid'ом и
/usr/libexec/udisks2/udisksd я пока не придумал, на системной шине их не
видно.
Я, в принципе, уже нашёл такое:
https://wiki.archlinux.org/index.php/PolicyKit#Workaround_to_mount_filesytems_by_user_in_group_storage_without_password
но чо-та мне пока стрёмно конфигурировать свою систему при помощи
джаваскриптов, да и не работает этот рецепт у нас искаропки.
В общем, таперича для монтирования флэшек моей жене требуется монтировка
и такая-то матерь^W^W^W^W помощь мужа. Начинаешь чувствовать себя
немножко фрибздишнегом.
С уважением,
АМ
(1) - https://www.youtube.com/watch?v=Ebqk1c397Rs
next reply other threads:[~2012-11-22 5:54 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-11-22 5:54 Alexey Morozov [this message]
2012-11-22 6:01 ` Pavel Vainerman
2012-11-22 6:46 ` Alexey Morozov
2012-12-07 8:57 ` [devel] [workarounded] Верните " Alexey Morozov
2012-12-07 9:21 ` Sergei Epiphanov
2012-12-10 3:58 ` Alexey Morozov
2012-12-07 12:06 ` Sergey V Turchin
2012-12-10 4:00 ` Alexey Morozov
2012-12-10 12:07 ` Sergey V Turchin
2012-11-22 6:50 ` [devel] Bring the boys back^W^W^W^WВерните " Ildar Mulyukov
2012-11-22 7:00 ` thecrux
2012-11-22 7:39 ` Ildar Mulyukov
2012-11-22 8:10 ` [devel] [JT] " Alexey Morozov
2012-11-22 8:54 ` Ildar Mulyukov
2012-11-22 11:06 ` [devel] " Sergey V Turchin
2012-11-22 11:12 ` [devel] [JT] " Pavel Vainerman
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=50ADBE0D.3000407@ngs.ru \
--to=morozov_ml@ngs.ru \
--cc=devel@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux Team development discussions
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
public-inbox-index devel
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.devel
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git