Tôi có một hệ thống ép xung Debian trực tiếp trên ổ USB, chứa tập lệnh tôi sử dụng để ghi hình một ổ đĩa khác. Kịch bản lệnh này sử dụng udisks
để gắn ổ đĩa theo nhãn, nhưng nó không hoạt động trên bảng điều khiển nối tiếp. Lý do là phiên được liên kết với bảng điều khiển nối tiếp dường như không hoạt động, điều đó có nghĩa là udisks
không thành công với:
user@my-live-usb:~$ udisks --mount /dev/disk/by-label/image-data --mount-options ro
Mount failed: Not Authorized
Thay đổi allow_any
khóa trong /usr/share/polkit-1/actions/org.freedesktop.udisks.policy
không giúp ích, vì vậy tôi muốn biết làm thế nào để nói với ConsoleKit rằng bàn điều khiển nối tiếp đang "hoạt động". Cố gắng thực hiện điều này qua giao diện DBUS không thành công:
user@my-live-usb:~$ dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Session7 org.freedesktop.ConsoleKit.Session.Activate
Error org.freedesktop.DBus.GLib.UnmappedError.CkSeatError.Code0: Unable to activate session
Phiên 7 là phiên được liệt kê là trên / dev / ttyS0.
Vậy làm thế nào tôi có thể khiến ConsoleKit nhận ra bàn điều khiển nối tiếp là một phiên hoạt động?
(Trong trường hợp của tôi, phiên bản udisks là 1.0.1 + git20100614-3, giao diện điều khiển là 0.4.1-4.)
Có lẽ cũng đáng chú ý hệ thống trực tiếp Debian tự động đăng nhập người dùng trực tiếp trên tất cả 6 bảng điều khiển video và bảng điều khiển nối tiếp.
ck-launch-session bash
và chạyck-list-sessions
từ bên trong thiết bị đầu cuối đó, giao diện điều khiển vẫn cóactive = FALSE
cho phiên đó.