Z reguły sesje X11 są zwykle uruchamiane w trybie „prywatnym”, więc potrzebujesz jednej z dwóch rzeczy: albo współpracy, user2aby umożliwić dostęp do ich ekranów, albo uprawnień administratora do „włamania się” do ich ekranów.
NIEBEZPIECZEŃSTWO: Pamiętaj, że po uzyskaniu dostępu do ich ekranu możesz także robić zrzuty klawiszy (potencjalnie włączając hasła) i robić zrzuty ekranu, więc jest to duże zagrożenie bezpieczeństwa.
W większości przypadków lepiej jest używać do tego celu narzędzia do przesyłania wiadomości lub programu do czatowania.
Poza zastrzeżeniami:
Współdziałanie
Jeśli user2chcesz zezwolić user1na dostęp do ich ekranu, najpierw user2musisz wydać polecenie:
xhost +si:localuser:user1
Można to potencjalnie dodać do jakiegoś skryptu startowego; Nie znam Fluxboksa, ale zakładam, że ma rchaczyk na początku sesji.
Po przeanalizowaniu tego, user1może napisać na user2wyświetlaczu, jeśli będzie w stanie go znaleźć.
Jeśli user2jest tego świadomy, zawsze mogą go wysłać user1w inny sposób.
Znajdowanie wyświetlacza innego użytkownika
Na typowej stacji roboczej zdarza się, że zalogowanych jest więcej niż jeden lub dwóch użytkowników; w takim przypadku „zgadywanie”, że pożądany ekran to 0, 1, a może 2, może być wykonalnym rozwiązaniem.
Jednak, aby uzyskać bardziej kompletne rozwiązanie, załóżmy, że masz komputer, na którym można się zalogować bardzo wielu użytkowników, i spróbuj znaleźć ten, który chcesz.
for proc in /proc/[0-9]*/
do
if [ Xorg = $(< $proc/comm ) ] 2>/dev/null && \
[ $(id -u user2) -eq $(< $proc/loginuid) ] 2>/dev/null
then
for subproc in $(
do
echo "user2 display=" $(perl -ne 'if (m,DISPLAY=(.*)\0,) { print $1 }' < $subproc/environ)
done
fi
done
to user1może w końcu (używając wartości DISPLAY uzyskanej powyżej; właśnie :14.0tu napisałem …)
DISPLAY=:14.0 xmessage "Hello, user2"
Zamiast tego wysyłam powiadomienie
W trosce o kompletność, co najmniej następujące działa na pulpicie Gnome. Nie wiem, czy Fluxbox ma widget powiadomień.
DISPLAY=:14.0 notify-send "Hello, user2"
Ma o wiele bardziej przyjazne dla użytkownika opcje wyświetlania i prawdopodobnie pojawi się w bardziej przyjazny sposób na ekranie użytkownika.
user1w moim przykładzie) jest zalogowany do X11 i nie otworzył sięxtermlub inny terminal - też będziewalldziałał? Myślę, żeuser1nie zobaczy wiadomości.