저는 dbus를 처음 사용합니다(Ubuntu 14.04, Unity 사용). 그래서 사용자 A로 로그인하고 사용자 B로 프로세스를 생성했으며 해당 프로세스는 사용자 B에 대한 세션을 생성했으며 이제 dbus 메시지를 사용하여 해당 프로세스에 대한 사용자 B의 세션을 닫고 싶습니다. 내 프로세스가 모든 데스크탑 환경에서 실행되기를 원합니다. 그래서 라는 도구를 다운로드해서 사용하기 시작했는데 d-feet
시스템에서 세션이 생성될 때마다 /org/freedesktop/User/1002
(1002는 사용자 B의 UID)가 추가되는 것을 확인했습니다 org.freedesktop.login1
.
그래서 부팅을 시도했지만
sudo dbus-send --type=method_call --print-reply --system --dest=org.freedesktop.login1 /org/freedesktop/login1/user/1000 org.freedesktop.login1.User.Terminate
오류가 발생했습니다 Error org.freedesktop.DBus.Error.UnknownObject: Unknown user
. ctr+alt+f1
사용자 B로 로그인하고 부팅했으며 startx
사용자에서 데스크톱으로 동일한 명령을 사용했는데 'GDBus.Error:org.freedesktop.DBus.Error.UnknownObject: Permission Denied'
이번에는 작동했다는 오류가 발생했습니다(세션 종료). 나는 조금 길을 잃었다. 당신이 도울 수 있기를 바랍니다. 감사해요.
Dbus: 다른 사용자에게는 종료가 작동하지 않습니다.
관련 정보
- 루트인 경우 다른 사용자의 ~/.bashrc를 가져오고 모든 환경 변수를 가져옵니다.
- 텔넷 세션 시간 초과를 방지하는 방법은 무엇입니까?
- /usr/local에서 OpenSSL을 강제하는 방법
- umask 함수는 커널 함수인가요?
- zsh _arguments는 점진적으로 표시 옵션을 완료합니다.
- Ubuntu에서 Mingw-w64를 사용하여 SDL2를 크로스 컴파일할 수 없습니다.
- ti sn65dsi86용 장치 트리 파일 쓰기
- `ls`는 하드 링크를 어떻게 찾나요?
- 중첩된 명령을 사용하여 함수를 작성하는 방법
- spidev는 QSPI를 지원합니까?