kde에서 사용자를 자동으로 로그아웃하는 방법은 무엇입니까?

kde에서 사용자를 자동으로 로그아웃하는 방법은 무엇입니까?

내 컴퓨터에는 sudo 권한을 가진 사용자인 나(user1)라는 두 명의 사용자가 있습니다. 나는 사용자 2가 12시에 kde 세션에서 로그아웃하여 사용자가 이를 차단할 수 없도록 하고 나중에 로그인할 때 모든 앱이 거기에 있도록 하길 원합니다.

user2, me 및 root로 cron을 사용해 보았습니다.

00 12 * * * qdbus org.kde.ksmserver /KSMServer logout 0 0 0

나는 또한 이와 같이 루트로 cron을 실행해 보았습니다.

00 12 * * * user2 qdbus org.kde.ksmserver /KSMServer logout 0 0 0

둘 다 직업이 없어

답변1

GUI와 독립적으로 실행 DISPLAY되도록 변수를 설정 해야 합니다 .cron

 00 12 * * * user2 DISPLAY=:0 qdbus org.kde.ksmserver /KSMServer logout 0 0 0

답변2

@FelixJN 글쎄요, 어떻게 해서든 @224843 계정의 비밀번호와 이메일을 잃어버렸습니다. 계속하겠습니다. echo $DISPLAY나에게는 :0qbus에 전체 경로를 추가해도 문제가 해결되지 않았지만 검색해 보니 journalctl다음과 같습니다.

CROND[2332]: (user2) CMD (DISPLAY=:0 qdbus org.kde.ksmserver /KSMServer logout 0 0 0)
CROND[2331]: (user2) CMDOUT (Could not connect to D-Bus server: org.freedesktop.DBus.Error.NotSupported: Using X11 for dbus-daemon autolaunch was disabled at compile time, set your DBUS_SESSION_BUS_ADDRESS instead)
CROND[2331]: pam_unix(crond:session): session closed for user user2

이것은 내가 사용할 때만 발생합니다. sudo crontab -u user2 -e사용하면 /etc/crontab로그에 아무것도 없습니다.

첨부된:

sudo crontab -u user2 -l
00 12 * * * DISPLAY=:0 qdbus org.kde.ksmserver /KSMServer logout 0 0 0

cat /etc/crontab
00 12 * * * user2 DISPLAY=:0 qdbus org.kde.ksmserver /KSMServer logout 0 0 0

관련 정보