วิธีแก้ไข bash หรือ auto run / bin / bash ในการเข้าสู่ระบบ SSH


16

เมื่อเข้าสู่ระบบrootที่เซิร์ฟเวอร์ของฉันทุกอย่างทำงานได้ดี แต่เมื่อฉันเข้าสู่ระบบเนื่องจากmyusernameทุบตีทำงานไม่ถูกต้อง

บรรทัดเริ่มต้นด้วย:

$ 

แทน

myusername@myserver:~$

และปุ่มพิเศษทั้งหมดเช่นแป้นลูกศรแป้นแท็บ ฯลฯ จะไม่ทำงาน

เมื่อฉันพิมพ์bin/bashมันทำงานได้อีกครั้ง แต่ฉันต้องการแก้ไขปัญหาหรือทำงานอัตโนมัติbin/bashในการเข้าสู่ระบบ ฉันจะแก้ไขสิ่งนี้ได้อย่างไร

ssh  bash 

คำตอบ:


16

คุณเพียงแค่ต้องเปลี่ยนเปลือกของคุณ ในฐานะผู้ใช้รายนั้นให้เรียกใช้:

$ chsh -s /bin/bash

จากนั้นลงชื่อออกและกลับเข้ามาใหม่

หลังจากทำตามพรอมต์นี้ไม่เหมือนที่คุณต้องการคุณจะต้องเริ่มปรับแต่งตัวแปร PS1 ของสภาพแวดล้อมของคุณ


นี่เป็นเรื่องที่อันตรายเพราะคำถามถูกถามเกี่ยวกับrootผู้ใช้ เขาอาจไม่ได้ใช้ Linux รูทควรอยู่กับเชลล์เริ่มต้นเนื่องจากผู้ขายอาจจะนับว่ามันเป็นkshหรืออะไรก็ตามที่พวกเขาเลือก แต่คำตอบที่แท้จริงคือ "คุณไม่ควรทำการล็อกอินด้วยรูท"
บาฮามา

12

คุณต้องเปลี่ยนเปลือกของคุณ เรียกใช้คำสั่ง

chsh -s /bin/bash

จากนั้นลงชื่อเข้าใช้อีกครั้ง

อย่างไรก็ตามผู้ใช้บางคนไม่มีสิทธิ์เปลี่ยนเชลล์ของตนเอง หากคุณใช้sudoอย่าลืมเพิ่มชื่อผู้ใช้ของคุณลงในchshคำสั่งด้วย

sudo chsh <username> -s /bin/bash

มิฉะนั้นคุณจะเปลี่ยนเชลล์เพื่อรูทโดยไม่ตั้งใจ


จุดยุติธรรม ขยายคำตอบเล็กน้อย
Mikael Fremling

ฉันไร้เดียงสามากที่จะลองใช้: sudo chsh -s /bin/bashเนื่องจากผู้ใช้ของฉันไม่ได้รับอนุญาตให้เปลี่ยนเชลล์ คำตอบของคุณช่วยฉันแก้มัน ขอบคุณ!
Edenshaw

5

เหตุผลหนึ่งที่เป็นไปได้คือเชลล์เริ่มต้นของmyusernameไม่ได้ถูกทุบตี

คุณสามารถตรวจสอบเปลือกของผู้ใช้ปัจจุบันของคุณด้วย:

  • echo ${SHELL}
  • echo $0

หากต้องการเปลี่ยนเชลล์ผู้ใช้อย่างถาวรให้ดูman chsh :

chsh -s /bin/bash

2

หากผู้ใช้รหัสผ่าน sudo ของคุณถูกปิดคุณสามารถแก้ไขโดยตรงพบบรรทัดที่ผู้ใช้ของคุณและเปลี่ยนเส้นทางเปลือกลง/etc/passwd/bin/bash

นี่คือคำอธิบายของ/ etc รูปแบบ


0

แค่ต้องการเพิ่มอีกหนึ่งสิ่ง

หากจำเป็นต้องใช้การเข้าถึง sudo เพื่อเปลี่ยน bash สำหรับผู้ใช้นั้นคุณต้องระบุชื่อผู้ใช้ของคุณด้วยในคำสั่ง sudo เนื่องจากไม่มีชื่อผู้ใช้จะมีผลกับผู้ใช้รูท

$ sudo chsh -s /bin/bash <user>
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.