1. 查看進程
1. ps -ef | grep
#查看進程 ps -ef | grep 名稱 #示例 ps -ef | grep docker
2. ps aux
#當前所有進程信息 ps aux
VSZ --進程的虛擬大小
RSS --駐留集的大小,可以理解為內存中頁的數量
TTY --控制終端的ID
STAT --也就是當前進程的狀態,其中S-睡眠,s-表示該進程是會話的先導進程,N-表示進程擁有比普通優先級更低的優先級,R-正在運行,D-短期等待,Z-僵死進程,T-被跟蹤或者被停止等等
START --這個很簡單,就是該進程啟動的時間
TIME --進程已經消耗的CPU時間,注意是消耗CPU的時間
COMMOND --命令的名稱和參數
3. top
#系統的動態進程
top
l – 關閉或開啟第一部分第一行 top 信息的表示
t – 關閉或開啟第一部分第二行 Tasks 和第三行 Cpus 信息的表示
m – 關閉或開啟第一部分第四行 Mem 和 第五行 Swap 信息的表示
N – 以 PID 的大小的順序排列表示進程列表
P – 以 CPU 占用率大小的順序排列進程列表
M – 以內存占用率大小的順序排列進程列表
h – 顯示幫助
n – 設置在進程列表所顯示進程的數量
q – 退出 top
s – 改變畫面更新周期
PID:進程ID,進程的唯一標識符
USER:進程所有者的實際用戶名。
PR:進程的調度優先級。這個字段的一些值是'rt'。這意味這這些進程運行在實時態。
NI:進程的nice值(優先級)。越小的值意味着越高的優先級。負值表示高優先級,正值表示低優先級
VIRT:進程使用的虛擬內存。進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
RES:駐留內存大小。駐留內存是任務使用的非交換物理內存大小。進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
SHR:SHR是進程使用的共享內存。共享內存大小,單位kb
S:這個是進程的狀態。它有以下不同的值:
- D - 不可中斷的睡眠態。
- R – 運行態
- S – 睡眠態
- T – 被跟蹤或已停止
- Z – 僵屍態
%CPU:自從上一次更新時到現在任務所使用的CPU時間百分比。
%MEM:進程使用的可用物理內存百分比。
TIME+: 任務啟動后到現在所使用的全部CPU時間,精確到百分之一秒。
COMMAND:運行進程所使用的命令。進程名稱(命令名/命令行)
4. ps -ef
#-ef是System V展示風格,而aux是BSD風格 ps -ef
USER:用戶名稱
PID:進程號
%CPU:進程占用CPU的百分比
%MEM:進程占用物理內存的百分比
VSZ:進程占用的虛擬內存大小(單位:KB)
RSS:進程占用的物理內存大小(單位:KB)
TT:終端名稱(縮寫),若為?,則代表此進程與終端無關,因為它們是由系統啟動的
STAT:進程狀態,其中S-睡眠,s-表示該進程是會話的先導進程,N-表示進程擁有比普通優先級更低的優先級,R-正在運行,D-短期等待,Z-僵死進程,T-被跟蹤或者被停止等等
STARTED:進程的啟動時間
TIME:CPU時間,即進程使用CPU的總時間
COMMAND:啟動進程所用的命令和參數,如果過長會被截斷顯示
2. 關閉進程
1. kill -9
#絕殺 kill -9 PID #示例 kill -9 2710
2. killall -9
#殺掉所有此名稱的進程 killall -9 NAME #示例 killall -9 docker
3. pkill -f
#查詢並kill進程 pkill -f 名稱 #示例 pkill -f docker
3. 用戶操作
1. su
#切換用戶
su 用戶名
2. 修改root密碼
#修改root密碼
sudo passwd root
3. 新建用戶
新建用戶
#新建用戶 user1
useradd -m user1
修改密碼
#修改用戶user1的密碼 passwd user1
創建的用戶添加到sudo用戶組。(這樣我們創建的用戶才能進行安裝軟件,允許打印。使用特權模式等操作。不然我們創建的用戶就只能進行瀏覽。沒有實際意義)
#添加到sudo用戶組 usermod -a -G sudo user1
注意:-a意味着附加或添加,-G意味着指定一個群組/多個群組
修改用戶的默認外殼改成bash
#修改用戶的默認外殼 chsh -s /bin/bash user1
#完成后可以查看下用戶信息
id user1
4. 文件權限
1. chmod
#格式 chmod [所屬者][[增權符號][權限類型]] 文件名 #示例 chmod ugo+rwx test [所屬者] u 表示該文件的擁有者, g 表示與該文件的擁有者屬於同一個群體(group)者, o 表示其他以外的人, a 表示這三者皆是 [增權符號] + 表示增加權限 - 表示取消權限 = 表示唯一設定權限 [權限類型] r 表示可讀取 w 表示可寫入 x 表示可執行 X 表示只有當該文件是個子目錄或者該文件已經被設定過為可執行
2. 常用命令
#給文件賦最大權限 chmod 777 test #給文件夾及其子文件賦予最大權限 chmod -R 777 文件夾名稱
5. 查看CPU
#查看CPU grep "CPU" /proc/cpuinfo #簡化 grep "model name" /proc/cpuinfo | cut -f2 -d:
6. 查看內存
#查看內存空間 grep MemTotal /proc/meminfo #簡化 free -m |grep "Mem" | awk '{print $2}'
7. 查看CPU的位數
#查看CPU是32還是64?
getconf LONG_BIT
8. 查看Linux的版本
#查看Linux的版本 more /etc/redhat-release #或者 cat /etc/redhat-release
9. 查看Linux內核版本
#查看內核版本 uname -r #輸出完整信息 uname -a
10. 查看時間
#時間 date
11. 查看硬盤、目錄空間大小
#查看硬盤 df -h 或 fdisk -l #查看當前所在目錄的已占用空間 du -sh #查看目標目錄的占用空間 /home是路徑 du /home -sh
12. 查看已安裝的軟件包
#查看已安裝的軟件包 rpm -qa #查看已安裝的軟件包個數 rpm -qa | wc -l 或 yum list installed | wc -l
13. 重啟、關機
#重啟 reboot 或 #快捷鍵 Ctrl Alt Del 或 init 6 #關機 shutdown -h now 或 init 0
或
poweroff
14. Systemctl命令
##redis服務示例 #啟動服務 systemctl start redis #關閉服務 systemctl stop redis #重啟服務 systemctl restart redis #查看服務狀態 systemctl status redis #設置開機自啟 systemctl enable redis #禁用開機自啟 systemctl disable redis #查看服務是否開機自啟 systemctl is-enabled redis #查看已啟用服務列表 systemctl list-unit-files|grep enabled #查看啟用失敗的服務 systemctl --failed
15. SSH命令
#遠程連接 ssh root@ip
16. SCP命令
#遠程復制到其他服務器目錄 scp -r /home/files/* root@ip:/homefiles
17. 文本操作命令
vi 命令(vim與vi命令相同,只是vim編輯器顯示更好一些)
#創建文件 text1 vi text1 #編輯文本 進入vi文本內部后,按 i ,即可編輯 #不保存退出 進入vi文本內部,並編輯完成后,按鍵盤 esc ,並輸入 :q! ,即可不保存退出 #保存退出 進入vi文本內部,並編輯完成后,按鍵盤 esc ,並輸入 :wq! ,即可保存退出
nano命令
#創建文件 text1 nano text1 #設置文件禁用自動換行 nano -w /etc/fstab #剪切整行 進入nano文本內部,操作 Ctrl+K ,即可剪切整行 #自定義剪切 移動光標到需要剪切文本的開頭,操作 Ctrl+6(或者Alt+A),然后移動光標到待剪切文本的末尾;(被做了標記的文本便會反白,要撤消文本標記,只需再按一次 Ctrl+6 ),最后操作 Ctrl+K ,即可剪切自定義文本。 #文本粘貼 進入nano文本內部,操作 Ctrl+U ,即可粘貼 #退出文本 進入nano文本內部,操作 Ctrl+X ,即可退出 #保存修改 進入nano文本內部,編輯完成后,操作 Ctrl+O (此時會提示:確認文件名 按 回車鍵(Enter) 即可),即可保存文本 #誤操作保存按鈕后,回退方式 進入nano文本內部,編輯完成后,誤操作 Ctrl+O 此時會提示:確認文件名 按 Ctrl+C ,即可回退保存操作 #搜索特定文字 進入nano文本內部,查找特定字符串,操作 Ctrl+W ,鍵入你要搜索的字符串,再按 回車鍵(Enter) #搜索上次歷史字符串快捷操作 想再次搜索相同的字符串,可以直接按Alt+W