ทำไมผู้ใช้ Linux ไม่สามารถแก้ไขไฟล์ในกลุ่มที่เขาเป็นส่วนหนึ่งของ?
ฉันใช้ Ubuntu 12.04 และมีปัญหาเดียวกันกับที่ผู้ใช้ไม่สามารถเขียนไฟล์ที่เขาได้รับอนุญาตให้เข้าถึงกลุ่มได้ ตัวอย่างเช่น:
whoami //I am user el
el
touch /foobar/test_file //make a new file
sudo chown root:www-data /foobar/test_file //User=root group=www-data
sudo chmod 474 /foobar/test_file //owner and others get only read,
//group gets rwx
sudo groupadd www-data //create group called www-data
groups //take a look at the groups and see
www-data //www-data exists.
groups el //see that el is part of www-data
el : www-data
รีสตาร์ทเทอร์มินัลทันทีเพื่อให้แน่ใจว่าผู้ใช้และกลุ่มมีผล เข้าสู่ระบบด้วย el.
vi /foobar/test_file //try to edit the file.
สร้างคำเตือน:
Warning: W10: Warning: Changing a readonly file"
อะไร? ฉันทำทุกอย่างถูกต้องแล้วทำไมถึงไม่ได้ผล?
ตอบ:
ทำการรีบูตเครื่องคอมพิวเตอร์ทั้งหมด การหยุดเครื่องไม่เพียงพอที่จะแก้ไขปัญหาเหล่านี้
ฉันคิดว่าสิ่งที่เกิดขึ้นคือ apache2 ยังใช้กลุ่ม www-data ดังนั้นงานนี้จึงทำให้ผู้ใช้และกลุ่มไม่สามารถบังคับใช้ได้อย่างถูกต้อง คุณไม่เพียง แต่ต้องออกจากระบบ แต่คุณต้องหยุดและเริ่มบริการใหม่ ๆ ที่ใช้กลุ่มของคุณ หากรีบูตไม่ได้แสดงว่าคุณมีปัญหาใหญ่ขึ้น