LinuxでデフォルトのBASHプロンプトをカスタマイズする方法をすでに検討しました。このチュートリアルでは、LinuxおよびUnixのようなシステムの特定のユーザーグループのBashプロンプトを変更する方法を学びます。
カスタムバッシュプロンプトをユーザーグループに設定する前に、このアプローチの利点と短所を理解することが重要です。
目次
Linuxでグループ固有のコマンドプロンプトを使用することは、特定のシナリオで有利になる可能性がありますが、いくつかの考慮事項もあります。ここに利点と短所があります。
1.ユーザーの役割の簡単な識別:
2。エラーの削減:
3。ユーザーエクスペリエンスの強化:
4.マルチユーザーシステムで役立つ:
1。管理の複雑さ:
2。誤解の可能性:
3。セキュリティ上の考慮事項:
4。グループメンバーシップへの依存:
5。視覚的な手がかりに依存する:
要約すると、グループメンバーシップに基づいてコマンドプロンプトをカスタマイズすることは、ユーザーエクスペリエンスの強化とマルチユーザーまたはマルチロール環境でのエラーの削減に役立ちます。ただし、複雑さ、誤解、および潜在的なセキュリティの問題を回避するために、慎重な実装と管理が必要です。
先に進んで、LinuxおよびUnixのようなシステムの特定のユーザーグループのコマンドプロンプトを変更する方法を見てみましょう。
次の手順は、Ubuntu 22.04 LTSシステムでテストされました。この方法が他のLinux分布でも機能することを願っています。
デモンストレーションのために、 「開発者」と呼ばれる新しいグループと「Senthil」という名前の新しいユーザーを作成します。そして、 「Developers」グループに「Senthil」ユーザーを追加します。
その結果、「Senthil」ユーザーがログインするたびに、プロンプトは自動的に「開発者Senthil@ubuntu2204:〜$」に変更されます。段階的に行う方法を見てみましょう。
グループを作成します:
次のコマンドを実行して、開発者という新しいグループを作成します。
$ Sudo GroupAdd開発者
このコマンドは、開発者と呼ばれる新しいグループを作成します。プロンプトが表示されれば、パスワードを入力する必要がある場合があります。
新しいユーザーを作成します:
Senthilという名前の新しいユーザーを作成するには、コマンドを使用します。
$ sudo adduser senthil
新しいユーザーのパスワードを設定し、オプションのユーザー情報を入力するように求められます。必要に応じてこれらを入力してください。
ユーザーをグループに追加します。
開発者グループにSenthilを追加するには、以下を使用してください。
$ sudo usermod -ag開発者Senthil
-AGオプションは、既存のグループメンバーシップを維持しながら、ユーザーをグループに追加します。
特定のグループのメンバーであるユーザーのコマンドプロンプトを変更する場合、ユーザーのグループをチェックしてプロンプトを変更するスクリプトを配置する場所に2つのオプションがあります。選択は、1人のユーザーまたは複数のユーザーに変更を適用するかどうかによって異なります。
個々のユーザーの.bashrcファイル:
グローバル構成ファイル/etc/bash.bashrc :
ローカル〜/.bashrcまたはglobal/etc/bash.bashrcファイルに変更を加える前に、それらをバックアップすることを強くお勧めします。これにより、何かがうまくいかない場合は、元の設定を復元できます。
ユーザーの〜/.bashrcファイルをバックアップするには、実行します。
$ cp〜/.bashrc〜/.bashrc_backup
グローバルbashrcファイルをバックアップするには、実行してください。
$ sudo cp /etc/bash.bashrc /etc/bash.bashrc_backup
適切なBashRCファイルをバックアップした後、お気に入りのエディターを使用して開きます。
ここでは、この方法をシステム内のすべてのユーザーに適用するため、Global /etc/bash.bashrcファイルを編集します。
$ sudo nano /etc/bash.bashrc
最後に次の行を追加します。
bashrc_file = "/home/$(whoami)/。bashrc" developer_prompt = 'ps1 = "developer- \ u@\ h:\ w \ $"' #.bashrcにps1を追加または更新する関数 add_or_update_ps1(){ prompt_line = $ 1 grep -qf- "$ prospt_line" "$ bashrc_file" || echo "$ prompt_line" >> "$ bashrc_file" } id -ng "$(whoami)" | GREP -QW「開発者」;それから add_or_update_ps1 "$ developer_prompt" fi
上記のコードを分解して、各オプションが何をするかを見てみましょう。
変数の定義:
関数add_or_update_ps1 :
グループメンバーシップを確認し、プロンプトを適用します。
要約すると、このスクリプトは、.bashrcファイルにカスタムプロンプト定義を追加することにより、開発者グループに属するユーザーのコマンドプロンプトを変更します。重複を避けるために、カスタムプロンプトが一度だけ追加されることを保証します。
Ctrl oを押し続けてCtrl Xを続けてファイルを保存して終了します。
いずれかのファイルを編集した後、変更は新しいシェルセッションが開始されたときにのみ有効になることを忘れないでください。ユーザーはログアウトして戻ってくるか、現在のセッションでソース〜/.bashrcを実行してすぐに変更を適用できます。
コマンドを使用して変更を適用します。
$ source /etc/bash.bashrc
ここで、ログアウトして、ユーザー「Senthil」としてログインします。ターミナルを開くと、ユーザーのプロンプトがこのようなものに変更されていることがわかります。
システムにGUIがない場合は、SSHによって他のシステムからシステムにそれを確認できます。
開発者Senthil@ubuntu2204:〜$
見る?ユーザーのBASHプロンプトが変更されました。
このスクリプトをさらに変更して、さまざまなタイプのユーザーを区別できます。
たとえば、LinuxのSudoグループに属している通常のユーザーと管理者ユーザーを区別できます。これには、ユーザーがSUDO特権を持っているかどうかに基づいてコマンドプロンプトを変更することが含まれます。
次の行をGlobal /etc/bash.bashrcファイルに追加するか、個々のユーザーの.bashrcファイルに追加します。
bashrc_file = "/home/$(whoami)/。bashrc" sudo_prompt = 'ps1 = "sudouser- \ u@\ h:\ w \ $"' remorm_prompt = 'ps1 = "normaluser- \ u@\ h:\ w \ $"' #.bashrcにps1を追加または更新する関数 add_or_update_ps1(){ prompt_line = $ 1 grep -qf- "$ prospt_line" "$ bashrc_file" || echo "$ prompt_line" >> "$ bashrc_file" } id -ng "$(whoami)" | grep -qw "sudo";それから add_or_update_ps1 "$ sudo_prompt" それ以外 add_or_update_ps1 "$ normal_prompt" fi
このスクリプトは、プロンプトをSudouser-
このセットアップが推奨されるかどうかは、システムのコンテキストとニーズによって異なります。
利点:
短所:
要約すると、コマンドプロンプトをカスタマイズして通常のユーザーとSUDOユーザーを区別することは、特にユーザー特権の迅速な識別が重要な場合、特定の環境で役立ちます。
ただし、複雑さを追加し、システム管理者の特定のニーズと管理機能に依存するため、普遍的に推奨されていません。
問題が発生した場合、バックアップから.bashrcファイルを復元することで変更を戻すことができます。バックアップを作成しなかった場合は、ファイルをもう一度手動で編集して、前の手順に追加したカスタムスクリプトを削除またはコメントすることができます。
また、DebianおよびUbuntuシステムには/etc/skel/ディレクトリに.bashrcファイルのデフォルトバージョンがあります。
$ ls -al/etc/skel/ 合計32 DRWXR-XR-X 2ルートルート4096 1月8日18:02。 DRWXR-XR-X 138ルートルート12288 1月8日17:55 .. -rw-r - r-- 1ルートルート220 2022年1月6日.bash_logout -RW-R - R-- 1ルートルート4116 1月8日18:00<strong><mark> .bashrc</mark> -rw-r - r-- 1ルートルート807 2022年1月6日.profile</strong>
〜/.bashrcファイルのデフォルトバージョンを以下のように現在のバージョンにコピーします。
$ cp /etc/skel/.bashrc〜/
最後に、次のコマンドを実行して変更を更新します。
$ source〜/.bashrc
詳細については、次のリンクを確認してください。
.bashrcファイルをubuntuのデフォルト設定に復元する方法
このチュートリアルでは、特定のグループのユーザーにカスタムバッシュプロンプトを設定する方法、およびLinuxのコマンドプロンプトをサンプルスクリプトで変更する利点と短所について説明しました。
BASHプロンプトを変更することは、特定の環境での特定のニーズに役立ちますが、一般的に初心者にはお勧めしません。
これらの変更を実装する前に、このアプローチを仮想マシンでテストし、潜在的なリスクと複雑さに対する利点を比較検討することを常に習得することをお勧めします。
関連する読み取り:
以上がLinuxの特定のユーザーグループのバッシュプロンプトを変更する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。