Desconectando outros usuários da linha de comando

67

Às vezes, quando há muitos usuários conectados, isso pode fazer com que o meu computador fique muito lento e lento devido à baixa quantidade de RAM disponível. Gostaria de poder desconectar rapidamente os outros usuários da linha de comando, em vez de alternar manualmente para cada usuário e desconectá-los.

Isso é possível?

Isaías
fonte

Respostas:

68

esta é uma resposta

who -u

que te dão o PID

Então você pode matar a sessão do usuário.

kill "pid"
hhlp
fonte
Isso funciona, mas tem alguns efeitos colaterais estranhos.
Isaías
@DoR ... quais são ..?
Oli
4
@Oli Como o GDM reiniciar e tentar alternar para um usuário que eu matei não funcionando.
Isaías
11
@AlvinRow Se você executar ps auxf, notará (a coluna mais à esquerda possui nome de usuário efetivo) que esse método não mata todos os processos executados pelo usuário atual ( provavelmente você não está desconectado). O método @precise parece atender a esse problema, embora eu não me sinta à vontade com o envio SIGKILL.
Dor
Estou surpreso que não exista algo assim, shutdownpara que ele possa avisar (permitindo que o trabalho seja salvo) antes de sair à força. Opcionalmente, isso mudaria para o logon como se estivesse mudando as sessões, deixando a sessão do usuário em execução em segundo plano.
pbhj
28

Você pode usar whopara verificar quais usuários estão conectados:

who

Você pode sair do usuário enviando o KILLsinal ao processo do usuário com:

sudo pkill -KILL -u <username>

(que é igual a sudo pkill -9 -u <username>)

exemplo:

sudo pkill -9 -u guest-2Rw4Lq

(para matar um usuário da sessão de convidado chamado guest-2Rw4Lq)

preciso
fonte
Isso funcionou melhor para mim. A simples execução kill "pid"deixou uma tonelada de processos pelo usuário ainda em execução, onde isso matou todos eles.
thebaer 30/08/2015
11
Por que SIGKILLe não o padrão SIGTERM? O SIGKILLnão é saudável .. #
317 de Dor
sudo pkill -KILL -u <username>para mim, mudei para a primeira sessão do console; Eu pensei que isso matou minha sessão atual, mas ctrl + alt + F7 me trouxe de volta à sessão gráfica atual.
Pbhj 8/03
3
who -u


> adam     ttys000  Aug  4 09:22   .       91228 

então

sudo kill 'PID number'
sudo kill 91228

PID (ID do processo) é o número de quatro ou cinco dígitos no final da leitura do usuário (91228)

adm
fonte
11
Sua imagem não mostra um número de quatro dígitos?
Dronz 23/04