Я использую x11rdp с xrdp v0.6.0 в Ubuntu 12.04
Проблема в том, что когда я подключаюсь удаленно из дома в офис, моя сессия застревает!
Когда я возвращаюсь на работу, я невозможно открыть приложения, которые уже запущены в сеансе x11rdp. например Firefox, сопереживание ...
Я должен закрыть их, чтобы снова открыть нужное приложение.
Я знаю, что могу pkill -u user
, но это кажется непрофессиональным
. Это не закрывает текущие сессии.
Существует ли какой-либо менеджер сеансов xrdp, как в Windows Server, или я могу убить только сеанс моего пользователя?
Используя команду ниже:
ps u -u "$USER" | awk '/xrdp/ && ! /awk / {system("kill "$2)}'
$USER
с другим именем пользователя, если процесс работает с другим пользователем, чем Вы xrdp
с Вашим именем процесса ps aux | grep <user> | grep -i x11rdp
даст Вам идентификатор процесса во втором столбце строки, это не Ваш grep.
Вы можете затем
kill -9 <pid>
Перечислять все rdp сессии с theire соответствующими изодромными с предварением и номерами портов:
{ echo "user pid Xdisplay port"; { ps -ef | \
awk '/Xvnc :[[:digit:]]+/ {print $1,$2,$9}' | while read tu tpid tvnc; \
do sudo netstat -tlpn | awk -v "tpid=${tpid}" '$0 ~ tpid {print $4;}' | \
sed -r -e 's/^.*://;' -e "s/^/${tu} ${tpid} ${tvnc} /;" ; done ; } | \
sort -k3 ; } | column -c4 -t
можно затем уничтожить определенный идентификатор процесса (pid):
$ kill -9 <pid>