ค้นหาไฟล์ตามการอนุญาต


15

ฉันจะค้นหารายการไฟล์ที่มีการอนุญาตพิเศษได้อย่างไร

ฉันต้องการค้นหาไฟล์ที่rootผู้ใช้เป็นเจ้าของซึ่งได้rwxรับอนุญาตจากเจ้าของ

มีวิธีการหารายชื่อไฟล์ดังกล่าวหรือไม่? ฉันใช้ Ubuntu 16.04


มีประโยชน์หรือไม่: askubuntu.com/questions/786347/…
NonStandardModel

คำตอบ:


23

ใช่ GNU findสามารถทำได้:

- ชื่อผู้ใช้

ไฟล์เป็นเจ้าของโดย uname ผู้ใช้ (ID ผู้ใช้ที่เป็นตัวเลขอนุญาต

-perm - โหมด

โหมดบิตสิทธิ์ทั้งหมดถูกตั้งค่าไว้สำหรับไฟล์ โหมดสัญลักษณ์ได้รับการยอมรับในแบบฟอร์มนี้และโดยปกติจะเป็นวิธีที่คุณต้องการใช้ คุณต้องระบุ 'u', 'g' หรือ 'o' หากคุณใช้โหมดสัญลักษณ์ ดูส่วนของตัวอย่างสำหรับตัวอย่างที่เป็นตัวอย่าง

ดังนั้นคุณต้องการ:

find /path/to/directory -user root -perm -u+rwx

5

หากคุณต้องการที่จะหาไฟล์ทั้งหมดที่ผู้ใช้มีสิทธิ์บางประการสำหรับ (ไม่คำนึงถึงว่าเขาเป็นเจ้าของ (และแม้กระทั่งการตั้งผ่าน 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

เขียนได้ไม่ได้สะกดผิด!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.