【月更第10篇】2022年,一個初級運維常用的命令清單,實戰落地場景+解決方案,實操9場景
這是一篇初級運維工程師的實戰寶典,沒有復雜清單,只有實戰中各種場景以及對應的解決方案
以下命令都是基于 CentOS操作系統,不同系統命令行略有差異,建議對比學習。
查看系統版本,使用如下命令
cat /etc/redhat-release
得到結果如下所示,CentOS 7.5 發行版
CentOS Linux release 7.5.1804 (Core)
補充一下上述 cat 命令
cat 命令:一般用于查看文件內容,格式如下所示
cat [-AbeEnstTuv] [--help] [--version] fileName
這里面很多都不要刻意記憶,一般用作 cat 文件名即可
9+場景
1. 系統防火墻狀態
部署Web站點的時候,經常需要對系統防火墻狀態進行查閱,并且查看服務器開放的端口號,相關命令如下所示
查看系統防火墻
命令行如下所示
systemctl status firewalld
得到的結果注意其中綠色和紅色區域
關閉防火墻
命令行如下所示
systemctl stop firewalld
關閉之后可以再次使用上述查看狀態命令,得到此時防火墻的狀態如下
inactive (dead)
重新啟動防火墻
命令行如下所示
systemctl start firewalld
這里你可以擴展學習的知識點是 systemctl 命令,具體學習方向如下所示
管理系統啟動和管理系統服務的相關命令都由 systemctl 實施。
systemctl start [unit type]:啟動;
systemctl stop [unit type]:停止;
systemctl restart [unit type]:重啟;
systemctl status[unit type]:查看狀態;
systemctl reload [unit type]:重新加載;
2. 系統端口
作為一個后端運維,會碰到大量場景需要查看系統中開放的服務與端口,命令行如下所示
netstat -ntlp
這里重點學習的命令是 netstat ,如果沒有該命令,請使用 yum install -y net-tools 進行安裝。
netstat 命令常用參數說明如下:
-a:所有;
-t:顯示 TCP 端口;
-u:顯示 UDP 端口;
-p:顯示進程標識符和程序名稱;
-l:僅顯示監聽套接字程序;
-n:不進行DNS輪詢,顯示IP。
此時在看 netstat -ntlp 是不是就容易理解了,你可以自行組合出多種命令進行使用。
這里再配合一下篩選命令,可以提高使用效率。
netstat -ntulp |grep 80
grep 命令如下
grep 用于在文本中執行關鍵詞搜索,例如上述命令的查詢結果為:
同樣的,你可以修改為 grep 27 ,得到如下結果
關鍵參數:
-b:將可執行文件(二進制)當作文本文件來搜索 ;
-c :僅顯示找到的行數 ;
-i :忽略大小寫 ;
-n :顯示行號;
-v :反向選擇,列出沒有 關鍵詞 的行 。
例如查看 python 相關端口數據
netstat -ntulp |grep python
查看某個端口的具體情況
lsof -i tcp:80
這里面涉及一個命令叫做 lsof (list open files),它是用來列出當前系統打開文件的工具
其中參數涉及如下內容:
-a:列出打開文件存在的進程;
-i<條件> :列出符合條件的進程,可以是協議、: 端口、@IP;
此時可以針對下述命令,進行再次學習。
監聽 22 端口
lsof -i :22
監聽 1~1024端口
ls -i:1-1024
3. 進程相關
在 centos 中,需要查看系統中運行的進程狀態,相關命令如下所示
查看進程的詳細信息
ps命令是Linux系統中最為常見用的進程查看工具,主要用于顯示包含當前運行的各進程完整信息的靜態快照,例如下述命令
ps 8000
查看所有進程,使用如下命令
ps aux
其中的命令參數如下所示:
a :顯示當前終端下的所有進程信息,包括其他用戶的進程;
u :以用戶為主的進程狀態
x :通常與 參數 a 一起使用,顯示當前用戶在所有終端下的進程信息
與 ps aux 類似的還有一個命令是 ps -ef ,該命令展示形式與前一命令不同,System V展示風格
ps -ef
除 ps 命令外, top 進程也會被使用,該命令將會在當前終端以全屏交互式的界面顯示進程排名,及時跟蹤CPU、內存等系統資源占用情況,默認情況下每3秒刷新一次,類似于Windows系統中的任務管理器。
中止進程
查看進程,殺進程,都屬于常見操作,而殺進程用到的就是 kill 命令:
kill -9 8000
-9 表示強迫進程立即停止。
4. 文件權限chmod
chmod 命令用于查看和修改文件權限。
在 CentOS 中存在如下權限內容,文件有三種身份:
owner:文件所有者
group:同用戶組
others:其他非本用戶組
修改權限時,每個文件(文件夾也是文件)的三個身份又分別有三個權限
read:讀
wirte:寫
execute:執行
使用 ls -al 可以查看當前目錄所有文件的權限,例如下圖所示
文件的權限字符為 -rwxrwxrwx ,每3個是一組,對應的身份是 owner\group\others 。
權限可以用數字表示,其中 r=4 , w=2 , x=1 , -=0 ,然后在看設置權限時候的 777,是不是就容易理解了
設置 rwx (可讀寫運行) 權限設置的數字是 4 + 2 + 1 = 7;
設置 rw- (可讀寫不可運行)權限設置的數字是 4 + 2 = 6;
設置 r-x (可讀可運行不可寫) 權限設置的數字是 4 +1 = 5。
此時命令格式如下所示
chmod xyz file文件名
其中 xyz 對應的就是三個權限,分別代表User、Group、及Other的權限。
還有一種寫法,如下所示:
chmod 777 file (相同的命令 chmod u=rwx,g=rwx,o=rwx file 或 chmod a=rwx file)
chomd 需要多加練習使用(但是不怎么常用)
CentOS系統中查看命令的幫助手冊,可以在后面增加 --help ,例如
chmod --help ps --help
5. 建立軟鏈接
CentOS中可以配置軟鏈接(類似Windows操作系統中的快捷方式)。
創建軟鏈接
ln -s [源文件或目錄] [目標文件或目錄]
刪除軟鏈接
rm -rf /home/python
最后不要增加 / 否則就是刪除文件(提桶跑路)
6. 搜索相關
which 命令
which 用于搜索命令所在路徑及別名
whereis 命令
語法格式如下所示
whereis [option] name
找出特定程序的可執行文件、源代碼文件的路徑
find 命令
語法格式如下所示
find [搜索范圍] [搜索條件]
locate 命令
locate 命令是 find -name 的另一種寫法,但比后者檢索快,原因在于它不搜索具體目錄,而是搜索一個數據庫 /var/lib/locatedb ,這個數據庫中含有本地所有文件信息。
使用前需要先安裝 locate,安裝命令如下:
yum -y install mlocate
首次執行會出現如下錯誤,需要在配置一下
[root@xxxx ~]# locate install.sh locate: can not stat () `/var/lib/mlocate/mlocate.db': No such file or directory
執行一下 updatedb 命令,再次定位即可。
7. 內存和硬盤
在運維時間中,經常需要查看內存與硬盤占用情況,使用如下命令
top 命令
上文已經提及,可以使用 q 退出。
查看內存使用情況
free -m
其中輸出的各個列含義為
used(已用內存);
free(空閑內存);
buff/cache(緩沖區緩存/頁面緩存);
硬盤占用率
df -h
8. 不掛斷地運行命令
使用 nohup (no hang up)可以將程序不掛斷的運行,注意并沒有后臺運行的功能,命令語法如下所示
nohup command [arg...] [&]
最后的 & 是指在后臺運行,但當用戶退出(掛起)時,命令自動退出。
案例如下:
nohup command > file.log 2>&1 &
0 – stdin (standard input) 標準輸入
1 – stdout (standard output) 標準輸出
2 – stderr (standard error) 標準錯誤輸出
2>&1 是將標準錯誤(2)重定向到標準輸出(&1),標準輸出(&1)再被重定向輸入到 file.log 中。
9. 其它小命令
pwd 命令
查詢用戶所在位置路徑
cd 命令
切換目錄
mkdir 命令
創建目錄文件
tree 命令
以樹形結構展示目錄結構
cp 命令
復制命令
mv 命令
移動命令
touch 命令
創建文件或更新文件時間戳
stat 命令
查看文件屬性
tar 命令
壓縮打包
開關機命令
reboot # 重啟機器 poweroff # 關閉系統
記錄時間
2022年度 Flag,寫作的
589
/ 1024 篇。
可以
關注
我,
我、
評論
我、
我啦。
Linux 運維
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。