1. 程式人生 > 實用技巧 >Liunx一些常用的命令

Liunx一些常用的命令

通過systemctl管理服務

  systemd這個啟動服務的機制,主要是通過名為systemctl的指令來處理

通過systemctl管理單一服務

  一般來說,服務的啟動有兩個階段,一個是【開機的時候設定要不要啟動這個服務】【現在要不要啟動這個服務.】

1.格式
    systemctl 命令 程式

2.引數格式
    start   :啟動服務
    stop    :停止服務
    restart : 重啟
    reload  :過載配置
    enable  :開機自動啟動
    disable :開機不自動啟動
    status  :列出狀態資訊
    is-active :正在執行中的服務
    is-enable :開機時有沒有預設當前這個服務

防火牆

1.開啟防火牆
    systemctl start firewalld

2.關閉防火牆
    systemctl stop firewalld

3.檢視開放的埠號
    firewall-cmd --zone=public --list-ports

4.開發埠號
    firewall-cmd --zone=public --add-port=2377/tcp --permanent
    
5.重啟防火牆
    firewall-cmd --reload

檢視記憶體使用情況

1.檢視記憶體使用情況
    free -h

檢視硬碟剩餘大小

1.檢視磁碟剩餘空間
    df -hl

2.返回某個目錄的大小
    du -sh 目錄名

3.返回某個目錄的總M數
    du -sm 資料夾

4.檢視指定資料夾下所有檔案大小
    du -h

Netstat命令

  netstat命令用於顯示網路狀態。

1.語法
    netstat [-acCeFghilmnNoprstuvVwx][-A<網路型別>][--ip]
    
2.命令
    -a:顯示所有連線中的Socket
    -A:列出該網路型別連線中的相關地址
    -c:持續列出網路狀態
    -C:顯示路由器配置的快取資訊
    -e:顯示網路其他相關資訊
    -F:顯示FIB
    -g:顯示多重廣播功能群組組員名單
    -h:help幫助
    -i:顯示網路介面資訊表單
    -l:顯示監控中的伺服器的socket
    -M:顯示偽裝的網路連線
    -n:直接使用IP地址,而不通過域名伺服器
    -N:顯示網路硬體外圍裝置的符號連結名稱
    -o:顯示計時器
    -p:顯示正在使用Socket的程式識別碼和程式名稱
    -r:顯示Routing Table
    -s:顯示網路工作資訊統計表
    -t:顯示TCP傳輸協議的連線狀況
    -u:顯示UDP傳輸協議的連線狀況
    -v:顯示指令執行過程
    -V:顯示版本
    -w:顯示RAW傳輸協議的連線狀況
    -x:此引數的效果和指定-Aunix 引數相同
    --ip:此引數的效果和指定-A inet引數相同

3.常用命令
    3.1 netstat -apu:顯示UDP埠號使用情況

    3.2 netstat -atu:顯示tcp埠號使用情況
    
    3.3 netstat -i:顯示網絡卡列表
    
    3.4 netstat -g:顯示組播組關係
    
    3.5 netstat -a:顯示詳細網路情況
    
    3.6 netstat -s:顯示網路統計資訊
    
    3.7 netstat -lntup:顯示正在工作的udp和tcp
    
    3.8 netstat -in:顯示ip地址的介面資訊

tcpdump

tcpdump tcp -s 0 -i eth0 and host 10.0.3.81 -w /tools/0427.pcap

1.tcp: ip icmp arp rarp 和 tcp、udp、icmp這些選項等都要放到第一個引數的位置,用來過濾資料報的型別

2.-i eth0 : 只抓經過介面eth0的包

3.host 10.0.3.81  只抓取本機器和10.0.3.81機器之間的資料包

4.-s 0 : 抓取資料包時預設抓取長度為68位元組。加上-s 0 後可以抓到完整的資料包

5.-w /tools/0427.pcap : 指定儲存的路徑儲存成pcap檔案,方便用ethereal(即wireshark)分析

wireshark

    1.過濾目的地址
    ip.dst == 192.168.0.1

2.過濾源地址
    ip.src == 192.168.0.1

3.過濾埠
    tcp.port == 80
    
4.協議過濾
    直接輸入協議名即可

5.http模式過濾
    http.request.method == "get"

6.連線符 and的使用
    ip.src == 192.168.0.1 and http

NC

1.-g
    設定路由閘道器

2.-G
    設定來源路由指向器

3.-h
    線上幫助

4.-i
    設定時間間隔,以便傳送資訊及掃描通訊埠

5.-l
    使用監聽模式,管控傳入的資料

6.-n
    直接使用IP地址,而不通過域名伺服器

7.-o
    指定檔名稱

8.-p
    設定本地主機使用的通訊埠

9.-r
    亂數指定本地與源端主機的通訊埠

10.-s
    設定本地主機送出資料報的ip地址

11.-u
    使用UDP傳輸協議

12.-v
    顯示指令執行過程

13.-w
    設定等待連線的時間

14.-z
    使用0輸入/輸出模式,只在掃描通訊埠時使用

15.例子掃描tcp埠
    nc -v -z -w2 192.168.3.1 1-100

16.掃描udp埠
    nc -u -z -w2 192.168.3.1 1-100
17.掃描指定埠
    nc -nvv 192.168.3.1 80

ps命令

1.檢視佔用CPU資源最多的10個程序
 ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head
 
 2.佔用記憶體資源最多的10個程序
    ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

3.檢視使用記憶體最多的k個程序
    ps -aux | sort -k4nr | head 

4.檢視使用CPU最多的k個程序
    ps -aux | sort -k3nr | head 

5.ps -aux
    a:all所有程序
    u:執行該程序的使用者id
    x:顯示所有程式

top命令

1.語法
    top [-] [qcSsinb]
    
2.引數說明
    d:改變顯示的更新速度
    q:沒有任何延遲的顯示速度
    c:切換顯示模式,一共兩種:只顯示執行檔的名稱
    顯示完整的路徑和名稱
    s:安全模式,講交談時指令取消,避免潛在的危機
    i:不顯示任何閒置
    n:更新的次數,完成後將推出top
    b:批次檔模式
    

3.例子
    1.先按top,在輸入大寫P顯示使用CPU最多的K個程序

telnet

1.yum install telnet
2.yun install telnet-server
3.yum install xinetd

4.systemctl start telnet-socket
5.systemctl start xinetd


1.連線
    telnet IP地址 //注意不能用root賬號

yum命令

1.yum install docker
    安裝

2.yum install -y docker
    不需要確認強制安裝

3.yum remove docker
    刪除

4.yum list docker
    所有可安裝的包

RPM

1.rpm -qa | grep docker
    檢視軟體包是否安裝

2.直接安裝
    rpm -ivh xxx.rpm

3.查詢
    rpm -ql tree

4.解除安裝
    rpm -e tree

5.列出所有安裝過的包
    rpm -qa

6.rpm包檔案安裝的位置
    rpm -ql tree