Linux でユーザーアカウントを削除する方法

Suraj Joshi 2023年1月30日 2020年11月2日
  1. 構文:userdel コマンド
  2. 例:userdel コマンド
Linux でユーザーアカウントを削除する方法

Linux では、複数のユーザアカウントを持つことができます。時には、システムへのアクセスを拒否するために、いくつかのユーザを削除する必要があるかもしれません。そのような場合は、ユーザアカウントを削除する必要があります。Linux では、userdel コマンドラインユーティリティを用いてユーザアカウントを削除することができます。

構文:userdel コマンド

userdel [options] user

これはユーザ名 user を持つユーザをシステムから削除し、options は削除処理をカスタマイズするために userdel コマンドに関連付けられた様々なオプションです。ユーザアカウントを削除するには、スーパーユーザとしてログインしていることを確認する必要があります。

例:userdel コマンド

userdel DelftStack

ユーザ名 DelftStack のアカウントを削除します。このコマンドは /etc/login.defs ファイルの内容も読み込む。もし DelftStack という名前のグループが存在し、その中に DelftStack というユーザが存在するだけであれば、/etc/login.defs ファイルで USERGROUPS_ENAByes に設定されていれば、DelftStack グループも削除されます。

このコマンドは /etc/passwd/etc/shadow ファイルに存在するユーザの情報もすべてクリアします。

ただし、userdel コマンドを使ってアカウントを削除しても、メールスプールやユーザホームのように削除されないディレクトリもあります。

ディレクトリを削除するには、userdel コマンドで -r または --remove オプションを使用します。

userdel -r DelftStack

これにより、メールスプールとユーザホームディレクトリが削除されます。ただし、他のファイルシステムのファイルは手動で削除しなければならません。

ユーザがログインしていたり、ユーザに関連付けられたプロセスがシステム内で実行されている場合、ユーザアカウントを削除することはできません。システムからユーザをログアウトし、ユーザに関連付けられたすべてのプロセスを停止するには、以下のコマンドを使用します。

sudo killall -u DelftStack

システムのユーザ DelftStack をログアウトし、ユーザ DelftStack に関連付けられたすべてのプロセスを停止します。

これで、コマンドを使ってユーザーアカウントを削除することができます。

userdel DelftStack

あるいは、ログインしているユーザアカウントやそれに関連するプロセスを実行しているユーザを削除するには、userdel コマンドで -f または --force オプションを使用することができます。

userdel -f DelftStack

これにより、ユーザがログインしていたり、ユーザに関連するプロセスが実行中であっても、システムから DelftStack アカウントを強制的に削除します。

Author: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

関連記事 - Linux User