पहुँच / dev / null नहीं कर सकते: अनुमति से इनकार किया, हालांकि crw-rw-rw- 1 रूट रूट 1, 3 सितंबर 21 12:05 / dev / null


11

उपयोगकर्ता पोस्टग्रेज पर:

$ ls -l /dev/null
ls: cannot access /dev/null: Permission denied

उपयोगकर्ता रूट पर सोचा, अनुमतियां सही हैं:

# ls -l /dev/null
crw-rw-rw- 1 root root 1, 3 Sep 21 12:05 /dev/null

मैंने इसे फिर से बनाने की कोशिश की है:

# rm /dev/null && mknod -m 0666 /dev/null c 1 3

लेकिन नतीजा वही है। मैं एक VPS पर एक डेबियन 7 और कर्नेल 2.6.32 के साथ x86_64 पर हूं

जवाबों:


18

यह समस्या अनुमतियों से आई / देव:

# ls -ld /dev
drwx------ 3 root root 4096 Sep 21 12:12 /dev

इसलिए / देव उपयोगकर्ताओं द्वारा सुलभ नहीं थे।

# chmod a+x /dev
# chmod a+r /dev

समस्या का हल किया।


इसलिए मैं जानना चाहता हूं कि इसकी अनुमति क्यों थी। आप पुन: स्थापित करना चाह सकते हैं। / Dev में सबकुछ कर्नेल प्रबंधित है और इसके लिए गलत अनुमतियाँ हैं।
cripto

नहीं, / dev में सब कुछ "कर्नेल प्रबंधित" नहीं है।
tlund

@tlund कृपया अपनी पसंदीदा कर्नेल पुस्तक की समीक्षा करें। "और देव निर्देशिका कर्नेल की वर्तमान स्थिति को दर्शाती है" doc.opensuse.org/products/draft/SLES/SLES-admin_sd_draft/…
cripto

@ user1048138: मैं भी जानना चाहूंगा। मैंने अपने वीपीएस प्रदाता से एक स्वचालित डेबियन 7 सेटअप शुरू किया। फिर मैंने अपडेट किया, अपग्रेड किया, केवल apt-get का उपयोग किया। प्लस एक पैकेज "हाथ" से wget some_domain / some_package.deb ; dpkg -i some_package.deb; apt-get -f install एक बिंदु पर, / dev / null को मानक फ़ाइल में बदल दिया गया, और / dev अनुमतियाँ बदल गईं। मैं और नहीं बता सकता।
lalebarde

1

मुझे इसी तरह की समस्या थी, और लक्षणों की खोज करके यहां आया था, लेकिन समाधान मेरे मामले में फिट नहीं हुआ। तो मैं एक और संभावित कारण जोड़ना चाहूंगा, भले ही यह ओपी को बिल्कुल फिट न कर रहा हो।

मेरे विशेष मामले में मैंने proot(एक अच्छा chrootआवरण) का उपयोग किया । लेकिन अनुमतियों पर सही थे /dev/nullऔर /devखुद को।

यह chrootनिर्देशिका के माउंट होने के लिए हुआ , जो मैंने thunarएक सामान्य उपयोगकर्ता के रूप में किया था । तो, इस मामले में माउंट के पास सही अनुमति नहीं थी।

आपके पास इसे खोजने के लिए एक बुरा समय है, क्योंकि आप इन अनुमतियों को नहीं देखते हैं, जब केवल फाइलों को देखते हैं।

सामान्य समाधान पथ समस्या स्थान ( /dev/null) पर स्थितियों की जांच शुरू करना और अगले स्तर (ओं /dev), फिर माउंट, फ़ाइल सिस्टम आदि के लिए कदम होगा , जो भी आगे आता है।

प्रत्येक चरण पर आपके पास कई पूर्व शर्त हो सकती हैं, प्रत्येक का अपना बाहरी स्तर होता है। उदाहरण के लिए, उपयोगकर्ता गलत समूह में हो सकता है, जो समूह कॉन्फ़िगरेशन फ़ाइल की ओर जाता है, जिसमें गलत अनुमतियाँ आदि हो सकती हैं।

जाहिर है, आपको सामान्य रूप से एक तरह के पेड़ का पालन करना होगा।


0

मैं इसे स्वयं हल नहीं कर सका, इसलिए मैंने यही किया:

mycommand.sh | echo -n

echoआदेश, मानक इनपुट के लिए ध्यान का भुगतान नहीं करता तो यह निकाल दिया जाएगा। और -nयह इतना है कि एक बेकार न्यूलाइन stdout के लिए मुद्रित नहीं है।


1
हालांकि यह प्रश्न का उत्तर दे सकता है, यह एक बेहतर उत्तर होगा यदि आप कुछ स्पष्टीकरण प्रदान कर सकते हैं कि ऐसा क्यों होता है।
DavidPostill

1
हां, लेकिन यह इस सवाल का जवाब कैसे देता है "एक्सेस नहीं कर सकता / dev / null: अनुमति अस्वीकृत, हालांकि crw-rw-rw- 1 रूट रूट 1, 3 सितंबर 21 12:05 / dev / null"?
DavidPostill

1
यह प्रश्न का उत्तर नहीं देता है। लेकिन यह एक समाधान प्रदान करता है। कभी-कभी एक आदर्श प्रत्यक्ष उत्तर नहीं होता है।
मार्क स्टीवर्ट

0
chmod a+rw /dev/null /dev/random /dev/urandom /dev/ptmx /dev/tty /dev/zero /dev/full /dev/fuse /dev/net/tun

यह वही है जो VPS पर मेरी समस्या को हल करता है। कृपया ध्यान दें, कि आपके सर्वर को रिबूट करने के बाद - आपने इस कमांड को फिर से चलाया है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.