X 세션에서는 항상 DISPLAY
환경 변수를 참조하여 현재 표시 번호 ( echo $DISPLAY
) 를 얻을 수 있습니다 .
다른 사람의 표시 번호를 찾는 것이 더 어렵습니다. 나는 연결된 모든 사용자에게 묻는 것 이외의 정보를 얻는 표준 방법이 없다고 생각 하므로이 정보를 얻으려면 해커가 필요하며 모든 경우에 작동하지는 않습니다.
SE 에는 다른 옵션이 있지만 Debian Wheezy에서는 작동하지 않습니다. 그러나 위에 링크 된 게시물에 표시된 것처럼 현재 활성화 된 디스플레이를 나열하는 것은 쉽습니다.
ps axu | grep "X "
다음과 같이 현재 실행중인 X 프로세스를 표시합니다.
root 2354 0.0 0.5 23380 18292 tty8 Ss+ Sep15 2:36 /usr/bin/X :1 vt8 -br -nolisten tcp -auth /var/run/xauth/A:1-7xlyuc
root 7901 0.0 0.3 17044 12072 tty7 Ss+ Sep14 5:58 /usr/bin/X :0 vt7 -br -nolisten tcp -auth /var/run/xauth/A:0-wckh0a
다음의 첫 번째 매개 변수 /usr/bin/X
는 콜론이 앞에 붙은 표시 번호이고 다음 매개 변수 는 세션에 지정된 가상 터미널을 보여줍니다.
그러나 프로세스 목록을 보면 다음과 같은 답변을 얻을 수 있습니다.
ps axu |grep -3 "X "
root 1990 0.0 0.0 0 0 ? S Sep14 0:00 [kjournald]
root 1991 0.0 0.0 0 0 ? S Sep14 0:00 [kjournald]
root 1992 0.0 0.0 0 0 ? S Sep14 0:00 [kjournald]
root 2354 0.0 0.5 23380 18292 tty8 Ss+ Sep15 2:36 /usr/bin/X :1 vt8 -br -nolisten tcp -auth /var/run/xauth/A:1-7xlyuc
root 2359 0.0 0.0 5264 2228 ? S Sep15 0:00 -:1
user_1 2378 0.0 0.0 4920 1348 ? Ss Sep15 0:00 /bin/sh /usr/bin/startkde
user_1 2443 0.0 0.0 3868 348 ? Ss Sep15 0:00 /usr/bin/ssh-agent env TMPDIR=/var/tmp /usr/bin/dbus-launch --exit-with-session /usr/bin/openbox-kde-session
--
root 7500 0.0 0.0 6460 1080 ? Ss Sep14 0:00 /usr/sbin/sshd
ntp 7841 0.0 0.0 5352 1760 ? Ss Sep14 0:17 /usr/sbin/ntpd -p /var/run/ntpd.pid -g -u 108:111
root 7882 0.0 0.0 3964 716 ? Ss Sep14 0:00 /usr/bin/kdm -config /var/run/kdm/kdmrc
root 7901 0.0 0.3 17044 12072 tty7 Ss+ Sep14 5:59 /usr/bin/X :0 vt7 -br -nolisten tcp -auth /var/run/xauth/A:0-wckh0a
root 7906 0.0 0.0 5260 2224 ? S Sep14 0:00 -:0
user_2 7925 0.0 0.0 12924 1560 ? Ssl Sep14 0:00 /usr/bin/lxsession -s LXDE -e LXDE
user_2 7990 0.0 0.0 3868 348 ? Ss Sep14 0:00 /usr/bin/ssh-agent env TMPDIR=/var/tmp /usr/bin/dbus-launch --exit-with-session /usr/bin/startlxde
라인에서 봐 후 /usr/bin/X
-는 X 세션이 시작, 창 관리자는 일반적으로 세션에 속한 사용자로 시작, 당신은 사용자 이름을 거기로. 필자의 경우 user_1은 KDE를 사용하고 user_2는 LXDE를 사용하고 있습니다. 그러나이 솔루션은 커널이 새로운 프로세스 ID를 오름차순으로 할당한다는 사실에 전적으로 의존하며, 항상 그런 것은 아닙니다.
;
해야합니다done
.