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の方法の分析

推薦する

Vue.js での VNode の使用

VNodeとはvue.js には VNode クラスがあり、これを使用してさまざまな種類の vnod...

HarborをベースにしたDocker専用倉庫の構築方法

目次1. ハーバーの紹介1. ハーバーが民間倉庫を建設3. 港湾の維持管理4. Harborユーザー...

nginxサーバーのダウンロード、インストール、使用方法の詳細な説明

ダウンロードhttp://nginx.org/en/download.html解凍ダウンロードしたn...

Vue はアップロードした画像に透かしを追加できるようになりました (アップグレード版)

vueプロジェクトでは、アップロードした画像に透かしを追加して参照できるようにするアップグレード版...

CSS3を使用してプログレスバー効果を実現し、動的にパーセンテージを追加する

プロジェクト中、プログレスバーを実装するために js の requestAnimationFrame...

JavaScriptにおけるこのポインティング問題の詳細な説明

序文JS の this ポインターは、初心者にとって常に頭痛の種でした。今日は、これが地面に落ちたと...

MySQL 起動時に報告される ERROR:2002 の分析と解決方法

序文この記事は主にMySQL起動エラー2002の分析と解決方法を紹介しています。参考と勉強のために共...

React 並行関数エクスペリエンス (フロントエンド並行モード)

React は、開発者が Web およびモバイルベースのアプリケーションを作成するために使用するオ...

JavaScript 関数呼び出し、適用、バインド メソッドのケース スタディ

要約する1. 類似点どちらも、ターゲット関数が実行されると内部の this ポインターを変更できます...

Alibaba Cloud Ubuntu 16.04 が IPSec サービスを構築

IPSec の概要IPSec (インターネット プロトコル セキュリティ): ネットワーク層と適用さ...

MySQL パーティション フィールド列に別のインデックスを作成する必要がありますか?

序文パーティション フィールドは主キーの一部でなければならないことは誰もが知っています。では、複合主...

Navicat の MySQL へのリモート接続が遅い理由の詳細な説明

最終的な解決策は最後の写真にありますリモート データベース ( Linux システム) に接続したと...

MySQLコマンドプロンプトで入力エラーが発生したときに前のコマンドを修正する方法

目次現在の問題解決プロセス具体的な手順解決した事件現在の問題MySQL コマンド プロンプトに複数行...

マインスイーパゲームを実装するための jQuery プラグイン (3)

この記事では、jQueryプラグインを使用してマインスイーパゲームを実装する方法に関する3番目の記事...

JavaScript で実装された 6 つの Web ページ画像カルーセル効果の詳細な説明

目次1. マウスがカルーセル モジュール上を通過すると、左右のボタンが表示され、モジュールを離れると...