เครื่องคิดเลข Chmod
| ชั้น | อ่าน (r) | เขียน (w) | ทำงาน (x) |
|---|---|---|---|
| เจ้าของ | |||
| กลุ่ม | |||
| อื่น ๆ |
สิทธิ์ของไฟล์ Unix แบ่งเป็นสามชุด ได้แก่ อ่าน เขียน และดำเนินการ สำหรับเจ้าของ กลุ่ม และผู้อื่น ซึ่งสรุปรวมได้อย่างเรียบร้อยเป็นเลขฐานแปดสามหลัก เช่น chmod 755 script.sh คือ rwxr-xr-x หมายความว่าเจ้าของมีสิทธิ์ทั้งหมด ส่วนกลุ่มและผู้อื่นมีสิทธิ์อ่านและดำเนินการ เครื่องมือนี้ให้คุณสลับแต่ละช่องทำเครื่องหมายและดูค่าฐานแปดเปลี่ยนแบบเรียลไทม์ หรือวางเลขฐานแปดเพื่อดูการแยกเป็น rwx พร้อมคำสั่ง chmod ที่พร้อมคัดลอก
การอนุญาต chmod ทำงานอย่างไร
-
1
สลับบิตการอนุญาต 9 บิต
สามกลุ่ม (ผู้ใช้ กลุ่ม อื่นๆ) × สามสิทธิ์ (อ่าน เขียน ดำเนินการ) = 9 ช่องทำเครื่องหมาย
-
2
แต่ละกลุ่มจะกลายเป็นเลขฐานแปดหนึ่งหลัก
อ่าน = 4 เขียน = 2 ดำเนินการ = 1 รวมบิตที่คุณต้องการเปิดใช้งาน
-
3
อ่านผลลัพธ์ในรูปแบบเลขฐานแปดและสัญลักษณ์
เช่น 755 → rwxr-xr-x; 644 → rw-r--r--; 600 → rw-------.
-
4
คัดลอกคำสั่ง chmod
เครื่องมือจะแสดงคำสั่ง chmod สำหรับสิทธิ์ปัจจุบันพร้อมคัดลอก ตัวอย่าง: chmod 755 ชื่อไฟล์, chmod u+x ชื่อไฟล์, chmod -R 755 ไดเรกทอรี
ค่าบิตการอนุญาต
| บิต | ค่า | ความหมายของไฟล์ | ความหมายของไดเรกทอรี |
|---|---|---|---|
| อ่าน | 4 | สามารถดูเนื้อหาได้ | สามารถแสดงรายการ |
| เขียน | 2 | สามารถแก้ไข | สามารถสร้าง/ลบ/เปลี่ยนชื่อรายการได้ |
| ดำเนินการ | 1 | สามารถรันเป็นโปรแกรมได้ | สามารถเดินทางข้ามได้ (cd เข้าไป, เข้าถึงภายในได้) |
ค่า chmod ทั่วไป
| เลขฐานแปด | สัญลักษณ์ | การใช้งานทั่วไป |
|---|---|---|
| 777 | rwxrwxrwx | ทุกคนเขียนได้, อันตราย; ไม่ค่อยถูกต้อง |
| 755 | rwxr-xr-x | สคริปต์ ไบนารี ไดเร็กทอรี |
| 750 | rwxr-x--- | สคริปต์ส่วนตัวสำหรับคุณและกลุ่มของคุณ |
| 700 | rwx------ | สคริปต์ส่วนตัวสำหรับคุณ (SSH, ~/.ssh) |
| 644 | rw-r--r-- | เอกสารสาธารณะ รูปภาพ HTML |
| 640 | rw-r----- | การกำหนดค่าที่อ่านได้เป็นกลุ่ม |
| 600 | rw------- | การกำหนดค่าส่วนตัว, คีย์ส่วนตัว SSH, ~/.netrc |
| 444 | r--r--r-- | ไฟล์ที่เผยแพร่แบบอ่านอย่างเดียว |
| 400 | r-------- | ส่วนตัว อ่านอย่างเดียว (ไม่ค่อยถูกต้อง ใช้ 600) |
สิทธิ์พิเศษ (หายาก แต่สำคัญ)
- setuid (4xxx): เรียกใช้ไฟล์ในฐานะเจ้าของ ไม่ว่าใครจะเป็นผู้ดำเนินการก็ตาม
/usr/bin/passwdใช้สิ่งนี้ - setgid (2xxx): บนไฟล์ ให้รันเป็นกลุ่ม ในไดเร็กทอรี ไฟล์ใหม่จะสืบทอดกลุ่มของไดเร็กทอรี
- sticky bit (1xxx): ในไดเร็กทอรี มีเพียงเจ้าของไฟล์เท่านั้นที่สามารถลบ/เปลี่ยนชื่อได้
/tmpใช้สิ่งนี้
เลขฐานแปดสี่หลักได้แก่: chmod 4755 setuid-binary เปิด setuid ควบคู่ไปกับ 755
สัญลักษณ์ chmod
ผู้ดูแลระบบหลายคนชอบรูปแบบสัญลักษณ์สำหรับการเปลี่ยนแปลงเพิ่มเติม:
chmod u+x script, เพิ่มการดำเนินการสำหรับเจ้าของเท่านั้นchmod go-w file, ลบการเขียนสำหรับกลุ่มและอื่นๆchmod a+r file, ให้การอ่านแก่ทุกคน (ผู้ใช้ กลุ่ม อื่นๆ)chmod u=rw,go=r file, ตั้งค่าบิตเหล่านี้ให้แน่ชัดchmod -R 755 directory, เรียกซ้ำ
ข้อผิดพลาดทั่วไป
- 777 ในโฟลเดอร์อัพโหลด: ดูเหมือนว่าจะ “แก้ไขสิทธิ์”; เปิดเซิร์ฟเวอร์ให้กับผู้โจมตีจริงๆ ใช้ชุดค่าผสมที่แคบกว่า (เช่น 755 ที่มีการเป็นเจ้าของกลุ่มที่ถูกต้อง)
- chmod -R 644 บนไดเรกทอรี: ลบการดำเนินการบนไดเรกทอรี ดังนั้นคุณจึงไม่สามารถ
cdเข้าไปได้ ใช้ 755 สำหรับไดเร็กทอรี, 644 สำหรับไฟล์ปกติ - 0600 กับ 600: ศูนย์นำหน้าหมายถึงฐานแปดใน C และเชลล์ การใช้งาน chmod ส่วนใหญ่ยอมรับทั้งสองอย่าง
- Umask: ไฟล์ใหม่สืบทอด 666 ลบด้วย Umask ค่าเริ่มต้น umask 022 ให้ 644 ไฟล์และ 755 ไดเร็กทอรี
คำถามที่พบบ่อย
โดยทั่วไปคุณต้องการให้เจ้าของสามารถปรับเปลี่ยนได้ และคนอื่นๆ สามารถแสดงรายการและสำรวจได้ 755 = rwx สำหรับเจ้าของ, r-x สำหรับกลุ่มและอื่น ๆ - ชุดค่าผสมนั้นตรงกันทุกประการ
แทบจะไม่เคยเลย 777 ช่วยให้ทุกคนในระบบแก้ไขไฟล์ได้ ในระบบที่มีผู้ใช้หลายราย ถือเป็นช่องโหว่ด้านความปลอดภัย ในระบบผู้ใช้คนเดียวไม่จำเป็น (เจ้าของมี rwx ด้วย 755 อยู่แล้ว) หากเว็บแอปดูเหมือนจะต้องการ 777 การแก้ไขที่แท้จริงคือการเป็นเจ้าของที่ถูกต้อง (chown) หรือการเป็นสมาชิกกลุ่ม
ไดเรกทอรี ~/.ssh: 700 คีย์ส่วนตัว (id_rsa, id_ed25519): 600 คีย์สาธารณะ (.pub): 644 authorized_keys: 600 เพื่อความปลอดภัย SSH จะปฏิเสธคีย์ที่มีสิทธิ์กว้างเกินไป
chown สำหรับเจ้าของ chgrp สำหรับกลุ่ม - คำสั่งแยกกัน chmod เปลี่ยนเฉพาะบิต ไม่ใช่ผู้ใช้/กลุ่มที่เป็นเจ้าของไฟล์
เครื่องมือที่เกี่ยวข้อง
ตารางอ้างอิง ASCII
ตาราง ASCII ครบตั้งแต่ 0 ถึง 127 พร้อมค่าเลขฐานสิบ ฐานสิบหก ฐานแปด ฐานสอง และรูปแบบการอ้างอิงอักขระแบบตัวเลขของ HTML รวม NUL, LF และ DEL
อ้างอิงตัวอักษร HTML
รายการที่สามารถค้นหาได้ขององค์ประกอบ HTML พร้อมรหัสชื่อและรหัสตัวเลข รวมถึงฟังก์ชันสำเนาด้วยคลิกเดียวสำหรับตัวอักษรพิเศษและสัญลักษณ์ต่างๆ
ตารางอ้างอิงแป้นพิมพ์ลัด
ค้นหาแป้นพิมพ์ลัดเริ่มต้นตามเอกสารของ VS Code, Chrome และ Bash ที่ใช้ GNU Readline บน macOS, Windows และ Linux
ตัวตรวจสอบความถูกต้องของ JSON
ตรวจสอบไวยากรณ์ JSON และตรวจจับเครื่องหมายจุลภาคต่อท้าย เครื่องหมายอัญประกาศที่ผิด คีย์ซ้ำ และโครงสร้างที่ผิดรูปแบบ พร้อมระบุตำแหน่งข้อผิดพลาดอย่างแม่นยำ
ตัวลดรูปพีชคณิตบูลีน
ประเมินนิพจน์บูลีนสำหรับทุกชุดอินพุตและดูตารางค่าความจริงที่สมบูรณ์ รองรับตัวแปรสูงสุดห้าตัวและตัวดำเนินการ &, |, !, ^
ตัวตรวจสอบอีเมล
ตรวจสอบที่อยู่อีเมล: ตรวจไวยากรณ์ RFC 5322 ค้นหา MX เรกคอร์ดแบบเรียลไทม์ พร้อมรายละเอียดส่วนท้องถิ่น โดเมน และความยาว ไม่มีการส่งอีเมลใด ๆ
เครื่องมือนี้มีให้บริการในภาษาอื่น
- Calculadora Chmod [PT]
- Chmod Rechner [DE]
- chmod 計算機 [JA]
- Máy tính Chmod [VI]
- Calculadora Chmod [ES]
- Chmod-calculator [NL]
- chmod 계산기 [KO]
- Kalkulator Chmod [ID]
- Chmod-kalkylator [SV]
- Kalkulator Chmod [PL]
- Calculateur Chmod [FR]
- حاسبة chmod [AR]
- Калькулятор Chmod [RU]
- Chmod Hesaplayıcısı [TR]
- Chmod 计算器 [ZH]
- Calcolatore Chmod [IT]
- Chmod Calculator [EN]