私はLinuxコマンドを理解しようとしていますが、いくつかのLinuxコマンドは私の心の中に浮かびます。その一つは、Linuxでグループが作成される理由とその目的は何ですか?
答え1
Unixは本質的にマルチユーザーシステムであることを覚えておいてください。これを念頭に置いて、大学の学生と教員の間で共有されるシステムのようなものは、ユーザーを複数のグループに分類するのに役立ちます。システムに使用制限を設定し、教員より学生の制限を厳密に設定できます。また、実際に必要で使用方法を知っている人(おそらく他のグループ)にのみアクセスできる別のコンピューティングクラスタがあるかもしれません。 (ここに共有ユーザーデータベースがあるとしますが、これは複数のシステムがある場合はほとんど必須です。)
ファイル権限については、おそらくプロジェクトのディレクトリがあり、ファイルを変更できるようにそのディレクトリにアクセスできるグループがあります(適切なumask
設定とsetgid
ディレクトリビットが役に立ちます)。
全従業員のほんの一握りだけが、システムへのスーパーユーザーアクセス権を取得できます。 1つの方法は、ファイル権限を使用して特定のグループ(通常はroot
または)wheel
のメンバーのみを実行できるようにすることですsu
。
sudo
現在、Linuxではより一般的ですが、グループを使用して誰ができることを決定するように構成されています。
もちろん、今日では、シリアルターミナル/ Telnet / SSHログインを使用するマルチユーザーシステムは一般的ではありません。ただし、システムがシステム外の他のユーザーが利用できるサービスを実行している場合は、そのサービスを分割するのが便利です。ユーザーアカウント彼ら自身の。その後、グループを使用してユーザー間で制限されたアクセスを許可できます。たとえば、crontab
setgid バイナリであり、グループ権限を使用してcrontab
ファイルにアクセスし、www-data
HTTP サーバー上のデータファイルの変更を許可するグループを持つことができます。 (または逆に、www-data
HTTPサーバーがファイルを読み取ることができるように、ユーザーにファイルへの読み取り権限を付与できます。)
答え2
グループは、sudoグループと同じ権限を割り当てるのに役立ちます(rootアクセス権限があります)。
したがって、ユーザーに特定の役割の権限を割り当てたい場合は、必要に応じてグループに追加するだけです。