5.2 ACLの利点

従来どおり、Linuxシステムのファイルオブジェクトごとに3セットのパーミッションが定義されます。この3セットには、読み取り(r)、書き込み(w)、実行(x)の各パーミッションがあり、それぞれが3種類のユーザ(ファイル所有者、グループ、その他のユーザ)ごとに設定されます。そのほかに、ユーザID設定ビット、グループID設定ビット、スティッキビットを設定できます。この無駄のない概念は、ほとんどの実際的なケースに十分適しています。ただし、複雑なシナリオまたは高度なアプリケーションの場合、以前は、システム管理者が従来のパーミッション概念の制限を回避するために多くの仕掛けを施す必要がありました。

ACLは、従来のファイルパーミッション概念の拡張として使用できます。ACLを使用すれば、パーミッションが元の所有者や所有者の所属グループに対応していない場合でも個々のユーザまたはグループにそうしたパーミッションを割り当てることができます。アクセス制御リストは、Linuxカーネルの機能であり、現在ReiserFS、Ext2、Ext3、JFS、およびXFSでサポートされています。ACLを使用すると、アプリケーションレベルで複雑なパーミッションモデルを実装しなくても複雑なシナリオを実現できます。

ACLの利点は、WindowsサーバをLinuxサーバに置き換える場合にはっきりします。接続した一部のワークステーションは、移行後も引き続きWindowsの下で動作できます。Linuxシステムは、Sambaを搭載したWindowsクライアントにファイルサービスと印刷サービスを提供します。Sambaがアクセス制御リストをサポートしている場合は、LinuxサーバおよびWindows(Windows NT以降のみ)のどちらでもグラフィカルユーザインタフェースでユーザパーミッションを設定できます。Sambaスイートの一部であるwinbinddを使用すれば、Linuxサーバ上にアカウントのない、Windowsドメインにしか存在していないユーザにパーミッションを割り当てることもできます。