第一周-N28

1、描述計算機的組成及功能

我們現在常用的計算機,包括手機及智能設備,通常由五大部件組成(馮若依曼提出),如下圖所示:

11

五大部件:

  • 運算器:做算數運算(加減乘除取余)和邏輯運算(移位)
  • 控制器:控制各部分協調的功能。
    • CPU包括以下四個部分:運算器、控制器、寄存器、緩存
  • I/O設備:即輸入輸出設備,用于跟外部交互。通常為磁盤、鍵盤、鼠標、顯示器、打印機等。I/O設備是交互起來最慢的設備。
    • INPUT:下指令,提供數據等
    • OutPut:輸出數據加工的結果
  • 存儲器:存儲數據的設備。包括ROM(只讀內存)和RAM(揮發性內存),通常我們所說的內存主要為RAM;而磁盤是屬于I/O設備,而不屬于存儲器。
    • ROM(read-only memory):只讀內存。一旦存儲資料就無法再將之改變或刪除,資料不會因為電源關閉而消失。
    • RAM(RamdomAccess?Memory):易揮發性隨機存取存儲器。可對其中的任一存儲單元進行讀或寫操作,計算機關閉電源后其內的信息將不再保存,再次開機需要重新裝入。
      • CPU只能從內存中讀取數據

 

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

Linux是由互聯網上各種各樣的項目維護者提供的源碼實現的,但是我們作為終端用戶來講,很少有人有這種能力把源碼拼湊出一個完整的系統來,因此就有人幫我們把中間的過程完成了,這些組織就稱為發行商,它們所提供的版本就叫做發行版。

應用程序都是源碼提供、開源的,任何組織和個人都可以任意獲取,所以A組織、B組織、C組織都可以制作發行版。發行版制作的界面和內部某些文件的路徑組織不一樣,內核也會有些不同,而且有些組織發行的軟件版本不一樣。

市面上流行Centos/Ubuntu/red hat三大主流發行版。

Linux發行版:

  • Slackware:由于SLS沒有存活多久,我們也可以認為Slackware就是一個從頭建立的
  • Suse:基于slackware的二次發行版,歐洲最流行的發行版
  • Opensuse:基于suse的二次發行版
  • Debian:唯一一個不是由商業組織維護的,是通過互聯網自發來維護,不收錢。是三大發行版中最接近原汁原味linux,也是三大發行版中技能要求最高的linux。
  • Ubuntu:基于debian的二次發行版
    • Mint:基于ubuntu的二次發行版
  • Knopix:基于debian的二次發行版
  • Redhat:Redhat早期1994年成立時就是發行個人桌面版,后來等它的發行版本足夠穩定以后,開始逐漸轉向企業版。個人桌面版不再做了,但是不能任由它廢棄,所以就在Redhat 9.0以后分成兩個分支RHEL(企業版)和Fedora(個人桌面版)
  • RHEL:redhat enterprise linux,redhat的企業版。每18個月發行一個新版本,一定是廣泛經過驗證,足夠穩定的版本。目前版本是RHEL 7。
    • CentOS:Community Enterprise Operating System,基于RHEL企業版的二次發行版,以Red Hat所發布的源代碼重建符合GPL許可協議的Linux系統,即將Red Hat Linux源代碼的商標(LOGO)及非自由軟件部分去除后再編譯而形成的版本。
      • CentOS和RHEL是完全兼容的
    • Fedora:redhat的個人版捐給了fedora社區,由社區組織維護。社區組織維護的主要目的在于:測試新軟件程序、測試新硬件驅動程序等。所以fedora發行周期很快,一般而言是每6個月發行一個新版本。
    • Gentoo:發行版雖然是最近幾年出現的,但到現在為止供很多人喜歡
    • ArchLinux:發行版雖然是最近幾年出現的,但到現在為止供很多人喜歡

 

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

Linux哲學思想:

  • 一切皆文件:把幾乎所有資源通通抽象為文件形式,從而訪問任何資源可以使用統一的接口來實現;包括硬件設備,甚至通信接口等
    • 訪問文件函數:open(),read(),write(),close(),delete(),create()
  • 由眾多單一目的小程序組成;一個程序只實現一個功能,而且要做好;要想實現一些復雜的功能,需要組合小程序完成復雜任務。
  • 盡量避免跟用戶交互。目標:易于以編程的方式實現自動化任務
  • 使用純文本文件保存配置信息。目標:一款使用的文本編輯器即能完成系統配置工作。所以在linux里面靈活使用文本編輯器至關重要。

 

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

4.1 ifconfig命令

ifconfig:configure a network interface,網絡信息屬性顯示和配置

SYNOPSIS:

  • ifconfig [interface]
    • [root@Mauro ~]# ifconfig:顯示本機上所有處于活動狀態接口的地址
    • [root@Mauro ~]# ifconfig -a:顯示本機上所有處于活動狀態接口和非活動狀態接口的地址
    • [root@Mauro ~]# ifconfig IFACE:顯示指定接口的信息
      • IFACE:表示接口名
    • [root@Mauro ~]# ifconfig IFACE [up|down]:啟用或者禁用某個接口
  • ifconfig interface [aftype] options | address …
    • [root@Mauro ~]#ifconfig IFACE IP/mask [up]:臨時修改接口地址
      • 指明這種格式時必須要使用掩碼長度
      • [root@Mauro ~]#ifconfig IFACE [up] IP/mask
    • [root@Mauro ~]#ifconfig IFACE IP netmask MASK:臨時修改接口地址
      • 指明這種格式時必須要使用掩碼地址
      • 臨時修改ip地址并且啟用
        • up:It is implicitly specified if an address is assigned to the interface.
      • [root@Mauro ~]# ifconfig eth0:0 192.168.84.152/24
        • 新增一個網卡別名
      • options:
        • [-]promisc:啟用/禁用混雜模式
          • [root@Mauro ~]# ifconfig eth0 -promisc
            • 默認是啟用混雜模式,-表示禁用混雜模式
            • 混雜模式是我們將來實現網絡監控時必要的一步。每一個主機在接收報文時,如果目標地址不是自己就不會接收。啟用混雜模式指的是目標地址即便不是自己,只要報文來了,它也會接收一份。這便于我們在本機上面抓包從而分析網絡通信。
          • [root@Mauro ~]# ifconfig eth0:0down
            • 刪除一個網卡別名

4.2 echo命令

echo:回顯命令。write arguments to the standard output。

//回顯:你給它什么,它就給你顯示什么。

OPTION:

  • -n:禁止自動添加換行符號
  • -e:enable interpretation of backslash escapes,允許使用轉義符
    • 某些符號不是你所看到的樣子,而是為實現某種控制功能
    • \n:換行
    • \t:制表符

[root@Mauro ~]# echo “$SHELL”

這也是種回顯,只不過能取得變量中存儲的值并顯示出來。單引號叫強引用;雙引號叫弱引用。

  • echo “$VAR_NAME”:變量會替換,弱引用
  • echo ‘$VAR_NAME’:變量不會替換,強引用

4.3 tty命令

查看當前的終端設備:[root@Mauro ~]# tty

4.4 ?startx命令

啟動圖形界面:[root@Mauro ~]# ?startx &

4.5 export命令

環境變量聲明、賦值:

[root@Mauro ~]# export name=VALUE

或者

[root@Mauro ~]# name=VALUE

[root@Mauro ~]# export name

4.6?pwd命令

pwd – print name of current/working directory,顯示當前路徑

顯示當前路徑:[root@Mauro ~]# pwd

4.7?history命令

history工作原理:

  • 登陸shell時,會讀取命令歷史文件中記錄下的命令:~/.bash_history
  • 登陸進shell后新執行的命令只會記錄在內存的緩存中,且都有編號;這些命令會在用戶退出時“追加”至命令歷史文件中

history選項及使用:

  • -a:追加本次會話新執行的命令歷史列表至歷史文件中

[root@Mauro ~]# history -a

[root@Mauro ~]# cat ~/.bash_history

  • -d:刪除命令歷史中指定的命令
  • history -d OFFSET:OFFSET表示偏移量,即刪除第幾條記錄

[root@Mauro ~]# history -d 574

[root@Mauro ~]# history

  • -c:清空命令歷史
  • history -c:清空歷史記錄
  • history #:顯示歷史中最近的#條指令
    • 其中包括自己剛剛執行的命令

[root@Mauro ~]# history 3

566 ?ls /dev/console

567 ?cat /dev/console

568 ?history 3

4.7?shutdown、poweroff、reboot命令

系統管理類命令:

  • 關機:halt,poweroff,shutdown,init 0
    • CentOS 7:
      • [root@mauro ~]# systemctl poweroff
    • 除CentOS 7以外:
      • [root@mauro ~]# poweroff
    • 重啟:reboot,shutdown,init 6
      • CentOS 7:
        • [root@mauro ~]# systemctl reboot
      • 除CentOS 7以外:
        • [root@mauro ~]# reboot

4.8?hwclock和date命令

Linux的兩種時鐘:

  • 系統時鐘:由Linux內核通過CPU的工作頻率進行的計時。
  • 硬件時鐘:硬件時鐘是存儲在CMOS里的時鐘,關機后該時鐘依然運行,主板的電池為它供電。

date命令顯示的是系統時鐘;而clock命令顯示的是硬件時鐘。系統時鐘和硬件時鐘很有可能是不一樣的。

hwclock:顯示硬件時鐘

  • -s,–hctosys:set the system time tothe hardware clock
    • 把系統時間設定成和硬件時間一樣
  • -w,–systohc: set the hardware clock to the current system time
    • 把硬件時間設定成和系統時間一樣

 

date:顯示系統時鐘

date [OPTION]…[+FORMAT]

FORMAT:格式符號

  • %D:按月計的日期,等于%m/%d/%y(月日年)
  • %F:完整日期格式,等價于 %Y-%m-%d(年月日)
  • %T:獲取當前系統時間,等于%H:%M:%S(時分秒)

指定格式顯示時間:把時間以特定的格式進行輸出

  • [root@Mauro ~]# date +”%Y/%m/%d %H:%M:%S”

2017/07/07 06:45:43

  • [root@Mauro ~]$ date +%Y/%m/%d\ %H:%M:%S

2017/07/09 04:57:07

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/89483

(0)
MauroMauro
上一篇 2017-12-04
下一篇 2017-12-04

相關推薦

  • 有證說話硬–實現CA和證書申請

    centos下利用openssl來實現證書的頒發 直接進入正題,細節坑就不說了,自己解決起來更有挑戰性不是 步驟流程: 我是拿的7.3版本做CA主機,6.8版本做客戶端 1.創建CA 2.生成私鑰 3.生成自簽名證書 4.到客服端 5.生成私鑰 6.生成證書申請文件 7.將請求發送給-CA主機 8.CA主機-驗證簽署 9.拷回給客戶端使用 用法:openss…

    2017-04-11
  • 操作系統—Systemd

    Systemd 概述:       CentOS 6和之前版本采用SysVinit的系統啟動進程管理體系,一般用戶都可通過在/etc/inittab文件的配置,來個性化自己的系統啟動序列。但也經常會由于特殊環境的硬件等關系問題,造成其串行的啟動進程控制流,因為可能任務的阻塞而影響啟動過程。     &nbsp…

    Linux干貨 2016-09-24
  • 新的開始

    加入馬幫,新的開始,加油!

    Linux干貨 2016-09-19
  • shell腳本編程 4

    Shell腳本編程4 一、雜項知識整理 1、數組賦值方法: declare -a files files=(/var/log/*.log)通配所有文件也可 2、創建臨時文件: mktemp命令:創建的臨時文件可避免沖突 mktemp  NAME.XXXX(x至少要出現三個) -d 創建臨時目錄 –tmpdir=/DIR 指明臨時文件所存…

    Linux干貨 2016-08-24
  • 位置變量在Shell腳本編程中的作用

    位置變量:         如果要向一個shell腳本傳遞信息,可以使用位置參數完成此功能;參數相關數目傳入腳本,此數目可以任意多,但只有前9個可以被訪問,使用shift命令可以改變這個限制;參數從第一個開始,在第九個結束;每個訪問參數前要加$符號;第一個參數為0,表示預留保存實…

    Linux干貨 2016-08-15
  • 軟鏈接與硬鏈接

    軟鏈接 硬鏈接

    2017-11-18

評論列表(1條)

  • 馬哥教育
    馬哥教育 2017-12-16 12:17

    繼續努力~

欧美性久久久久