Linux ユーザー識別

LinuxLinuxBeginner
今すぐ練習

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Linux 環境においてユーザーアカウントを識別し、検証する方法を学習します。ユーザー識別の理解は、Linux システム管理とセキュリティにおける基本的な概念です。この実験で学習するコマンドは、システム管理者が現在システムにログインしているユーザーを特定し、そのユーザーが持つ権限を把握するために不可欠なツールです。

ユーザー識別は、システムセキュリティ、アクセス問題のトラブルシューティング、および適切なシステム構成の確保において重要です。これらの基本的なコマンドを習得することで、より高度な Linux 管理タスクの基礎となる貴重なスキルを身につけることができます。


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/FileandDirectoryManagementGroup(["File and Directory Management"]) linux(("Linux")) -.-> linux/UserandGroupManagementGroup(["User and Group Management"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/BasicFileOperationsGroup -.-> linux/touch("File Creating/Updating") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/FileandDirectoryManagementGroup -.-> linux/cd("Directory Changing") linux/UserandGroupManagementGroup -.-> linux/groups("Group Displaying") linux/UserandGroupManagementGroup -.-> linux/whoami("User Identifying") linux/UserandGroupManagementGroup -.-> linux/id("User/Group ID Displaying") subgraph Lab Skills linux/echo -.-> lab-271445{{"Linux ユーザー識別"}} linux/touch -.-> lab-271445{{"Linux ユーザー識別"}} linux/cat -.-> lab-271445{{"Linux ユーザー識別"}} linux/cd -.-> lab-271445{{"Linux ユーザー識別"}} linux/groups -.-> lab-271445{{"Linux ユーザー識別"}} linux/whoami -.-> lab-271445{{"Linux ユーザー識別"}} linux/id -.-> lab-271445{{"Linux ユーザー識別"}} end

whoami で現在のユーザーを識別する

最初に学ぶコマンドは whoami です。このコマンドは、現在ログインしているユーザーのユーザー名を表示します。このシンプルで強力なコマンドを使うと、現在使用しているユーザーアカウントを確認できます。

まずは、プロジェクトディレクトリにいることを確認しましょう。

cd ~/project

上記のコマンドは、現在のディレクトリを /home/labex/project に変更します。これはこの実験のデフォルトの作業ディレクトリです。

では、whoami コマンドを実行しましょう。

whoami

このコマンドを実行すると、以下のような出力が表示されます。

labex

この出力は、現在 labex ユーザーとしてログインしていることを示しています。この情報は、特に異なるユーザーアカウント間を切り替えた後や、権限の問題をトラブルシューティングする際に、現在のユーザーの身元を確認する必要があるときに役立ちます。

whoami コマンドは、実際には id -un コマンドの簡略版です。id -un コマンドは、ユーザーの身元情報のうちユーザー名の部分のみを表示します。

ユーザー情報をファイルに保存する

Linux では、コマンドの出力をファイルにリダイレクトして記録やさらなる処理を行うことができます。このステップでは、ユーザー名をログファイルに保存します。

まず、プロジェクトディレクトリに user_identification.log という名前の新しいファイルを作成しましょう。

touch ~/project/user_identification.log

touch コマンドは、ファイルが存在しない場合は新しい空のファイルを作成し、既存のファイルの場合は内容を変更せずにタイムスタンプを更新します。

次に、whoami コマンドの出力をこのファイルに追加しましょう。Linux では、>> 演算子を使ってファイルに内容を追加します。

whoami >> ~/project/user_identification.log

このコマンドは whoami を実行し、その出力を user_identification.log ファイルの末尾に追加します。ファイルに既に内容がある場合、新しい出力は既存の内容を上書きせずに新しい行に追加されます。

情報が正しくファイルに保存されたことを確認するために、ファイルの内容を確認しましょう。

cat ~/project/user_identification.log

以下のような出力が表示されるはずです。

labex

これにより、ユーザー名がログファイルに正常に保存されたことが確認できます。

id で詳細なユーザー情報を取得する

whoami はユーザー名のみを表示しますが、id コマンドは現在のユーザーに関するより包括的な情報を提供します。これには、ユーザー ID (UID)、グループ ID (GID)、およびユーザーが所属するすべてのグループが含まれます。

id コマンドを実行しましょう。

id

以下のような出力が表示されるはずです。

uid=1000(labex) gid=1000(labex) groups=1000(labex),4(adm),20(dialout),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),117(netdev)

この出力から次のことがわかります。

  • あなたのユーザー ID (uid) は 1000 で、ユーザー名は labex です。
  • あなたの主要グループ ID (gid) は 1000 で、グループ名は labex です。
  • あなたはいくつかの補助グループに所属しています("groups=" の後にリストされています)。

この詳細情報もログファイルに保存しましょう。

id >> ~/project/user_identification.log

ログファイルの更新された内容を確認するには、再度 cat コマンドを使用します。

cat ~/project/user_identification.log

これで、ログファイルにユーザー名と詳細なユーザー情報の両方が表示されるはずです。

現在のユーザーの所属グループを調べる

Linux では、ユーザーは複数のグループに所属することができ、これらのグループはファイルやリソースへのアクセスを制御するのに役立ちます。あなたのユーザーアカウントに関連付けられたグループを表示する方法を見てみましょう。

groups コマンドは、現在のユーザーが所属するすべてのグループを表示します。

groups

以下のような出力が表示されるはずです。

labex adm dialout cdrom floppy sudo audio dip video plugdev netdev

最初にリストされているグループ (labex) はあなたの主要グループで、その他は追加の権限を提供する補助グループです。

では、このグループ情報をログファイルに追加しましょう。

echo "My groups are: $(groups)" >> ~/project/user_identification.log

上記のコマンドは、コマンド置換 $(groups) を使用して、groups コマンドの出力をログファイルに追加する文字列に含めています。

ログファイルの最終内容を確認しましょう。

cat ~/project/user_identification.log

これで、3 行の情報(ユーザー名、詳細な ID 情報、および所属グループ)が表示されるはずです。

このログファイルには、システム上のあなたのユーザー ID の包括的な記録が含まれており、システム管理、トラブルシューティング、またはドキュメント作成の目的に役立ちます。

まとめ

この実験では、ユーザー識別に関するいくつかの重要な Linux コマンドを学び、実践しました。

  1. 現在ログインしているユーザー名を表示する whoami コマンド
  2. リダイレクト (>>) を使用してコマンドの出力をファイルに保存する方法
  3. cat コマンドを使用してファイルの内容を表示する方法
  4. 詳細なユーザーおよびグループ情報を提供する id コマンド
  5. ユーザーが所属するすべてのグループをリストする groups コマンド

これらのコマンドは、システム管理とセキュリティにおける基本的なツールです。これらを使用することで、誰がシステムを使用しているか、どのような権限を持っているか、どのリソースにアクセスできるかを特定することができます。

ユーザー識別を理解することは、以下の点で重要です。

  • 権限の問題をトラブルシューティングする
  • 適切なファイルおよびディレクトリの権限を設定する
  • ユーザーアカウントを管理する
  • システムのセキュリティを確保する
  • システムアクセスを監査する

Linux の学習を続けるにつれて、これらのコマンドがより高度なシステム管理タスクの基本的な要素となることがわかるでしょう。