我們已經研究瞭如何自定義Linux中的默認bash提示。在本教程中,我們將學習如何更改Linux和Unix樣系統中特定用戶組的BASH提示。
在設置自定義BASH提示向用戶組設置之前,重要的是要了解此方法的優點和缺點。
目錄
在某些情況下,在Linux中使用特定於小組的命令提示符可能是有利的,但它也帶來了一些注意事項。以下是優勢和缺點:
1。更輕鬆地識別用戶角色:
2。減少錯誤:
3。增強的用戶體驗:
4。在多用戶系統中有用:
1。管理的複雜性:
2。構造的潛力:
3。安全考慮:
4。依賴小組成員:
5。視覺提示過度依賴:
總而言之,基於組成員的定制命令提示符可用於增強用戶體驗並減少多用戶或多角色環境中的錯誤。但是,它需要仔細的實施和管理,以避免複雜性,配置錯誤和潛在的安全問題。
讓我們繼續查看如何更改Linux和Unix狀系統中特定用戶組的命令提示。
在Ubuntu 22.04 LTS系統上測試了以下步驟。我們希望這種方法也可以在其他Linux發行版中起作用。
出於演示目的,我將創建一個名為“開發人員”的新組和一個名為“ Senthil”的新用戶。然後,我將“ Senthil”用戶添加到“開發人員”組中。
結果,只要“ Senthil”用戶登錄,他們的提示將自動更改為“開發人員 - senthil@ubuntu2204:〜$' 。讓我們看看如何逐步進行。
創建組:
運行以下命令來創建一個名為開發人員的新組:
$ sudo groupadd開發人員
該命令創建一個名為開發人員的新組。如果提示,您可能需要輸入密碼。
創建新用戶:
要創建名為Senthil的新用戶,請使用命令:
$ sudo Adduser Senthil
將提示您為新用戶設置密碼並填寫一些可選的用戶信息。根據需要填寫這些。
將用戶添加到組:
要將Senthil添加到開發人員組中,請使用:
$ sudo usermod -ag開發人員Senthil
-ag選項將用戶添加到組中,同時保持其現有組成員資格。
當您想為特定組成員的用戶更改命令提示符時,您有兩個選項,用於放置檢查用戶組並更改提示的腳本的位置。選擇取決於您是否希望更改應用於單個用戶或多個用戶:
單個用戶的.bashrc文件:
全局配置文件/etc/bash.bashrc :
在本地〜/.bashrc或global /etc/bash.bashrc文件中進行任何更改之前,我強烈建議您備份它們。如果出現問題,這使您可以還原原始設置。
要備份用戶的〜/.bashrc文件,請運行:
$ cp〜/.bashrc〜/.bashrc_backup
要備份Global 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(){ 提示_line = $ 1 grep -qf-“ $ stress_line”“ $ bashrc_file” || echo“ $ stress_line” >>“ $ bashrc_file” } 如果id -ng“ $(whoami)” | GREP -QW“開發人員”;然後 add_or_update_ps1“ $ developer_prompt” fi
讓我們分解上述代碼,看看每個選項的作用。
定義變量:
函數add_or_update_ps1 :
檢查小組會員資格併申請提示:
總而言之,此腳本通過將自定義提示性定義附加到其.bashrc文件中來更改屬於開發人員組的用戶的命令提示。它確保只添加一次自定義提示即可避免重複。
按Ctrl o,然後按Ctrl X保存文件並退出。
請記住,在編輯任一文件後,只有在啟動新的shell會話時,更改才會生效。用戶可以登錄並返回,也可以在當前會話中運行源〜/.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 \ h:\ w \ $”'' normal_prompt ='ps1 =“ norturuSer- \ u@\ h:\ w \ $”'' #要在.bashrc中添加或更新PS1的功能 add_or_update_ps1(){ 提示_line = $ 1 grep -qf-“ $ stress_line”“ $ bashrc_file” || echo“ $ stress_line” >>“ $ bashrc_file” } 如果id -ng“ $(whoami)” | grep -qw“ sudo”;然後 add_or_update_ps1“ $ sudo_prompt” 別的 add_or_update_ps1“ $ narry_prompt” fi
此腳本將將提示更改為Sudouser-
是否建議使用此設置取決於系統的上下文和需求:
優點:
缺點:
總而言之,自定義命令提示符以區分普通用戶和sudo用戶可能在某些環境中很有用,尤其是在快速識別用戶特權很重要的情況下。
但是,它並不普遍推薦,因為它增加了複雜性,並取決於系統管理員的特定需求和管理功能。
如果遇到問題,則可以通過從備份中恢復.bashrc文件來恢復更改。如果您沒有進行備份,則可以再次手動編輯文件,然後刪除或評論您在上一步中添加的自定義腳本。
另外,在debian和ubuntu Systems中,/etc/skel/ Directory中有一個.bashrc文件的默認版本。
$ ls -al/etc/skel/ 總計32 drwxr-xr-x 2根4096 JAN 8 18:02。 drwxr-xr-x 138根根12288 1月8日17:55 .. -rw-r--r-- 1根root 220 Jan 6 2022 .bash_logout -rw-r-- r-- 1根根4116 1月8日18:00<strong><mark> .bashrc</mark> -rw-r--r-- 1根根807 1月6日2022年。</strong>
將〜/.bashrc文件的默認版本複製到您的當前版本,如下所示:
$ cp /etc/skel/.bashrc〜/
最後,運行以下命令以更新更改。
$源〜/.bashrc
有關更多詳細信息,請檢查以下鏈接:
如何將.bashrc文件還原到Ubuntu中的默認設置
在本教程中,我們討論瞭如何為某個組的用戶設置自定義bash提示,以及使用示例腳本在Linux中更改命令提示的優點和缺點。
雖然修改BASH提示對於某些環境中的特定需求可能很有用,但通常不建議初學者使用它。
在實施這些變化之前,在虛擬機中測試這種方法並權衡潛在風險和復雜性,這始終是一個好習慣。
相關閱讀:
以上是如何更改Linux中特定用戶組的bash提示的詳細內容。更多資訊請關注PHP中文網其他相關文章!