คัดลอกมาจาก http://www.leksound.net/forum/index.php?PHPSESSID=a3f8a723562adb2cf7cc25850e1c8fa1&topic=12515.msg58694
chmod เป็นการกำหนดสิทธิ์การเข้าถึงไฟล์
สำหรับท่านที่ทำการติดตั้ง PHP-Nuke บน *NIX หลายท่าน
อาจจะมีปัญหาเรื่องการตั้งค่าเหล่านี้พอสมควร
เพราะหลาย modules จะมีขั้นตอนนึงที่บอกว่า ให้ต้องทำการ chmod
ถ้าหากไม่ทำก็ไม่สามารถติดตั้ง หรือใช้งาน modules เหล่านั้นได้
แต่สำหรับระบบ windows จะไม่มีเรื่อง permissions อันนี้ครับ
ดังนั้นผู้ที่ใช้ระบบ windows ก็ข้ามในส่วนนี้ได้เลย
drwxr-xr-x 2 webadmin admin 4096 Oct 24 23:29 programs
-rw-r--r-- 1 webadmin admin 20729 Oct 24 23:29 readme-tpf.html
drwxr-xr-x 2 webadmin admin 4096 Oct 24 23:22 search
-rw-r--r-- 1 webadmin admin 6129 Oct 24 23:29 sections.html.en
-rw-r--r-- 1 webadmin admin 6245 Oct 24 23:29 sections.html.html
รูปแบบคือ -RWXRWXRWX
อาจจะมี d หรือ l หรือ - นำหน้าอีกตัวนึง (ตัวนี้เราจะไม่กล่าวถึงนะครับ)
d บ่งบอกว่าเป็น directory
l บ่งบอกว่าเป็นlink file ที่เกิดจากคำสั่ง ln
- บ่งบอกว่าเป็นไฟล์
สิทธิ์มีอยู่ 3 อย่างคือ RWX
R=read W=write X=execute
สิทธิ์จะแบ่งเป็น 3 กลุ่มผู้ใช้คือ
3 ตัวแรก => สิทธิ์ของเจ้าของ file
3 ตัวถัดมา => สิทธิ์ของสมาชิกในกลุ่มเดียวกันกะเจ้าของ file
3 ตัวสุดท้าย => สิทธิ์ของคนอื่นๆใครก็ได้ หมายรวมถึงผ่านระบบ inetnet ด้วย
การคำนวณค่าตัวเลขสำหรับการกำหนดสิทธิ์
จากตัวอย่างที่ให้ดูข้างบน จะพบว่า เขาจะแสดงออกมาในรูปตัวอักษร RWX
แต่ในการติดตั้ง PHP-Nuke หรือ Applications อื่นๆ ที่ต้องทำการ chmod
จะพบว่า เขาบอกมาในรูปตัวเลขทั้งนั้น เช่น 777, 666
ตัวเลขที่เขาบอกมา เป็นผลรวมของแต่ละกลุ่ม โดยที่
RWX = 4 + 2+ 1 = 7
ที่มาคือ
R = 2 ยกกำลัง 2 = 4
W = 2 ยกกำลัง 1 = 2
X = 2 ยำกำลัง 0 = 1
สรุปว่า คือเลขฐาน 2 นั่นแหละครับ
ดังนั้น
666 = rw-rw-rw- => ผู้ใช้ทั้ง 3 กลุ่มมีสิทธิ์ read write ทุกคน
755 = rwxr-xr-x => เจ้าของทำได้ทุกอย่าง คนอื่นๆมีสิทธิ์อ่านและเรียกใช้งานเท่านั้น
777 = rwxrwxrwx => ผู้ใช้ทั้ง 3 กลุ่มมีสิทธิ์ทุกอย่างใน file ซึ่งหมายถึง ลบและแก้ไขได้ด้วย
700 = rwx------ => เฉพาะเจ้าของ file เท่านั้น ที่มีสิทธิ์ทุกอย่าง
รูปแบบการใช้คำสั่ง (*NIX)
# chmod [options] mode file...
เช่น chmod -R 777 /www/phpnuke/modules/coppermine/gallery
หมายเหตุ
ใช้คำสั่ง # man chmod เพื่อดู options ที่สามารถใช้ได้
options เช่น -R คือการรวมถึง subdir ย่อยทั้งหมดด้วย
หรือจะใช้ผ่านทางโปรแกรมพวก ftp ทั้งหลายก็ได้ครับ
ซึ่งจะมีคำสั่ง chmod ให้อยู่แล้ว
เลือก file หรือ dir ที่ต้องการ แล้ว chmod ได้เลย
ถ้าจะเอาคำสั่งแบบยากๆ งงๆอีกนิดนึง
ก็สามารถทำได้นะครับ เช่น
# chmod go-rwx /www/phpnuke/modules/coppermine/gallery
อันนี้จะมีค่าเท่ากับ chmod 700 ครับ งงมั๊ยครับ?Huh??
ความหมายคือ ให้เอาสิทธิ์ rwx ออกจาก g(group=คนในกลุ่มเดียวกัน) และ o(others=คนอื่นๆ)
ดังนั้นก็จะเหลือเป็น rwx------ ซึ่งก็เท่ากับ 700 นั่นเอง
ก็เป็นไปตามสิทธิ์ของ 3 กลุ่มผู้ใช้นั่นแหละครับ
จะมีตัว u (user) ซึ่งหมายถึงเจ้าของไฟล์
และ a (all) หมายถึงทุกคนเลย
เช่น
# chmod ugo+rwx filename => chmod 777 นั่นเอง
หรือจะเป็น
# chmod a+rwx filename ก็ได้
ไม่มีความคิดเห็น:
แสดงความคิดเห็น