天天看點

Linux基礎知識

linux基礎知識

一.linux界面

    1)gui:圖形化界面接口gnome是一個可視化的界面,對于初學者使用起來比較簡單,由c語言編寫;

    2)cli:指令行界面,通過輸入指令來進行操作,熟悉後會大大增加工作效率。

二.指令

    1)指令提示符:在linux終端模式中會出現類似如下字元,稱為指令提示符

        [root@localhost ~]# 

        root:目前成功登入系統的使用者賬戶名稱;

        localhost:目前主機名稱的主機名部分;

        ~:目前使用者操作時的工作目錄,~意思是家目錄;

        #:使用者身份提示符;

            #:表示超級使用者身份

            $:表示普通使用者身份

    2)指令的格式:

        command options argument

        command:本次想要執行的操作,想要發起的程序;

            内部指令:也叫内建指令或内置指令;直接内建于shell的指令;

            外部指令:通過安裝某些應用程式而安裝的指令;

        options:修正指令的執行效果的組成部分;

            短選項:

                -char

                -a, -b, -i, ...

                某些特殊的指令還有特殊的短選項:

                    +char

                    +c, ...

                當同時使用多個短選項時,可以将其合并書寫,如:

                    - a -b -i -c <==> -abci

            長選項:

                --word

                --help, --all, --verbose, --list, ...

                注意:當一個指令中同時有多個長選項時,不可以合并書寫;

            注意:

                1.有些選項,其選項本身需要參數;

                2.有些特殊的指令在寫選項時,可以不寫"-";有些特殊的指令,在寫選項時,一定不能寫"-";

                3.有些特殊指令的長選項,隻使用一個"-";

        argument(parameters):此次執行的指令的操作目标對象;

            1.有的指令無需寫參數;

            2.有的指令必須寫參數;

            3.有的指令必須要寫多個參數;

        注意:

            1.在書寫指令的時候,command、options、argument之間必須使用至少一個空白字元進行分隔;

            2.有些指令在執行的時候,options和argument可以交換位置;

            3.由于檔案系統的限制,導緻指令中的command、options、argument必須區分大小寫;

三.擷取指令幫助的方法

    1)使用man指令

        man 本身是一個指令,檢視針對于外部指令的幫助手冊,使用方法:

            man 指令/工具/程式名

        man共有九章内容:

            1.使用者指令(所有使用者都能執行的指令)

            2.系統調用

            3.c庫調用

            4.裝置和特殊檔案,通常在/dev

            5.檔案的格式和轉換方式(配置檔案格式)

            6.遊戲

            7.雜項

            8.系統管理類指令(普通使用者無法操作)

            9.與核心相關的幫助

        man中常見字段:

            name:程式名稱及相關功能簡單描述;

            synopsis(文法):指令使用的文法格式;

            description:相關應用程式的較長的描述資訊;

            options:選項的用法和選項含義的詳細說明;

                前四項比較常見

      author:作者;

      examples;

      reporting bugs:報告bug;

      see also:額外參考的内容;

      files:與該程式相關的其他文獻資料,如配置檔案,readme文檔等等;

        man中可能出現的符号:

            []:意味此處可省略不寫,也可根據需要選擇使用;

            {}:大括号中一般包含“|”,表示從所有項中選擇且隻能選擇一個使用;

            <>:此處為必須書寫内容;

             ...:此處可以有更多内容;

        注意:man指令隻能擷取外部指令的幫助資訊,内部指令擷取幫助需使用help指令,區分指令為外部指令還是内部 指令可以使用type指令。

    2)whereis

        獲得應用程式的二進制檔案/幫助手冊/源代碼等等的路徑

    3)whatis

        讀取whatis的資料庫,可以擷取被比對到的指令的手冊頁的描述資訊

    4)which

        顯示指令别名定義方式,二進制檔案路徑

    5)info

        info command,獲得線上的指令手冊

    6)有很多的程式有自帶的幫助文檔,通常在/usr/share/doc/app_name-version/*

        readme:程式的相關資訊

        install:程式的安裝資訊

        changes:程式的版本更疊的曆程相關資訊

        license:許可證類型

    7)搜尋引擎

    8)相關站點的文檔資訊

    9)程式發行官方站點

    10)參考書籍

        o'reiley 

        wrox 

        電子工業出版社

四.簡單的系統管理類指令

    登出類:

        exit

        logout

        crtl+d

    重新開機(重新開機類):

        reboot

        shutdown -r -t {#|now|time}(推薦)

        init 6

    關閉系統:

        shlt

        poweroff

        shutdown -h {#|now|time}(推薦)

        init 0

五.linux的哲學思想

    1)一切皆檔案

        linux幾乎把所有的資料和資源都抽象成檔案的形式,甚至包括硬體,網絡通信裝置所使用的套接字以及管道都是如此。

        檔案:一組有邊界的位于儲存設備中的流式資料

    2)由衆多的功能單一的小程式組成,卻可以實作複雜任務

    3)盡量避免與使用者直接互動

    4)使用純文字檔案來儲存程式的配置資訊

        在程式出現錯誤或者執行不暢的時候,可以使用文本編輯工具分析程式的錯誤原因,而不必依賴于二進制檔案。

六.檔案系統

    1)檔案是分為兩部分來存放的:

        中繼資料:描述檔案的屬性

        資料:檔案的内容

    2)分層編址方式:

        在檔案系統中,基于檔案名引用檔案,按名進行檔案存取。

        在檔案系統中,對于檔案名有一系列的規定:

            1.檔案名中不能包含"/"

                "/"表示根檔案系統:即為linux檔案的原初起點

                "/"表示路徑分隔符

            2.檔案名的長度不能超過255字元

            3.在同一位置,檔案名不能重複使用

            4.檔案的名稱嚴格區分大小寫

                注意:是否區分大小寫決定在檔案系統而不在作業系統

    3)檔案系統使用路徑的概念辨別檔案的位置,所謂路徑,就是定位一個檔案所在的位置時所必須經過的木的層級結構的集合

        檔案系統中的路徑的描述方式:

            絕對路徑:

                一切以"/"開始查找的路徑

            相對路徑:

                ".":目前工作目錄

                "..":上一級目錄

    4)家目錄:每個使用者在登入系統時預設的目前工作目錄,也是每個使用者的起始目錄

        任何一個路徑都是由兩部分組成:

            檔案的基名:

                basename

            檔案的目錄名:

                dirname

七.fhs:檔案系統層級标準

    bin:binary,所有使用者可以執行的普通操作指令,二進制檔案

    boot:引導作業系統啟動的靜态檔案,包括:引導程式,linux核心,initramfs等

    dev:device,裝置檔案所存的位置

        塊裝置:block device,随機通路,指的是能夠實作資料存放的裝置

        字元裝置:character device,順序通路(線性通路),指的是能夠實作資料傳輸和資料處理功能的裝置

    etc:extrenal text configure,額外的文本配置檔案,存放主機中各應用程式的配置檔案

    home:普通使用者的預設家目錄的根

    lib,lib64:library,存放應用程式共享庫的目錄,核心的子產品;

    media:可移動裝置的挂載點

    mnt:臨時檔案系統的挂載點

    opt:optional,可選的,以前此目錄是非常流行的第三方應用程式的安裝目錄

    root:root使用者的家目錄

    run:儲存一些程序的pid檔案

    sbin:super binary,存放那些隻有超級使用者root才能執行的系統管理類的指令

    srv:存放由系統提供的服務的資料

    tmp:temporary,臨時檔案目錄,系統每30天會自動清理該目錄中的在30天以上沒有通路過的檔案

    usr:usual system root,通用系統根,相當于linux系統的第二根,現在主要用于安裝第三方應用程式

        usr/local:第三根,主要用于通過編譯源代碼的方式來安裝第三方應用程式

        usr/src:存放第三方應用程式的源代碼

    var:variable,變量,存放可變化的資料,資料庫類檔案

    僞檔案系統:其中存放的是記憶體中的資料通過作業系統映射的檔案

    proc:process,程序

    sys:

八.檔案類型

    1)根據顔色來區分檔案類型:

         黑色或者白色:普通文本檔案,regular file;

         綠色:可執行檔案,指令

         ×××:裝置檔案,包括塊裝置和字元裝置

         紅色:封包件,包括軟體包、壓縮包、歸檔包等;

         深藍色:目錄

         青藍色:符号連結檔案,相當于windows的快捷方式

         紫色:套接字檔案

         棕色:管道檔案

    2)根據檔案類型的标記來區分:

         -:普通檔案

         b:塊裝置檔案

         c:字元裝置檔案

         d:目錄檔案

         l:符号連結檔案

         p:管道檔案

         s:套接字檔案

    3)用file指令

繼續閱讀