N25 The first week –Yorick

1.計算機的組成及功能

ENIARC:馮諾依曼體系

1.1.運算器(所屬CPU)

    進行計算

1.2.控制器(所屬CPU)

    控制部件之間的協調,包括尋址操作

    輔助性存儲(加速與提升CPU性能)

    寄存器(鎖存數據)

    緩存(緩存數據)

        一級緩存

        二級緩存

        ….

1.3.存儲器

    RAM(Random Access Memory)

        斷點后不能存儲數據,存取數據必須通電

    ROM(Read Only Memory)

        斷電后可以存儲數據

1.4.輸入(Input)

    下指令,提供對方要加工的數據

1.5.輸出(Output)

    輸出數據加工后的結果

2.描述及羅列linux版本,并描述不同發行版本之間的聯系

2.1.發行版本概念簡述

    GNU組織開源程序運動[發布的都是源碼]

    源碼不能直接運行:需要編譯成二進制格式運行

        源碼編譯是有門檻的

        常見的源碼工具

            gcc,glibc,vi,linux

2.2.linux發行版

    商業公司、社區組織負責按照自己的理解將源碼打包成二進制文件一并提供給用戶

        這些組織或公司稱為發行商

        發行版有數百種之多

2.2.1.熱門發行版及二次發行版

Debian(社區)

    Knopix

    Ubuntu

Gentoo(基于Enoch)

Slackware(基于SLS)

    S.u.S.e

    openSUSE

Arch

RedHat

    RedHat Enterprise

    Centos

    Fedora Core

2.2.2主流發行版

Debian(使用要求更高,更輕巧)

    ubuntu

        mint

    * knopix

Slackware"

    S.u.S.e(商業公司)"

        SLES

    OpenSUSE(界面華麗著稱)[歐洲人比較喜歡]

RedHat

    RedHat 9.0

        RedHat Enterprise Linux(RHEL)

        RHEL 7.0

        Centos(Community Enterprise OS)

        Centos與RHEL(企業版)的關系

            REHL商業版可以使用,但是升級包提供源碼,不提供二進制文件

            REHL雖然收錢,但是提供服務(如果不依賴提供服務則使用centos和redhat是一樣)

            社區將紅帽提供的源碼編譯成二進制文件提供給centos

            centos已經被紅帽收購了

        Fedora Core

            每6個月發行一次

3.描述linux哲學

3.1.一切皆文件

    把幾乎所有資源統統抽象為文件形式:包括硬件設備,甚至通信接口等

    open(),read(),write(),close(),delete(),create()

3.2.由眾多功能單一的程序組成:一個程序只做一件事,并且做好

    組合小程序完成復雜任務

3.3.盡量避免跟用戶交互

    目標:易于以編程的方式實現自動化任務

3.4.使用文本文件保存配置信息

4.命令使用

4.1.ifconfig eth0

[root Yorick ~]# ifconfig

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500

        inet 10.144.65.243  netmask 255.255.240.0  broadcast 10.144.79.255

        ether 00:16:3e:00:2e:15  txqueuelen 1000  (Ethernet)

        RX packets 186227  bytes 28876529 (27.5 MiB)

        RX errors 0  dropped 0  overruns 0  frame 0

        TX packets 315694  bytes 25053665 (23.8 MiB)

        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

# ifconfig命令

## 獲取當前設備所有網卡信息

ifconfig

## 獲取當前設備指定網卡信息

ifconfig [eth0|eth1|eth…]

## 網卡信息主要內容(簡)

網卡名稱、網卡地址、子網掩碼、廣播地址、物理地址、進出的網卡的流量(單位字節)

4.2.echo

# 回顯命令

echo "hello world"

# 常用參數

-n 不自動進行換行操作

-e 讓轉譯字符生效

   \t 制表符

   \n 回車

4.3.tty

# 獲取當前終端信息

]# tty

/dev/pts/0

# 根據終端的不同回顯不同的終端信息

物理終端:/dev/console

虛擬終端:/dev/tty#

串行終端:/dev/ttyS#

偽終端: /dev/pts/#

4.4.startx

# 啟動圖形終端(根據操作系統的不同終端不一樣)

startx

# 在偽終端或console中切換圖形終端

## centos6 只能在tty7中啟用圖形終端

tty7

## centos7 哪里啟動哪里就是圖形終端

tty1-7

4.5.export

# 獲取變量與聲明變量

export (默認獲取當前終端變量)

# 常見用法

export "key"="value" # 添加環境變量(僅當前shell生效)

export -n "key"  # 刪除環境變量,僅不顯示變量名稱,但實際存在(僅當前shell生效)

export [-p] # 查看當前shell的環境變量

4.6.pwd

# 獲取當前工作目錄的所在路徑

pwd

4.7.history

# 記錄操作歷史記錄

history (默認查看還是操作記錄,默認記錄1000行)

# 常見用法(跟操作審計相關)

## 記錄歷史命令的執行時間

export HISTTIMEFORMAT='%F %T  '

export HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S  $(who a mi|awk '{print $1,$5}'|tr -d "()") "

## 不記錄歷史命令

export HISTSIZE=0

## 修改記錄歷史的命令長度

HISTSIZE=450

HISTFILESIZE=450

## 記錄歷史命令的方法

### 消除歷史記錄中的重復記錄(所有記錄中不存在重復的記錄)

export HISTCONTROL=erasedups

### 消除歷史記錄中的重復記錄(相鄰的重復記錄只記錄一條)

export HISTCONTROL=ignoredups

### 不記錄以空格開頭的操作

export HISTCONTROL=ignorespace

4.8.shutdown

# 關閉并切斷電源

## 常見參數

-h halt 關機

-r reboot 重啟

-c cancel 取消

now 現在立刻關閉

hh:mm 幾點幾分

+m  多少分后

4.9.poweroff

# 關機

4.10.reboot

# 重啟

4.11.hwclock

# 物理時鐘

hwclock(顯示硬件時鐘)

# 以硬件為準

-s –hctosys 把系統調整為與硬件時鐘相同

# 以系統為準

-w –systohc 把硬件時鐘調整為與系統時鐘相同

4.12.date

# 日期的獲取

date OPTIONS [FORMAT]

# 獲取當前年份,按指定方式輸出

date +"%Y-%m-%d"

date +'%Y-%m-%d %H:%M:%S'

# 獲取當前時間戳

date +"%s"

# 將時間戳轉換成當前時

date -d @1361542596 +"%Y-%m-%d %H:%M:%S"

# 將時間轉換成時間戳

date -d "20161111" +"%s"

date -d '2013-2-22 22:14' +%s

# 修改系統時間

date -s "2016-11-11"

5.獲取幫助

# 方式一

* help COMMAND

# 方式二

* COMMAND -h|–help (長格式幫助及短格式幫助)

# 方式三

* man COMMAND

# 方式四

* info COMMAND

# 方式五

* 安裝的程序 readme:程序的相關信息

* 安裝成續的 CHANGES:版本迭代時的改動信息

# 方式六

* 主流發行版本的官方文檔

 * http://www.redhat.com/doc

# 方式七

* 程序的官方文檔,常用英文Document表示

# 方式八

* 使用google搜索

google

    keyword

    keyword filetype:pdf

    keyword site:magedu.com

    keyword tld:top+level+domain

5.1.man手冊使用詳解

# 使用格式

man COMMAND

# 基本段落說明

SECTION     簡要說明

SYNOPSIS    命令語法使用格式

DESCRIPTION 描述

OPTIONS     選項

EXAMPLES    使用示例

AUTHOR      作者

BUGS        報告程序BUG的方式

SEE ALSO    參考

# SYNOPSIS語法說明

[]   代表可選內容

<>   必須提供的內容

a|b  表示多選一

…  同類內容可出現多個

{}   輔助性分組的

# man手冊存放位置

/usr/share/man/{man1|man2|man3……}

說明:

    man1: 用戶命令

    man2:系統調用(程序員才會用到的)

    man3:C庫調用

    man4:設備文件及特殊文件

    man5:文件格式說明(配置文件)

    man6:游戲的使用幫助

    man7:雜項

    man8:管理工具及守護進程

man [1-8] COMMAND [man CHAPTER COMMAND]

# 查看命令再哪個章節有幫助信息

whatis COMMAND

# 如果新安裝的命令,也許有可能不能正常的查詢出來,使用如下命令重新刷新whatis數據庫

makewhatis  【不建議使用,消耗系統資源較為嚴重】

# man手冊使用時的快捷鍵

翻屏:

    空格鍵: 向文件尾部翻一屏

    b:       想文件首部翻一屏

    ctrl+d:  向文件尾部翻半屏(ctrl downword)

    ctrl+u:  向文件首部翻半屏(ctrl upword)

    回車鍵:  向文件尾部翻一行

    k:      向文件首部翻一行

    G:      表示跳轉至最后一行

    #G:     跳轉至指定行

    1G:      跳轉至文件首部

文本搜索功能:(查找時不區分大小寫)

    /keyword: 從文件首部向文件尾部依次查找

    ?keyword: 從文件尾部想文件首部依次查找

        n:與查找命令方向相同

        N:與查找命令方向相反

退出:

    q:quit

6.linxu發行版的基礎目錄名規范

# 文件系統的標準規范(FHS)

文件系統層級結構標準(Filesystem Hierarchy Standard)

簡單描述文件層級結構

## /bin

供所有用戶使用的基本程序文件 (Essnetial user command binaries)

## /sbin

工系統管理使用的工具程序 (System binaries)

## /boot

引導加載器必須用到的各靜態文件

    kernel

    initramfs(initrd)

    grub等

## /dev

存儲特殊文件或設備文件

    字符設備|線性設備    `!有時序`

    塊設備|隨機設備    `!無時序`

## /etc

系統程序的靜態配置文件

## /home

普通用戶家目錄的集中位置

## /root

管理員的家目錄

## /lib

為系統啟動或根文件系統上的應用程序(/bin,/sbin等)提供共享庫,以及為內核提供內核模塊

    libc.so.* `動態鏈接C庫`

    ld* `運行時鏈接器加載器`

    modules `用于存放內核模塊的目錄`

## /lib64

64位系統特有的存放64位共享庫的路徑

## /media

便攜性設備掛在點

    cdrom

    floppy

    等

## /mnt

其他文件系統的臨時掛載點

## /opt

附加應用程序的安裝位置(通常稱為第三方程序)

## /srv

當前主機為服務提供的數據(特有的)

## /tmp

為那些會產生臨時文件的程序提供的用于存儲臨時文件的目錄,可提供所有用戶執行寫入操作 `有特殊權限`

## /usr

全局共享的只讀數據路徑(自己也存在層級結構)

    /bin

    /sbin

    /lib

    /lib64

    /include #C程序的頭文件

    /share #命令手冊和自帶文檔等架構特有的文件存儲位置

    /local #另一個層級目錄

    /src # 程序源碼的存放位置

## /usr/local

讓系統管理員安裝本地應用程序,通常用于安裝第三方程序(常用)

## /var/

存放常發生變化的數據的目錄

    cache 緩存數據

    lib 狀態數據

    local 提供/usr/local的狀態信息相關的額

    lock 鎖文件相關的

    log 日志相關的

    opt 第三方應用相關的額

    run 進程中相關的信息

    spool  管道信息

    temp 系統重啟后依然需要留存文件

## /proc

基于內存的虛擬文件系統,內核和進程信息的虛擬文件系統(內核級進程存儲其相關信息,它們多為內核參數)

    示例

        net.ipv4.ip_forward -> 虛擬-> net/ipv4/ip_forward

        路徑 /proc/sys/

        完整的路徑 /proc/sys/net/ipv4/ip_forward

## /sys

sysfs虛擬文件系統提供了一種比proc更為理想的訪問內核數據的途徑

主要作用:為管理linux設備提供一種統一模型的接口

原創文章,作者:Yorick,如若轉載,請注明出處:http://www.www58058.com/62625

(0)
YorickYorick
上一篇 2016-12-04
下一篇 2016-12-04

相關推薦

  • 馬哥教育網絡班20期+第二周博客作業

    1.Linux上的文件管理類命令 2.bash命令學習總結 3.bash命令實例 4.元數據與時間戳 5.命令別名 6.練習題6~12 1.Linux上的文件管理類命令        Linux上的文件管理類命令可分為查看類、目錄管理類、權…

    Linux干貨 2016-06-19
  • linux 常用命令

    命令1 rm 作用: 刪除指定的文件  選項 作用 -f 強制刪除 -i 刪除前提示詢問 -r  或  -R 遞歸處理,刪除指定目錄下的所有文件包括子目錄 -v 顯示指令執行過程 -d 直接把刪除目錄的硬連接數據刪成零,刪除該目錄 命令2 終端(tty): 終端類型 開啟方式 物理終端 console 控制臺console 虛擬…

    Linux干貨 2017-07-13
  • 第三天作業

    1、列出當前系統上所有已經登錄的用戶的用戶名。注意:同一個用戶登錄多次,則只顯示一次即可 [root@localhost ~]# who | cut -d ' ' -f1 | sort | uniq [root@localhost ~]# who (unknown) :0         &nbsp…

    Linux干貨 2016-08-30
  • vim編輯器

      Linux文本編輯器vim     Linux下的編輯器最常用的就是vim或者vi文本編輯。vi和vim編輯器的區別是vim是vi的改進版本,在vi編輯器的基礎上上擴展了很多實用的功能。 vim的使用 用vim打開文件:     vim [options] [file ..]…

    Linux干貨 2016-12-04
  • Linux下軟件包安裝(rpm,yum)

    Linux下軟件包安裝(rpm,yum,源代碼) 1)    Rpm包管理安裝 2)    Yum包程序管理器 3)    本地Yum倉庫建制 ======================================= 1) …

    Linux干貨 2016-06-22
  • mount中-o的選項利用

        Mount下—-o 選項的各項用處  mount-o 選項 sync,async 同步模式,異步模式(defaults)         此選項的默認模式為異步模式。在同步模式下,內存的任何修改都會實時的同步到硬盤當中,這種模式的…

    2017-08-19

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-12-09 20:39

    總結的很好,有例子有說明,加油

欧美性久久久久