68

Sometimes when there are too many users logged in it can cause my computer to become very slow and laggy due to low amount of available RAM. I would like to be able to quickly log out the other users from the command line instead of manually switching into each user and logging them out.

Is this possible?

68

this is one answer

who -u

that give you the PID

Then you can kill the user session.

kill "pid"
  • This works but it has some strange side effects. – Isaiah Nov 8 '10 at 23:16
  • @DoR ...which are..? – Oli Nov 8 '10 at 23:48
  • 4
    @Oli Such as GDM restarting, and trying to switch to a user that I killed not working. – Isaiah Nov 8 '10 at 23:56
  • 1
    @AlvinRow If you execute ps auxf then you notice (left-most column has effective username) that this method doesn't kill all the processes which are executed by the current user (so probably you aren't logged out). The method of @precise seems to attend to this problem, though I don't feel comfortable with sending SIGKILL. – Dor Sep 29 '16 at 23:13
  • I'm surprised there isn't something like with shutdown so it can give warning (allowing work to be saved) before forcibly logging out. That would optionally just switch to the login as if changing sessions, leaving the user session running in the background. – pbhj Nov 25 '18 at 19:51
30

You may use who to check which users are logged in:

who

You can log-out the user by sending the KILL signal to the user-process with:

sudo pkill -KILL -u <username>

(which is same as sudo pkill -9 -u <username>)

example:

sudo pkill -9 -u guest-2Rw4Lq

(to kill a guest session user named guest-2Rw4Lq)

  • This worked best for me. Simply running kill "pid" left a ton of processes by the user still running, where this killed them all. – thebaer Aug 30 '15 at 18:42
  • 1
    Why SIGKILL and not the default SIGTERM ? The SIGKILL isn't healthy.. – Dor Sep 29 '16 at 23:06
  • sudo pkill -KILL -u <username> for me switched me to the first console session; I thought it killed my current session but ctrl+alt+F7 brought me back to the current graphical session. – pbhj Mar 8 '17 at 20:22
  • -1: This command somehow triggered a higher priority process that never died, I had to restart the machine to kick the user. – RSFalcon7 Nov 13 at 14:57
3
who -u


> adam     ttys000  Aug  4 09:22   .       91228 

then

sudo kill 'PID number'
sudo kill 91228

PID (process ID) is the four or five digit number at the end of the user readout (91228)

  • 1
    Your image shows no four digit number? – Dronz Apr 23 '17 at 18:57

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.