樂觀鎖與悲觀鎖總結
834
2025-04-02
用戶類型
root用戶
一個特殊的管理賬戶
也被稱為超級用戶
root已接近完整的系統控制
對系統損害幾乎有無限的能力
除非必要,不要登錄為root
普通(非特權)用戶
權限有限
造成損害的能力比較有限
終端Terminal
終端設備:鍵盤、鼠標、顯示器
終端類型
控制臺終端:/dev/console
串行終端:/dev/ttyS#
虛擬終端:tty:teletypewriters,/dev/tty#,tty可以有幾個,Ctrl+Alt+F#
圖形終端:startx,xwindows
CentOS6:Ctrl+Alt+F7
CentOS7:在哪個終端啟動,即位于哪個虛擬終端
偽終端:pty:pseudo-tty,/dev/pts/# 如:SSH遠程連接
查看當前的終端設備
tty命令可以查看當前所在終端
例如:
[root@localhost ~]# tty /dev/pts/0
交互式接口
交互式接口:啟動終端后,在終端設備附加一個交互式應用程序
交互式接口類型
GUI:Graphic User Interface
X protocol,window manager,desktop
Desktop:
GNOME(C,圖形庫gtk)
KDE(C++,圖形庫qt)
XFCE(輕量級桌面)
CLI:Command Line Interface
shell程序
什么是Shell
Shell是Linux系統的用戶界面,提供了用戶與內核進行交互操作的一種接口。它接收用戶輸入的命令并把它送入內核去執行
Shell也被稱為Linux命令解釋器(command interpreter),Shell本身是一個程序,將用戶輸入的命令行拆解為"命令名"與"參數"。接著,根據命令名找到對應要執行的程序,對被執行的程序進行初始化,然后將剛才解析出來的參數傳給該程序并執行
Shell是一種高級程序設計語言,提供了變量,函數,條件判斷,循環等開發語言的功能
由于Shell本身是個程序,所以它可以被任何用戶自己開發的各種Shell所替代
各種Shell
sh:Steve Bourne
bash:Bourne-Again Shell,GPL,CentOS和Ubuntu默認使用
csh:c shell,C語言風格
tcsh
ksh:Korn Shell,AIX默認Shell
zsh:MacOS默認Shell
bash shell
GNU Bourne-Again Shell(bash)是GNU計劃中重要的工具軟件之一,目前也是Linux標準的Shell,與sh兼容顯示當前使用的Shell
echo ${SHELL}
顯示當前系統使用的所有shell
cat /etc/shells
設置主機名
#臨時生效 hostname NAME #持久生效 hostnamectl set-hostname NAME
例子:
[root@cn-node1-100 ~]# hostname cn-node1-100.huawei.local
注意:
主機名不支持使用下劃線,但支持橫線,可使用字母,橫線或數字組合
有些軟件對主機名有特殊要求
例子:
[root@cn-node1-100 ~]# hostnamectl set-hostname centos7 [root@cn-node1-100 ~]# systemctl restart postfix
命令提示符prompt
登錄Linux后,默認的系統命令提示符毫無個性化,無法明顯辨別生產環境和測試環境,而容易導致誤操作。可以通過修改PS1變量實現個性的提示符格式,避免犯下低級錯誤
例子,默認的的提示符
[root@centos7 ~]# # 表示管理員 $ 表示普通用戶
顯示提示符格式
[root@centos7 ~]# echo $PS1 [\u@\h \W]$
修改提示符格式例子
PS1="\[\e[1;5;41;33m\][\u@\h \W]\$\[\e[0m\]" PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\$"
提示符格式說明
\e 控制符3
\u 當前用戶
\h 主機名簡稱
\H 主機名
\w 當前工作目錄
\W 當前工作目錄基名
\t 24小時時間格式
\T 12小時時間格式
! 命令歷史數
# 開機后命令歷史數
例子:在CentOS系統實現持久保存提示符格式
[root@centos7 ~]# echo 'PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$"' > /etc/pro profile profile.d/ protocols [root@centos7 ~]# echo 'PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$"' > /etc/profile.d/ 256term.csh lang.sh 256term.sh less.csh abrt-console-notification.sh less.sh bash_completion.sh PackageKit.sh colorgrep.csh sh.local colorgrep.sh vim.csh colorls.csh vim.sh colorls.sh vte.sh csh.local which2.csh flatpak.sh which2.sh lang.csh [root@centos7 ~]# echo 'PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$"' > /etc/profile.d/env.sh [root@centos7 ~]# cat /etc/pro profile profile.d/ protocols [root@centos7 ~]# cat /etc/profile.d/env.sh PS1="\[\e[1;32m\][\t \[\e[1;33m\]\u\[\e[35m\]@\h\[\e[1;31m\] \W\[\e[1;32m\]]\[\e[0m\]\\$"
例子:實現Ubuntu系統持久保存提示符格式
[root@ubuntu2004 ~]#tail -1 .bashrc PS1='\[\e[1;35m\][\u@\h \W]\$\[\e[0m\]'
Linux
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。