Czasami, gdy jest zalogowanych zbyt wielu użytkowników, mój komputer może stać się bardzo wolny i opóźniony z powodu małej ilości dostępnej pamięci RAM. Chciałbym mieć możliwość szybkiego wylogowania innych użytkowników z wiersza poleceń zamiast ręcznego przełączania się na każdego użytkownika i wylogowywania go.
czy to możliwe?
command-line
users
Izajasza
źródło
źródło
ps auxf
, zauważysz (kolumna po lewej stronie ma efektywną nazwę użytkownika), że ta metoda nie zabija wszystkich procesów wykonywanych przez bieżącego użytkownika (więc prawdopodobnie nie jesteś wylogowany). Wydaje się, że metoda @precise rozwiązuje ten problem, chociaż nie czuję się dobrze z wysyłaniemSIGKILL
.shutdown
więc może ostrzegać (pozwalając na zapisanie pracy) przed wymuszonym wylogowaniem. To opcjonalnie po prostu przełączyłoby się na login, jakby zmieniał sesje, pozostawiając sesję użytkownika działającą w tle.Możesz użyć,
who
aby sprawdzić, którzy użytkownicy są zalogowani:Możesz wylogować użytkownika, wysyłając
KILL
sygnał do procesu użytkownika za pomocą:(który jest taki sam jak
sudo pkill -9 -u <username>
)przykład:
(aby zabić użytkownika sesji gościa o nazwie
guest-2Rw4Lq
)źródło
kill "pid"
pozostawiło mnóstwo procesów przez użytkownika, który nadal działa, co zabiło ich wszystkich.SIGKILL
nie domyślnaSIGTERM
? ToSIGKILL
nie jest zdrowe ...sudo pkill -KILL -u <username>
dla mnie przeniósł mnie do pierwszej sesji konsoli; Myślałem, że to zabiło moją obecną sesję, ale ctrl + alt + F7 przywróciło mnie do bieżącej sesji graficznej.następnie
PID (identyfikator procesu) to cztero lub pięciocyfrowa liczba na końcu odczytu użytkownika (91228)
źródło