web-dev-qa-db-ja.com

/ bin / falseを実行できません:そのようなファイルまたはディレクトリはありません

私のMac OSで次のコマンドを使用して GNU Screen を開こうとしています。

Host:~ user$ screen

Screenターミナルが開きますが、すぐにエラーメッセージが表示されて終了します。

/ bin/falseを実行できません:そのようなファイルまたはディレクトリはありません

端末が起動時にbash Shellを開くように構成されています。端末シェルをshに設定しようとしましたが、同じエラーが発生します。

ただし、screenコマンドをSudoとして実行すると、コマンドは成功します。

通常のユーザーの場合はどうすれば解決できますか?

10
sultan.of.swing

シェルの初期化スクリプトでbashまたはscreen構成ファイルを確認し、明示的なパス/bin/falsefalseが使用されているかどうかを確認します。

MacOSでは、falseユーティリティは/usr/binではなく/binにあります。

それができない場合は、/bin/falseを調べるか、システム環境設定の[ユーザーとグループ]セクションの[詳細オプション]を見て、何らかの理由でログインシェルが/etc/passwdに設定されているかどうかを確認してください(ユーザーアカウントのリストでユーザーを右クリックしてこれらを取得します。ここでもシェルを変更できます)。誰かがunthinkinglyに続いて チュートリアル/ HOWTO を設定し、/bin/falseをデフォルトのシェルとしてユーザーを設定する場合があります。

screenSudoで実行する場合、rootのシェル/画面初期化ファイルを使用します。これが機能する理由です。

9
Kusalananda

ターミナルの設定に移動し、一般に移動してから、「シェルで開く」の下でコマンドを選択し、bash -lと入力します。

5
Ravi