जब रूट रूट को व्यवस्थित किया जाए


16

जब मैं दौड़ता हूं

sudo systemctl disable avahi-daemon.socket

मुझे मिला

Failed to execute operation: Access denied

लेकिन यह रूट के रूप में चलाया जाता है, कैसे पहुंच से इनकार किया जा सकता है? (सेंटोस 7)


क्या आप डॉकटर या एलएक्ससी या एलएक्सडी जैसे कंटेनर में चल रहे हैं? क्या आप जानते हैं कि आप कंटेनर में हैं या नहीं?
allquixotic

मैं VirtualBox में एक नया CentOS इंस्टॉल कर रहा हूं। क्या वह कंटेनर के रूप में गिना जाता है?
स्पै्रफ

नहीं, VirtualBox एक कंटेनर नहीं है, यह एक वर्चुअल मशीन है। वे मौलिक रूप से अलग हैं। सबसे अधिक संभावना है कि आपको journalctl -xeयह पता लगाने की आवश्यकता है कि ऐसा क्यों हो रहा है।
एलक्विक्सोटिक

1
ध्यान दें कि यह त्रुटि संदेश ("ऑपरेशन को निष्पादित करने में विफल: प्रवेश निषेध") भी हो सकता है जब लागू मोड में गैर-मौजूदा सेवा तक पहुंचने का प्रयास कर रहा हो। अनुमेय मोड में, आपको "ऑपरेशन निष्पादित करने में विफल: ऐसी कोई फ़ाइल या निर्देशिका नहीं मिलेगी"।
डेनमिकेलो

जवाबों:


23

मैं CentOS 7 पर भी काम करता हूं, और इसी तरह का एक मुद्दा था:

# systemctl unmask tmp.mount
Failed to execute operation: Access denied

इनकार को SELinux के साथ करना है। यदि आप SELinux को enforcingमोड में चला रहे हैं तो यह आपका मामला हो सकता है:

# getenforce
Enforcing

मेरे मामले में, systemctlत्रुटि ने USER_AVCSELinux लॉग फ़ाइल में एक इनकार का उत्पादन किया था /var/log/audit/audit.log:

type=USER_AVC msg=audit(1475497680.859:2656): pid=1 uid=0 auid=4294967295 ses=4294967295 subj=system_u:system_r:init_t:s0 msg='avc:  denied  { enable } for auid=0 uid=0 gid=0 path="/dev/null" cmdline="systemctl unmask tmp.mount" scontext=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 tcontext=system_u:object_r:null_device_t:s0 tclass=service  exe="/usr/lib/systemd/systemd" sauid=0 hostname=? addr=? terminal=?'

समाधान

यह आलेख बताता है कि यह systemd में बग के कारण है, और चारों ओर एक कार्य प्रदान करता है:

systemctl daemon-reexec

माध्यमिक समाधान

यदि ऊपर काम नहीं किया, तो आप SELinux मोड को इसमें सेट कर सकते हैं permissive:

setenforce 0

और यह ठीक काम करना चाहिए। हालाँकि, इस दूसरे समाधान में सुरक्षा निहितार्थ हैं।


मुझे इसके बजाय कोई आउटपुट नहीं मिलता है Removed symlinkऔर बाद systemctl disable avahi-daemon.socketमें पहले की तरह विफल हो जाता है, उसी लाइन का निर्माण कर रहा हैaudit.log
sprff

क्या आप selinux enforce मोड को अक्षम करने का प्रयास कर सकते हैं? setenforce 0
एलोन केरीएल-इवन

1
systemctl disable avahi-daemon.socketसफल होता है के बाद setenforce 0बिना systemctl daemon-reexec(और मैं अब एहसास unmaskअपने आदेश है, मेरा :-) नहीं) यह ठीक है बस यह करने के लिए है और setenforce 1के बाद?
स्पै्रफ

@spraff मुझे नहीं पता, मैं एक SELinux नौसिखिया हा हा हूँ। setenforce 0मेरे जवाब में इम्मा का जिक्र है।
एलुआन केरील-इवन

1
कृपया नहीं setenforce 0। यह उत्पादन के माहौल में एक बुरा व्यवहार है। कृपया systemctl daemon-reexecइसके बजाय उपयोग करें ।
यूनुस

10

मेरे मामले में, मैंने अभी अपग्रेड किया था systemdऔर कोई भी systemctlआदेश विफल हो रहा था:

# systemctl daemon-reexec
Failed to reload daemon: Access denied
# systemctl status
Failed to read server status: Access denied

हालांकि init, मैनपेज के अनुसार , आप SIGTERMपीआईडी ​​1 के रूप में चल रहे डेमन को भेजकर वही काम कर सकते हैं , जो काम किया था:

kill -TERM 1

इसने डेमॉन को फिर से लोड किया, जिसके बाद सभी systemctlकमांड ने फिर से काम करना शुरू कर दिया।


1
धन्यवाद। मेरी समस्या का हल मैंने लंबे समय के बाद एक आर्च्लिनक्स डिस्ट्रो को अपग्रेड करने के बाद किया।
बुर्जि

1
Ubuntu १ 18.१० पर काम किया - धन्यवाद!
रॉय शिलक्रोट

1

न तो समाधान ने मेरे लिए काम किया। यह पता चला कि मेरी .service फ़ाइल में एक पंक्ति में एक लापता = चिह्न था। मैंने इसे / var / log / संदेशों को देखकर खोजा और वहाँ एक त्रुटि देखी जो अधिक वर्णनात्मक थी। इसलिए प्रवेश निषेध भ्रामक था। यह वास्तव में सुरक्षा समस्या नहीं थी।


3
आपको इस प्रश्न को हल करने के तरीके के बारे में अधिक विवरण प्रदान करना चाहिए। उदाहरण के लिए आप एक अधिक क्रिया त्रुटि संदेश के बारे में बात करते हैं, लेकिन यह इंगित नहीं करते हैं, कि त्रुटि संदेश बिल्कुल क्या था। इस जानकारी के बिना, यह एक टिप्पणी के रूप में बेहतर होगा, क्योंकि इस जानकारी के बिना यह उत्तर अधूरा है।
रामहुंड

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