linux學習筆記-日常運維

系統日常運維管理查看系統負載命令: w  
重點是 load average後面的三個數字。  1,表示1分鐘之內的系統的平均負載。
                                                        2,表示5分鐘之內的系統的平均負載。
                                                        3,表示15分鐘之內的系統平均負載。
這個數字的意思是:單位時間內CPU活動進程數。 數字越大表示負載越高。  (不超過CPU的核心數)
查看cpu的核數:cat /proc/cpuinfo   


vmstat 命令。
procs 顯示進程信息。  r表示運行和等待CPU時間片的進程數。長時間大於cpu個數說明cpu不夠用。
                                 b表示等待資源的進程數。例如:I/O。內存等。長時間大於1需要關注。
free 表示空閒內存信息。物理內存。
buff  表示將寫入內存的緩衝大小。
cache 表示從磁盤中讀取的 緩存大小。


si 由交換分區寫入內存
so 由內存寫入交換分區


bi 讀磁盤的數據量
bo  寫磁盤的數據量。


us 表示用戶花費CPU的時間比。
sy 表示系統花費cpu的時間比。
id 表示CPU空閒的時間比。
wa  表示I/O等待所佔用的時間比。
需要關注的是 r b wa 列。 bi bo   數值高說明磁盤讀寫壓力大。si so  數值高 且不短變化 說明內存不夠用。
vmstat 用法:  vmstat 1   表示每隔一秒 刷新一次。
                     vmstat  2  表示每隔二秒  刷新一次。
                     vmstat 1 10 表示每隔1秒刷新一次。 顯示10次。


top 命令
每隔3秒刷新一次。q鍵退出。
RES表示進程所佔用內存的大小。  %MEM爲使用內存的百分比。
默認是按CPU使用率排列。按M 可以按內存排列 。 p按cpu使用率排列。
top -bn1 表示非動態一次性打印系統的使用情況。


sar 命令。監控網卡狀態。
查看網卡流量  sar -n DEV   
sar -n DEV -f /var/log/sa/sa01   用-f 後面帶文件名 可以查看某一天的流量
sar -b 查看磁盤io的狀態
sar -p 查看cpu使用狀態。


free 查看內存信息。
用法: free -m -g -k


ps 查看進程。
ps aux  查看系統進程。
STAT: 表示進程的狀態。
D表示不能中斷。通常爲IO
R表示在運行
S已經中斷的進程
s表示主進程
+表示前臺運行的進程。


netstat 端口查看。
netstat -lnp 打印當前啓動的端口
netstat -an 打印當前的網絡連接狀況 顯示數字端口


tcpdump 系統自帶抓包工具
tcpdump -nn -i eth0 tcp and host 192.168.0.1 and port 80
-nn 數字形式顯示。
-i 指定網卡
tcp 協議類型 udp
host 來源IP
prot 端口
tcpdump -nn -vs0 tcp and port not 22 -c 100 -w 1.cap 
-c 抓包的次數
-w 保存爲文件
wireshark 在linux下也可以安裝 yum install -y wireshark

抓包分析http請求:tshark -n -t a -R http.request -T fields -e "frame.time" -e "ip.src" -e "http.host" -e "http.request.method" -e "http.request.uri"
固定用法。


iptables 命令
有三個表。
filter:一般的過濾功能...工作中常用
nat:用於nat功能(端口映射,地址映射,中轉IP等)
mangle:用於對特定數據包的修改


iptables -t filter -I INPUT -p tcp --dport 80 -s 12.12.12.12 -j REJECT


-t 指定哪個表 常用 filter
-I 插入一條規則 在最上面增加 -A 增加一條規則 在下面增加 -D 刪除規則。 優先級從上到下
-p 制定類型 tcp
--dport 指定端口 80
-s 來源IP地址
-j 指定動作。 REJECT 拒絕  DROP 直接扔掉       ACCEPT  允許


iptables -nvL 查看規則。 默認是查看filter表
iptables -Z清除iptables -nvL 看到的前兩列數據
iptables -F 清空規則
service iptables seve 保存規則。重啓生效


linux系統的任務計劃
* * * * *  分時日月周 。週日表示0或者7
0 */4 ***  每隔4個小時
0 1,3,6 ***  1 3 6小時
0 9-18 * * *  9-18點
crontab -e 直接進去制定計劃。相當於vim
crontab -l 列出任務計劃
crontab -r 刪除計劃


系統服務管理。
ntsysv 命令。相當於setup工具裏面的。
yum install -y ntsysv


chkconfig 服務工具。
chkconfig --list   列出所有的服務及每個級別的開啓狀態。
chkconfig --level 345 crond /on   表示crond 345級別 開、關
--level 指定級別。
chkconfig --add 增加某個服務
chkconfig --del 刪除某個服務
系統預設的服務都在/etc/init.d 目錄裏面


rsync 遠程備份工具
yum install -y rsync



rsync -av 1.txt /tmp/    把1.txt 同步到/tmp/目錄下
rsync -av 1.txt  [email protected]:/tmp/     把1.txt 同步到1.1.1.1 服務器的/tmp/目錄下
rsync -av [email protected]. 1:/tmp/  /tmp/   把遠程的拉到本地
選項
-a 歸檔模式
-v 打印一些信息
-l 保留軟鏈接
--delete 會刪除新目標比原目標新的文件   
--exclude 可以排除不需要傳輸的文件。

用密鑰的方式訪問。不建立密鑰密碼 實現數據備份。
命令。ssh-keygen 能建立私鑰和公鑰
        私鑰位置:/root/.ssh/id_rsa       公鑰:/root/.ssh/id_rsa.pub 


rsync 後臺備份。
A機器新建rsync配置文件。vim /etc/rsync.conf

#port=873                           #定義了端口
log file=/var/log/rsync.log                       #日誌文件
pid file=/var/run/rsyncd.pid                        # 指定PID文件。涉及服務啓動 停止動作。


[ beifen ]                                            自定義模塊名字。 兩邊要有空格
path=/zyos/                         #數據存放路徑
use chroot=false                 # 默認是true   有軟鏈接 false   指的是除了path目錄 是否還可以訪問其他目錄。 
max connections=4                 #最大連接數 。默認是0 無限制
read only=no                讀寫權限
list=true              用戶查詢服務器模塊時 是否顯示。true顯示 false 不顯示
uid=root               傳輸文件時 以哪個身份傳輸。 文件所有者  所屬組
gid=root
auth users=test                         指定傳輸的用戶。
secrets file=/etc/rsyncd.passwd           賬戶 密碼存放位置。
host allow=192.168.137.3             被允許連接的主機。可以是iPhone段。多個IP 逗號隔開。



secrets file 權限一定是要600.否則不能同步。
rsync --deamon --config=/etc/rsyncd.conf    啓動服務。  開機啓動 把命令寫入 /etc/rc.local


rsync -avL --delete [email protected]::beifen /tmp/ --password-file=/root/pass    服務器拉到本地。


rsync -avL --delete /root/test/ [email protected]::beifen/test --password-file=/root/pass   本地推到服務器 beifen模塊下

模塊同步 是雙冒號 ::
--password-file 指定密碼文件的路徑。   客戶端使用。  這樣免去輸密碼步驟,可用在腳本。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章