Linux 基礎(chǔ)知識(shí)

本文包括:

1何暇、Linux 系統(tǒng)概述

2、Linux 用戶(hù)和用戶(hù)組管理

3、Linux 文件和目錄管理

4穴肘、Linux 文件系統(tǒng)管理

5蛾扇、Linux LVM 配置

6攘烛、Linux 網(wǎng)絡(luò)管理

7、Linux 進(jìn)程與任務(wù)管理

8镀首、Linux 系統(tǒng)監(jiān)控

9坟漱、Linux 管道與I/O重定向

10、Linux 安裝與管理軟件

1更哄、Linux 系統(tǒng)概述

  1. Linux 的發(fā)展:離不開(kāi)它的前身 Unix

    • Unix 的發(fā)展:

      1970 年芋齿,Ken Thompson 研發(fā)出 Unix 內(nèi)核;1970 年為Unix 元年

      1973 年成翩,Ritchie 用 C 語(yǔ)言編寫(xiě)了 Unix 內(nèi)核觅捆,Unix 正式誕生;

      1974 年麻敌,Unix 對(duì)外公布栅炒,開(kāi)始廣泛流行。

    • Linux 的產(chǎn)生和發(fā)展:

      1986 年术羔,Tanenbaum 研發(fā)出 MINIX赢赊,并于次年發(fā)布;

      1991 年级历,Linus 研發(fā)出 Linux 內(nèi)核的雛形释移;

      1994 年,Linux 1.0 內(nèi)核發(fā)布寥殖;

      1995 年以后玩讳,各種不同的 Linux 發(fā)行版本相繼出現(xiàn)涩蜘。

    • Linux 發(fā)行版本(內(nèi)核是一樣的):

      Redhat 、SUSE Enterprise熏纯、CentOS:側(cè)重于網(wǎng)絡(luò)服務(wù)皱坛,企業(yè)管理

      Debian、Stackware:側(cè)重于服務(wù)器及其穩(wěn)定性

      Ubuntu豆巨、Fedora剩辟、Open SUSE:側(cè)重于用戶(hù)體驗(yàn)

    • Unix 和 Linux 的區(qū)別:

      Unix Linux
      商業(yè)付費(fèi) 免費(fèi)開(kāi)源
      與硬件配套 跨平臺(tái)
      對(duì)硬件要求苛刻 對(duì)硬件要求很低
      安裝復(fù)雜 安裝簡(jiǎn)單
      使用復(fù)雜 使用簡(jiǎn)單
      穩(wěn)定 次穩(wěn)定(好于Windows)
  2. Linux 的結(jié)構(gòu):

    • 應(yīng)用程序

    • 外殼(shell):用戶(hù)和內(nèi)核之間的命令解釋器,可以根據(jù)自己的需求更換 shell往扔,shell 與 kernel 可分離

      常見(jiàn)的 shell 有:bash(Linux 默認(rèn)的 shell)贩猎,sh(Unix 默認(rèn)的 shell),ksh(korn shell)萍膛,c shell 等等吭服,其中以 bash(Bourne-Again Shell)最為流行:它基于 Bourne shell,吸收了 C shell 和 Ksh 的一些特性蝗罗。bash 完全兼容 sh艇棕,也就是說(shuō),用 sh 寫(xiě)的腳本可以不加修改的在 bash 中執(zhí)行

    • 內(nèi)核(kernel):Linux 操作系統(tǒng)的核心串塑,直接控制計(jì)算機(jī)資源

    • 硬件

  3. Linux 的特點(diǎn):

    • 多任務(wù)沼琉,多用戶(hù):CPU 時(shí)間分片,分給不同的進(jìn)程桩匪;允許多個(gè)用戶(hù)同時(shí)登陸使用打瘪。

    • 管道:前一個(gè)程序的輸出作為后一個(gè)程序的輸入,看起來(lái)好像管道一樣

    • 功能強(qiáng)大的 shell:shell 是一種解釋型高級(jí)語(yǔ)言

    • 安全保護(hù)機(jī)制傻昙,穩(wěn)定性好:防止系統(tǒng)及其數(shù)據(jù)未經(jīng)許可而被非法訪問(wèn)闺骚,穩(wěn)定性 Unix 好于 Linux,Linux 好于 Windows

    • 用戶(hù)界面:常用命令行的方式妆档,同時(shí)提供圖形界面

    • 強(qiáng)大的網(wǎng)絡(luò)支持:TCP/IP 協(xié)議就是 Linux 的缺省網(wǎng)絡(luò)協(xié)議

    • 移植性好:源代碼用 C 語(yǔ)言寫(xiě)成僻爽,便于移植到其它計(jì)算機(jī)上

2、Linux 用戶(hù)和用戶(hù)組管理

  1. Linux 的用戶(hù)和用戶(hù)組

    在 Linux 操作系統(tǒng)中贾惦,Linux 用戶(hù)會(huì)歸屬于用戶(hù)組胸梆,那么歸屬于同一用戶(hù)組的不同用戶(hù),它對(duì)一些公共文件具有相同的訪問(wèn)權(quán)限纤虽,每個(gè)用戶(hù)對(duì)它所歸屬的文件具有其適用的訪問(wèn)權(quán)限乳绕。

  2. Linux 通過(guò) UID 和 GID 來(lái)管理用戶(hù)和用戶(hù)組

    • UID(User ID):通過(guò)配置文件 /etc/password 儲(chǔ)存绞惦,記錄的是單個(gè)用戶(hù)的登陸信息

        root:x:0:0:root:/root:/bin/bash  
      

      被冒號(hào)分成七個(gè)字段:分別為:用戶(hù)名逼纸、密碼、UID济蝉、GID杰刽、用戶(hù)描述菠发、用戶(hù)家目錄、用戶(hù)的 shell 類(lèi)型

      擴(kuò)展閱讀:

      Linux 系統(tǒng)中通常有三種類(lèi)型的用戶(hù):超級(jí)用戶(hù)(super user)贺嫂,常規(guī)用戶(hù)(regular user)和系統(tǒng)用戶(hù)(system user)滓鸠。

      超級(jí)用戶(hù)的 UID 和 GID 都是 0。不管系統(tǒng)中有多少個(gè)系統(tǒng)管理員第喳,都只有一個(gè)超級(jí)用戶(hù)帳號(hào)糜俗。超級(jí)用戶(hù)帳號(hào),通常指的是 root user曲饱,對(duì)系統(tǒng)擁有完全的控制權(quán)悠抹。超級(jí)用戶(hù)是唯一的。

      常規(guī)用戶(hù)的 UID 500 - 60000扩淀。指那些登陸到 Linux 系統(tǒng)楔敌,但不執(zhí)行管理任務(wù)的用戶(hù),例如文字處理或者收發(fā)郵件等

      系統(tǒng)用戶(hù)的 UID 1 — 499驻谆。系統(tǒng)用戶(hù)并不是一個(gè)人卵凑,也被稱(chēng)為邏輯用戶(hù)或偽用戶(hù)。系統(tǒng)用戶(hù)沒(méi)有相應(yīng)的 /home 目錄和密碼胜臊。系統(tǒng)帳號(hào)通常是 Linux 系統(tǒng)使用的一個(gè)管理日常服務(wù)的管理帳號(hào)

    • GID(Group ID):通過(guò)配置文件 /etc/group 儲(chǔ)存的勺卢,記錄 GID 和用戶(hù)組組名的對(duì)應(yīng)關(guān)系

        root:x:0:
      

      root 用戶(hù)組的 GID 為0

        smc:!:1001:
      

      SMC 用戶(hù)組的 GID 為1001

      擴(kuò)展閱讀:

      沒(méi)有 supergroup
      Systemgroup:GID 0 - 499
      一般組:GID 500 - 60000

  3. 用戶(hù)管理的常用命令

    • 用戶(hù)查詢(xún)命令:

      id:查詢(xún)當(dāng)前登陸用戶(hù)的 GID 和 UID。

      finger:查詢(xún)當(dāng)前用戶(hù)的屬性信息象对,包含家目錄和 shell 類(lèi)型值漫。

    • 新增用戶(hù):useradd[參數(shù)][用戶(hù)名]

        linux: ~ # useradd -d /home/ipcc -m -u 2000 -g mms -s /bin/csh ipcc
      

      -d:設(shè)置用戶(hù)的家目錄

      -m:設(shè)置的家目錄不存在時(shí)自動(dòng)創(chuàng)建

      -u:設(shè)置用戶(hù)的 UID

      -g:設(shè)置初始 GID 或組名

      -s:設(shè)置用戶(hù)的shell,如:/bin/csh

      上例最后的 ipcc 指的是該用戶(hù)的用戶(hù)名

        linux: ~ # useradd ipcc
      

      這個(gè)例子中沒(méi)有參數(shù)织盼,直接創(chuàng)建用戶(hù)名為 ipcc 的用戶(hù)杨何,如果在新增用戶(hù)時(shí)沒(méi)有指定參數(shù)信息,系統(tǒng)就會(huì)去讀取 /etc/default/useradd 配置文件沥邻,它規(guī)定了默認(rèn)的初始用戶(hù)組和 shell 等危虱。

        linux: ~ # useradd –D
      

      如果需要查詢(xún)基本的設(shè)置,通過(guò) useradd –D 讀取默認(rèn)的配置唐全。

    • 刪除用戶(hù):userdel [參數(shù)] [用戶(hù)名]

        linux:~ # userdel ipcc
      

      刪除 ipcc 用戶(hù)

        linux:~ # userdel -r iptv 
      

      加上 -r埃跷,會(huì)將用戶(hù)的家目錄一起刪除。

    • 新增完用戶(hù)后邮利,需要設(shè)置和修改用戶(hù)密碼:passwd[用戶(hù)名]弥雹。常規(guī)用戶(hù)只能不輸入用戶(hù)名,修改當(dāng)前用戶(hù)的密碼延届,超級(jí)用戶(hù)可以加上用戶(hù)名修改其他用戶(hù)的密碼剪勿。輸入正確后,這個(gè)新口令被加密并放入 /etc/shadow 文件

      注意:在 ubuntu 的默認(rèn) shell 中方庭,密碼不會(huì)顯示出來(lái)厕吉,且再修改密碼時(shí)酱固,會(huì)多次提示你輸入密碼以確保正確性

    • 修改用戶(hù)屬性:usermod[參數(shù)][用戶(hù)名]

        linux:~ # usermod -d /opt/ipcc ipcc
      

      -d 修改用戶(hù)家目錄
      -g 修改初始用戶(hù)組

    擴(kuò)展閱讀:su 命令用于變更為其他使用者的身份,除 root 外头朱,需要鍵入該使用者的密碼
    http://www.runoob.com/linux/linux-comm-su.html

  4. 用戶(hù)組管理常用命令

    • 新增用戶(hù)組:groupadd

        linux:~ # groupadd ipcc
      
        linux:~ # groupadd -g 2000 iptv
      

      -g 指定組 ID

    • 刪除用戶(hù)組:groupdel [用戶(hù)名]

        linux:~ # groupdel iptv
      
    • 修改用戶(hù)組:groupmod [參數(shù)] [用戶(hù)名] -

        linux:~ # groupmod -g 2500 -n ipcc1 ipcc
      

      g 修改組 ID -n 修改組名

3运悲、Linux 文件和目錄管理

  1. Linux 的文件結(jié)構(gòu)類(lèi)似于倒樹(shù)形結(jié)構(gòu),樹(shù)的 root 是 / 文件夾

    • 根目錄下的子目錄以及存放的內(nèi)容:

    • 常用文件夾

      • /etc

        • 配置文件
        • 大部分是 *.conf
          • /etc/passwd , /etc/group , /etc/shadow 除外
      • /home

        • 用戶(hù)家目錄
        • /home/用戶(hù)名
      • /root

        • 超級(jí)用戶(hù) root 的目錄
      • /tmp

        • 臨時(shí)文件區(qū)
      • /var/tmp

        • 臨時(shí)文件區(qū)
      • /boot

        • Boot filesystem
        • 啟動(dòng)加載器
        • 內(nèi)核及 init ram dist
      • /dev

        • 設(shè)備文件
        • /dev/sda 是硬盤(pán)
        • /dev/sda1 是分區(qū)
        • 注意:Linux 的思想项钮,一切都是文件
      • /media

        • 本機(jī)硬盤(pán)以外的儲(chǔ)存設(shè)備
        • 例如:/media/CDROM
      • /mnt

        • 本機(jī)硬盤(pán)以外的儲(chǔ)存設(shè)備
        • Red Hat 習(xí)慣手動(dòng)掛載于此
  2. 絕對(duì)路徑與相對(duì)路徑

    • 絕對(duì)路徑:由根目錄(/)開(kāi)始寫(xiě)起的文件名或者目錄名班眯,例如: /home/student/file.txt

    • 相對(duì)路徑:基于當(dāng)前路徑的的文件名或者目錄名寫(xiě)法,. 代表當(dāng)前目錄 .. 代表上一級(jí)目錄

      舉例:假如目前在 /home/smc 目錄下烁巫,想要切換到 /home/smc/bin/smc 目錄下鳖敷,首先可以使用絕對(duì)路徑,命令如下:

        cd /home/smc/bin/smc
      

      操作完成后程拭,想要回到剛才的 /home/smc 目錄下定踱,可以使用相對(duì)路徑,命令如下恃鞋;

        cd ../..
      

      再舉例:目前在 /tmp崖媚,想要去 /home/student/file.txt

        ../home/student/file.txt
      

      再舉例:目前在 /home,想要去 /home/student/file.txt

        student/file.txt
      
  3. 文件和目錄的基本操作

    • 顯示當(dāng)前目錄下的所有文件:ls (list segment)

      • ls -l :顯示出詳細(xì)信息
    • 顯示當(dāng)前的工作目錄:pwd (print working directory

    • 變更工作目錄:cd

        cd 
        cd /home/smc/bin/smc
        cd ../..
      

      第一條指令恤浪,cd 后面不跟任何路徑畅哑,則是回到主目錄

    • 新增目錄(必須具備寫(xiě)權(quán)限):mkdir[-m 模式][-p] 目錄名

        mkdir temp
        mkdir -m 777 temp/abc
      

      -m 指定存取模式,設(shè)置為777水由,所有文件可讀可寫(xiě)可執(zhí)行
      -p 建立目錄時(shí)建立其所有不存在的父目錄

    • 刪除目錄(對(duì)父目錄具備寫(xiě)權(quán)限):rmdir [-p] 目錄名

      用于刪除空目錄荠呐,如果刪除非空目錄,則使用 rm 再加上參數(shù)即可

      –p 刪除目錄及父目錄

    • 復(fù)制文件或目錄(對(duì)父目錄具備寫(xiě)權(quán)限) :cp 源文件或目錄 目的文件或目錄

      • cp /etc/passwd /tmp/passwd :絕對(duì)路徑是最標(biāo)準(zhǔn)的寫(xiě)法
      • cp /etc/passwd /tmp :相同文件名稱(chēng)
      • cp /etc/passwd /tmp/. :在/tmp目錄下砂客,相同名稱(chēng)拷貝泥张,與上結(jié)果一樣
      • cp /etc/passwd . :當(dāng)前文件夾下,相同名稱(chēng)拷貝
    • 移動(dòng)文件或目錄(對(duì)父目錄具備寫(xiě)權(quán)限):mv 源文件或目錄 目的文件或目錄

      • mv /tmp/passwd /tmp/abc :更改文件名稱(chēng)
      • mv /tmp/passwd /var/tmp/passwd :移動(dòng)文件鞠值,名稱(chēng)不變
      • mv /tmp/passwd /var/tmp/abc:移動(dòng)文件并更改文件名稱(chēng)
      • 注意SELinux security context
    • 刪除文件或目錄(對(duì)父目錄具備寫(xiě)權(quán)限):rm[-ir] 文件或目錄

      -name 以指定字符串開(kāi)頭的文件名 -user 查找指定用戶(hù)所擁有的文件媚创。

  4. 查看文件內(nèi)容:

    • cat:直接查閱文件內(nèi)容,不能翻頁(yè)

    • more:翻頁(yè)查看文件內(nèi)容

    • less:翻頁(yè)閱讀彤恶,和 more 類(lèi)似钞钙。但操作按鍵比 more 更加彈性。

    • head:查看文檔的頭部幾行內(nèi)容声离,默認(rèn)為 10 行芒炼,可用-數(shù)字 來(lái)查看特定行數(shù)

    • tail:查看文件的尾部幾行內(nèi)容,默認(rèn)為 10 行术徊,可用-數(shù)字 來(lái)查看特定行數(shù)

4本刽、Linux 文件系統(tǒng)管理

  1. 文件系統(tǒng)的概念:操作系統(tǒng)用于明確存儲(chǔ)和組織計(jì)算機(jī)數(shù)據(jù)的方法,使得對(duì)數(shù)據(jù)的查找和訪問(wèn)變得更加容易。用戶(hù)不需要關(guān)心文件位于d硬盤(pán)的數(shù)據(jù)塊地址盅安。

  2. 存儲(chǔ)在介質(zhì)中數(shù)據(jù)的三個(gè)因素

    文件名:定位存儲(chǔ)的位置

    數(shù)據(jù):文件的具體內(nèi)容

    元數(shù)據(jù) meta-data:文件有關(guān)的信息唤锉。例如文件的權(quán)限世囊、所有者别瞭、文件的修 改時(shí)間等。

    Linux 支持的文件系統(tǒng)類(lèi)型可查看 /etc/filesystems

  3. 文件系統(tǒng)的分類(lèi)

    • 根據(jù)是否有日志株憾?

      • 傳統(tǒng)型文件系統(tǒng):寫(xiě)入文件內(nèi)容的時(shí)候蝙寨,先寫(xiě)數(shù)據(jù),再寫(xiě)元數(shù)據(jù)嗤瞎,若寫(xiě)元數(shù)據(jù)前斷電墙歪,則會(huì)造成文件不一致。典型的:ext2(Linux 默認(rèn)的文件系統(tǒng))

      • 日志型文件系統(tǒng):寫(xiě)入文件內(nèi)容的時(shí)候贝奇,先寫(xiě)日志記錄文件(更安全)虹菲。典型的:ext3 = ext2 + 日志 ,ReiserFS (基于平衡樹(shù)掉瞳,搜索快毕源,節(jié)約空間)

    • 根據(jù)如何查找數(shù)據(jù)?

      • 索引式文件系統(tǒng):文件屬性數(shù)據(jù)和實(shí)際內(nèi)容放在不同的區(qū)塊陕习,例如 Linux 中默認(rèn)的 ext2 文件系統(tǒng)中霎褐,文件屬性數(shù)據(jù)存放在 inode(類(lèi)似于指針),實(shí)際內(nèi)容放在 block该镣。ext2 一開(kāi)始就規(guī)劃好了 inode 與 block 冻璃,所以數(shù)量龐大,不容易管理损合,所以有分組

      • 非索引式文件系統(tǒng):只有 block省艳,數(shù)據(jù)需要一個(gè) block 接一個(gè) block 讀取(下一個(gè) block 位置存放在上一個(gè) block 中)嫁审,效率低拍埠。 典型的:FAT(Windows 的文件系統(tǒng))

        碎片整理:寫(xiě)入的數(shù)據(jù)的 block 太過(guò)分散,此時(shí)讀取的效率會(huì)很低土居。磁盤(pán)整理的目的枣购,就是將這些分散的 block 盡量的集中起來(lái)。

  4. 配置文件系統(tǒng)分區(qū)

    • 創(chuàng)建分區(qū):fdisk + 設(shè)備名擦耀,輸入完該命令之后棉圈,可以通過(guò)參數(shù) m 查看按鍵操作說(shuō)明,通過(guò)參數(shù) p 可以得到本磁盤(pán)的相關(guān)信息眷蜓,輸入 n 命令可以新建一個(gè)分區(qū)分瘾。使用完 n 命令之后,新建分區(qū)的步驟如下:

      選擇分區(qū)類(lèi)型

      選擇分區(qū)開(kāi)始的磁柱

      決定分區(qū)的大小

      保存新建的分區(qū) (w 命令)

      通過(guò)重啟服務(wù)器或使用 partprobe 命令通知內(nèi)核

    • 創(chuàng)建文件系統(tǒng):mkfs [參數(shù)] 設(shè)備名吁系。-t 指定文件系統(tǒng)類(lèi)型德召,如 ext3白魂。 -b 指定 block 大小,單位 bytes上岗,ext2 和 ext3 僅支持 1024/2048/4096 三種福荸。

    • 掛載文件系統(tǒng):mount + 設(shè)備名 + 掛載點(diǎn)。掛載的過(guò)程就是將文件系統(tǒng)和目錄樹(shù)上的某一個(gè)目錄結(jié)合肴掷。 -t -b 同上敬锐。

        mount /dev/sda6/root/testmount
      
  5. 管理 Linux 文件系統(tǒng)

    • 查看分區(qū)使用情況:

      • df:查看文件系統(tǒng)的磁盤(pán)空間占用情況,參數(shù) –h 以容易理解的格式打印出文件系統(tǒng)大小呆瞻,參數(shù) –i 顯示 inode 信息而非塊使用量台夺。

      • du:查看文件或目錄的磁盤(pán)使用空間,參數(shù) –a 顯示目錄下的每個(gè)文件所占的磁盤(pán)空間痴脾,參數(shù) –s 只顯示大小的總和颤介,參數(shù) -h 以容易理解的格式輸出文件大小值,如多少 Mb

    • 查看系統(tǒng)打開(kāi)的文件:lsof

      Isof filename 顯示打開(kāi)指定文件的所有進(jìn)程

      Isof –c string 顯示以指定字符開(kāi)頭的進(jìn)程所有打開(kāi)的文件

      Isof –u username 顯示所屬 username 相關(guān)進(jìn)程打開(kāi)的文件

  6. 修復(fù)文件系統(tǒng):

    • fsck 參數(shù) 設(shè)備名:檢查文件系統(tǒng)并嘗試修復(fù)錯(cuò)誤赞赖。執(zhí)行 fsck 時(shí)滚朵,必須首先要將修復(fù)的設(shè)備進(jìn)行umount 后,再執(zhí)行 fsck 命令薯定。

    • e2fsck:檢查和修復(fù) ext2 和 ext3 文件系統(tǒng)

5始绍、Linux LVM 配置

LVM:Logical Volume Manager

  • 傳統(tǒng):文件系統(tǒng)構(gòu)建在物理分區(qū)(PP:physical partition)之上,物理分區(qū)的大小直接決定了文件系統(tǒng)的容量话侄。LVM:使文件系統(tǒng)的調(diào)節(jié)更簡(jiǎn)便亏推,搭配 RAID 做容錯(cuò)

  • LVM 結(jié)構(gòu):

    PP:physical partition 物理分區(qū),LVM 最底層

    PV:physical volume 物理卷年堆,一個(gè) PP 對(duì)應(yīng)一個(gè) PV

    PE:physical extends 物理擴(kuò)展單元吞杭,組成PV的最小單元,也是的最小區(qū)塊变丧,類(lèi)似于文件系統(tǒng)的 block

    VG:volume group 卷組芽狗,可以看出由 LVM 組成的大磁盤(pán)

    LE:logical extends 邏輯擴(kuò)展單元,組成LV的最小單元痒蓬,對(duì)應(yīng)一個(gè)PE

    LV:logical volume 邏輯卷童擎, VG之上,文件系統(tǒng)之下攻晒,文件系統(tǒng)是基于邏輯卷的

  • VG顾复、LV 和 PE 的關(guān)系

    LV 通過(guò)交換 PE 來(lái)實(shí)現(xiàn)彈性改變文件系統(tǒng)大小的效果,LV 移除一些 PE鲁捏,文件系統(tǒng)大小即減小芯砸,VG 把一些 PE 給LV,文件系統(tǒng)大小即增加

    最多65534個(gè)PE,PE的大小可以影響到VG的容量

    LV與磁盤(pán)分區(qū)類(lèi)似假丧,能夠格式化

  • LVM 的優(yōu)點(diǎn):

    • 通過(guò)LVM双揪,文件系統(tǒng)可以跨越多個(gè)磁盤(pán)

    • 動(dòng)態(tài)地?cái)U(kuò)展文件系統(tǒng)的大小

    • 增加新磁盤(pán)到 LVM 的存儲(chǔ)池中

  • LVM 使用要點(diǎn):

    • 按需分配文件系統(tǒng)大小

    • 把不同的數(shù)據(jù)放在不同的卷組中

  • LVM 配置步驟,創(chuàng)建邏輯卷的步驟

  • 物理卷管理命令

    • pvcreate 將普通的分區(qū)加上 PV 屬性
    • pvscan 查看物理卷信息
    • pvdisplay 查看各個(gè)物理卷的詳細(xì)參數(shù)
    • pvremve
  • 卷組管理

    • vgcreate vgname /dev/sdaN
      • vgname:卷組名稱(chēng)
      • /dev/sdaN:要加入卷組的物理卷
    • vgscan
    • vgdisplay
    • vgreduce 縮小卷組包帚,把物理卷從卷組中刪除
    • vgextend 擴(kuò)展卷組渔期,把某個(gè)物理卷添加到卷組中
    • vgremove
  • 邏輯卷管理命令

    • lvcreate -n lvname -L 2G vgname
      • lvname:邏輯卷名稱(chēng)
      • -L 2G:邏輯卷大小
      • vgname:從卷組分配空間給邏輯卷
    • lvscan
    • lvdisplay
    • lvextend
    • lvreduce
    • lvrmove
  • 擴(kuò)展卷組

    • 可在線擴(kuò)展卷組
    • 不一定可以所見(jiàn)卷組
    • 命令:vgextend vgname /dev/sdaN
      • 將物理卷 /dev/sdaN,加到vgname
    • 必須要有未使用的物理卷
      • 必須先有未使用的分區(qū)或硬盤(pán)
  • 管理文件系統(tǒng)的空間(增大或減杏へ)

    • 增大( 卷組必須要有足夠空間)

      • 先卸載邏輯卷

      • 然后通過(guò)vgextend擎场、lvextend等命令增大LV的空間

        • lvextend -l +128 /dev/vgname/lvname
          • 再加大128個(gè)LE
        • lvextend -L +128M /dev/vgname/lvname
          • 再加大128 Mb
      • resize2fs -p /dev/vgname/lvname

        • 再使用resize2fs將邏輯卷容量增加羽德,擴(kuò)展文件系統(tǒng)
        • -p:顯示操作期間的進(jìn)度
      • 最后將邏輯卷掛載到目錄樹(shù)

    • 減小

      • 先卸載邏輯卷
      • resize2fs -p /dev/vgname/lvname 512M
        • 再使用resize2fs將邏輯卷容量減小几莽,文件系統(tǒng)調(diào)整為512MB
      • lvreduce -L 512M /dev/vgname/lvname
        • 再通過(guò)lvreduce將邏輯卷容量減小,邏輯卷減小到512MB
      • 最后將邏輯卷掛載到目錄樹(shù)

    注意 lvextend -l +128 與 lvextend -L +128M 的區(qū)別宅静。一個(gè)是增加128個(gè)PE章蚣,一個(gè)是增加128MB

6、Linux 網(wǎng)絡(luò)管理

  • ifconfig [接口]:查看IP地址姨夹,廣播地址纤垂,網(wǎng)口掩碼

    windowns 中用 ipconfig

    • ifconfig 網(wǎng)口[參數(shù)]:設(shè)置網(wǎng)口的參數(shù),如IP地址磷账,廣播地址峭沦,網(wǎng)口掩碼等,重啟網(wǎng)絡(luò)或系統(tǒng)后失效

        ifconfig eth3 192.168.100.128 broadcast 192.168.100.255 netmask 255.255.255.0
      
    • 若想修改一直有效逃糟,則需要去修改配置文件:/etc/sysconfig/network/ifcfg-網(wǎng)口

      編輯配置文件:

        vi ifcfg-eth4
      

      使用ifup命令吼鱼,啟動(dòng)網(wǎng)口:

        ifup ifcfg-eth4
      
  • route:查詢(xún)本機(jī)路由表

    Destination 目的地
    Gateway 網(wǎng)管
    Genmask
    Flags 標(biāo)記,為U:可用
    Iface 該路由的網(wǎng)絡(luò)出口

  • 新增路由:通過(guò)命令方式新建路由绰咽,會(huì)保存在內(nèi)存中菇肃,重啟無(wú)效,若想持久保存取募,通過(guò)配置文件 /etc/sysconfig/network/routes 靜態(tài)保存路由信息琐谤,重啟網(wǎng)絡(luò)服務(wù)才能生效

  • 檢測(cè)本地端口

      netstat -tupln | grep:25
    
    • t:TCP僅顯示tcp相關(guān)選項(xiàng)
    • u:UDP僅顯示udp相關(guān)選項(xiàng)
    • p:Procedure顯示建立相關(guān)連接的程序名
    • l:List僅列出正在Listen(監(jiān)聽(tīng))的服務(wù)
    • n:拒絕顯示別名,能顯示數(shù)字的全部轉(zhuǎn)化為數(shù)字
  • 檢測(cè)遠(yuǎn)程服務(wù)

    • nmap軟件包

    • 可以單獨(dú)檢測(cè)服務(wù)器

      • 如:nmap 192.168.0.101
    • 可檢測(cè)整個(gè)class C

      • 如:nmap 192.168.0.0/24
      • 不支持255.255.255.0的語(yǔ)法
    • 如果沒(méi)有防火墻干擾玩敏,結(jié)果應(yīng)該與netstat一致

  • IP別名

    • 在相同的網(wǎng)卡以及MAC地址之下斗忌,配置不同的IP地址
    • 命名原則
      • eth0
      • eth0:0
      • eth0:1 ...
    • 哪些不支持IP別名
      • DHCP不支持別名
      • NetworkManager不支持別名
        • NetworkManager也不支持網(wǎng)卡綁定
        • service NetworkManager stop
        • chkconfig NetworkManager Off
  • ping -c 次數(shù)

  • traceroute 目的地址或主機(jī)名:追蹤包源到目的所經(jīng)過(guò)的路由

  • 配置FTP服務(wù),通過(guò)yast命令旺聚,yast界面可以修改網(wǎng)絡(luò)信息

  • 配置Telnet服務(wù)织阳,進(jìn)入yast界面

7、Linux 進(jìn)程與任務(wù)管理

  • 概念

    • 程序:文件中保存的一系列可執(zhí)行的命令

    • 進(jìn)程:加載到內(nèi)存中的程序,由CPU執(zhí)行翻屈,由PID 標(biāo)識(shí)

    • 守護(hù)進(jìn)程:常駐內(nèi)存陈哑,與終端無(wú)關(guān)的系統(tǒng)進(jìn)程

    • 用戶(hù)進(jìn)程:用戶(hù)通過(guò)終端加載的進(jìn)程

  • 查看進(jìn)程

    • ps 靜態(tài)查看某一時(shí)間點(diǎn)進(jìn)程信息

      • a 顯示現(xiàn)行終端機(jī)下所有程序
      • x 顯示所有程序,不分終端機(jī)
      • u 以用戶(hù)為主的格式來(lái)顯示程序狀況
      • f 用ASCII字符顯示樹(shù)狀結(jié)構(gòu)
      • l 顯示進(jìn)程的詳細(xì)信息,例如優(yōu)先級(jí)(NI)
    • top 動(dòng)態(tài)觀察進(jìn)程動(dòng)態(tài)惊窖,每三秒刷新一次(默認(rèn)按CPU的使用率降序排列)

      • 熱鍵刽宪;
        • P:按處理器使用率排列進(jìn)程
        • M:按內(nèi)存使用率排列
        • d:控制即時(shí)顯示秒差
        • h:顯示更多熱鍵的用法
        • q:離開(kāi)top
        • k:殺死某個(gè)進(jìn)程,需要再輸入PID好
    • pstree 用ASCII字符顯示樹(shù)狀結(jié)構(gòu)界酒,-p 顯示進(jìn)程ID圣拄,-u 顯示用戶(hù)名

  • 管理進(jìn)程

    • Linux進(jìn)程調(diào)度是CPU分為時(shí)間片,每個(gè)進(jìn)程將依次在CPU上運(yùn)行毁欣,優(yōu)先級(jí)高的先執(zhí)行
    • 用戶(hù)可通過(guò)設(shè)置進(jìn)程的 niceness(NI)值來(lái)影響進(jìn)程的優(yōu)先級(jí)庇谆。niceness值范圍:-20到+19,數(shù)字越小凭疮,優(yōu)先級(jí)越高
    • root用戶(hù)(超級(jí)用戶(hù))可調(diào)整優(yōu)先級(jí)到-20饭耳,而非超級(jí)用戶(hù)只能把進(jìn)程的優(yōu)先級(jí)調(diào)低(即往+19調(diào)整),常規(guī)用戶(hù)所啟用的進(jìn)程的niceness默認(rèn)值為0
    • 用法:
      • nice -n 1 ls:將 ls 的優(yōu)先序加 1 并執(zhí)行
      • nice ls:將 ls 的優(yōu)先序加 10 并執(zhí)行
      • renice +1 987 -u daemon root -p 32:將進(jìn)程 id 為 987 及 32 的進(jìn)程與進(jìn)程擁有者為 daemon 及 root 的優(yōu)先序號(hào)碼加 1
  • 結(jié)束進(jìn)程

    • kill PID:結(jié)束進(jìn)程和進(jìn)程號(hào)PID执解,系統(tǒng)可能不響應(yīng)
    • kill -9 PID:強(qiáng)制終止進(jìn)程寞肖,一般不適用
    • killall PID:終止同一進(jìn)程組內(nèi)的所有進(jìn)程
  • 任務(wù)管理

    • 任務(wù):登錄系統(tǒng)取得shell后,再單一終端接口下啟動(dòng)的進(jìn)程

    • 前臺(tái):在終端接口上衰腌,可以出現(xiàn)提示符讓用戶(hù)操作的環(huán)境

    • 后臺(tái):不顯示再終端接口的環(huán)境

  • 任務(wù)管理相關(guān)命令

    • & 直接將程序放入后臺(tái)處理

        find /-name smcapp &
      
    • jobs 查看當(dāng)前shell的后臺(tái)任務(wù)

    • ctrl+z 將正在運(yùn)行的任務(wù)放入后臺(tái)暫停

      在vi命令編輯文件內(nèi)容時(shí)新蟆,可以暫停(suspended)

    • fg %[job ID] 任務(wù)放入前臺(tái),如果不加job ID右蕊,則默認(rèn)把當(dāng)前任務(wù)

    • bg %[job ID] 任務(wù)放入后臺(tái)

  • 管理周期計(jì)劃任務(wù):crontab [-u user] [-e] -l [-r]琼稻。-u指定用戶(hù),-e編輯crontab任務(wù)內(nèi)容饶囚,-l查閱crontab任務(wù)內(nèi)容帕翻,-r移除所有crontab的任務(wù)內(nèi)容

    當(dāng)用-e編輯時(shí),程序會(huì)直接調(diào)用vi接口

    系統(tǒng)計(jì)劃任務(wù)保存在/etc/crontab文件中

  • 管理定時(shí)任務(wù):at 安排一個(gè)任務(wù)在未來(lái)執(zhí)行坯约,必須先啟用atd進(jìn)程

    • at -l:相當(dāng)于atq熊咽,列出當(dāng)前at任務(wù)
    • at -d[job ID]:相當(dāng)于atrm,刪除一個(gè)at任務(wù)
    • at -c[job ID]:查看任務(wù)具體內(nèi)容

    at 與 crontab的用法闹丐,from 鳥(niǎo)哥的linux私房菜:http://cn.linux.vbird.org/linux_basic/0430cron.php

8横殴、Linux 系統(tǒng)監(jiān)控

  • 監(jiān)控系統(tǒng)啟動(dòng)日志

    想要查看啟動(dòng)信息,調(diào)用命令 dmesg|less卿拴,或者查看 /var/log/boot.msg 日志

  • 監(jiān)控系統(tǒng)運(yùn)行狀況

    • cat /proc/..

      /proc/cpuinfo

      /proc/bus

      /proc/scsi

    • fdisk 硬盤(pán)信息

      -l:查看服務(wù)器所掛硬盤(pán)個(gè)數(shù)及分區(qū)情況

    • lspci PCI信息

      -v:顯示PCI接口裝置的詳細(xì)信息

      -vv:更詳細(xì)的信息

    • iostat CPU和I/O信息

      -c:僅顯示CPU統(tǒng)計(jì)信息

      -d:僅顯示磁盤(pán)統(tǒng)計(jì)信息

      -k:以k為單位顯示每秒磁盤(pán)的請(qǐng)求數(shù)

    • hwinfo 設(shè)備信息

      --disk 顯示磁盤(pán)信息

      --cpu 顯示CPU信息

      --memory 顯示內(nèi)存信息

      --network 顯示網(wǎng)卡信息

      --short 顯示硬件的摘要信息

  • 監(jiān)控系統(tǒng)和進(jìn)程

    • top 進(jìn)程的動(dòng)態(tài)信息衫仑,CPU、內(nèi)存信息

    • ps 靜態(tài)

    • uptime 系統(tǒng)開(kāi)機(jī)時(shí)間以及系統(tǒng)平均負(fù)載

    • uname 查看系統(tǒng)版本信息堕花,加 -a 會(huì)由更詳細(xì)的信息

    • netstat 顯示與IP文狱、TCP、UDP相關(guān)的信息

  • 監(jiān)控用戶(hù)登錄

    • who -H -m:查看當(dāng)前登錄系統(tǒng)地用戶(hù)缘挽。-H:顯示各欄位的標(biāo)題信息列瞄崇,-m:效果等同于who am i呻粹,顯示出自己再系統(tǒng)地用戶(hù)名,登錄終端苏研,登錄時(shí)間

    • w[參數(shù)][用戶(hù)]:查看當(dāng)前登錄的用戶(hù)及用戶(hù)當(dāng)前的工作等浊。-u:后面接user,查看具體用戶(hù)信息摹蘑,比who更詳細(xì)

    • finger[參數(shù)][用戶(hù)]:查看用戶(hù)詳細(xì)信息筹燕。-s:短格式顯示用戶(hù)信息,-l:長(zhǎng)格式顯示用戶(hù)信息

    • last[參數(shù)]:查看曾經(jīng)登錄過(guò)系統(tǒng)的用戶(hù)衅鹿。-n num:設(shè)置列出名單的顯示列數(shù)撒踪,-F:顯示登錄和登出的詳細(xì)信息

    • lastlog[參數(shù)][用戶(hù)]:查看用戶(hù)前一次登錄信息。-t days:查看距今n天內(nèi)登錄了系統(tǒng)的用戶(hù)的最近一次登錄信息大渤,-u顯示登錄與登出的詳細(xì)信息

9制妄、Linux 管道與I/O重定向

  • 命令行功能最強(qiáng)大的兩個(gè)功能:管道與I/O重定向

  • I/O重定向可將命令行的執(zhí)行的輸出或錯(cuò)誤消息重定向至文件,方便當(dāng)下保存或稍后分析

  • 輸入輸出流

    • 標(biāo)準(zhǔn)輸入
      • 0:鍵盤(pán)默認(rèn)
      • 又稱(chēng) STDIN
    • 標(biāo)準(zhǔn)輸出
      • 1:終端默認(rèn)
      • 又稱(chēng)STDOUT
    • 標(biāo)準(zhǔn)錯(cuò)誤
      • 2:終端默認(rèn)
      • 又稱(chēng)STDERR
  • 重定向運(yùn)算符號(hào)

    • > :將STDOUT重定向到文件

      • 文件內(nèi)容會(huì)被覆蓋

      • 舉例:

          ls -Ra /etc > root/backup/config-file-lists
        
    • >> :將STDOUT重定向到文件

      • 文件內(nèi)容會(huì)被添加

      • 舉例:

          (date;who -l) >> /root/monitor/who-online
        
    • < :重定向STDIN

      • 將鍵盤(pán)輸入改由讀入文件提供

      • 舉例:

          mail -s "Warning" root < /root/mail/record/alert-notify
        

    Shell 輸入 / 輸出重定向:http://www.runoob.com/linux/linux-shell-io-redirections.html

  • 管道使用

    • 運(yùn)算符管道

      • |:將一個(gè)命令的STDOUT發(fā)送到另一個(gè)命令的STDIN

      • 舉例:

          grep pattern /var/log/messages | mail -s "Issue notify" root
        
    • 命令行T管道

      • tee:將上一個(gè)命令的STDOUT通過(guò)T管道重定向到該文件兼犯,再發(fā)送到另一個(gè)命令的STDIN

      • 舉例:

          ifconfig eth0 | grep pattern | tee /root/interface-info | cut -f2 -d: | cut -f1 -d" "
        
      • 再舉例:
        使用tee的示意圖:ls -l的輸出被導(dǎo)向 tee忍捡,并且復(fù)制到檔案 file.txt 以及下一個(gè)命令 less集漾。tee 的名稱(chēng)來(lái)自于這個(gè)圖示切黔,它看起來(lái)像是大寫(xiě)的字母 T。

  • 比較

    • 標(biāo)準(zhǔn)的命令用法:

        grep root /etc/passwd
      
    • 重定向:

        grep root < /etc/passwd
      
    • 管道:

        cat /etc/passwd | grep root
      
    • 三種原理不一樣具篇,但結(jié)果一樣

10纬霞、Linux 安裝與管理軟件

  • RPM:redhat package manager

    • redhat 提出
    • 將源碼先編程完RPM軟件包,類(lèi)似于Windows中的setup文件
    • 安裝時(shí)驱显,只需要解開(kāi)軟件包趟薄,復(fù)制到適當(dāng)?shù)刂?/li>
    • 容易管理
    • 方便更新友多、移除
  • RHEL 軟件的命名原則:A-B-C.D.E

    • A:軟件名

    • B:版本

    • C:發(fā)行次數(shù),RHEL習(xí)慣加上 el# 字樣,#代表RHELv#

    • D:搭配規(guī)格惠爽,有 noarch

    • E:后綴,.rpm 或者 .src.rpm

    • 例如:

      • gimp-2.6.9-4.el6_1.1.x86_64.rpm
      • zsh-4.3.10-4.1.el6.x86_64.rpm
      • apache-1.3.23-11.i386.rpm
  • RPM 軟件包相依性

    • 有些 RPM 軟件包不能單獨(dú)安裝淤年,必須先安裝別的 RPM 軟件包才能安裝苟蹈,稱(chēng)之為 RPM軟件包相依性

    • 不是所有的都有相依性需求

    • rpm 命令安裝時(shí),不檢查相依性問(wèn)題

    • yum 命令安裝時(shí)胳蛮,自動(dòng)解決相依性問(wèn)題

  • rpm 查詢(xún)

    rpm -qa :查詢(xún)所有

    rpm -q mysql :查詢(xún)軟件包是否安裝

    rpm -qi mysql :查詢(xún)軟件包信息

    rpm -ql mysql :查詢(xún)軟件包中的文件

    rpm -qf /etc/passwd :查詢(xún)?cè)撐募鶎俚能浖?/p>

  • rpm 安裝

    rpm -i RPM包全路徑 :安裝某個(gè)RPM包

    rpm -ivh RPM包全路徑 :加上提示信息和進(jìn)度條

  • rpm 刪除

    rpm -e jdk :刪除 jdk 的RPM包

    如果其他軟件包依賴(lài)于 jdk 销凑,則刪除時(shí)會(huì)報(bào)錯(cuò)

  • rpm 升級(jí)

    rpm -U RPM包全路徑

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市仅炊,隨后出現(xiàn)的幾起案子斗幼,更是在濱河造成了極大的恐慌,老刑警劉巖抚垄,帶你破解...
    沈念sama閱讀 218,941評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件蜕窿,死亡現(xiàn)場(chǎng)離奇詭異谋逻,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)桐经,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén)斤贰,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人次询,你說(shuō)我怎么就攤上這事荧恍。” “怎么了屯吊?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,345評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵送巡,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我盒卸,道長(zhǎng)骗爆,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,851評(píng)論 1 295
  • 正文 為了忘掉前任蔽介,我火速辦了婚禮摘投,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘虹蓄。我一直安慰自己犀呼,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布薇组。 她就那樣靜靜地躺著外臂,像睡著了一般。 火紅的嫁衣襯著肌膚如雪律胀。 梳的紋絲不亂的頭發(fā)上宋光,一...
    開(kāi)封第一講書(shū)人閱讀 51,688評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音炭菌,去河邊找鬼罪佳。 笑死,一個(gè)胖子當(dāng)著我的面吹牛黑低,可吹牛的內(nèi)容都是我干的赘艳。 我是一名探鬼主播,決...
    沈念sama閱讀 40,414評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼投储,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼第练!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起玛荞,我...
    開(kāi)封第一講書(shū)人閱讀 39,319評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤娇掏,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后勋眯,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體婴梧,經(jīng)...
    沈念sama閱讀 45,775評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡下梢,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了塞蹭。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片孽江。...
    茶點(diǎn)故事閱讀 40,096評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖番电,靈堂內(nèi)的尸體忽然破棺而出岗屏,到底是詐尸還是另有隱情,我是刑警寧澤漱办,帶...
    沈念sama閱讀 35,789評(píng)論 5 346
  • 正文 年R本政府宣布这刷,位于F島的核電站,受9級(jí)特大地震影響娩井,放射性物質(zhì)發(fā)生泄漏暇屋。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評(píng)論 3 331
  • 文/蒙蒙 一洞辣、第九天 我趴在偏房一處隱蔽的房頂上張望咐刨。 院中可真熱鬧,春花似錦扬霜、人聲如沸定鸟。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,993評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)仔粥。三九已至,卻和暖如春蟹但,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背谭羔。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,107評(píng)論 1 271
  • 我被黑心中介騙來(lái)泰國(guó)打工华糖, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人瘟裸。 一個(gè)月前我還...
    沈念sama閱讀 48,308評(píng)論 3 372
  • 正文 我出身青樓客叉,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親话告。 傳聞我的和親對(duì)象是個(gè)殘疾皇子兼搏,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容