Bash yeni bir kullanıcı için tamamen işlevsel değil


19

useradd -d /home/users/john -m john(Ubuntu 11.04 Kullanarak) kullanarak sistemimde yeni bir kullanıcı oluşturdum . Bu iyi çalıştı, ama değiştirdiğimde johnbashım tamamen işlevsel değil. Yani, otomatik tamamlama yok, onlar ok tuşlarını kullanamıyorum (örneğin son komutu almak için UP) ve geçerli dizini göstermek yerine sadece gösterir $. Bir yükledim .bashrcama bu tamamen göz ardı gibi görünüyor. Buna ne sebep olabilir?

PD: bu kullanıcı zaten sistem üzerinde çalışıyor ve daha ziyade kaldırmak ve mümkünse tekrar eklemek değil.


Ne demek istediğini tanımla "John'a değiştiğimde". Söz konusu kullanıcıyla ana konsolda, bir pty ile ssh aracılığıyla mı oturum açtınız, yoksa siz suveya su -?
Paul Tomblin

Yüklediğiniz .bashrc dosyasındaki izinler / sahiplik nedir?
Paul Tomblin

Yanıtlar:


36

Muhtemelen john'un kabuğu değil /bin/bashama /bin/sh. Ubuntu'da, komut satırı sürümü gibi süslü etkileşimli özellikler olmadan komut dosyalarını hızlı bir şekilde yürütmeyi amaçlayan bir kabuk. grep john /etc/passwdVeya öğesinin son sütununu kontrol edin getent passwd john. chsh -s /bin/bash johnKullanıcının kabuğunu değiştirmek için koşmak isteyebilirsiniz .


1
Mükemmel, gerçekten durum buydu!

2
Sadece bir not. Ubuntu'da /bin/shsembolik bir bağ dashyani yani /bin/dash, kullanıcının kabuğudur /bin/dash.
Sachin Divekar

4

kabuğun adını yazarak mermiler arasında atlayabilirsiniz

$ bash

ve sonraki satırda şu istemi alacaksınız

user@hostname$ 

bu da bash kabuğudur. Yukarı ok tuşunuz ve otomatik tamamlama şimdi çalışacak


Açıkçası geçici olduğu unutulmamalıdır. Şu anda kabul edilen cevabın daha kalıcı bir çözümü var.
jw013

Tamam, bilmiyordum, bunun için kabul edilen cevabı gelecekteki referans için kaydedeceğim
Saad
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.