別のユーザーの/home/devuser1/pubic_html
フォルダーの下にフォルダーを作成するのに少し苦労しました。 Sudo
の使用を避け、別の方法を探しています。上記のフォルダのアクセス許可は次のようになります。
drwxr-s--- 2 devuser1 www-data 4096 Apr 28 19:40 public_html
または、Sudo
接頭辞を使用すると仮定すると、どのような影響がありますか?フォルダを作成するためにSudo
を使用することは悪い習慣だと私は読んだ。新しいフォルダが作成された後も、問題のユーザーの所有権を変更しています。例:
chown -vR devuser1:www-data /home/devuser1/public_html/$vhost
Sudo -u [username] mkdir /home/[username]/public_html/[folder_name]
は問題なく動作します。
同じユーザーとしてログインしてpublic_html
の下にフォルダを作成した場合、権限と所有権は同じであることがわかります。
su -c "mkdir /home/[username]/public_html/[folder_name]" [username]
を呼び出すこともできます
install
を使用すると、特定の所有者、グループ、モードでディレクトリを作成できます。
install -d -o <user> -g <group> -m <mode> <path>
これらの権限が与えられた場合、ディレクトリの所有者またはスーパーユーザーのみがサブディレクトリを作成できます。
フォルダーを作成するために追加の権限を使用することを回避できる唯一の方法は、所有権を自分に変更し(Sudo
を使用)、サブディレクトリを作成し、最後に所有権を所有者に返しますが、見栄えがよくありません私への解決策。
mkdir -p /srv/postgres/data/mydir
しかし理由は
drwxr-xr-x 3 root root 4.0K Apr 7 08:26 srv
には所有者root
がいます
どちらもinstall -d -o <user> -g <group> -m <mode> <path>
@ user2313838
Sudo -u postgres mkdir -p /srv/postgres/data/mydir
機能 @ maGz
だから私はそれを2つのコマンドに分割しなければなりません:
Sudo mkdir -p /srv/postgres/data/mydir
Sudo chown postgres:postgres /srv/postgres -R