Может кто-нибудь сказать мне, как удалить спящие X сеансов. Этот вопрос аналогичен выходу других пользователей из командной строки, но более конкретным для управления X-дисплеями, которые мне трудно убить.
Я использовал команду «кто -u», чтобы получить сеанс другие экраны:
$ who -u
Который дал мне:
user1 :0 2014-08-18 12:08 ? 2891 (:0)
user1 pts/26 2014-08-18 16:11 17:18 3984 (:0)
user2 :1 2014-08-18 18:21 ? 25745 (:1)
user1 pts/27 2014-08-18 23:10 00:27 3984 (:0)
user1 pts/32 2014-08-18 23:10 10:42 3984 (:0)
user1 pts/46 2014-08-18 23:14 00:04 3984 (:0)
user1 pts/48 2014-08-19 04:10 . 3984 (:0)
kill -9 25745, кажется, ничего не делает.
У меня есть семинар где несколько пользователей будут использовать компьютер под своим логином. После окончания семинара есть несколько логинов, которые остаются открытыми. Я бы предпочел убить открытые сеансы, а не попытаться войти в экран каждого пользователя.
Опять же, этот вопрос касается не только регистрации пользователей. Я надеюсь получить ясность и за убийство / удаление застрявших процессов, которые трудно убить.
Чтобы убить всех зарегистрированных пользователей для :1, используйте эту команду:
awk '/\s:1\s/ {system("sudo kill -9 "$6)}' <<< $(who -u)
В вашем случае user2
user2 :1 2014-08-18 18:21 ? 25745 (:1)
Или все сеансы для user2 по имени пользователя
awk '/^user2\s/ {system("sudo kill -9 "$6)}' <<< $(who -u)