FTP umask คืออะไร ?
ไฟล์ทุกไฟล์ใน Linux ต้องมี permission เสมอ ปัญหาก็คือ เวลามีไฟล์เกิดใหม่ที่ไม่มีใครมา chmod เพื่อกำหนด permission ให้ Linux จะกำหนด permission ให้ไฟล์นั้นอย่างไร พูดอีกนัยหนึ่งก็คือ default permission ของไฟล์ควรเป็นอะไร ?
คำสั่ง umask ก็คือคำสั่งที่ใช้กำหนด default permission ให้กับไฟล์ที่เกิดใหม่นั่นเอง ตัวอย่างเช่น
$ umask 022
การสั่งให้ umask เท่ากับ 022 จะหมายความว่า ไฟล์เกิดใหม่ที่เป็นไฟล์ executable จะได้ permission เป็น rwxr-xr-x (755) ส่วนไฟล์ธรรมดาจะได้ permission เป็น rw-r–r– (644) โดยปริยาย (by default) คือห้ามใครเขียนเลยนอกจากเจ้าของไฟล์เอง
เหตุก็คือ 777-022 = 755 และ 666-022 = 644 นั่นเอง โปรดสังเกตว่า 022 เป็น umask ยอดนิยม เพราะเราอยากให้ไฟล์ที่เราสร้างขึ้นเขียนโดยคนอื่นไม่ได้เอาไว้ก่อน อย่างอื่นยังไม่สำคัญเท่าไร
คนที่เข้มงวดมากหน่อยอาจจะเลือกเซ็ต umask 027 คือห้าม World (Others) ทำอะไรกับไฟล์เลย เพราะ 777-027 = 750
อนึ่ง ส่วนใหญ่เรานิยมใส่คำสั่ง umask ไว้ในไฟล์ .profile ใน home ของเราด้วย เพื่อให้คำสั่งนี้ถูกรันโดนอัตโนมัติทุกครั้งที่เราล็อกอินเข้ามา