私は*nixオペレーティングシステムに初めて触れました。私はこのファイルのフォーマットと使い方(少なくともマニュアルページの内容)を理解しています/etc/group
。ある日、グループファイルをバックアップコピーに置き換えようとしました。ファイル名を変更したgroup.old
後、マイコンピュータのすべてのアカウントが失われました。根ライセンス。この問題を解決するには、シングルユーザーモードに入る必要がありました。このグループとUNIXアカウント全体の詳細なプロセスが必要なようです。
誰かが私にリンクを与えるか、あなたの学習経験を私と共有できますか?
ベストアンサー1
このファイルは、/etc/group
どのユーザーがどのグループのメンバーであるかを示します。グループはアクセス制御に使用され、ユーザーを補完します。
/etc/group
ログイン時に読んでください。各プロセスは、ユーザーと1つ以上のグループで実行されます。ログインプロセスはすべての権限で実行を開始します。ユーザーが正常に認証されると(パスワードの入力など)、ログインプロセスはに表示されているグループとに表示されているグループを/etc/group
想定し、認証された/etc/passwd
ユーザーシェルで始まります。
各ファイルには、3つの権限セット(ユーザー、グループ、その他)と所有者とグループがあることがわかります。プロセスがファイルにアクセスしようとすると、次のことが行われます。
- ファイルを所有するユーザーとしてプロセスが実行される場合、適用可能な権限はユーザー権限です。
- それ以外の場合、プロセスのグループの1つがファイルを所有するグループである場合、適用可能な権限はグループ権限です。
- それ以外の場合、適用可能な権限は別の権限です。
例:
$ ls -l myfile
-rw-r----- 1 msh gutenberg 1234 Jul 4 1971 books.txt
ユーザーはmsh
このファイル()を読み書きできますrw-
。グループ内のすべてのユーザーはgutenberg
ファイル(r--
)を読み取ることができます。他のユーザーはそのファイルにまったくアクセスできません(---
)。
したがって、グループを使用すると、すべてのユーザーのサブセットがファイルにアクセスできるようにすることができます。システムサービスとデバイスは、特定のユーザーまたは特定のグループに制限することもできます。
グループには3つの一般的な用途があります。
- 上記の例のように、共通プロジェクトで作業している実際のユーザーグループは、同じファイルセットにアクセスします。
- システムリソースへのアクセスを制御するために使用される物理ユーザーグループ。たとえば、競合するゲームは、ユーザーとグループに属し、すべてのユーザーだけが書き込み可能で、すべてのユーザーが書き込めないハイスコアの
root
ファイルを保存することがよくあります()。ゲームプログラムは高い権限を持つグループで実行されます。games
games
rw-rw----
games
設定)のgames
ため、高いスコアのファイルを読み書きできますが、他のプロセスはそうではありません。 - システムユーザーグループ。たとえば、多くのシステムサービスは、あるサービスのバグや破損が他のサービスに影響を与える可能性があるリスクを最小限に抑えるために専用のユーザーとグループで実行されます。
あなたの症状に応じて、システムはグループメンバーシップを通じてアカウントへのアクセスを制御するように設定されていますroot
。これを行う方法はいくつかあります。最も一般的な設定は次のとおりです。
- ルートアカウントへのアクセスは次のように行われます。Sudo。ユーザーはを実行するために自分のパスワードを入力する必要があります
sudo
。sudo
ユーザーがグループに属している場合は、rootとして実行コマンドを呼び出すことができますadmin
。これはたとえ話%admin: ALL=(ALL) ALL
の中で線として表されます/etc/sudoers
。時々、グループは異なる名前を持っています。これがUbuntuのデフォルト設定です。 - ルートアカウントへのアクセスは次のように行われます。数。グループ内のユーザーのみを
wheel
実行できますsu
。ユーザーはを実行するためにrootパスワードを入力する必要がありsu
ます。したがって、rootアカウントに侵入するには、攻撃者はユーザーのパスワードとrootパスワードの両方を取得する必要があります。これは一部のBSDシステムのデフォルト値でしたが、攻撃者がさらに洗練されたため、廃止されました(アカウントの破損、キーロガーの実行、ルートパスワードの取得)。
/etc
レッスン:ファイルの目的がわからない場合は、ファイルを変更または削除しないでください。何かを変更した場合は、ルートシェルで実行し、後でログインできることをテストしてください。そうでない場合は、直ちに変更を元に戻してください。
/etc
インストールをお勧めしますマネージャーをお待ちくださいパッケージして実行しますetckeeper init
(root)。