Linux でユーザーを完全に削除する 2 つの方法

Linux でユーザーを完全に削除する 2 つの方法

Linux 操作

実験環境: Centos7 仮想マシン

まず、共通ユーザーgubeiqingを作成します。

[root@localhost ~]# useradd gubeiqing
[root@localhost ~]# パスワードgubeiqing
ユーザーgubeiqingのパスワードを変更します。
新しいパスワード:
パスワードが正しくありません: パスワードが回文です
新しいパスワードを再入力してください:
passwd: すべての認証トークンが正常に更新されました。

これにより、通常のユーザーが正常に作成され、その後、そのユーザーが削除されます。

[root@localhost ~]# ユーザー削除 gubeiqing
[root@localhost ~]#

useradd コマンドを使用して削除しますが、問題が発生します。gubeiqing ユーザーを再度作成すると、次のようになります。

[root@localhost ~]# useradd gubeiqing
useradd: 警告: ホームディレクトリがすでに存在します。
skel ディレクトリからファイルをコピーしません。
メールボックスファイルを作成しています: ファイルが存在します

ファイルは既に存在するため、作成できません。なぜですか?ユーザーが作成されると、デフォルトでユーザーのホームディレクトリ、パスワードファイル、ユーザーグループ (ユーザーグループが指定されていない場合)、およびメールボックスファイルが生成されるためです。userdel コマンドを使用してユーザーを削除すると、ユーザーのみが削除されますが、ユーザーのファイルはそのまま残るため、これらのファイルを完全に削除する必要があります。調べてみると、対処が必要な領域が 4 つほど見つかりました。

/家
/etc/passwd
/etc/グループ
/var/スプール/メール

これらのファイルを一つずつ削除しましょう。

1. /homeディレクトリ内のファイルを削除する

[root@localhost ~]# cd /home
[root@localhost ホーム]# ls
古北清
[root@localhost ホーム]# rm -rf gubeiqing
[root@localhost ホーム]# ls
[root@localhost ホーム]#

2. /etc/passwd下のユーザーを削除する

このファイルを見てみましょう。

[root@localhost ~]# cat /etc/passwd
ルート:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/ログインなし
デーモン:x:2:2:デーモン:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
同期:x:5:0:sync:/sbin:/bin/sync
シャットダウン:x:6:0:シャットダウン:/sbin:/sbin/シャットダウン
停止:x:7:0:停止:/sbin:/sbin/停止
メール:x:8:12:mail:/var/spool/mail:/sbin/nologin
オペレータ:x:11:0:オペレータ:/root:/sbin/nologin
ゲーム:x:12:100:ゲーム:/usr/ゲーム:/sbin/nologin
ftp:x:14:50:FTPユーザー:/var/ftp:/sbin/nologin
誰も:x:99:99:誰も:/:/sbin/nologin
systemd-network:x:192:192:systemd ネットワーク管理:/:/sbin/nologin
dbus:x:81:81:システムメッセージバス:/:/sbin/nologin
polkitd:x:999:997:polkitd:/:/sbin/nologin のユーザー
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
sshd:x:74:74:特権分離SSH:/var/empty/sshd:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
dockerroot:x:997:994:Docker ユーザー:/var/lib/docker:/sbin/nologin
gubeiqing:x:1000:1000::/home/gubeiqing:/bin/bash

ここで、このシステム内のすべてのユーザーを確認できます。最後の行は、先ほど作成したユーザーであることがわかります。そのため、vi エディターを使用して、最後の行のユーザーを削除します。

3. /etc/groupの下のユーザーグループファイルを削除します。

まずこのファイルを確認してみましょう:

[root@localhost ~]# cat /etc/group
ルート:x:0:
ビン:x:1:
デーモン:x:2:
sys:x:3:
アドム:x:4:
端末:x:5:
ディスク:x:6:
lp:x:7:
メモリ:x:8:
kmem:x:9:
ホイール:x:10:
cdrom:x:11:
メール:x:12:postfix
男:x:15:
ダイヤルアウト:x:18:
フロッピー:x:19:
ゲーム:x:20:
テープ:x:30:
ビデオ:x:39:
ftp:x:50:
ロック:x:54:
オーディオ:x:63:
誰も:x:99:
ユーザー:x:100:
utmp:x:22:
誘惑者:x:35:
ssh_keys:x:999:
入力:x:998:
システムジャーナル:x:190:
システムネットワーク:x:192:
dbus:x:81:
ポルキット:x:997:
ポストドロップ:x:90:
ポストフィックス:x:89:
sshd:x:74:
クロニ:x:996:
cgrd:x:995: いいえ
dockerroot:x:994:
古北青:x:1000:

次に、vi エディターを使用してこのユーザー グループを削除します。

4. /var/spool/mailの下のメールボックスファイルを削除します。

[root@localhost ~]# cd /var/spool/mail
[root@localhost メール]# ls
古北清
[root@localhost メール]# rm -rf gubeiqing
[root@localhost メール]# ls
[root@localhost メール]#

削除が完了したら、gubeiqing ユーザーを作成します。

[root@localhost メール]# useradd gubeiqing
[root@localhost mail]# パスワードgubeiqing
ユーザーgubeiqingのパスワードを変更します。
新しいパスワード:
パスワードが正しくありません: パスワードが回文です
新しいパスワードを再入力してください:
passwd: すべての認証トークンが正常に更新されました。

終わり!

この方法の他に、完全に削除する方法もあります。

[root@localhost メール]# userdel -rf gubeiqing
[root@localhost メール]# useradd gubeiqing
[root@localhost mail]# パスワードgubeiqing
ユーザーgubeiqingのパスワードを変更します。
新しいパスワード:
パスワードが正しくありません: パスワードが回文です
新しいパスワードを再入力してください:
passwd: すべての認証トークンが正常に更新されました。

これら 2 つの方法を使用すると、ユーザーを完全に削除できます。

要約する

上記は、Linux でユーザーを完全に削除するために紹介した 2 つの方法です。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。

以下もご興味があるかもしれません:
  • Linux ドライバの Kconfig ファイルと Makefile ファイルの例
  • Linux での chkconfig コマンドの詳細な説明
  • Linux コマンド chkconfig コマンドの使用方法の詳細な説明
  • 初心者向けの一般的な Linux システムコマンドの完全なリスト
  • Linux コマンドを素早く習得する 4 つの方法
  • 収集する価値のある Linux ドキュメント編集コマンド 27 個
  • Linuxでスクリーンショットを撮って編集するための最高のツール
  • userdel コマンドを使用して Linux ユーザーを削除する方法の詳細なチュートリアル
  • Linux カーネルの探究: Kconfig の秘密

<<:  自作メニューをクリックする効果を実現するJavaScript

>>:  正規表現に基づくあいまい文字列置換を実装するMySQLの方法の分析

推薦する

パーティショニングを使用して数十億のデータに対する MySQL データ処理を最適化する方法

MySQL が数千万のデータをクエリする場合、ほとんどのクエリ最適化の問題はインデックスを通じて解決...

jQuery における Ajax の関連知識ポイントのまとめ

序文JavaScriptを学ぶ学生は、 AJAX (非同期JavaScriptとxml) 変換は非同...

CSS マルチカラムレイアウトソリューション

1. 固定幅+適応型期待される効果: 左側は固定幅、右側は適応幅 共通コード: html: <...

MySQL が group by をサポートしない場合の解決策の概要

MySQL 5.7.x の最新バージョンをダウンロードしてインストールしました。デフォルトでは、on...

NodeとPythonの双方向通信実装コード

目次プロセスコミュニケーションプロセス間の双方向通信問題要約するサードパーティのデータ サプライヤー...

MySQL 挿入時間の 8 時間の違いの問題の解決方法

MySQL挿入時の8時間の時差の問題を解決する通常、jdbc の URL にはいくつかのパラメータを...

モバイルインターネット時代: レスポンシブウェブデザインが一般的なトレンドに

今はモバイルインターネットが急速に発展している時代です。スマートフォンやタブレットはますます普及し、...

XHTML CSS ページをプリンタ ページに変換する

<br />これまで、Web ページのプリンタ対応バージョンを作成するには、印刷したとき...

Centos7 での Mysql5.7.19 の詳細なインストールチュートリアル

1. ダウンロード公式サイトからmysql-5.7.19-linux-glibc2.12-x86_6...

CSSインジェクションの知識の要約

最近のブラウザでは、CSS 内で JavaScript を実行することはできなくなりました。以前は、...

Vue はシェイク機能を実装します (ios13.3 以降と互換性があります)

最近、shake.jsを使用して、shakeに似た機能を作成しました。ただし、shake機能はios...

JDBC を使用して Mysql データベースに接続する際に発生する可能性のある問題の概要

まず、いくつかの概念を明確にします。 JDBC: Javaデータベース接続、Oricalによって規定...

HTML の <input> タグの詳細な説明と、それを無効にする方法

定義と使用法<input> タグはユーザー情報を収集するために使用されます。 type ...

Windows オペレーティング システムでポートの使用状況を照会およびクリアするプログラム

Windowsオペレーティングシステムでは、ポートの占有状況を照会し、ポートの占有状況をクリアするプ...

PSを使用して2分でxhtml+cssウェブサイトのホームページを作成します

xhtml+css のウェブサイト再構築、ウェブ標準などについては、記事が多すぎるので繰り返しません...