CDコマンドを使用してディレクトリを変更することはできません

CDコマンドを使用してディレクトリを変更することはできません

私の状況は一般的ではないかもしれません。これは私が得る反対のシェルです。私はルートディレクトリに閉じ込められていることを発見しました。 "cd"を介して現在のディレクトリを別の場所に変更することはできませんでした。ただし、他のディレクトリのファイルを一覧表示/読み込み、フルパスを提供できます。

また、何らかの方法でシェルをアップグレードしようとすると、リバースシェルは死にます。

例:python -c "import pty;pty.spawn('/bin/bash')"または単に/bin/bash

passwdファイルでは、私のユーザーは "mark"で、シェルフィールドがありません。

mark:x:1001:1001::/home/mark:

/etc/passwdから抽出

しかし、シェルフィールドを削除した後、ローカルPCで同じユーザーを再作成し、シェルの/bin/shデフォルトを除いてすべての機能が正常に動作します。

この奇妙な行動の理由は何ですか?

ベストアンサー1

cd組み込みシェルコマンドです。ユーザーにシェルがありません。ユーザーにシェルを追加するには、次から実行します。ユーザー

usermod -s /bin/bash mark

おすすめ記事