ฉันได้ศึกษาหัวข้อนี้https://help.ubuntu.com/community/FilePermissionsมาระยะหนึ่งแล้วและไม่สามารถใช้งานได้ด้วยเหตุผลบางประการ
โดยเฉพาะอย่างยิ่งบรรทัดเหล่านี้สนใจฉันมากที่สุด:
หากต้องการเปลี่ยนการอนุญาตทั้งหมดของแต่ละไฟล์และโฟลเดอร์ภายใต้ไดเรกทอรีที่ระบุพร้อมกันให้ใช้ sudo chmod ด้วย -R
$ sudo chmod 777 -R /path/to/someDirectory $ ls -l total 3 -rwxrwxrwx 1 user user 0 Nov 19 20:13 file1 drwxrwxrwx 2 user user 4096 Nov 19 20:13 folder -rwxrwxrwx 1 user user 0 Nov 19 20:13 file2
นี่คือสิ่งที่ฉันพิมพ์:
mark@ubuntuserver:~$ sudo chmod 755 /var/www/html
mark@ubuntuserver:~$ ls -l
total 0
จากนั้นฉันตรวจสอบการเปลี่ยนแปลงใน sftp:
sftp> cd /
sftp> cd var/www/html
sftp> pwd
Remote working directory: /var/www/html
sftp> ls -l
-rw-r--r-- 1 root root 11321 Apr 10 20:07 index.html
จากผลลัพธ์เป็นที่ชัดเจนว่าไดเรกทอรี html ยังคงสามารถแก้ไขได้โดย root เท่านั้น
ฉันจะเปลี่ยนสิ่งนี้ในแบบที่ฉัน (ไม่ใช่รูท) สามารถอัปโหลดไฟล์ไปยังไดเรกทอรี html ได้อย่างไร
ฉันยังทดสอบ:
เจ้าของไฟล์สามารถเปลี่ยนแปลงได้โดยใช้คำสั่ง chown ตัวอย่างเช่นหากต้องการเปลี่ยนเจ้าของไฟล์ foobar เป็น tux:
$ sudo chown tux foobar
ฉันพิมพ์จากเซิร์ฟเวอร์:
sudo chown mark owner
ไม่มีผลอะไร.
sudo chown user:user mydocs
ที่เจ้าของใหม่และกลุ่มอยู่user
และไดเรกทอรีที่คุณเป็นเจ้าของคือmydocs
sudo chmod 766 -r /var/www/html
ls -l
คำสั่งจากไดเรกทอรีบ้านของพวกเขา @ Mark เว้นแต่คุณจะอยู่ในไดเรกทอรีที่คุณพยายามดู / จัดการคุณจำเป็นต้องระบุพา ธ ในกรณีนี้คุณควรใช้คำสั่งเป็นls -l /var/www/html
chmod
การเปลี่ยนแปลงการอนุญาตchown
เจ้าของการเปลี่ยนแปลง 755 หลักแรก (7) หมายถึง 'เจ้าของ' มีสิทธิ์ทั้งหมดในขณะที่ตัวเลขที่สองและหลักสุดท้าย (5) หมายถึง 'กลุ่ม' และ 'อื่น ๆ ' ทั้งสองมีสิทธิ์อ่านและดำเนินการ คุณสามารถเพิ่มผู้ใช้ของคุณในกลุ่มและให้สิทธิ์อย่างเต็มที่ในกลุ่มด้วยเพื่อที่คุณจะได้ไม่ต้องทำการเปลี่ยนแปลงมากมาย
sudo chown mark owner
ควรทำอย่างไรกับไฟล์หรือ dir ที่เรียกว่า "เจ้าของ" ที่นั่น