このチュートリアルでは、Linuxシステムでユーザーのホームディレクトリと一緒にユーザーのアカウントを削除するために使用できる手順を説明します。


Linuxシステムでユーザーアカウントを作成して管理する方法については、以下のリンクから次の記事をお読みください。
- Linuxでユーザーアカウントを管理するための15の「useradd」コマンド例
- Linuxでユーザーアカウント名を変更/変更するための15の「usermod」コマンド例
- Linuxでファイル権限を持つユーザーとグループを管理する方法
システム管理者として Linuxでは、ユーザーアカウントが長期間休止状態になったり、ユーザーが組織や会社を辞めたり、その他の理由でユーザーアカウントを削除したりする必要がある場合があります。
Linuxシステムでユーザーアカウントを削除するときは、ホームディレクトリを削除して、新しいシステムユーザーやその他のサービスのためにストレージデバイスのスペースを解放することも重要です。
ホームディレクトリを使用したユーザーアカウントの削除/削除
1。 デモンストレーションの目的で、最初に、ユーザー tecmintである2つのユーザーアカウントをシステム上に作成することから始めます。 およびユーザーlinuxsay ホームディレクトリ/home / tecmint および/home / linusay それぞれadduserを使用します コマンド。
# adduser tecmint # passwd tecmint # adduser linuxsay # passwd linuxsay


上のスクリーンショットから、 adduserを使用しました Linuxでユーザーアカウントを作成するコマンド。 useraddを使用することもできます コマンド、両方とも同じで、同じ仕事をします。
2。 次に、 deluserを使用してLinuxでユーザーアカウントを削除または削除する方法を確認します。 (Debianとその派生物の場合)および userdel (RedHat / CentOSベースのシステムの場合)コマンド。
deluserの構成ファイル内のディレクティブ およびuserdel コマンドは、コマンドを実行したときに、これがすべてのユーザーファイルとディレクトリをどのように処理するかを決定します。
deluserの構成ファイルを見てみましょう。 /etc/deluser.conf
であるコマンド Ubuntu、Kali、MintなどのDebian派生物、およびRHEL / CentOS / Fedoraユーザーの場合は、/etc/login.defs
を表示できます。 ファイル。
これらの構成の値はデフォルトであり、必要に応じて変更できます。
# vi /etc/deluser.conf [On Debian and its derivatives] # vi /etc/login.defs [On RedHat/CentOS based systems]
3。 ホームディレクトリを持つユーザーを削除するには、Linuxサーバーマシンで次の手順を実行することにより、高度な方法を使用できます。ユーザーがサーバーにログオンすると、サービスを使用してさまざまなプロセスを実行します。ユーザーは、サーバーにログオンしていない場合にのみ効果的に削除できることに注意してください。
Linuxでユーザーアカウントをロックする
ユーザーがシステムにアクセスできないように、ユーザーアカウントのパスワードをロックすることから始めます。これにより、ユーザーはシステム上でプロセスを実行できなくなります。
passwd –lockを含むコマンド オプションはこれを達成するのに役立ちます:
# passwd --lock tecmint Locking password for user tecmint. passwd: Success


ユーザーの実行中のすべてのプロセスを見つけて強制終了する
次に、ユーザーアカウントの実行中のすべてのプロセスを見つけ、 PIDを決定してそれらを強制終了します。 (プロセスID )ユーザーが所有するプロセスの:
# pgrep -u tecmint 1947 1959 2091 2094 2095 2168 2175 2179 2183 2188 2190 2202 2207 2212 2214
次に、ユーザー名、PID、PPID(親プロセスID)、使用されている端末、プロセス状態、コマンドパスのプロセス中間を、次のコマンドを使用して完全なフォーマットスタイルで一覧表示できます。
# ps -f --pid $(pgrep -u tecmint) UID PID PPID C STIME TTY STAT TIME CMD tecmint 1947 1 0 10:49 ? SLl 0:00 /usr/bin/gnome-keyring-daemon --daemonize --login tecmint 1959 1280 0 10:49 ? Ssl 0:00 mate-session tecmint 2091 1959 0 10:49 ? Ss 0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session tecmint 2094 1 0 10:49 ? S 0:00 /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session tecmint 2095 1 0 10:49 ? Ss 0:00 //bin/dbus-daemon --fork --print-pid 6 --print-address 9 --session tecmint 2168 1 0 10:49 ? Sl 0:00 /usr/lib/dconf/dconf-service tecmint 2175 1959 0 10:49 ? Sl 0:02 /usr/bin/mate-settings-daemon tecmint 2179 1959 0 10:49 ? Sl 0:47 marco tecmint 2183 1 0 10:49 ? Sl 0:00 /usr/lib/gvfs/gvfsd tecmint 2188 1959 0 10:49 ? Sl 0:00 mate-panel tecmint 2190 1 0 10:49 ? Sl 0:00 /usr/lib/gvfs/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes tecmint 2202 1 0 10:49 ? S<l 0:20 /usr/bin/pulseaudio --start --log-target=syslog tecmint 2207 1959 0 10:49 ? S 0:00 /bin/sh /usr/bin/startcaja tecmint 2212 1 0 10:49 ? Sl 0:03 /usr/bin/python /usr/lib/linuxmint/mintMenu/mintMenu.py tecmint 2214 1 0 10:49 ? Sl 0:11 /usr/lib/mate-panel/wnck-applet ....


ユーザーの実行中のプロセスをすべて見つけたら、killallコマンドを使用して、図のように実行中のプロセスを強制終了できます。
# killall -9 -u tecmint
-9 SIGKILLの信号番号です 信号を送るか、 -KILLを使用します -9の代わりに および-u ユーザー名を定義します。
-bash: killall: command not found
このようなエラーを修正するには、次のようにpsmiscパッケージをインストールする必要があります。
# yum install psmisc [On RedHat/CentOS 7.x] # dnf install psmisc [On Fedora 21+ versions]
削除する前にユーザーデータをバックアップする
次に、ユーザーファイルをバックアップできます。これはオプションですが、ユーザーアカウントの詳細とファイルを確認する必要が生じたときに、将来使用することをお勧めします。
次のように、tarユーティリティを使用してユーザーのホームディレクトリのバックアップを作成しました。
# tar jcvf /user-backups/tecmint-home-directory-backup.tar.bz2 /home/tecmint


ユーザーアカウントとファイルの削除/削除
これで、ユーザーをホームディレクトリと一緒に安全に削除できます。システム上のすべてのユーザーファイルを削除するには、--remove-all-files
を使用します。 以下のコマンドのオプション:
# deluser --remove-home tecmint [On Debian and its derivatives] # userdel --remove tecmint [On RedHat/CentOS based systems]


概要
これは、Linuxシステムからユーザーとそのホームディレクトリを削除することと関係があります。ガイドは簡単に理解できると思いますが、コメントを残すことで懸念を表明したり、アイデアを追加したりできます。