馬哥教育網絡班22期+第1周課程練習

一、計算機組成部分及其功能:硬件系統和軟件系統

    1、計算機的硬件系統組成及其功能:

        運算器:處理數據的算術運算及邏輯運算即數據加工處理;

        控制器:根據接收到的指令,負責向各部件發送控制信號,保證各部件協調工作;

        存儲器:計算機記憶貨暫存數據的部件,存放計算機程序及參與運算的各種數據;

        輸入設備:實現計算機原始程序和數據的輸入;

        輸出設備:實現計算機結果的輸出;

    2、計算機的軟件系統組成及其功能:

        系統軟件:控制計算機運行、管理計算機的各種資源、并為應用軟件提供支持和服務的一類軟件;

        應用軟件:為某一專門的應用目的而開發的計算機軟件;

二、主流的Linux發行版本

馬哥教育網絡班22期+第1周課程練習

    1、Gentoo:Gentoo最初由Daniel Robbins(FreeBSD的開發者之一)創建,首個穩定版本發布于2002年。由于開發者對FreeBSD的熟識,所以Gentoo擁有媲美 FreeBSD的廣受美譽的ports系統 ——Portage包管理系統。Portage是基于源代碼分發的,必須編譯后才能運行,對于大型軟件而言比較慢,不過正因為所有軟件都是在本地機器編譯的,在經過各種定制的編譯參數優化后,能將機器的硬件性能發揮到極致。Gentoo是所有Linux 發行版本里安裝更復雜的,但是又是安裝完成后最便于管理的版本,也是在相同硬件環境下運行最快的版本。Gentoo的哲學是自由和選擇;

    2、ArcLinux:Arch Linux(或稱Arch)是一種以輕量簡潔為設計理念的Linux發行版。其開發團隊秉承簡潔、優雅、正確和代碼最小化的設計宗旨。由 Judd Vinet 于2002年啟動。Arch Linux是起源于加拿大的一份致力于使用簡單、系統輕量、軟件更新速度快的GNU/Linux發行版。創始人Judd Vinet出于對Debian以及Red Hat的包管理器不滿,以及受CRUX影響而創立。最初針對i686,但是如今對x86_64也支持良好,而且還派生出了針對ARM平臺的Arch Linux ARM以及針對HURD內核的Arch Hurd(發展緩慢);

    3、Debian:或者稱Debian系列,包括Debian、Ubuntu、Knoppix、Kali Linux等。Debian是社區類Linux的典范,是迄今為止最遵循GNU規范的Linux系統。Debian最早由Ian Murdock于1993年創建,分為三個版本分支(branch): stable, testing 和 unstable。其中,unstable為最新的測試版本,其中包括最新的軟件包,但是也有相對較多的bug,適合桌面用戶。testing的版本都經過unstable中的測試,相對較為穩定,也支持了不少新技術。而stable一般只用于服務器,上面的軟件包大部分都比較過時,但是穩定和安全性都非常的高。Debian最具特色的是apt-get/dpkg包管理方式,Redhat的YUM也是在模仿Debian的APT方式,但在二進制文件發行方式中,APT應該是最好的了;

    4、Slackware:Slackware Linux是由Patrick Volkerding開發的GNU/Linux發行版。與很多其他的發行版不同,它堅持KISS(Keep It Simple Stupid)的原則。一開始,配置系統會有一些困難,但是更有經驗的用戶會喜歡這種方式的透明性和靈活性。 Slackware 很多特性體現出了KISS原則,最為有名的一些例子就是不依賴圖形界面的文本化系統配置、傳統的服務管理方式和不解決依賴的包管理方式。它的最大特點就是安裝靈活,目錄結構嚴謹,版本力求穩定而非追新。Slackware的軟件包都是通常的tgz(tar/gzip) 或者txz(xz) 格式文件再加上安裝腳本。Tgz/Txz 對于有經驗的用戶來說,比RPM更為靈活,并避免了APT 之類管理器可能帶來的的依賴地獄。這個系列包含SUSE、openSuSE等;

    5、RedHat:應該稱為Redhat系列,包括RHEL(Redhat Enterprise Linux,也就是所謂的Redhat Advance Server,收費版本)、Fedora Core(由原來的Redhat桌面版本發展而來,免費版本)、CentOS(RHEL的社區克隆版本,免費)。Redhat應該說是在國內使用人群最多的Linux版本,甚至有人將Redhat等同于Linux,而有些老鳥更是只用這一個版本的Linux。所以這個版本的特點就是使用人群數量大,資料非常多,言下之意就是如果你有什么不明白的地方,很容易找到人來問,而且網上的一般Linux教程都是以Redhat為例來講解的。Redhat系列的包管理方式采用的是基于RPM包的YUM包管理方式,包分發方式是編譯好的二進制文件。穩定性方面RHEL和CentOS的穩定性非常好,適合于服務器使用,但是Fedora Core的穩定性較差,建議只用于桌面應用。

三、Linux哲學思想

    1、一切皆文件:把幾乎所有的資源抽象成文件形式;包括硬件設備,通信接口等;

    2、由總多功能單一的程序組成,并且組合小程序完成復雜的任務;

    3、盡量避免與用戶進行交互,使用編程的方式實現自動化任務;

    4、使用文本文件保存配置信息。

四、命令使用方法詳解(ifconfig,echo,tty,startx,export,pwd,history,shutdown,poweroff,reboot,hwclock,date)

    1、ifconfig命令:用于配置和顯示Linux內核中網絡接口的網絡參數

        對應的配置文件:/etc/sysconfig/network-scripts/ifcfg-eno16777736 (CentOS 7)                                      /etc/sysconfig/network-scripts/ifcfg-eth0 (CentOS 6)

        語法格式:ifconfig [OPTIONS]

        參數:

        1、a:顯示所有的網卡設備及其信息,其中包含非活動的;

        2、up/down:開啟/關閉指定的網卡設備;

        3、mtu N:設置網卡設備的MTU為N;

        4、netmask:設置網口設備的子網掩碼;

        5、hw<網絡設備類型><硬件地址>:設置網卡設備的類型與硬件地址;

        6、-broadcast<地址>:將要送往指定地址的數據包當成廣播數據包來處理; 

        7、-pointopoint<地址>:與指定地址的網卡設備建立直接連線,此模式具有保密功能;

    實例:

        1、顯示所有的網卡設備(CentOS 7)

blob.pngblob.png

        說明:

        (1)、eno16777736是網卡的名稱,其中包含inet(ipv4地址)、netmask(子網掩碼)、broadcast(廣播地址)、inet6(ipv6地址)、ether(物理地址)等網卡設備相關信息;

           lo是表示主機的回壞地址,這個一般是用來測試一個網絡程序,但又不想讓局域網或外網的用戶能夠查看,只能在此臺主機上運行和查看所用的網絡接口。其ipv4地址為127.0.0.1 

        (2)、啟動關閉指定網卡

            ~]# ifconfig eno16777736 up

            ~]# ifconfig eno16777736 down

        (3)、ifconfig修改MAC地址

            ~]#ifconfig eno16777736 hw ether XX:XX:XX:XX:XX:XX

        (4)、配置IP地址(此方法配置的IP地址僅當前有效,重啟后恢復)

            [root@localhost ~]# ifconfig eth0 192.168.2.10

            [root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0

            [root@localhost ~]# ifconfig eth0 192.168.2.10 netmask 255.255.255.0 broadcast 192.168.2.255

        (5)、設置最大傳輸單元:

            ifconfig eth0 mtu 1500 #設置能通過的最大數據包大小為 1500 bytes

    2、echo命令:用于在shell中打印shell變量的值,或者直接輸出指定的字符串

            語法格式:echo (選項) (參數)

            參數

                -e:激活轉義字符。

                    使用-e選項時,若字符串中出現以下字符,則特別加以處理,而不會將它當成一般文字輸出:

                         \a 發出警告聲;

                         \b 刪除前一個字符; 

                         \c 最后不加上換行符號; 

                         \f 換行但光標仍舊停留在原來的位置;

                         \n 換行且光標移至行首;

                         \r 光標移至行首,但不換行;

                         \t 插入tab; \v 與\f相同;

                         \\ 插入\字符;

                         \nnn 插入nnn(八進制)所代表的ASCII字符;

            實例

               [root@localhost ~]# echo a\/b

               輸出結果:a\/b

               blob.png

    3、tty命令:顯示終端機連接標準輸入設備的文件名稱

            語法格式:tty [OPTION]…

            參數

                -s或–silent或–quiet 不顯示任何信息,只回傳狀態代碼。

            實例

                [root@localhost ~]# tty

                輸出結果:/dev/pts/3

                blob.png

            說明

                Linux常見終端:(n為編號)

                    /dev/ttySn        串行端口終端[1,7]

                    /dev/pty          偽終端

                    /dev/ttyn         控制終端[1,6]

                    /dev/console      物理終端 

                pts(pseudo-terminal slave)是pty的實現方法

    4、startx命令:用來啟動X Window,實際上啟動X Window的程序為xinit

    5、export命令:用于將shell變量輸出為環境變量,或者將shell函數輸出為環境變量            

blob.png

    6、pwd命令顯示用戶當前工作目錄

                blob.png

    7、history命令:是一條非常實用的shell命令,可以顯示出之前在shell中運行的命令    

            定制history的功能,可以通過環境變量實現; 

                  HISTSIZE:shell進程可保留的命令歷史的條數;

                  HISTFILE:持久保持命令歷史的文件;

                            .bash_history

                  HISTFILESIZE:命令歷史文件的大??;

            命令用法:

                  history [ -c ] [ -d 偏移量 ] [ n ]

                  或 history -anrw [ 文件名 ]

                  或 history -ps 參數 [ 參數… ]

                  -c:清空命令歷史;

                  -d offset:刪除指定命令歷史

                  -r:從文件讀取命令歷史至歷史列表中

                  -w:把歷史列表中的命令追加到歷史文件中

                  history n:顯示最近的n條命令;

            調用命令歷史列表中的命令:

                  !#:再一次執行歷史命令列表中的第#條命令;

                  !!:再一次執行上一條命令;

                  !STRING:再次執行命令歷史列表中最近一次以STRING開頭的命令

                         注意:命令的重復執行有時候需要依賴于冪等性;

            調用上一條命令的最后一個參數:

                  快捷鍵:Esc、. 或 符號組合:!$

            控制命令歷史記錄的方式:

                  環境變量:HISTCONTROL

                       ignoredups:忽略重復的命令

                       ignorespace : 忽略空白字符開通的命令

                       ignoreboth:以上兩者同時生效

        實例

            1、運行history命令:

                [root@localhost ~]# history

                blob.png

            2、顯示最近10條歷史命令

                [root@localhost ~]# history 10

                blob.png

    8、shutdown、poweroff、reboot命令

        (1)shutdown命令:可以關閉所有程序,并依用戶的需要,進行重新開機或關機的動作。

                選項:                    

                    -c:當執行“shutdown -h 11:50”指令時,使用"shutdown -c"就可以中斷關機的指令;

                    -f:重新啟動時不執行fsck;

                    -F:重新啟動時執行fsck;

                    -h:將系統關機;

                    -k:只是送出信息給所有用戶,但不會實際關機;

                    -n:不調用init程序進行關機,而由shutdown自己進行;

                    -r:shutdown之后重新啟動;

                    -t<秒數>:送出警告信息和刪除信息之間要延遲多少秒。

            blob.png

        (2)poweroff命令:用來關閉計算機操作系統并且切斷系統電源

                選項:                    

                    -n:關閉操作系統時不執行sync操作;

                    -w:不真正關閉操作系統,僅在日志文件“/var/log/wtmp”中;

                    -d:關閉操作系統時,不將操作寫入日志文件“/var/log/wtmp”中添加相應的記錄;

                    -f:強制關閉操作系統;

                    -i:關閉操作系統之前關閉所有的網絡接口;

                    -h:關閉操作系統之前將系統中所有的硬件設置為備用模式。

        (3)reboot命令:重新啟動正在運行的Linux操作系統

                選項:

                    -d:重新開機時不把數據寫入記錄文件/var/tmp/wtmp。本參數具有“-n”參數效果;

                    -f:強制重新開機,不調用shutdown指令的功能;

                    -i:在重開機之前,先關閉所有網絡界面;

                    -n:重開機之前不檢查是否有未結束的程序;

                    -w:僅做測試,并不真正將系統重新開機,只會把重開機的數據寫入/var/log目錄下的wtmp記錄文件。

    9、hwclock命令:查詢或設置硬件時鐘

        選項:            

            –adjust:hwclock每次更改硬件時鐘時,都會記錄在/etc/adjtime文件中。使用–adjust參數,可使hwclock根據先前的記錄來估算硬件時鐘的偏差,并用來校正目前的硬件時鐘;

            –hctosys:將系統時鐘調整為與目前的硬件時鐘一致;

            –set –date=<日期與時間>:設定硬件時鐘;

            –show:顯示硬件時鐘的時間與日期;

            –systohc:將硬件時鐘調整為與目前的系統時鐘一致;

            –utc:若要使用格林威治時間,請加入此參數,hwclock會執行轉換的工作;

    10、date命令:顯示或設置系統的日期時間

        選項:    

            -d<字符串>:顯示字符串所指的日期與時間。字符串前后必須加上雙引號;

            -s<字符串>:根據字符串來設置日期與時間。字符串前后必須加上雙引號;

        常用時間格式字符串:            

            %H 小時,24小時制(00~23)

            %I 小時,12小時制(01~12)

            %M 分鐘(00~59)

            %p 顯示出AM或PM

            %r 顯示時間,12小時制(hh:mm:ss %p)

            %s 從1970年1月1日00:00:00到目前經歷的秒數

            %S 顯示秒(00~59)

            %T 顯示時間,24小時制(hh:mm:ss)

            %X 顯示時間的格式(%H:%M:%S)

            %Z 顯示時區,日期域(CST)

            %a 星期的簡稱(Sun~Sat)

            %A 星期的全稱(Sunday~Saturday)

            %h,%b 月的簡稱(Jan~Dec)

            %B 月的全稱(January~December)

            %c 日期和時間(Tue Nov 20 14:12:58 2012)

            %y 年的最后兩個數字(1999則是99)

    實例:

            格式化輸出當前日期:

            blob.png

五、Linux系統上獲取命令的幫助信息

    1、內嵌命令:help COMMAND

    2、外部命令:

        (1)命令自帶簡要格式的使用幫助

                # COMMAND –help

        (2)命令使用手冊:manual

                默認情況下存于/usr/share/man目錄下,使用man命令進行查看

                # man COMMAND

                man手冊分為以下幾個章節:

                1    用戶命令(User Commands)

                2    系統調用(System Calls)

                3    C庫調用(Library Calls)

                4    特殊文件(usually found in /dev)

                5    文件格式(File Formats)

                6    游戲(Games)

                7    其它(Miscellaneous)

                8    系統管理命令(System Administrator Commands)

                9    內核(Kernel)

        (3)、info COMMAND:獲取命令的在線手冊

        (4)、很多應用程序會自帶幫助文件

                存儲于/usr/share/doc/APP-VERSION

        (5)、主流發行版官方文檔

        (6)、程序的官方文檔

        (7)、搜索引擎

六、Linux目錄結構及其目錄說明

未標題-1.jpg

原創文章,作者:N22-江西-H隨風,如若轉載,請注明出處:http://www.www58058.com/34018

(0)
N22-江西-H隨風N22-江西-H隨風
上一篇 2016-08-15 12:06
下一篇 2016-08-15 12:06

相關推薦

  • vim 常見用法、計劃任務和腳本初探

    vim的常用方法 gg:跳至首行 G:跳至魔行 dd:刪除光標所在行 ndd:刪除光標及以下(n-1)行 yy:復制光標所在行 p:把復制行粘貼在光標下一行 P:粘貼在上一行 u:取消上一步操作 /string:查找關鍵字 n:往下查詢 N:往上查詢 %s/string1/string2/:把string1替換為string2,后面加g表示全局替換 set&…

    Linux干貨 2016-12-04
  • linux學習第二天知識點-linux入門及使用幫助

    一 基礎命令 1. #ifconfig     顯示或配置網卡的命令,英文全稱是network interfaces configuring。     配置網卡的IP地址語法例:ifconfig eth0 192.168.0.1 netmask 255.255.255.0 2.&…

    Linux干貨 2016-07-26
  • Linux Cluster之Keepalived + Nginx的實現

      一、實驗環境 http server1與http server2組成web集群,由nginx服務器實現負載均衡代理,使用keepalived保證nginx服務的高可用。通過虛擬IP192.168.154.177對外提供web服務。 實驗目的: 1)當Nginx server1上的nginx服務異常時,由nginx server2提供反帶服務。 …

    2016-11-02
  • SELinux——有趣的標簽

    SELinux ·SELinux: Secure Enhanced linux,工作與Linux內核中 ·DAC:Discretionary Access Control 自由訪問控制 ·MAC:Mandatory Access Control  強制訪問控制        &n…

    Linux干貨 2016-09-18
  • 文件管理基礎知識及命令詳解

    文件系統     文件和目錄被組織成一個單根倒置樹結構     文件系統從根目錄下開始,用“ /”表示     根文件系統(rootfs): root filesystem    …

    Linux干貨 2016-08-05

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-29 22:02

    存在的問題:
    計算機五大部件中關于存儲器的描述有錯別字
    建議:
    1、關于命令的使用可列舉一些例子,比如如何設置 系統時鐘,命令歷史中帶有操作時間戳,命令歷史日志等
    2、建議排版使用markdown

欧美性久久久久