1. 程式人生 > >【Linux】系統管理

【Linux】系統管理

kcon status gcc 不知道 切換 all usr make entos

軟件包管理

一 軟件包分類
  源碼包: .tar.gz .tar.bz2
  二進制包: .rpm
二 二進制包安裝

  (一) rpm命令手動管理二進制包 (掛載光盤)
    1 包名-版本號-發布次數-適合linux系統-硬件平臺.rpm

    2 依賴性

    3 安裝 tree
      rpm -ivh 軟件包
      -i 安裝 -v 顯示詳細信息 -h 顯示進度
    4 升級
      rpm -Uvh 軟件包
    5 卸載
      rpm -e 軟件包
  (二 ) yum 命令 二進制包自動化管理

    yum -y install 軟件名 安裝 -y 自動回答yes
    yum -y update 軟件名 升級
    yum -y remove 軟件名 卸載

    光盤作為yum源:
      1 cd /etc/yum.repos.d/
        mv CentOS-Base.repo CentOS-Base.repo.bak

      2 mount /dev/sr0 /media

      3 vim /etc/yum.repos.d/CentOS-Media.repo
        baseurl=file:///media/ 指定yum源位置
        gpgcheck=0 rpm驗證不生效
        enabled=1 yum源文件生效

    yum -y install gcc (gcc是c語言編譯器,不裝gcc,源碼包不能安裝)

三 源碼包安裝
  xshell 遠程管理 xftp 遠程傳輸
  1 遠程傳輸工具傳輸apache到linux。
    httpd-2.2.29.tar.gz

  2 安裝
    1) 解壓

    tar -zxvf httpd-2.2.29.tar.gz
ls

    2) cd 解壓目錄

    cd httpd-2.2.29
ls
    3) 查看安裝文檔

      INSTALL README

    4)編譯前準備
      ./configure --prefix=/usr/local/apache2

      功能:
      1 檢測系統環境,生成Makefile
      2 定義軟件選項

    5)編譯
      make

    6)編譯安裝
      make install

      報錯判斷:
        第一:安裝過程是否停止
        第二:註意error warning no 等錯誤報警
  3 啟動
    /usr/local/apache2/bin/apachectl start (測試)

  4 卸載

    直接刪除安裝目錄

用戶與用戶組管理

  用戶信息文件:/etc/passwd
  影子文件: /etc/shadow
  組信息文件: /etc/group

  1 添加用戶
    useradd 用戶名
  2 設定密碼
    passwd 用戶名
  3 刪除用戶
    userdel -r 用戶名 -r 連帶家目錄一起刪除
  4 添加組
    groupadd 組名

  5 刪除組
    groupdel 組名

  6 把已經存在的用戶加入組
    gpasswd -a 用戶名 組名 用戶加入組
    gpasswd -d 用戶名 組名 把用戶從組中刪除
  7 su - 用戶名 切換用戶身份

進程管理

  進程管理三個主要任務:
    判斷服務器健康狀態
    查看所有正在運行的進程
    強制終止進程

一 進程查看

  1 ps aux 查看當前系統所有運行的進程
    -a 顯示前臺所有進程
    -u 顯示用戶名
    -x 顯示後臺進程

    user: 用戶名
    pid: 進程id
    %CPU cpu占用百分比
    %MEM 內存占用百分比
    command 進程本身

  2 pstree 查看進程樹

  3 top

    第一行: 系統當前時間 系統持續時間 登錄用戶 1,5,15分鐘之前的平均負載
    第二行:進程總數
    第三行:CPU占用率 %id 空閑百分比
    第四行:內存使用:
    操作命令 M 內存排序
         P CPU排序
         q 退出

  4 進程管理 終止進程
    ps aux 組合使用
    kill PID 結束單個進程
    -9 強制
    pstree 查看進程樹
    killall -9 進程名 結束一類進程
服務管理

服務分類
  1)系統默認安裝的服務
  2)源碼包安裝的服務

一、系統默認安裝的服務
  1)手動啟動
    ①
    /etc/rc.d/init.d/服務名 start|stop|restart|status
    /etc/rc.d/init.d/sshd start

    ②
    service 服務名 start|stop|restart|status

  2)開機自啟動
    ①
    chkconfig 服務名 on|off

    ②
    vim /etc/rc.local
    /etc/rc.d/init.d/sshd start
二、源碼包安裝的服務
  1)絕對路徑啟動
    /usr/local/apache2/bin/apachectl start

  2) 開機自啟動
    vim /etc/rc.local
    /usr/local/apache2/bin/apachectl start

三、計劃任務
  crontab -e 編輯定時任務

  * * * * * 命令

  第一個:一小時中第幾分鐘 0-59
  第二個:一天中第幾個小時 0-23
  第三個:一個月中第幾天 1-31
  第四個:一年第幾個月 1-12
  第五個:一周中星期幾 0-6


  0 6 * * * 命令
  10 * 31 * * 命令
  10 9 1 1 * 命令
  5 3 * 5,7,10 * 命令
  */10 * * * 1-3 命令


  命令: 開啟/關閉服務 service sshd start service sshd stop
  /usr/local/apache2/bin/apachectl restart

  備份文件/目錄 cp -r /root/bbs /tmp

  crontab -l 查看系統定時任務
  crontab -r 刪除定時任務

註意事項:
選項都不能為空,必須填入,不知道的值使用通配符*表示任何時間
每個時間字段都可以指定多個值,不連續的值用,間隔,連續的值用-間隔
間隔固定時間執行書寫為*/n格式
命令應該給出絕對路徑
星期幾和第幾天不能同時出現
最小時間範圍是分鐘,最大時間範圍是月

【Linux】系統管理