रूट के रूप में, मैं एक कमांड निष्पादित करने के लिए एक दूरस्थ होस्ट से कनेक्ट कर रहा हूं। केवल "मानक" में उचित आईडी-फ़ाइल और सही .ssh / config है, इसलिए मैं पहले उपयोगकर्ता को स्विच कर रहा हूं:
su standarduser -c 'ssh -x remotehost ./remotecommand'
आदेश ठीक काम करता है, लेकिन इस तथ्य के बावजूद कि मैंने "-x" (X11- फ़ॉरवर्डिंग को अक्षम) और X11Forwards को अक्षम करने के बावजूद /etc/ssh/ssh_config
, मुझे अभी भी त्रुटि संदेश मिलता है:
X11 connection rejected because of wrong authentication.
जब मैं "मानक" के रूप में लॉग इन करता हूँ तो मुझे त्रुटि संदेश नहीं मिल रहा है।
यह काफी कष्टप्रद है क्योंकि मैं कमांड को क्रोन जॉब फ़ाइल में एकीकृत करना चाहूंगा। मैं समझता हूं कि त्रुटि संदेश रूट की .XAuth फ़ाइल के गलत प्रमाणीकरण को संदर्भित करता है, लेकिन मैं X11 के माध्यम से जुड़ने की कोशिश भी नहीं कर रहा हूं।
"Ssh-x" X11 कनेक्शन को अक्षम करने और त्रुटि संदेश फेंकने में क्यों नहीं है?
अद्यतन : संदेश केवल तभी दिखाता है जब मैं किसी स्क्रीन के भीतर लॉग इन करता हूं, जब स्थानीय मशीन पर ही (स्क्रीन के बिना) ऊपर बताई गई कमांड का उपयोग करते हुए, मुझे कोई त्रुटि संदेश नहीं मिलता है, इसलिए यह क्रोन के साथ ठीक होना चाहिए, भी ।
मैंने भी उसी कमांड के साथ शुरुआत की -v
और आश्चर्यजनक रूप से त्रुटि संदेश FIRST मिला, SSH से स्थिति की जानकारी से पहले भी:
root@localhost:~# su standarduser -c 'ssh -x remotehost ./remotecommand'
X11 connection rejected because of wrong authentication.
OpenSSH_6.2p2 Ubuntu-6ubuntu0.1, OpenSSL 1.0.1e 11 Feb 2013
इसने मुझे समस्या के लिए प्रेरित किया, यह वह नहीं है ssh
जो त्रुटि संदेश फेंक रहा है, यह है su
:
root@localhost:~# su standarduser -c 'echo Hi'
X11 connection rejected because of wrong authentication.
Hi
मुझे केवल यह त्रुटि क्यों है screen
? मैं इस त्रुटि संदेश को कैसे अक्षम कर सकता हूं?
-v
ssh विकल्पों में जोड़ें , फिर आउटपुट को अपने प्रश्न में पेस्ट करें।