web-dev-qa-db-ja.com

SSHがホームディレクトリに到達しない

最近、RaspbianをRaspberryPiにインストールしました。インストールプロセスの一環として、piuserを使用して、ユーザー名とグループをデフォルト(usermod)から自分のもの(groupmodと呼びましょう)に変更しました。また、usermodを使用して、ホームディレクトリ(/home/pi)を新しいユーザー名(/home/user)に移動しました。新しいユーザーディレクトリ(/home/user)にアクセスする代わりにSSHを使用してログインすると、ホームディレクトリ(/home)に到達することを除いて、すべて正常に機能します。なぜこれが起こっているのか考えていますか?解決策はありますか?それは大したことではありませんが、それは私を混乱させます。

ディレクトリ/home/userは、アクセス許可755で存在します。それに加えて、/etc/passwdファイルには、次のようなエントリが含まれています。

user:x:1000:1000:User:/home/user:/bin/bash

私にはすべてが正常に見えますが、それでもsshからログインすると、user@raspberrypi /home $のようなプロンプトが表示されます。

5
Pere Tuset

-mを使用したときにusermod -dオプションを使用しましたか?

そうでない場合は、実際にホームディレクトリを移動し、/ etc/passwdのエントリを変更する必要があります。

/ home/userがまだ存在しない場合、これにより/ home/piの名前が/ home/userに変更されます。

cd /home
[ ! -e user ] && Sudo mv pi user

それ以外の場合は、userのホームディレクトリが実際には/home/userだけでなく/homeであることを確認してください...ユーザーのホームディレクトリを見つけるために使用できる方法のいくつかを次に示します。

grep '^user:' /etc/passwd      # works for system-local accounts only

finger user                    # requires finger to be installed

pinky -l user                  # part of GNU coreutils

getent passwd user             # should work no matter where the account
                                 data is stored
3
cas

Raspbianを使用しても同じ問題が発生します。 「bill」という名前のユーザーを追加した後、raspbianはユーザーのホームディレクトリの作成に失敗しました。 「useraddbill && passwd bill」を使用してユーザーアカウントを作成し、/ etc/passwdファイルにホームディレクトリとして/ home/billへの予想パスが含まれていましたが、実際のパス「/ home/bill」は作成されませんでした。 。 rootとして/ home/billを手動で作成してから、chmodとchownを使用して、アクセス許可と所有権を適切な値に変更する必要がありました。 sshを使用して「bill」としてログオンすると、/ home/billではなく「/」ディレクトリに移動します。 /home/bill/.bashrcファイルは、ディレクトリをデフォルト値の/ home/billから変更するためのトリックを実行しません。

Raspbianは、他のすべてのLinuxディストリビューションと同じようには機能しないようです。これは明らかにバグです。

1
bill