第一周作業

描述計算機的組成及其功能。

  • 由馮~諾伊曼提出計算機體系結構,計算機主要由控制器、運算器、存儲器、輸入設備、輸出設備五大硬件組成。

    • 控制器(Controller):是整個計算機的中樞神經,其功能是對程序規定的控制信息進行解釋,根據其要求進行控制,調度程序、數據、地址,協調計算機各部分工作及內存與外設的訪問等。

    • 運算器(Datapath):運算器的功能是對數據進行各種算術運算和邏輯運算,即對數據進行加工處理。

    • 存儲器(Memory):存儲器的功能是存儲程序、數據和各種信號、命令等信息,并在需要時提供這些信息。

    • 輸入設備(Input Device):下指令,提供數據等。

    • 輸出設備(Output Device):輸出運算后各類數據的結果。

  • 軟件:

    • 計算機軟件分為系統軟件和應用軟件,如果把計算機比喻為一個人的話,那么硬件就表示人的身軀。而軟件則表示人的思想、靈魂。一臺沒有安裝任何軟件的計算機我們把它稱之為“裸機”。

    • 系統軟件:顧明思議就是操作系統,主要功能是調度,監控和維護計算機系統;負責管理計算機系統中各種獨立的硬件,使得它們可以協調工作。

    • 應用軟件:可以讓用戶在計算機上開發軟件,使用軟件??梢酝貙捰嬎銠C系統的應用領域,放大硬件的功能。(如Word、Excel、QQ等都屬于應用軟件)

二、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別。

  • 發行版為許多不同的目的而制作, 包括對不同計算機結構的支持, 對一個具體區域或語言的本地化,實時應用,和嵌入式系統,甚至許多版本故意地只加入免費軟件。已經有超過三百個發行版被積極的開發,最普遍被使用的發行版有大約十二個

    • Fedora Core是眾多 Linux 發行版之一。它是一套從Red Hat Linux發展出來的免費Linux系統。Fedora Core 的前身就是Red Hat Linux。Fedora是一個開放的、創新的、前瞻性的操作系統和平臺,基于Linux。它允許任何人自由地使用、修改和重發布,無論現在還是將來。它由一個強大的社群開發,這個社群的成員以自己的不懈努力,提供并維護自由、開放源碼的軟件和開放的標準。Fedora 是一個獨立的操作系統,是Linux的一個發行版,可運行的體系結構包括 x86(即i386-i686), x86_64 和 PowerPC。

    • Debian Project誕生于1993年8月13日,它的目標是提供一個穩定容錯的Linux版本。支持Debian的不是某家公司,而是許多在其改進過程中投入了大量時間的開發人員,這種改進吸取了早期Linux的經驗。

    • Ubuntu是一個以桌面應用為主的Linux操作系統,Ubuntu基于Debian發行版和unity桌面環境,與Debian的不同在于它每6個月會發布一個新版本。Ubuntu的目標在于為一般用戶提供一個最新的、同時又相當穩定的主要由自由軟件構建而成的操作系統。

    • Linux Mint是一份基于Ubuntu的發行版,其目標是提供一種更完整的即刻可用體驗,這包括提供瀏覽器插件、多媒體編解碼器、對DVD播放的支持、Java和其他組件。它與Ubuntu軟件倉庫兼容。Linux Mint 是一個為pc和X86電腦設計的操作系統。
    • Red Hat Linux可能這是最著名的Linux版本了,Red Hat Linux已經創造了自己的品牌,越來越多的人聽說過它。Red Hat Linux是公共環境中表現上佳的服務器。它擁有自己的公司,能向用戶提供一套完整的服務,這使得它特別適合在公共網絡中使用。這個版本的Linux也使用最新的內核,還擁有大多數人都需要使用的主體軟件包。
    • CentOS(Community ENTerprise Operating System)是Linux發行版之一,它是來自于Red Hat Enterprise Linux依照開放源代碼規定釋出的源代碼所編譯而成。由于出自同樣的源代碼,因此有些要求高度穩定性的服務器以CentOS替代商業版的Red Hat Enterprise Linux使用。兩者的不同,在于CentOS并不包含封閉源代碼軟件,CentOS 是一個基于Red Hat Linux 提供的可自由使用源代碼的企業級Linux發行版本。
    • SuSE:總部設在德國的SuSE AG在商界已經奮斗了8年多,它一直致力于創建一個連接數據庫的最佳Linux版本。為了實現這一目的,SuSE與Oracle 和IBM合作,以使他們的產品能穩定地工作。
    • Gentoo是Linux世界3最年輕的發行版本,正因為年輕,所以能吸取在她之前的所有發行版本的優點。Gentoo最初由Daniel Robbins(FreeBSD的開發者之一)創建,首個穩定版本發布于2002年。由于開發者對FreeBSD的熟識,所以Gentoo擁有媲美FreeBSD的廣受美譽的ports系統 ——Portage包管理系統
    • Arch Linux是一種以輕量簡潔為設計理念的Linux發行版。其開發團隊秉承簡潔、優雅、正確和代碼最小化的設計宗旨。

三、描述Linux的哲學思想,并按照自己的理解對其進行解釋性描述。

  • Linux哲學思想之一:

    • 一切皆文件:把所有資源統統抽象為文件形式:包括硬件設備,甚至通信接口等:open(),read(),write(),close(),delete(),create()。

    • 表現之一:硬件設備通過文件表示

    • 物理終端:/dev/console

    • 虛擬終端:/dev/tty#[1-6]

    • 串行終端:/dev/ttys#

    • 偽終端:/dev/pts/#

  • 由眾多功能單一的程序組成:一個程序只做一件事情,并且做的組合小程序完成復雜任務。

  • 盡量避免跟用戶交互:

    • 目標:易于以編程的方式實現自動化任務
  • 使用文本文件保存配置信息。

四、說明Linux系統上命令的使用格式;詳細介紹ifconfig、echo、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例來闡述。

  • ifconfig:查看網卡的IP地址

    • 語法:ifconfig [option] [interface]
    • -a:顯示當前可用的所有接口,即便處于關閉狀態。
    • -s:顯示部分信息
    • -v:更為詳細的某些錯誤條件

      [root@localhost ~]# ifconfig
      
      ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
      
      inet 192.168.31.2  netmask 255.255.255.0  broadcast 192.168.31.255
      
      inet6 fe80::6c7b:15ce:ebfb:3256  prefixlen 64  scopeid 0x20<link>
      
      ether 00:0c:29:5c:a9:76  txqueuelen 1000  (Ethernet)
      
      RX packets 9846  bytes 746205 (728.7 KiB)
      
      RX errors 0  dropped 0  overruns 0  frame 0
      
      TX packets 8779  bytes 9822741 (9.3 MiB)
      
      TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
  • echo:回顯

    • 語法:echo [SHORT-OPTION]… [STRING]…

    • -n:不進行換行

    • -e:讓轉義符生效

    • \n:換行

    • \t:制表符

    • 查看當前使用的Shell。

      [root@localhost ~]# echo "${SHELL}"
      
      /bin/bash
    • 查看環境變量

      [root@localhost ~]# echo "${PATH}"
      
      /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
    • tty:查看終端設備

      語法:tty [OPTION]...
      [root@localhost ~]# tty
      /dev/pts/0
    • startx:用于啟動圖形化界面。

    • export:設置或顯示環境變量。

    • pwd:顯示當前工作目錄

    • history:查看在命令行中執行了哪些命令

      語法:history [-c] [-d 偏移量] [n
      
      -c: 清空命令歷史;
      
      -d offset:刪除指定命令歷史
      
      -r: 從文件讀取命令歷史至歷史列表中;
      
      -w:把歷史列表中的命令追加至歷史文件中;
      
      history #:顯示最近的#條命令;
      
      [root@localhost ~]# history -c
      
      [root@localhost ~]# history
      
      1  history
  • shutdown:關機、重啟操作

    • shutdown [OPTIONS…] [TIME] [WALL…]

      -h: halt  #關機
      
      -r:reboot #重啟
      
      -c:cancel #取消shutdwon命令的操作
      
      9、poweroff:關機
      
      10、reboot:重啟
      
      11、hwclock:查看修改硬件時間
      
      -s, --hctosys:以硬件為準,把系統調整為與硬件時間相同;
      
      -w, --systohc:以系統為準,把硬件時間調整為與系統時鐘相同
  • date:查看修改系統時間

    • 顯示日期時間:date [OPTION]… [+FORMAT]

      FORMAT:格式符
      [root@localhost ~]# date #顯示系統時間
      2017年 02月 07日 星期二 10:05:26 CST
      
      [root@localhost ~]# date +%F #顯示年月日
      2017-02-07
      
      [root@localhost ~]# date +%T #顯示時分秒
      10:01:48
      
      [root@localhost ~]# date +%Y #顯示年
      2017
      
      [root@localhost ~]# date +%m #顯示月
      02
      
      [root@localhost ~]# date +%d #顯示天
      
      07
      
      [root@localhost ~]# date +%H #顯示小時
      10
      
      [root@localhost ~]# date +%M #顯示分鐘
      03
      
      [root@localhost ~]# date +%S #顯示秒
      
      17
      
      [root@localhost ~]# date +%s
      1486433001 
      # 從1970年1月1號(unix元年)0點0分0秒到命令執行那一刻經過的秒數

如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的。

  • 命令分為兩類:

    • 由Shell程序的自帶的命令:內置命令(builtin)。

      • 查看命令類型:Type COMMAND

        [root@localhost ~]# type cd
          cd 是 shell 內嵌
    • 獲取命令的使用幫助:

      • 內部命令:help COMMAND

      • 外部命令:

        命令自帶簡要格式的使用幫助
         COMMAND --help
        
         使用手冊:manual
         位置:/usr/share/man
         語法:man COMMAND 
         #當你使用man命令時,會有解釋性標題,這些標題對應下面的解釋。
             SECTION:功能性說
        
             SYNOPSIS:語法格式
        
             OPTIONS:選項
        
             EXAMPLES:使用示例
        
             AUTHOR:作者
        
             BUGS:報告程序BUG的方式
        
             SEE ALSO:作者
        
             SYNOPSIS:               
                 []:可選內容                    
                 <>:必須提供的內容                    
                 A|b|c:多選一                 
                 ...:同類的內容可出現多個
        
             使用手冊:壓縮格式的文件,有章節之分:
                 位置:/usr/share/man
                 man1,man2...
                 man1.用戶命令:                    
                 man2.系統調用            
                 3.C庫調用            
                 4.設備文件及特殊文件                    
                 5.文件格式:(配置文件格式)                    
                 6.游戲使用幫助
                 7.雜項                   
                 8.管理工具及守護進行

~]# man CHAPTER COMMAND 注意:并非每個COMMAND在所有章節下都有手冊; 查看: ~]# whatis COMMAND 注意:其執行過程是查詢數據庫進行的; 手動更新數據庫: ~]# makewhatis

man命令打開手冊以后的操作方法:

翻屏:

            空格鍵:向文件尾翻一屏;
            b: 向文件首部翻一屏;
            Ctrl+d:向文件尾部翻半屏;
            Ctrl+u:向文件首部翻半屏;
            回車鍵:向文件尾部翻一行;
            k: 向文件首部翻一行;
            G:跳轉至最后一行;
            #G: 跳轉至指定行;
            1G:跳轉至文件首部;

        文本搜索:
            /keyword:從文件首部向文件尾部依次查找;不區分字符大小寫;
            ?keyword:從文件尾部向文件首部依次查找;
            n: 與查找命令方向相同;
            N: 與查找命令方向相反;
         退出:
            ~]#q: quit
         選項:
            -M /PATH/TO/SOMEDIR:到指定目錄下查找命令手冊并打開之;

六、請羅列Linux發行版的基礎目錄名稱命名法則及功用規定

  • linux文件系統:

    • 文件名名稱嚴格區分字符大小寫
    • 文件可以使用除/以外任意字符
    • 文件名長度不能超過255字符
    • 以.開關的文件為隱藏文件

      • .:當前目錄
      • ..:當前目錄的上一級目錄
    • /bin -> usr/bin:所有用戶可用的基本命令程序文件

    • /sbin -> usr/sbin:供系統管理使用的工具程序
    • /boot:引導加載器必須用到的各靜態文件:kernel,initramfs(initrd),grub等
    • /dev:存儲特殊文件或設備文件
    • 設備文件有兩種:字符設備(線性設備)、塊設備(隨機設備)
    • /etc:系統程序的配置文件,只能為靜態
    • /home:普通用戶的家目錄,一般用用戶名的名稱作為家目錄的名稱,例:/home/bob
    • /lib -> usr/lib:為系統啟動或根文件系統上的應用程序(/bin,/sbin等)提供共享庫,以及為內核提供內核模塊。
    • libc.so.*:動態鏈接的C庫;
    • ld*:運行時鏈接器/加載器;
    • modules:用于存儲內核模塊的目錄
    • /lib64 -> usr/lib64:64位系統特有的存放64位共享庫的路徑
    • /media:便攜式設備的掛載點,如cdrom,floppy等
    • /mnt:其他文件系統的臨時掛載點
    • /opt:附加應用程序的安裝位置;可選路徑
    • /proc:基于內存的虛擬文件系統,用于為內核及進程存儲其相關信息;它們多為內核參數,例如net.ipv4.ip_forward, 虛擬為net/ipv4/ip_forward, 存儲于/proc/sys/, 因此其完整路徑為/proc/sys/net/ipv4/ip_forward;
    • /root:管理員家目錄
    • /run:系統運行時需要的, 不能隨便刪除. 但是重啟的時候應該拋棄. 下次系統運行時重新生成.
      • /srv:當前主機為服務提供的數據
    • /sys:sysfs虛擬文件系統提供了一種比proc更為理想的訪問內核數據的途徑;其主要作用在于為管理Linux設備提供一種統一模型的的接口;
    • /tmp:為那些會產生臨時文件的程序提供的用于存儲臨時文件的目錄;可供所用戶執行寫入操作;有特殊權限
    • /usr:usr Hierarchy,全局共享的只讀數據路徑;

      • bin, sbin
      • lib, lib64
      • include:C程序頭文件;
      • share:命令手冊頁和自帶文檔等架構特有的文件的存儲位置
      • local:另一個層級目錄;
      • X11R6:X-Window程序的安裝位置
      • src:程序源碼文件的存儲位置
    • /usr/local:Local hierarchy,讓系統管理員安裝本地應用程序;也通常用于安裝第三方程序;
    • /var:/var Hierarchy,存儲常發生變化的數據的目錄;

      • cache Application cache data
      • lib Variable state information
      • local Variable data for /usr/local
      • lock Lock files
      • log Log files and directories
      • opt Variable data for /opt
      • run Data relevant to running processes
      • spool Application spool data
    • tmp Temporary files preserved between system reboots

原創文章,作者:anhui-binbin,如若轉載,請注明出處:http://www.www58058.com/67752

(0)
anhui-binbinanhui-binbin
上一篇 2017-02-07
下一篇 2017-02-07

相關推薦

  • 11. vim備查の小手札

    三種模式 命令模式(默認)      command mode:移動光標,剪切/粘貼文本 插入(編輯)模式         edit mode:修改文本 擴展命令模式 extend…

    Linux干貨 2016-08-18
  • 淺談Openssl與私有CA搭建

        隨著網絡技術的發展、internet的全球化,信息共享程度被進一步提高,各種基于互聯網的應用如電子政務、電子商務日益增多并愈加被人們工作和生活依賴。但是,由于互聯網的開放性和通用性,網絡上的信息是對所有人公開的,這就使網絡上的數據傳輸過程中存在被竊聽、篡改等安全隱患,并極有可能給用戶帶來不可估量的損失。為此,各種保證數據在互聯網上…

    Linux干貨 2015-06-04
  • zabbix之報警功能的實現

    一、注冊微信公眾號 首先申請微信公眾平臺https://mp.weixin.qq.com/一個人最多申請5個公眾號,所以還是可以的 申請完之后就可以根據騰訊的提示使用微信公眾號了,然后用你自己的微信掃描關注微信號。 就可以看到用戶數了,接下來的就要使用的用戶的微信ID號了。點擊用戶查看用戶的微信ID號。在瀏覽器查看用戶的微信ID號。就是那個紅色的ID了。 h…

    2014-11-12
  • N21第五周

    1.顯示/boot/grub2/grub.cfg中以至少一個空白字符開頭的行; ]# grep '^[[:space:]]\+' /boot/grub2/grub.cfg 2.顯示/etc/rc.d/init.d/functions文件中以#開頭,后面跟至少一個空白字符,而后又有至少一個非空白字符的行; ]#…

    Linux干貨 2016-08-15
  • DevOpsDays大會,818坐標上海,我們來啦?。?!

    DevOpsDays 818, 坐標上海, DevOpsDays上海大會, 我們來啦?。。?我們來啦?。。?我們來啦?。?! 重要的事情說三遍。 標簽: 運維  移動開發  IT技術  DevOps  2008年的敏捷會議上,Andrew Clay Shafer 和 Patrick Debois 討論了關于“敏…

    Linux干貨 2017-08-10
  • shell位置變量解析

    什么是位置變量 在腳本代碼中調用通過命令行傳遞給腳本的參數。 有哪些位置變量 $1,$2,…: 對應第1、第2等參數,shift [n]換位置 $0:命令本身 $*:傳遞給腳本的所有參數,全部參數合為一個字符串 $@:傳遞給腳本的所有參數,每個參數為獨立字符串$#:傳遞給腳本的參數的個數    &nbsp…

    Linux干貨 2016-08-15

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-02-26 15:29

    很詳細的整理記錄。一開始打下堅實的基礎,會讓以后的學習更加順利,加油。

欧美性久久久久