Linux システムのユーザー管理コマンドの概要

Linux システムのユーザー管理コマンドの概要

ユーザーとグループの管理

1. ユーザーとグループの基本概念

ユーザーとグループ:
システム上のすべてのプロセス (実行中のプログラム) は特定のユーザーとして実行されます。
すべてのファイルは特定のユーザーによって所有されます。
ファイルとディレクトリへのアクセスはユーザーによって制限されます。
実行中のプロセスに関連付けられたユーザーによって、そのプロセスがアクセスできるファイルとディレクトリが決まります。

ユーザーの役割

(1)現在ログインしているユーザーの情報を表示します。

[root@192 ~]# id 

(2)ファイルの所有者を表示します。

[root@192 ~]# ls -l /home 

(3)実行中のプロセスのユーザー名を表示します。

[root@192 ~]# ps axu 

ユーザーグループ情報保存ファイル

(1)利用者基本情報ファイル:

[root@192 ~]# cat /etc/passwd


/etc/passwd (コロンで区切られた 7 列)
ルート: x: 0: 0: ルート: /root: /bin/bash
ユーザー名: x : uid : gid : 説明: HOME : シェル

システム規約: RHEL7
uid: 0 特権ユーザー
uid: 1~499 システムユーザー
uid: 1000人以上の一般ユーザー
ルートユーザー

意味:
.uid は 0 です
. 全力
このユーザーにはファイルシステム上の通常の権限を上書きする権限があります
ソフトウェアのインストールや削除、システムファイルやディレクトリの管理
ほとんどのデバイスはルート権限でのみ制御できます

(2)ユーザーパスワード情報ファイル:

[root@192 ~]# cat /etc/shadow 


/etc/shadow (コロンで区切られた 9 列)
ルート: $ 6$ FSPVbNE…: : 0: 99999: 7: : :
1) 「ログイン名」は、/etc/passwdファイルのログイン名と一致するユーザーアカウントです。

2) 「パスワード」フィールドには、暗号化されたユーザーパスワードが保存されます。空の場合、対応するユーザーにはパスワードがなく、ログイン時にパスワードは必要ありません。
アスタリスクはアカウントがロックされていることを示します。
二重の感嘆符はパスワードの有効期限が切れていることを示します。
$ 6$ で始まるものは、SHA-512 を使用して暗号化されていることを示します。
$ 1$ は MD5 を使用して暗号化されていることを示します。
$ 2$ は Blowfish を使用して暗号化されます。
$5$はSHA-256で暗号化されています。

3) 「最終変更時刻」は、ある時点からユーザーが最後にパスワードを変更した時点までの日数を示します。開始時間はシステムによって異なる場合があります。たとえば、SCOLinux の場合、開始点は 1970 年 1 月 1 日です。

4) 「最小時間間隔」とは、2 回のパスワード変更の間に必要な最小日数を指します。

5) 「最大期間」とは、パスワードの有効期間の最大日数を指します。

6) 「警告時間」フィールドには、システムがユーザーに警告を開始してからユーザーのパスワードが正式に期限切れになるまでの日数が表示されます。

7) 「非アクティブ時間」とは、ユーザーがログインせずに有効なままでいられる最大日数を指します。 (ソフトリミット。有効期限後のアカウントが使用できなくなる日数。)

8) 「有効期限」フィールドには絶対日数が示されます。このフィールドを使用すると、対応するアカウントの有効期間が示されます。有効期限が切れると、アカウントは有効なアカウントではなくなり、ログインに使用できなくなります。 (ハード制限)

9) 保持

(3)グループ情報ファイル:

[root@192 ~]# cat /etc/group


/etc/group (コロンで区切られた 4 列)
ルート:x:0:
グループ名: グループパスワード: グループID: グループメンバー (グループメンバーはデフォルトでは空です)

2. ユーザー/グループ管理

ユーザー

(1)オプションを指定せずにユーザーを作成する:

[root@192 ~]# ユーザー追加 user01 


まとめ:
ユーザーの作成時にオプションが指定されていない場合、システムはユーザーと同じ名前のグループをユーザーのプライマリ グループとして作成します。

(2)ユーザー指定のオプションを作成する:

[root@192 ~]# useradd user02 -u 1503 //ユーザーuser02を作成し、uidを指定する
[root@192 ~]# useradd user03 -d /aaa //ユーザーuser03を作成し、ホームディレクトリを指定します

(3)ユーザーの削除:

[root@192 ~]# userdel -r user02

(4)ユーザーパスワード:

方法 1: root が他のユーザー (user03) のパスワードを変更します。

[root@192 ~]# パスワード user03 


方法 2: ユーザー (user03) がログインし、自分でパスワードを変更します。

[user03@192 ~]$ パスワード

(5)グループメンバーの管理:

注: usermode -G グループ名 ユーザー名

[root@192 ~]# usermod -G hr user03 

(6)その他のオプション管理:

[root@192 ~]# usermod -s /sbin/nologin user03

ログインシェルを変更して、user03 のログインを制限する

ユーザーグループ

(1)オプションを指定せずにグループを作成する:

[root@192 ~]# グループ追加 db 

(2)オプションを指定するためのグループを作成する:

[root@192 ~]# groupadd net01 -g 2000 //グループnet01を追加し、gid 2000を指定します

(3)グループ情報を表示する:

[root@192 ~]# grep 'net01' /etc/group ///etc/group内のグループnet01の情報を表示します

(4)グループを削除する

[root@192 ~]# groupdel net01 //グループnet01を削除

削除されているため、閲覧時に表示されません。

分類

(1)基本グループ/メイングループ

同じ名前のユーザーの基本グループは、ユーザーが作成されると自動的に作成され、/etc/passwdに表示されます。

(2)追加グループ

ユーザーがメンバーとなっているその他のグループ。

コマンドの概要

1 useradd はユーザーを作成するコマンドです。
2 usermod はユーザーを変更するコマンドです。
3 groupaddはグループを作成するコマンドです。
4 -u はユーザーの UID を指定します。
5 -g はユーザーの基本グループを指定します。
6 -G はユーザーの追加グループを指定します。
7 /etc/passwd はユーザーの基本グループを表示できます。
8 /etc/group ユーザーの追加グループを表示できます。

Linux システムのユーザー管理コマンドの概要についてはこれで終わりです。Linux システムのユーザー管理コマンドの詳細については、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • PHPプログラマーが遊ぶLinuxシリーズ nginx初心者ガイド
  • Nasmは、自作のLinuxブートディスクをvmwareで実行するブートコードを実装します
  • Linux ブートプロセスの分析
  • Linux 管理者ガイド (5) -- 起動とシャットダウン
  • Linux システムコマンドのメモ
  • Linux システムでキャッシュをクリアする方法の概要
  • Linuxシステムのsudoコマンドの詳細な説明
  • フォルダとファイルを削除するLinuxシステムコマンド
  • Linuxシステムでddコマンドを使用する方法
  • Linux システムの sudo コマンドに関する 10 のヒントのまとめ
  • Linux ブートシステム方式の分析

<<:  面接官はReactのライフサイクルについてよく質問します

>>:  MySQLへのJava接続の基礎となるカプセル化の詳細な説明

推薦する

シンプルなドラッグ効果を実現するJavaScript

この記事では、簡単なドラッグ効果を実現するためのJavaScriptの具体的なコードを参考までに紹介...

Vue3スタイルのCSS変数注入の実装

目次まとめ基本的な例モチベーションデザインの詳細コンパイルの詳細採用戦略練習するヒント適切なプロパテ...

HTML での非同期ファイルアップロードの例

コードをコピーコードは次のとおりです。 <form action="/hehe&qu...

IE6 で JS エラーが発生し、CSS が適用されない HTML エンコードの問題の解決策

テストでは、ページ定義がutf-8でエンコードされている場合、 js ファイルに中国語などのマルチバ...

SQL 実践演習: オンライン モール データベースの製品カテゴリ データ操作

オンラインショッピングモールデータベース - 商品カテゴリデータ操作(I)プロジェクトの説明電子商取...

CSS3 で King of Glory マッチング人員読み込みページを実装する方法

King of Glory をプレイしたことがある人なら、このページの効果をよくご存知でしょう。なぜ...

Windows での自動展開に Jenkins を使用するチュートリアル図

今日は、Jenkins + powershell スクリプトを使用して、.NET CORE スクリプ...

ドラッグフォトウォールを実現するネイティブJS

この記事では、ネイティブ JS で実装されたドラッグ可能な写真ウォールを紹介します。効果は次のとおり...

mybatis-plusページングパラメータが渡された後、SQLのwhere条件にはページング情報操作の制限がありません

2時間近くかけて、さまざまな方法を試しました。後で、whereでフィルタリングした後のデータ量が1ペ...

Ubuntuがインターネットに接続できない場合の解決策

問題の説明:デスクトップ コンピューターとキャンパス ネットワークを使用して、有線モードでインターネ...

HTML コードの書き方に関する提案のまとめ

リソースファイルのプロトコルを省略する画像、メディアファイル、スタイル、スクリプトの URL では、...

Vueはダイアログのカプセル化を実装します

目次Vue2 ライティングVue3プラグインのバージョンの記述Vue3 動的コンポーネントの記述書き...

インターフェーステストプラットフォームを構築するためのDjango+Vue+Dockerの詳細な説明

1. 冒頭の2つの単語みなさんこんにちは。私の名前はLin Zonglinです。私はテストエンジニア...

jsはブラウザを閉じるときにアカウントのログアウトを処理します

目次古典的なアプローチ質問その他の質問注意が必要な問題古典的なアプローチご存知のとおり、アカウントの...

モバイルでのHTML5経由のファイルアップロード

ほとんどの場合、PC でファイルをアップロードするにはプラグインが使用され、フラッシュが導入されても...