GNU/Linux >> Linux の 問題 >  >> Debian

Linux でデフォルトのシェルを変更する方法

この記事では、Linux でデフォルトのシェルを変更する方法について説明します。これにより、bash、sh、zsh、csh、fish などをシェルとして設定できます。

この記事では、chsh を使用してコマンド ラインからログイン シェルを変更する方法、または特定の端末アプリケーションのみのシェルを変更する方法について説明します。この記事は Linux ユーザーを対象としていますが、これは他の Unix 系システムでも機能するはずです。

chsh を使用してデフォルトのログイン シェルを変更する方法 (コマンド ラインから)

デフォルトのログイン シェルを変更するには、chsh を使用します 、ログイン シェルを変更するためのコマンド ライン ツール。

このプログラムは、/etc/passwd を変更してログイン シェルを変更します。 $SHELL のファイルと設定 環境変数。ターミナル設定でシェルを設定することにより、ターミナル アプリケーションのデフォルト シェルをオーバーライドできます。詳細については、この記事の後半で説明します。

Fedora ユーザーへの注意事項。 Fedora にはデフォルトで chsh がインストールされていません。これを使用するには、というパッケージが必要です。 util-linux-user をインストールするには .このパッケージのインストールをスキップしたい場合は、 lchsh できます 代わりにデフォルトのログイン シェルを変更するには:

sudo lchsh $USER

chsh を使用する通常のユーザーは現在のアカウントのログイン シェルのみを変更できますが、スーパーユーザーは root アカウントを含む任意のアカウントのログイン シェルを変更できることに注意してください。また、root 以外のユーザーのデフォルトの動作は、リスト /etc/shells にあるシェルのみを受け入れることです。 root ユーザーに警告を提出して発行します。

したがって、シェルを変更する前に、/etc/shells にリストされているムール貝をすべてリストします。 Linux システムからのファイル

cat /etc/shells

出力例:

$ cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/bin/rbash
/bin/dash
/usr/bin/tmux
/bin/zsh

使用するシェルがここにリストされていない場合は、システムにインストールされていない可能性があります。インストールします (たとえば、Debian / Ubuntu / Linux Mint / Pop! _OS に Zsh を sudo apt install zsh でインストールします)。 ) もう一度確認してください。

ユーザーのシェルを変更するには、次の手順を実行します:

chsh

それは動作します chsh は対話モードでパスワードを要求し、次に現在のシェル (ほとんどの Linux ディストリビューションはデフォルトのシェルとして Bash を使用します) を一覧表示し、新しいシェルの値を入力するように求めます。コマンドとその出力は次のとおりです。

$ chsh
Password:
Changing the login shell for logix
Enter the new value, or press ENTER for the default
Login Shell [/bin/bash]:

シェルを変更するには、新しいシェル (/etc/shells に存在する) へのパスを入力します。 ) を押して Enter を押します キー。

たとえば、現在のユーザーのシェルを bash から zsh に変更するには:

$ chsh
Password:
Changing the login shell for logix
Enter the new value, or press ENTER for the default
Login Shell [/bin/bash]: /bin/zsh

実行後にインタラクティブなコマンド プロンプトで起動しないバージョンの chsh を使用している場合 chsh 、ユーザーのログイン シェルを直接変更します。

chsh -s <SHELL>

例:シェルを Zsh に変更するには:

chsh -s /bin/zsh

アカウントのシェルを変更したら、サインアウトしてから再度サインインして、新しいシェルを使用してください。

別のユーザーまたは root ユーザーのログイン シェルを変更するには、シェル プロンプトで root としてログインします。 su - で 、 sudo -isudo su などと実行:

  • root アカウントのシェルを変更するには (プロンプトが表示されたら、目的のログイン シェルとそのフル パスを入力します):

chsh

  • 別のユーザーのシェルを変更するには (これは root の root ユーザーでも機能します) ユーザー名として):

chsh -s <SHELL> <USERNAME>

今回はその -s で chsh を使用しました -ログイン シェルを直接変更するオプション (対話モードでは実行されません)。ここでは、SHELL 新しいシェルです (例:/bin/zsh ) と USERNAME シェルを変更するユーザーです。たとえば、シェルを /bin/zsh に変更するには ユーザー Logix の場合 、使用しますか:chsh -s /bin/zsh Logix ).

これも好きかも:Starship は Rust の最小限で迅速なシェル プロンプトです

ターミナル アプリケーションでユーザーのシェルを変更する

ログイン シェルとは異なるシェルを使用できます ($SHELL ) 特定の端末アプリケーションの場合、そのアプリケーションでカスタム シェルを設定したり、カスタム コマンドをデフォルト シェルの代わりに実行したりできる場合。

補足として、ターミナルで使用したいシェル コマンドを入力して、現在のシェルを変更することもできます (永続的な変更ではありません)。 「exit」と入力します)。

GNOME ターミナルを使用するには (GNOME および Cinnamon デスクトップでデフォルトの端末として使用されます)。彼の Preferences を開く をクリックし、左側のサイドバーで現在アクティブなプロファイル (通常、変更または新しいプロファイルを追加していない場合は [デフォルト] または [無題] というラベルが付いています) をクリックし、[Command] をクリックします。 タブ:

ここでは、このアプリケーションでのみ使用されるカスタム シェルを設定できます。 Run a custom command instead of my shell を有効にします オプション、次に Custom command 使用するシェルへのフル パスを入力します。 /bin/zsh/bin/bash など

Xfce4 ターミナルで 、その Preferences を開きます そして General で タブと呼ばれるオプションがあります。 Run a custom command instead of my shell を有効化 の下にカスタム コマンドを入力します (これは、この端末で使用するシェルです (例:/bin/zsh)。 、 /usr/bin/fish など)

KDE Plasmas コンソールの使用 、 Settings -> Edit Current Profile に移動 、および General で タブ、Command を変更 使用するシェルのフル パスのフィールド (ここでも、/bin/zsh のようなもの) 、 /bin/bash/usr/bin/fish など)

ガケの使用 Preferences からユーザー シェルを使用できます。 、 Shell で というオプションがあるタブ。 Default interpreter を探す これにより、 /etc/shells にリストされている任意のシェルを選択できます .

カスタム シェルを実行できる端末の場合は、コマンドをログイン シェルとして実行できるオプションも見つける必要があります (通常は単に「コマンドをログイン シェルとして実行」と呼ばれます)。ログイン シェルとインタラクティブ シェルの違いについては、このページを参照してください。

ほとんどの場合、設定は同じなので、これ以上の例は示しません。ただし、すべてのターミナル アプリケーションにカスタム シェルの使用を許可するオプションがあるわけではないことに注意してください。そのような場合は、chsh を使用してください。 上記のようにログイン シェルを変更するコマンド。

おすすめ:Gtk ベースの Linux ターミナル (Gnome ターミナル、Tilix、Xfce ターミナルなど) の 179 の配色


Debian
  1. Linuxの特定のTtynにログインした後、デフォルトのシェルを(永続的に)変更するにはどうすればよいですか?

  2. Linux でデフォルトのシェルを変更する方法

  3. Linux で MTU サイズを変更する方法

  1. Linux端末の色を変更する方法

  2. Linux で MAC アドレスを恒久的に変更する方法

  3. ドメイン アカウントのデフォルト シェルを変更する方法

  1. Debian 9StretchLinuxでデフォルトのPythonバージョンを変更する方法

  2. LinuxシステムのIDを変更する方法

  3. Linuxでシェルを変更する方法