루트로 로그인하고 udisksctl mount
에 내 장치를 설치했습니다 /media/root/mydevice
. 또는 다른 사용자로 로그인하여 udisksctl mount
에 내 장치를 설치하세요 /media/anotheruser/mydevice
.
여태까지는 그런대로 잘됐다. 하지만,나는 그 둘을 섞고 싶다.udisksctl mount
루트 사용자로 로그인하세요. 에 장치를 설치하고 싶습니다 /media/anotheruser/mydevice
. 이유: 다른 사용자가 내 장치에 액세스할 수 있기를 바랍니다.
즉, 루트로 로그인한 다음생각하다나는 이것을 하고 싶다: udisksctl --user=anotheruser mount
. 불행하게도 udisksctl
선택의 여지가 없는 것 같습니다 --user
.
이것도 작동하지 않습니다: USER=anotheruser udisksctl mount
.
어떻게 해야 합니까?
추가 정보
루트로 로그인했을 때 내가 내린 정확한 명령은 USER=thb udisksctl mount -b /dev/sda11
.
setuid 래퍼를 만들어볼까 생각했는데 별 소용이 없군요. 그렇죠? 루트로 명령을 실행하는 목적은 udisksctl
팝업되는 GUI 인증 대화 상자를 건너뛰는 것입니다.
도움이 될 수 있는 D-Bus 기술이 있나요? 저는 아직 D-Bus를 배우지 않았습니다. Udisks 단계, D-Bus 단계 등 제어 흐름의 특정 단계에서는 시스템이 다른 사용자를 대신하여 작동하도록 설득해야 합니다.원치 않는 GUI 인증 대화 상자가 팝업되지 않도록 합니다.
루트 사용자가 이 작업을 수행할 수 있어야 합니다. 그렇죠?
내 플랫폼은 Debian 8 jessie입니다.
답변1
응, 아니면
su -c 'udisksctl mount -b /dev/sdd --no-user-interaction' - thb
또는
su - thb
udisksctl mount -b /dev/sdd --no-user-interaction
exit
/dev/sdd
예를 들어 설치됩니다 ./media/thb/mydevice
원치 않는 GUI 인증 대화 상자가 나타나지 않습니다..