2017-07-27 8 views
-1

私は管理者アカウント "user1"で端末にログインしています。 sudo mkdirコマンドを使用するたびに、ディレクトリの所有者はroot:rootになり、所有者はuser1:user1となります。だから私はディレクトリを作成するたびに、私は戻ってchownに行く必要があり、それは厄介になってきている。アカウントUSER1は、そのプライマリ・グループがUSER1に設定され、ホイールWWWデータ二群のメンバーです。Unix mkdir:所有者は常にrootとして設定されていますか?

にはどうすればUSER1に所有者を設定するmkdirコマンドを強制することができます。代わりにルートの USER1:ルート新しいディレクトリを作成するとき?

+2

スーパーユーザーに移行する必要がありますか? –

答えて

1

これはmkdirコマンドではなく、sudoコマンドです。これは、「私がrootユーザー(または指定した別のユーザー)として実行する」を実行することを意味します。 sudo mkdir fooを実行すると、sudoプログラムはrootに切り替わり、mkdir fooを実行します。当然、rootがmkdirを実行すると、ルートとしてディレクトリが作成されます。

user1に関連する場所にディレクトリを作成する権限がある場合は、sudoを削除してください。そうでない場合は、chownにする必要があります。ユーザー1が同じ場所に多数のディレクトリを作成する必要がある場合は、adding ACLsを調べてください。ここにsudoは必要ありません。

+0

ありがとうございます、私はmkdirが本質的に高い特権を実行する必要があると思いました。 – leschandrew

+0

Nope;ディレクトリへの書き込み権限がある場合、昇格された権限なしで(ファイルシステムが読み取り専用でないかぎり)、サブディレクトリまたはファイル(またはシンボリックリンク、FIFO、または他の種類の特殊ファイル)を作成できます。 –

1

mkdirを実行するときはsudoを使用しないでください。

+1

また、 'SUDO_UID'と' SUDO_GID'をチェックし、 'chown'を呼び出すスクリプトを書いてください。たぶん 'mkdiru'またはそれのようなもの。 –

関連する問題