chsh: PAM प्रमाणीकरण विफल


13

मैं डिफ़ॉल्ट शेल एनवी बदलना चाहता हूं

और chsh -s /bin/zshरूट उपयोगकर्ता के रूप में चलाएं ,

लेकिन एक त्रुटि संदेश दिखाई दिया chsh: PAM authentication failed:।

मुझे यह धागा http://ubuntuforums.org/showthread.php?t=1702833 मिलता है

लेकिन जवाब से मेरी समस्या हल नहीं हुई

किसी भी सहायता की सराहना की जाएगी


यह /etc/pam.d/chsh की सामग्री है

#
# The PAM configuration file for the Shadow `chsh' service
#

# This will not allow a user to change their shell unless
# their current one is listed in /etc/shells. This keeps
# accounts with special shells from changing them.
auth       required   pam_shells.so

# This allows root to change user shell without being
# prompted for a password
auth            sufficient      pam_rootok.so

# The standard Unix authentication modules, used with
# NIS (man nsswitch) as well as normal /etc/passwd and
# /etc/shadow entries.
@include common-auth
@include common-account
@include common-session

यह / etc / गोले की सामग्री है

# /etc/shells: valid login shells
/bin/sh
/bin/dash
/bin/bash
/bin/rbash
/usr/bin/tmux
/usr/bin/screen
/bin/zsh
/usr/bin/zsh

मुझे लगता है कि मैं इसे चलाने के लिए इस्तेमाल किया chsh -s zsh के /etc/passwdरूप में पहली पंक्ति बदल जाएगा

root:x:0:0:root:/root:zsh

और chshपासवर्ड के लिए पूछेंगे कि आप क्या प्रयास करते हैं

मैं बस /etc/passwdफ़ाइल को मैन्युअल रूप से संपादित करता हूं , और सब कुछ ठीक है।

बेवकूफ गलती और आपके उत्तर के लिए धन्यवाद


क्या आप अपना /etc/pam.d/chsh प्रदान कर सकते हैं? (BTW यह आम तौर पर रूट लॉगिन शेल के लिए एक अच्छा विचार माना जाता है कि न्यूनतम / स्थिर होना चाहिए - क्या कोई क्षेत्र है जो आप लॉगिन के बाद इसे शुरू करने के बजाय डिफ़ॉल्ट शेल के रूप में चाहते हैं?)
सिम्बियन

जब मैं अभी लॉग इन किया था, तो मैं केवल zsh शेल को ऑटो-एंटर करना चाहता हूं, शायद यह अच्छा नहीं है।
txworking

जवाबों:


5

यदि यह लाइन मौजूद नहीं है तो अपनी / etc / shells फ़ाइल की जाँच करें और / bin / zsh जोड़ें।


3
इस जवाब ने मुझे /etc/passwdफ़ाइल की जांच करने के लिए प्रेरित किया कि क्या मैं शेल नाम के सही प्रारूप को इनपुट करता हूं। Thx
txworking

मेरे लिए, एक योनि वीएम का उपयोग करके, मुझे बदलने की आवश्यकता थी /etc/passwd। धन्यवाद @txworking!
वुल्फटोन

मेरे लिए, इस मुद्दे को खोल के अंदर के लिए एक गलत विन्यास से पुकारा जाता है /etc/passwdजड़ खाते के लिए ...
शंकु

3

अपनी जाँच करें /etc/passwd। मेरे मामले में मैंने chshपहले के साथ एक अमान्य शेल निर्दिष्ट किया था और यही समस्या पैदा कर रहा था।

मैंने इसे zshशेल के रूप में बदल दिया /bin/zshऔर इससे समस्या मेरे लिए दूर हो गई।


1

लगता है तुम्हारी राह मेरी गलत है। इसे जांचने के लिए:

[nick ~]$ which zsh
/usr/bin/zsh

यदि परिणाम / usr / bin / zch है, तो यह चाल करना चाहिए:

[nick ~]$ chsh -s /usr/bin/zsh

* टाइपो के लिए संपादित करें।


1

मैंने उसी समस्या का सामना किया। जब भी मैंने chsh में टाइप किया तो वह प्रॉम्प्ट का उपयोग करता है

chsh: PAM authentication failed

लेकिन मैंने /etc/passwdफ़ाइल में कुछ संशोधन करके इसे हल किया

Users of kali-linux

बस अपना रूट टर्मिनल खोलें और /etc/passwdफ़ाइल को संशोधित करें आप इस नौकरी के लिए पिको, नैनो या vi संपादक का उपयोग कर सकते हैं जो मैं vi द्वारा जा रहा हूं

vi /etc/passwd

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

cat /etc/shells

यह उन्हें वहां सूचीबद्ध करता है। यदि आपने शेल को स्थापित किया है और आप इसे देखने में असमर्थ हैं, तो /etc/shellआपको मैन्युअल रूप से फ़ाइल /bin/kshमें मानने के लिए शेल का लिंक और स्थान पथ बनाने की आवश्यकता है /etc/shells...

उदाहरण के लिए आप bash में हैं और आप इसे ksh में बदलना चाहते हैं

बस /etc/passwdफ़ाइल और अंतिम फ़ील्ड संपादित में खाते में जाएँ

/bin/bashकरने के लिए /bin/kshया /bin/ksh93(अपने में के रूप में cat /etc/shells)

बस लॉगआउट करें और लॉगिन करें और आप जाने के लिए अच्छे हैं ...

अन्य डिस्ट्रोस के उपयोगकर्ताओं के लिए (कहते हैं) ubuntu

में टाइप करें

sudo -H gnome-terminal (रूट टर्मिनल पाने के लिए)

और यह प्रक्रिया ऊपर के समान है क्योंकि आपके पास भी कलि-लिनक्स उपयोगकर्ता की तरह रूट टर्मिनल है।


1

आपको अपना कोड sudo के रूप में चलाना होगा:

sudo chsh -s /bin/zsh

मुझे भी यही समस्या थी, और यह काम कर गया!

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