ttyがShまたはBashを使用するように強制する方法

ttyがShまたはBashを使用するように強制する方法

私はLinux用の対話型シェルを作成し、chshでそれをテストするために編集しました。しかし、バグがあるので、今はbash / shに戻ることはできません。マイコンピュータでコマンドを入力できず、何もできません。

Ubuntu 20.04を使用しています。

sh / bashを実行するためのパラメータを使用してシステムにsshingしようとしましたが、うまくいかなかったようで、私が作成したシェルに戻ります。

私が試したことは次のとおりです。

ssh username@hostname -p 2222 bash
ssh username@hostname -p 2222 -t bash

私のrootアカウントにはパスワードがないため、有効になっていないようです(私の考えでは)、chshを実行する他のユーザーアカウントはありません。

シェルを変更し、マシンを使用できるようにマシンにttyでShまたはBashを使用させるにはどうすればよいですか?

または、コンピュータを再インストールする以外にシェルを削除する方法はありますか?

ベストアンサー1

ここで説明されている理由のため、SSHを介してこの問題を解決できないようです。

ただし、コンピュータに物理的にアクセスできる場合は、再インストールする必要はありません。

まず、ブートを一時停止し、grubコマンドラインを編集するrw init=/bin/shか、またはrw init=/bin/bash。次にファイルを編集し、/etc/passwdログインvipwシェルを合理的なものに変更します。バラより

これが不可能な場合は、いつでもライブリカバリCD / DVD / USBを使用して古いルートパーティションをマウントして/ etc / passwdを編集できます(または古いシステムとしてchrootしてchshを使用できますが、これはより複雑です)。 )。

おすすめ記事