ฉันจะค้นหารายการไฟล์ที่มีการอนุญาตพิเศษได้อย่างไร
ฉันต้องการค้นหาไฟล์ที่root
ผู้ใช้เป็นเจ้าของซึ่งได้rwx
รับอนุญาตจากเจ้าของ
มีวิธีการหารายชื่อไฟล์ดังกล่าวหรือไม่? ฉันใช้ Ubuntu 16.04
ฉันจะค้นหารายการไฟล์ที่มีการอนุญาตพิเศษได้อย่างไร
ฉันต้องการค้นหาไฟล์ที่root
ผู้ใช้เป็นเจ้าของซึ่งได้rwx
รับอนุญาตจากเจ้าของ
มีวิธีการหารายชื่อไฟล์ดังกล่าวหรือไม่? ฉันใช้ Ubuntu 16.04
คำตอบ:
ใช่ GNU find
สามารถทำได้:
- ชื่อผู้ใช้
ไฟล์เป็นเจ้าของโดย uname ผู้ใช้ (ID ผู้ใช้ที่เป็นตัวเลขอนุญาต
-perm - โหมด
โหมดบิตสิทธิ์ทั้งหมดถูกตั้งค่าไว้สำหรับไฟล์ โหมดสัญลักษณ์ได้รับการยอมรับในแบบฟอร์มนี้และโดยปกติจะเป็นวิธีที่คุณต้องการใช้ คุณต้องระบุ 'u', 'g' หรือ 'o' หากคุณใช้โหมดสัญลักษณ์ ดูส่วนของตัวอย่างสำหรับตัวอย่างที่เป็นตัวอย่าง
ดังนั้นคุณต้องการ:
find /path/to/directory -user root -perm -u+rwx
หากคุณต้องการที่จะหาไฟล์ทั้งหมดที่ผู้ใช้มีสิทธิ์บางประการสำหรับ (ไม่คำนึงถึงว่าเขาเป็นเจ้าของ (และแม้กระทั่งการตั้งผ่าน ACL)) คุณสามารถใช้find
กับ-readable
, และ-writable
-executable
ในการค้นหาไฟล์ทั้งหมดที่แซมผู้ใช้มีสิทธิ์อ่าน
sudo -u sam find /path/to/directory -readable -ls
sudo -u sam
เป็นสิ่งจำเป็นเพราะสามสวิทช์กล่าวถึงการทำงานกับสิทธิ์ของผู้ที่รื้อฟื้นfind
- ดังนั้นคุณจำเป็นต้อง sudo เพื่อให้ทำงานfind
เป็นผู้ใช้sam -ls
แสดงรายการที่สมบูรณ์สำหรับแต่ละไฟล์ที่พบตัวอย่างเพิ่มเติม
เพื่อค้นหาไฟล์ทั้งหมดที่samมีexecute
หรือ write
สิทธิ์
sudo -u sam find /path/to/directory -writable -or -executable -ls
เพื่อค้นหาไฟล์ทั้งหมดที่samมีexecute
และ read
สิทธิ์
sudo -u sam find /path/to/directory -readable -and -executable -ls
เขียนได้ไม่ได้สะกดผิด!