वेब स्टेट्स पर मेरे द्वारा किए गए सभी हाउट्स:
Find all SUID files:
find / -perm -4000 -print
Find all SGID files:
find / -perm -2000 -print
परन्तु यह सच नहीं है। देख:
$ ls -lah test
-r-sr-xr-x 1 user user 0B Jan 24 22:47 test
$
$
$ stat -x test | grep Mode
Mode: (4555/-r-sr-xr-x) Uid: ( 1000/ user) Gid: ( 1000/ user)
$
$
$ find test -perm 4000
$ find test -perm 2000
$
प्रश्न: तो सत्य क्या है? मैं वास्तव में सभी SUID / SGID फ़ाइलों को कैसे सूचीबद्ध कर सकता हूं?
उह, तो वास्तव में यह "सच नहीं" क्यों है? आपने R ead T he F riendly M anual, right? फ़ाइल की अनुमति बिट्स बिल्कुल मोड (ऑक्टल या प्रतीकात्मक) हैं।
—
0xC0000022L
** परीक्षण ** एक फ़ाइल है। निर्देशिकाओं पर खोजें। तो आपको उस निर्देशिका का उपयोग करना चाहिए जहां परीक्षण रहता है।
—
नेल्स
@ नील: असत्य।
—
0xC0000022L
find
(GNU सटीक प्रतीत होता है) निर्देशिकाओं और फाइलों को समान रूप से लेगा। वह / वह बस -perm
स्विच की बात याद आती है । मैनुअल पढ़ने से मदद मिलेगी।
@ 0xC0000022L दिलचस्प। CentOS 5 पर मेरा लिनक्स-मैनपेज मुझे बताता है कि यह केवल निर्देशिका लेगा। क्या इसे फ़ाइल पर चलाने में बहुत समझदारी है?
—
निल्स
@ निल्स: इसे करने में कोई खास समझदारी नहीं है। लेकिन यह आपको उस मूर्खता से नहीं रोकेगा। बावजूद, पहली नज़र में मुझे भी यही मुद्दा लगा। काश, यह इस सवाल के लिए नहीं है। आप किसी फ़ाइल पर कुछ बिट्स के लिए जाँच करके इस तरह
—
0xC0000022L
find $FILE -perm /7777
से देख सकते हैं कि आपका find
काम करता है या उसे रोकता है।