mengalami sedikit kesulitan mencoba membuat folder di bawah folder pengguna lain /home/devuser1/pubic_html
. Saya mencoba untuk menghindari menggunakan sudo
dan mencari alternatif. Izin pada folder tersebut berbunyi:
drwxr-s--- 2 devuser1 www-data 4096 Apr 28 19:40 public_html
Atau, dengan asumsi saya menggunakan sudo
awalan, apa implikasinya? Saya telah membaca bahwa ini adalah praktik buruk untuk digunakan sudo
dalam membuat folder. Setelah folder baru dibuat, saya masih mengubah kepemilikannya kepada pengguna yang dimaksud. Contoh:
chown -vR devuser1:www-data /home/devuser1/public_html/$vhost
sumber
sudo -u USERNAME mkdir DIRNAME
, Anda menjalankanmkdir
perintah sebagai penggunaUSERNAME
. Ini tidak persis setara dengan masuk sebagaiUSERNAME
, karena masuk juga menyiratkan pengaturan variabel lingkungan dan sebagainya, tapi itu bagian yang penting, yaitu menjalankan proses sebagai pengguna tertentu.Dengan izin itu, hanya pemilik direktori atau pengguna super yang dapat membuat subdirektori.
Satu-satunya cara Anda dapat menghindari menggunakan hak istimewa ekstra untuk membuat folder adalah mengubah kepemilikan untuk diri sendiri (dengan
sudo
), membuat subdirektori dan akhirnya mengembalikan kepemilikan kepada pemilik, tetapi tidak terlihat seperti solusi yang baik untuk saya.sumber
sudo -u devuser1 mkdir /home/devuser1/public_html/test
. Itu tidak sama dengan membuat folder dengansudo
itu?ls -al
mengungkapkan:drwxr-sr-x 2 devuser1 www-data 4096 Apr 28 23:49 test
sudo
selama Anda mengubah kepemilikan setelah itu.ls
terungkap pada konten penggunapublic_html
, tampaknya seolah-olah mengubah kepemilikan tidak diperlukan, mungkin izin sekalipun.su
, sebaliknya saya menggunakannya untuk mengotentikasi diri saya sebagai pengguna yang akan membuat folder ... apakah itu masuk akal?Saya mencoba melakukan
mkdir -p /srv/postgres/data/mydir
tetapi karenadrwxr-xr-x 3 root root 4.0K Apr 7 08:26 srv
memiliki pemilikroot
tidak ada
install -d -o <user> -g <group> -m <mode> <path>
@ user2313838juga tidak
sudo -u postgres mkdir -p /srv/postgres/data/mydir
berhasil @maGzJadi saya harus membaginya dalam dua perintah:
sumber