1. 程式人生 > >RPM管理,計劃任務與性能監控

RPM管理,計劃任務與性能監控

stat stop cmos 開機 lin 占用 均可 man chef

===========
RPM 軟件包管理:
  相關命令: rpm -ivh 軟件包名稱
        rpm -e 軟件包名稱
        rpm -U 軟件名稱
軟件包信息查詢:
  相關命令: rpm -q 查詢指定軟件包是否已經安裝
          -qa 查詢系統中已經安裝的所有軟件
          -qi 查詢指定安裝軟件包的詳細信息
         -ql 查詢指定軟件的安裝路徑與文件列表
         -qc 查詢指定軟件的配置文件
         -qf 查詢指定文件為哪個軟件所安裝
       -qp 查詢某個尚未安裝的軟件包的詳細信息

===========

安全驗證:
  相關命令: rpm -V 軟件名稱
  提示字符及其含義: 5---------MD5值已經改變
           S---------文件大小已經改變
            L---------鏈接文件的源已經改變
         T---------文件最後修改時間已經改變
            D---------設備改變
           U---------用戶發送改變
            G---------組發送改變
            M---------包括權限與類型在內的模式已經改變
            ?---------不可讀的文件

常見問題分析:
  1》軟件包依賴問題:在要求不是很高的情況下,可以使用--nodeps選項來忽略依賴關系;
  2》RPM數據庫破壞: RPM軟件包的相關數據庫存放在/var/lib/rpm目錄下,如果數據庫出現損壞,可以用
    rpm --rebuilddb修復數據庫資料;
  3》軟件安裝時間問題:當安裝軟件時,系統提示“warning:clock skew detected”錯誤,這說明系統時間發生了嚴重的錯誤,可以通過date -s “2017-7-18 16:16”命 令來修改系統時間,並通過命令hwclock -w 將更新寫入CMOS時間;

=======================服務管理=======================
  1》通過主程序管理服務:絕大多數通過源碼安裝的軟件都需要我們手動指定路勁啟動服務,只要我們知道主程序的路徑就可以啟動相應的進程服務;
  2》通過service管理服務:如果是通過RPM或者YUM安裝,則應用程序一般會在/etc/init.d目錄下創建對應的啟動腳本,我們可以通過系統提供的service 命令來管 理這些服務;
    相關命令: service 服務名稱 start 啟動服務
          service 服務名稱 stop 停止服務
          service 服務名稱 status 查看服務當前狀態
          service 服務名稱 reload 不關閉服務的情況下使新的配置生效
         service 服務名稱 condrestart 會測試新的配置文件是否有問題,沒問題的情況下才會重啟,否則不會使用新的配置來重啟服務

3》開機啟動服務:
    相關命令: chkconfig 服務名稱 on/off
            --list 查詢系統服務運行級別信息
            --level 指定操作的運行級別,不指定時默認為2345級別
        chkconfig --list sshd
        chkconfig --level 15 sshd off
        chkconfig sshd on

======計劃任務=====

  at一次性計劃任務:使用at一次性計劃任務需要確保atd服務是開啟的,否則計劃任務不會被執行,使用service atd start開啟服務,並使用chkconfig atd on 確保該 服務開機啟動
    相關命令: at
            -m 當計劃任務執行結束後發送郵件給用戶
            -l 查看用戶計劃任務
            -d 刪除用戶計劃任務
            -c 查看at計劃任務具體內容
at命令可以使用的時間格式有很多,at 小時:分鐘(默認代表當天的時間),at 4pm+3days(代表三天後的下午四點執行),at 12:00 2017-12-2 (指定年月日及 日期的計劃任務)


cron 周期性計劃任務: 使用service crond start命令開啟服務;
  相關命令: crontab
          -u 指定為計劃任務的用戶,默認為當前用戶
          -l 查看計劃任務
          -r 刪除計劃任務
          -e 編輯計劃任務
          -i 使用-r刪除計劃任務時,要求用戶確認刪除
          

cron計劃任務文件格式:
分   時   日    月    周   命令

****:系統自定義了很多計劃任務腳本,分別存放在/etc/下的cron.hourly cron.daily cron.weekly 等目錄中,如果你有相應的要求,可以直接將腳本放入相應的目錄中 執行;

計劃任務控制權限:可以通過/etc/*.allow 和 /etc/*.deny兩個文件來控制計劃任務的權限,在這些文件中僅需要寫入用戶名即可,如果allow 文件與deny文件同時存在內容一樣的賬戶,則僅出現在allow中的賬戶可以使用計劃任務;如果沒有allow文件而僅有deny文件,則所有出現在 deny文件中的用戶都無法使用計劃任務,其他所有的用戶均可使用計劃任務;

======================性能監控===================

1》監控CPU使用情況-----uptime

技術分享

該命令的功能是:打印當前時間,系統已經運行了多久,當前登錄用戶數以及系統最近一分鐘,五分鐘,十五分鐘的負載情況;
2》監控內存及交換分區使用情況---free
                  -b|-k|-m 指定輸出容量的單位,分別為Byte KB MB

技術分享

****:LINUX在開機後會預先提取一部分內存,並劃分為buffer,cache ,以便以後隨時可以提供給進程使用;
  第一行:total代表內存總量為1862M,used代表系統將內存中的700M劃分成了buffer 與cachefree代表內存總容量減去used後的容量;buffers 代表當前buffer的 剩余容量, cached 代表當前cache的剩余容量;
  第二行:used代表buffer 與cache當前總共使用了342M,free 代表 buffer 與 cache總剩余容量加內存未被劃分的剩余容量之和,這個值是系統中內存未被使用的 實際容量;
  第三行:交換分區的使用情況,total代表交換分區總容量為3999,used代表已經使用了的容量,free代表交換分區剩余的容量;

3》監控磁盤使用情況----df
  -h 人性化顯示容量信息
  -i 顯示磁盤inode使用量信息
  -T 顯示文件系統類型

技術分享

註意:這裏的inode個數決定了該分區可以創建的文件個數,有多少個inode節點,就可以在該分區創建多少個文件;

4》監控網絡使用情況-----ifconfig 和 netstat命令

技術分享

Bcast:廣播地址 RX packets:發送包 TX packets:接收包

  netstat
    -s 顯示各種協議數據統計信息
    -n 使用數字形式的IP,端口號,用戶ID代替主機,協議,用戶等名稱信息
    -p 顯示進程名稱及對應的進程ID號
    -l 僅顯示正在監聽的socket接口信息
    -u 查看UDP連接信息
    -t 查看TCP連接信息

5》監控進程使用情況------top 和 ps

==ps==

標準語法格式:ps -e 查看所有的進程信息
       ps -ef 全格式顯示進程信息

BSD語法格式:ps -ax
       ps -aux

技術分享

信息解析:UID或者USER代表進程的執行用戶,PID為進程的唯一編號,PPID代表父進程ID編號,%CPU代表進程的CPU占用率,%MEM代表進程的內存占用率,  VSZ代表進程所使用的虛擬內存大小RSS代表進程所使用的真實內存大小,TTY為終端,STIME或START代表進程啟動時間,STAT代表進程狀態(D:不 可中斷的進程,R:正在運行的進程;S:正在睡眠的進程;T:停止或被追蹤的進程;X:死掉的進程;Z:僵死進程;),TIME代表進程占有CPU的總時 間,CMD或者COMMAND代表進程命令;

=====top=====

top
  -d 刷新間隔,默認為3秒
  -p 查看指定PID的進程信息
=================
在動態顯示的過程中輸入:
  M 按照內存使用率排序
  N 按照進程號排序
  z 可以高亮顯示顏色
  q 退出TOP過程
通過top可以動態查看10個進程的信息,默認按CPU使用率排序;

top -d 1 -p 1,3

RPM管理,計劃任務與性能監控