Grep zuerst alle Prozesse des 'Test'-Benutzers und kill -9 alle PIDs, dann lösche den Benutzer.
pgrep -u test
ps -fp $(pgrep -u test)
killall -KILL -u test
userdel -r test
passwd -l <user>
stoppt nicht alle Möglichkeiten der Anmeldung. Zum Beispiel, wenn sie sich mit ssh
anmelden mit öffentlichen Schlüsseln können sie sich trotzdem anmelden, da sie kein Passwort benötigen.
Um die erneute Anmeldung des Benutzers zu stoppen, bearbeiten Sie /etc/passwd
Datei und entfernen Sie den Benutzer oder ändern Sie die 7. Spalte in /sbin/nologin
.
Ausführen:
ps -u <user>
um zu sehen, welchen Prozess der Benutzer noch verwendet, und sie alle zu töten. Möglicherweise müssen Sie Folgendes verwenden:
kill -s 9 <pid>
um den Prozess zum Stoppen zu zwingen.
passwd -l <user>
deaktiviert das Konto nicht. Wie Gareth sagte, kann sich der Benutzer möglicherweise immer noch mit einem anderen Authentifizierungstoken wie dem SSH-Schlüssel anmelden. Um dieses Konto zu deaktivieren, sollten Sie usermod --expiredate 1
verwenden Dadurch wurde das Ablaufdatum des Kontos auf 1970 gesetzt. Jetzt sollten Sie alle Prozesse beenden, die der Benutzer gestartet hat.running:
$pgrep -u Foo
gibt alle Prozesse aus, die der Benutzer Foo gestartet hat.running:
$kill -9 <pid>
wird SIGKILL
gesendet Signal, das diesen Prozess beendet. NowRun:
$pgrep -u Foo | xargs kill -9
Dadurch werden alle Prozess-IDs des Benutzers Foo abgerufen und alle beendet.
ODER:
$kill -9 -u Foo