ホームページ >運用・保守 >Linuxの運用と保守 >Linux ユーザーにはいくつかの種類の ID があります

Linux ユーザーにはいくつかの種類の ID があります

青灯夜游
青灯夜游オリジナル
2023-02-08 09:53:252451ブラウズ

Linux ユーザー ID には、ユーザー ID (ユーザー ID、UID と呼ばれる) とグループ ID (グループ ID、GID と呼ばれる) の 2 種類があり、ファイルの所有者と所有権の 2 つの属性に対応します。グループ。各ファイルには独自のオーナー ID とグループ ID があり、ファイル属性が表示されると、システムは「/etc/passwd」と「/etc/group」の内容に基づいて、それぞれ UID と GID に対応するユーザーを検索します。ファイル名とグループ名が表示されます。

Linux ユーザーにはいくつかの種類の ID があります

#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。

Linux システムにログインするとき、独自のユーザー名とパスワードを入力しますが、Linux は実際にはユーザー名を知りません。知っているのは、ユーザー名に対応する ID 番号 (数字の文字列) だけです。ユーザー名。 Linux システムは、すべてのユーザー名と ID の対応関係を /etc/passwd ファイルに保存します。

率直に言うと、ユーザー名には実際の効果はなく、単にユーザーの記憶を便利にするためのものです。

「Linux システムがユーザー名を認識しない」ことを証明することも非常に簡単です。前の章では、「.tar.gz」または「.tar.gz」内のファイルをダウンロードしました。インターネット上の bz2" 形式。解凍されたファイルでは、ファイル所有者属性に数字の文字列が表示されていることがわかります。システムはユーザーの身元を表す ID のみを認識するため、これは正常です。この数字の文字列がユーザーの ID です。 (UID)番号です。

Linux システムでは、各ユーザーの ID がユーザー ID (ユーザー ID、UID と呼ばれます) とグループ ID (グループ ID、GID と呼ばれます) の 2 種類に分類されます。ファイルには所有者があり、所有グループの 2 つの属性は互いに対応しているという事実 (図 1 を参照)。

Linux ユーザーにはいくつかの種類の ID があります
図 1 ファイルの所有者とグループの属性

図 1 からわかるように、ファイルの所有者はスーパー管理者の root であり、グループを所有しています。ルートも。 Linux システムはユーザー名を認識しないのに、ファイルはどのように所有者名とグループ名を識別するのかと疑問に思う人もいるかもしれません。

各ファイルには独自の所有者 ID とグループ ID があります。ファイル属性が表示されると、システムは /etc/passwd ファイルと /etc/group ファイルの内容に基づいて、対応する UID と GID をそれぞれ見つけます。ユーザー名とグループ名が表示されます。

/etc/passwd ファイルと /etc/group ファイルについては、後続の記事で詳しく説明します。ここで知っておく必要があるのは、/etc/passwd ファイルでは次のことができるということだけです。 UID を使用して、対応するユーザー名を見つけます。/etc/group ファイルでは、対応するグループ名を GID を使用して見つけることができます。

小さな実験をしてみましょう。著者が使用している Linux システムには、root スーパー管理者アカウントと c.biancheng.net の通常アカウントという 2 つの一般的に使用されるアカウントがあります。そして、Vim /etc/passwd で、ファイル内で c.biancheng.net アカウントを見つけ、その UID を乱数に変更します。その後、通常のアカウントが所有するファイルを表示すると、次のことがわかります。すべてのファイルの所有者はもはや c.biancheng.net ではなく、numbers です。

具体的な実行プロセスは次のとおりです。

#查看系统中是否存在c.biancheng.net这个用户
[root@livecd ~]#grep 'c.biancheng.net' /etc/passwd
c.biancheng.net:x:500:500:c.biancheng.net:/home/centoslive:/bin/bash
[root@livecd ~]#ll -d /home/centoslive
drwx------. 23 c.biancheng.net centoslive 4096 Apr 9 09:37 /home/centoslive
[root@livecd ~]#vim /etc.passwd
#修改c.biancheng.net账户中的UID(第一个 500)为 2000
[root@livecd ~]#ll -d /home/centoslive
drwx------. 23 500 centoslive 4096 Apr 9 09:37 /home/centoslive
#可以看到,之前的 c.biancheng.net 变为了 500,因为修改了UID,导致 500 找不到对应的账号,因此显示数字
#记得最后将其再手动改正过来
[root@livecd ~]#vim /etc.passwd
#修改c.biancheng.net账户中的UID从 2000 改为 500

c.biancheng.net アカウントの UID は 2000 に変更されていますが、そのホーム ディレクトリには 500 が記録されているため、このユーザーはログインします。ホームディレクトリに入れません。

このセクションでは、ID とユーザー名の対応関係を説明するために、/etc/passwd ファイル内のユーザーの UID を変更していることに注意してください。この操作により一部のプログラムが失敗する可能性があるため、/etc/passwd ファイルを自由に変更することはできません。

関連する推奨事項: 「Linux ビデオ チュートリアル

以上がLinux ユーザーにはいくつかの種類の ID がありますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。