2014年4月27日 星期日

Linux網管入門-CentOS基本操作

http://www.wkb.idv.tw/study/centos/c01.htm

Linux網管入門-CentOS基本操作


一、Linux操作環境簡介:

  多人環境:UNIX最好的就是可以提供多人共用,而Linux自然也可以支援多工環境了!!
    在 Linux 上面允許不同的人使用,而且每個人都有其特殊的權限,
    只有一個人具有至高無上的權力,那就是 root (系統管理員)。
  多工行為:Linux 可以同時由不同的人使用『同一個檔案』,只要有權限不論是開啟或者是修改。
  多個管理視窗:在 Linux 當中,預設提供了六個文字界面登入視窗,以及一個圖形界面,
    你可以使用 [Alt]+[F1].....[F7]來切換不同的終端機界面。
  指令查詢:在 Linux 當中,不了解指令參數如何使用,可以在指令後加上-h來查詢,
    如果希望進一步了解,可以用man command(要查詢的指令)。


二、基本指令:
  瀏覽目錄
    ls
      -all:全部列出,並分行呈現
      -l:全部列出

  查詢目錄路徑
    pwd

  變更使用者
    chown
      -R:全部目錄及檔案都轉換
      chown -R user.group abc/:將abc這個目錄全部都轉換給user這個使用者和group這個群組

  變更權限
    chmod
      -rwxrwxrwx :檔案屬性三個一組由2進位組成,r=4、w=2、x=1
      如果是5就是表示r-x、6就是表示rw-,以此類推
      前三個藍色字代表檔案或目錄使用者的權限;
      中間三個綠色字代表檔案或目錄群組的權限;
      後面三個紅色字代表檔案或目錄任何人的權限;
      -R:全部目錄及檔案都轉換
      chmod -R 744 abc/:全部列出將abc這個目錄及檔案,全部都換成轉換給user這個使用者和group這個群組

  查看目前登入者的帳號
    whoami

  查看目前所有系統登入者的帳號
    who

  查看之前所有系統登入者的資料
    last
    ip

  系統重新開機
    reboot
    shutdown
      -r:重新開機與reboot意思相同
      -h:重新開機並關閉電源
      -h +5:五分鐘後,重新開機並關閉電源
    ip
    login 登入系統
    logout 登出系統

  文字編輯軟體
    vi
      開始編輯檔案,請必須先按「a」或是「i」來進行編輯
      如果視窗左下解出「-insert」或是「-插入」就可以開始編輯檔案
      按「Esc」可以作上層編輯或是下層指令之轉換
      :w寫入檔案
      :q離開檔案
      :q!強制離開檔案
    nano(RH9以前為pico)
      指令操作下層有說明

  觀看系統正在執行的行程
    ps
    ps -aux|more:常用方式
    參數說明:
      a :選擇所有的程序列出
      u :所有使用者的程序均列出
      x :所有 tty 的程序列出
      ps
      USER:說明該程序是屬於哪一個人的;
      PID:該程序的代號;
      %CPU:代表該程序使用了多少 CPU 資源;
      %MEM:代表該程序使用了多少的 RAM ;
      VSZ, RSS:佔去的 ram 的大小( bytes );
      TTY:是否為登入者執行的程序?若為 tty1-tty6 則為本機登入者,
       若為 pts/?? 則為遠端登入者執行的程序;
      STAT:該程序的狀態,( R )為可執行的,( S )
       為該程序正在睡眠中,就是沒有執行了,( T )正在偵測或者是停止了,
       ( Z )僵屍程式,就是 zombie 死掉的程式啦!需要以 kill 除去囉;
      START:該程序開始的日期;
      TIME:該程序跑了多久的時間;
      COMMAND:該程序的內容;

  觀看前幾名系統正在執行的行程
    top
  觀看系統記憶體使用量
    free

  刪除系統正在執行的行程
    kill
    kill 1999:刪除某個程序,利用ps來查詢PID值
    參數說明:
      -1:刪除某個程序(類似reload)
      -2:使用者中斷該工作,類似 [Ctrl]+c 來中斷一個工作
      -9:強制殺掉一個工作,並立刻執行
      -15:停止一個工作(這是預設值)

  可觀看系統資訊,包括你的核心版本、主機名稱、CPU 資訊
    uname
    uname -a:查詢所有系統資訊

  查看系統磁碟容量資訊
    df
    df -h:查詢所有磁碟容量,並以mb為單位呈現

  查看系統分割區容量資訊
    du
    du -s -h:查詢某個分割區容量,並以mb為單位呈現

  掛載相關設備的方式
    mount
    mount -t auto /(掛載設備名稱,在/dev/下面) /(預計要在本機對應的目錄名稱,目錄必須先建立)
    如果不清楚要mount device的名稱,可以先用ls -l /dev/* (usb隨身碟通常是sd開頭的,硬碟是hd,光碟是cdrom)
    mount -t auto /dev/sdb1 /mnt/usb

  查看系統開機資訊
    dmesg
    dmesg | more :查詢開機資訊

  什麼是 yum     yum 的全名是: Yellow dog Updater, Modified yum
    是一個自動更新/移除 rpm 套件的程式。
    由於CentOS也是源自redhat系統,所以他目前也是以yum作套件控管。
    它會自動計算相依性,判斷哪些應該安裝,哪些則不必。
    和 yum 相同性質的還有 apt,不過 yum 比 apt 還要優秀好用。
    Client端 yum 設定
    先透過rpm查詢是否安裝了yum
    yum
    如果沒有,請線上下載rpm來安裝暨大ftp下載
    預設gpgcheck=1 所以必須將GPG KEY安裝完成,
    http://mirror.centos.org/centos/下載所需要的key檔
    或是在本站下載RPM-GPG-KEY-centos4     或是在暨大ftp站下載 RPM-GPG-KEY-centos4
    下載完後安裝請用 "rpm --import <KEY_FILE_NAME>" 指令來匯入     之後便可以直接作更新
    如果覺得麻煩的話,其實在下面的設定檔,可以直接加上gpg的下載網址即可!!
    在CentOS4.3預設已經直接加上: gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-centos4

    在CentOS中修改yum的url和FC4類似,需要在repos的目錄下修改。
    cd /etc/yum.repos.d/
    修改 nano CentOS-Base.repo 分別將[base]、[update]的baseurl改到國內
    baseurl=http://ftp.ncnu.edu.tw/Linux/CentOS/$releasever/os/$basearch/
    baseurl=http://ftp.ncnu.edu.tw/Linux/CentOS/$releasever/updates/$basearch/
    另外[addons] 中的網址表示CentOS還在測試中的rpm尚未正式released
    [extras] 中的網址表示CentOS額外可能可以用的rpm
    [centosplus] 中的網址表示CentOS額外的rpm具有特別的功能
    [contrib] 中的網址表示CentOS一些使用者提供的rpm

    義守大學的mirror站亦可作yum
    baseurl=http://ftp.isu.edu.tw/pub/Linux/CentOS/$releasever/os/$basearch/
    baseurl=http://ftp.isu.edu.tw/pub/Linux/CentOS/$releasever/updates/$basearch/

    靜宜大學的mirror站亦可作yum
    baseurl=http://ftp.cs.pu.edu.tw/Linux/CentOS/$releasever/os/$basearch/
    baseurl=http://ftp.cs.pu.edu.tw/Linux/CentOS/$releasever/updates/$basearch/

    台南縣網的mirror站亦可作yum
    baseurl=http://ftp2.tnc.edu.tw/pub1/centos/$releasever/os/$basearch/
    baseurl=http://ftp2.tnc.edu.tw/pub1/centos/$releasever/updates/$basearch/

    手動執行
    yum install *(安裝某個套件)
    yum update *(更新某個套件)
    yum update;yum clean package(更新所有套件,並於安裝後刪除套件)

    yum中沒有的套件如何尋找
    http://rpmfind.net/linux/RPM/
    但是此處rpm沒有針對CentOS來收集其rpm,如果需要的話可以用el4的版本來試試,
    因但是建議還是以CentOS community提供較妥當,為選用CentOS最主要的訴求就是穩定!!
    另一個好用搜尋引擎http://www.google.com.tw


三、修改系統環境:
  修改語系設定檔 /etc/sysconfig/i18n
    原本為:
    LANG="zh_TW.UTF-8"
    SYSFONT="latarcyrheb-sun16"
    SUPPORTED="zh_TW.UTF-8:zh_TW:zh"

    修改為:
    LANG="zh_TW.Big5"
    SYSFONT="latarcyrheb-sun16"
    SUPPORTED="zh_TW.Big5:zh_TW:zh"
    修改完後必須重新開機,設定才能生效!!


  系統服務開機設定位置 /etc/rc.d/init.d 之中
    針對某項服務,如果啟動或關閉(例如 httpd)
    service httpd start|stop|restart
    /etc/rc.d/init.d httpd start|stop|restart
    這樣就可以在執行時,處理各項系統的服務的狀態!!

    如果希望一開機就啟動或關閉(例如 httpd)
    首先就必須了解開機時有不同指令層級,如level 1|2|3|4|5
    利用chkconfig --list httpd (查看httpd各層級開機啟動狀態)
    chkconfig
    利用chkconfig --level 3 httpd on (設定httpd在level 3中開機要啟動)
    這樣就可以在執行時,處理各項系統的服務的狀態!!

    另一個更容易的方式,透過webmin設定
    WEBMIN


四、視窗化操作介面X Windows
  執行層級(Run level)為5者直接為視窗介面
    設定開機時系統執行的設定,CentOS 4.3預設為5,一登入就執行X Windows
    修改系統開機層級設定檔 /etc/inittab 修改完後存檔,重開機後就會新的設定層級開機
    比較簡單的方式,用指令修改 /sbin/init 1|2|3|4|5
    ip
    如果是文字模式時者,可以用startx來執行X Windows
    ip
    登入後的畫面
    ip


五、忘記root密碼、系統開機有問題,無法登入時
  如同RH系統,通常將LILO改為用Grub 做為開機管理程式,
  要進入單人維護模式就比較麻煩一些。在開機的過程當中,會有讀秒的時刻,
  此時請按下任意按鍵,就會進入選單畫面。
  boot
  這個時候只要選擇相對的核心檔案,並且按下「e」,就可以進入編輯畫面了。
  boot
  此時,你看到的畫面有點像:
  root (hd0,0)
  kernel /vmlinuz-2.6.9.34 EL root=/   此時,請將游標移動到 kernel 那一行,再按一次「e」進入 kernel 該行的編輯畫面中,
  然後在出現的畫面當中,最後方輸入 single :
  boot
  root (hd0,0)
  kernel /vmlinuz-2.6.9.34 EL root=/ single
  再按下「Enter」確定之後,按下 b 就可以 boot 看看啦。
  boot
  在使用者使用 GRUB 開機進入單一使用者模式後,並取得# 提示符號,
  boot
  使用者需要輸入 passwd root,然後使用者便可以輸入新的 root 密碼。

  如果是系統發生有問題時,可以作磁碟檢查
  fsck -y
  完成後後,重開機 shutdown -r now,重新啟動。


六、安裝完成無法提供遠端網路連線
  請先確認SELINUX是否關閉
  設定檔路徑 /etc/selinux/config 中SELINUX=enabled(enforced)改為disabled
  修改完後需要重新開機!!

  如果仍然不行,請確認iptables的防火牆是否設定了部分規則
  設定檔路徑 /etc/sysconfig/iptables
  查詢iptables的規則的指命 iptables -L
  暫時先停用iptables的規則的指命 iptables -F


七、應用程式安裝及管理
  rpm管理系統程式套件
    rpm(Redhat Package Manager)
    rpm -e *.rpm:移除某個套件
    rpm -q *.rpm:查詢某個套件
    rpm -qi *.rpm:查詢某個套件完整安裝資訊
    rpm -ivh *.rpm:安裝新的套件
    rpm -ivh --replacepkgs *.rpm:安裝已經裝的套件
    rpm -Uvh *.rpm:昇級新版本的套件
    rpm -Fvh *.rpm:更新已經安裝過的套件,只有裝過的才會更新

  x window下rpm操作
    直接將要安裝套件用滑鼠左鍵按兩下,會出現執行訊息
    rpm
    告知此套件相關資訊
    rpm
    確定後就直接安裝,安裝完成後就直接關閉視窗
    rpm