chown は root 以外のユーザーも使用できるようにするようです。

chown は root 以外のユーザーも使用できるようにするようです。

私たちの会社ではLDAP認証を使用していますが、わからないことがあるかもしれません。コマンドが奇妙に動作していることがわかりましたが、chownこれが正常なものかどうかはわかりません。私のシナリオは次のとおりです。

ユーザータグのGIDはSK001936で、タグホームディレクトリの所有者グループはSK001778です。グループSK001778は、ユーザーがタグ付けされたホームディレクトリを所有者(タグ)として使用して、すべての操作(rwx)を実行できるようにするには、次のようにします。

[mark@machine ~]$ id
uid=48447(mark) gid=41795(SK001936) groups=40119(SUB_SK001936_PPS),41795(SK001936)
[mark@machine ~]$ ls -lad .
drwxrwxr-x   6 mark SK001778  4096 Oct 10 13:30 .

ユーザー michael と mark の GID はともに SK001936 です。

[michael@machine mark]$ id
uid=40570(michael) gid=41795(SK001936) groups=40119(SUB_SK001936_PPS),41795(SK001936)
[mark@machine ~]$ id
uid=48447(mark) gid=41795(SK001936) groups=40119(SUB_SK001936_PPS),41795(SK001936)

ユーザー michael はユーザー mark のホームディレクトリにファイルを作成できません。問題は、michaelがmarkのホームディレクトリ(SK001778)へのフル(rwx)アクセス権を持つグループに属していないことです。

[michael@machine mark]$ touch michael
touch: cannot touch `michael': Permission denied

通常、ユーザーはファイルの所有者であってもchownを実行できません。ただし、この例では、ホームディレクトリの所有者(タグ)は自分のホームディレクトリの所有者グループを変更できます(したがって、そのグループに属するユーザーは自分のホームディレクトリにアクセスできます)。

[mark@machine ~]$ chown mark:SK001936 .

markのホームディレクトリにアクセスできるグループはmichaelのGIDと同じグループになり、michaelはmarkのホームディレクトリからファイル/フォルダを作成/削除できるようになりました。

[michael@machine mark]$ touch michael

ホームディレクトリに再度変更できないグループの所有権を表示します。ルートのみを使用してchownできることを覚えておいてください。一般ユーザーがファイルをchownできないのはなぜですか?):

[mark@machine ~]$ chown mark:SK001778 .
chown: changing ownership of `.': Operation not permitted

私の質問は:Markが自分のホームディレクトリのグループ所有権をどのように変更できるかです。発表するこのchownはルートでのみ実行できます。ボックスはRedHat 5.6です。

ベストアンサー1

グループのみを変更する方法で使用するchown場合と同じように機能しますchgrp。ファイルまたはディレクトリの所有者は、グループを自分が属するグループに変更できます。

chownコマンドは両方とも、所有者とグループを変更できるchgrp同じ基本システムコールを使用するため、このように機能します。chownシステムコールはアプリケーション権限を確認します。chownコマンドとコマンドの唯一の違いは、chgrp変更を指定するために使用される構文です。

MarkはSK001778グループのメンバーではないため(そしてrootではなくグループメンバーシップのターゲットではないため)、グループをSK001778に変更することはできません。

おすすめ記事