Bashは新しいユーザーには完全に機能しません


19

useradd -d /home/users/john -m john(Ubuntu 11.04を使用)を使用して、システムに新しいユーザーを作成しました。これはうまくいきましたが、に変更したときjohn、私のbashは完全に機能していません。つまり、オートコンプリートがなく、矢印キー(たとえば、UPを使用して最後のコマンドを取得する)を使用できず、現在のディレクトリを表示するのではなく、表示するだけ$です。をロードしました.bashrcが、これは完全に無視されているようです。何がこれを引き起こす可能性がありますか?

PD:このユーザーはすでにシステムで作業しているので、可能な場合は削除せずに再度追加します。


「ジョンに変わったとき」という意味を定義します。メインコンソール、pty、sshでそのユーザーとログインしましたか、それともしましたsusu -
ポールトムブリン

ロードした.bashrcのパーミッション/所有権は何ですか?
ポールトムブリン

回答:


36

おそらくjohnのシェルはではありませんが/bin/bash、です/bin/sh。Ubuntuでは、それはスクリプトを高速に実行することを目的としたシェルであり、コマンドライン版などの派手なインタラクティブ機能はありません。grep john /etc/passwdまたはの最後の列を確認しますgetent passwd johnchsh -s /bin/bash johnユーザーのシェルを変更するために実行することもできます。


1
素晴らしい、それは確かにそうでした!

2
ちょっとだけ。Ubuntuに/bin/shは、dashつまり/bin/dash、シンボリックリンクがあるため、最終的にユーザーのシェルは/bin/dashです。
サチンディベカー

4

シェルの名前を入力して、シェル間をジャンプできます

$ bash

次の行では、次のプロンプトが表示されます

user@hostname$ 

これはbashシェルです。上矢印キーとオートコンプリートが機能するようになりました


これは明らかに一時的なものであることに注意してください。現在受け入れられている答えには、より永続的な解決策があります。
jw013

[OK]を私は、私は将来の参考のために受け入れられた答えを救うことに感謝しているの知らなかった
サアド
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.