web-dev-qa-db-ja.com

「ホームディレクトリ/ home / meにchdirできませんでした:そのようなファイルまたはディレクトリはありません」

サーバーで12.04を使用しています。

adduser mepasswd meを使用して新しいユーザーを作成し、Sudoに追加しました。

ログインすると、これが表示されます。

Could not chdir to home directory /home/me: No such file or directory    
$

bashと入力すると、「正常」に見え始めます

$ bash
me@server:/$

ログインするたびにbashと入力しないようにするにはどうすればよいですか?

12
ddd

adduserは基本的すぎるため、デフォルトを適切に設定していません。可能な限りuseraddを使用することをお勧めします。新しいユーザーを削除して、useradd -D meで再度作成するか、自分で修復できます。

Sudo mkdir /home/me
Sudo usermod --Shell /bin/bash --home /home/me me
Sudo chown -R me:me /home/me
cp /etc/skel/.* /home/me/

Florianが提案したようにgetent passwd meを使用した場合、次のようなものを見るべきでした:

Sudo getent passwd me
boggus:x:1002:1002::/home/me:/bin/sh

また、ls /homeはエラーとしてユーザーディレクトリを表示しません。

Could not chdir to home directory /home/me: No such file or directory
21
Braiam

usermod -d _homedir_ usernameコマンドを使用して、ユーザーのホームディレクトリを設定できます。

例えば:

usermod -d / sudouser

sudouserのhomedirをルートディレクトリに設定します。

ただし、ここでは、特にユーザーと対話型シェルにログインする場合、ルートディレクトリは適切な選択ではありません。ログイン時にシェルが独自のファイルを作成する場合があり、ルートレベルの余分なファイルは良いことではありません。

2
M.A.K. Ripon