GNU/Linux >> Linux の 問題 >  >> Linux

LinuxでのUIDとは何ですか、それを見つけて変更する方法

Linuxシステムを操作したことがある場合は、UIDとGIDという2つの単語に出くわした可能性があります。それらについて明確な考えがない場合は、この記事に従ってください。

LinuxのUIDとは何ですか?

UIDはUserIdentifierという単語の略語であり、GIDはGroupIdentifierという単語の略語です。この特定の記事では、ユーザー識別子(UID)に焦点を当てます。

UIDは、Linuxシステムに存在するすべてのユーザーに割り当てられる一意の識別番号です。 UID番号の主な役割は、Linuxカーネルに対してユーザーを識別することです。

これは、ユーザーがシステム内でアクセスできるシステムリソースを管理するために使用されます。これは、利用可能なすべてのユーザーに一意のUIDを使用する理由の1つです。そうしないと、1つのUIDの下に2人のユーザーがリストされている場合、両方のユーザーがもう一方のユーザー向けのリソースにアクセスできる可能性があります。

保存されているUIDはどこにありますか?

UIDは、システムに登録されているすべてのユーザーも格納するファイルである/ etc/passwdファイルにあります。 / etc / passwdファイルの内容を表示するには、 catを実行します。 ターミナルで以下に示すように、ファイルに対してコマンドを実行します。

/ etc / passwdファイルには、システム内のすべてのユーザーに関する必要なすべての属性または基本情報が含まれています。データは、以下に示すように7列で表示されます。これらのフィールドはコロン(:)で区切られます。このファイルには、システムの適切なインストール、実行、および更新に必要なシステム定義のアカウントとグループも含まれています。

列1–名前
列2 –パスワード–ユーザーがこのフィールドにパスワードを設定した場合、文字(x)で示されます。
列3 – UID(ユーザーID)
列4– GID(グループID)
列5– Gecos –ユーザーに関する一般的な情報が含まれており、空にすることができます。
列6–ホームディレクトリ
列7 –シェル–へのパスユーザーのデフォルトシェル。

UIDを特定する

上の画像から、ファイルにリストされている最初のユーザーはrootです。ルートは、システムのあらゆる側面を全体的に制御します。 rootユーザーには、UIDゼロ(O)とGID(0)が割り当てられます。次のもう1つは、システム定義のアカウントとグループです。

もう1つ注意すべき点は、UID=0とGID=0が、ルートユーザーにシステムのすべての機能を提供することです。そのことを証明したい場合は、rootの名前をExample_Userなどに変更し、新しいUIDとGIDを使用して新しいrootユーザーを作成します。ユーザー名rootがなくても、Example_Userには引き続き昇格された権限があることがわかります。

画像からもわかるように、rootユーザーに続くシステム定義のアカウントとグループにはUID 1、2、3、4、…などがあります。これは、ほとんどのLinuxシステムがシステムユーザー用に最初の500UIDを予約しているためです。 useraddコマンドで追加された他のユーザーには、500からのUIDが割り当てられます。UbuntuおよびFedoraシステムでは、インストールプロセス中に作成されたユーザーであっても、新しいユーザーには1000以上のUIDが与えられます。

これは、2人のユーザーがいる下の画像で確認できます。 Fosslinux_adminとTuts。

ユーザー「tuts」はインストールプロセス中に作成され、UID 1000が割り当てられます。もう1人のユーザー「fosslinux」は後で追加され、UID1001が与えられました。

ユーザー、グループ、またはアカウントのUIDを見つける方法

/ etc/passwdファイルの内容を表示してUIDを見つける方法について説明しました。より速く、より簡単な方法があります。 idを使用します コマンド。

たとえば、ユーザーFosslinux_adminとTutsのUIDを見つけるには、以下のコマンドを実行します。ルートパスワードの入力が必要になる場合があります。

id fosslinux_admin
id tuts

以下に示すように、他のグループでidコマンドを実行することもできます。ターミナルでidコマンドを単独で実行すると、現在ログインしているユーザーのUIDが表示されます。下の画像を参照してください。

UIDを変更する方法

組織や機関など、多数のユーザーがいるシステムを管理しているとします。ユーザーが会社を辞めた場合は、おそらく、新しいユーザーに退職した従業員のUIDを割り当てる必要があります。

まず、この例の一時ユーザーを作成しましょう。 useraddコマンドを使用します。ルート権限が必要になります。以下のコマンドを参照してください。

useradd example_user

ユーザーexample_userでコマンドIDを実行すると、この新しいユーザーがUID1003を持っていることがわかります

次に、UID =1001のFosslinux_adminユーザーを削除して、新しいユーザーに割り当てましょう。 userdelを使用します ユーザーを削除するコマンド。

sudo userdel -r fosslinux_admin

それが完了したら、新しいユーザー– example_user、fosslinux_adminに属していたUIDを割り当てます。つまり、UID=1001です。これはusermodコマンドを使用して行います。

usermod -u 1001 exmple_user

ユーザー(たとえば、_user)でidコマンドを実行すると、ユーザーのUID=1001であることがわかります。

新しいユーザーに古いユーザーのUIDを取得したら、これらを古いユーザーに属していた他のすべてのファイルと同期する必要があります。これを行うには、以下のコマンドを実行します。

find / -user [UID_of_old_user] -exec chown -h [new_user] {} \;
e.g
sudo find / -user 1001 -exec chown -h user_2 {} \;

特定のUIDを持つ新しいユーザーを作成する

または、 useraddを使用して新しいユーザーを作成することもできます コマンドを実行し、ユーザーに特定のUIDを割り当てます。以下の構文を参照してください。

sudo useradd -u 1111 user_2

user_2でidコマンドを実行すると、ユーザーのUID=1111であることがわかります。

結論

それでおしまい! LinuxシステムのUIDについて知っておく必要があるすべて。意味のあるコンセプトを見逃した、または説明が必要だと思われる場合は、下のコメントセクションで遠慮なくお知らせください。


Linux
  1. Linuxでゾンビプロセスを見つけて殺す方法

  2. Podmanとは何ですか?LinuxにPodmanをインストールする方法

  3. LinuxですべてのSudoユーザーを見つける方法

  1. Linuxユーザーとは何ですか?

  2. Linuxのchmodとchown–Linuxでファイルのパーミッションと所有権を変更する方法

  3. Linuxでユーザーのメモリ使用量を見つける方法

  1. LinuxでのChownコマンドとは何ですか?その使用方法

  2. Linuxでユーザーパスワードを変更、削除、または無効にする方法

  3. Linuxでユーザー名を変更する方法