Bash ไม่สามารถใช้งานได้อย่างสมบูรณ์สำหรับผู้ใช้ใหม่


19

ฉันเพิ่งสร้างผู้ใช้ใหม่บนระบบของฉันโดยใช้useradd -d /home/users/john -m john(ใช้ Ubuntu 11.04) สิ่งนี้ใช้ได้ดี แต่เมื่อฉันเปลี่ยนjohnเป็นทุบตีของฉันก็ใช้งานไม่ได้อย่างสมบูรณ์ นั่นคือมันยังไม่มีการเติมข้อความอัตโนมัติฉันไม่สามารถใช้ปุ่มลูกศรที่พวกเขา (เช่นขึ้นที่จะได้รับคำสั่งสุดท้าย) $และแทนที่จะแสดงไดเรกทอรีปัจจุบันของฉันมันแสดงให้เห็นเท่านั้น ฉันโหลด a .bashrcแต่ดูเหมือนว่าจะถูกละเว้นอย่างสมบูรณ์ อะไรทำให้เกิดสิ่งนี้

PD: ผู้ใช้รายนี้ทำงานบนระบบแล้วและฉันไม่ต้องการลบออกและเพิ่มอีกครั้งหากเป็นไปได้


กำหนดความหมายของคำว่า "เมื่อฉันเปลี่ยนเป็น john" คุณเข้าสู่ระบบด้วยผู้ใช้นั้นที่คอนโซลหลักบน pty ผ่าน ssh หรือคุณsuหรือsu -ไม่
พอลทอมบลิน

สิทธิ์ / ความเป็นเจ้าของใน. bashrc ที่คุณโหลดคืออะไร
พอลทอมบลิน

คำตอบ:


36

น่าจะเป็นเปลือกของจอห์นไม่ได้แต่/bin/bash /bin/shบน Ubuntu นั่นเป็นเชลล์ที่ตั้งใจจะเรียกใช้สคริปต์อย่างรวดเร็วโดยไม่มีคุณลักษณะแบบอินเทอร์แอคทีฟเช่นรุ่นบรรทัดคำสั่ง ตรวจสอบคอลัมน์สุดท้ายของหรือgrep john /etc/passwd getent passwd johnคุณอาจต้องการเรียกใช้chsh -s /bin/bash johnเพื่อเปลี่ยนเชลล์ของผู้ใช้


1
ยอดเยี่ยมนั่นเป็นกรณี!

2
เพียงแค่ทราบ ใน Ubuntu /bin/shคือการเชื่อมโยงสัญลักษณ์dashเช่นดังนั้นในท้ายที่สุดเปลือกของผู้ใช้/bin/dash /bin/dash
Sachin Divekar

4

คุณสามารถข้ามไปมาระหว่างเชลล์ด้วยการพิมพ์ชื่อของเชลล์

$ bash

และในบรรทัดถัดไปคุณจะได้รับพรอมต์ต่อไปนี้

user@hostname$ 

ซึ่งเป็นเปลือกทุบตี ปุ่มลูกศรขึ้นและการเติมข้อความอัตโนมัติของคุณจะทำงานในขณะนี้


ควรสังเกตว่าเป็นการชั่วคราว คำตอบที่ได้รับการยอมรับในปัจจุบันมีทางออกที่ถาวรกว่า
jw013

โอเคผมไม่ทราบว่าขอบคุณสำหรับการที่ผมจะบันทึกคำตอบที่ได้รับการยอมรับสำหรับการอ้างอิงในอนาคต
ซาด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.