在本章當中,咱們開始對於Linux的系統篇的介紹,咱們首先了解一下磁盤的構造以及文件系統的概念,在上一篇的基礎中,主要介紹了Linux的命令的用法等其它的一些概念,知識比較瑣碎,但願將這些基礎知識多看得以鞏固,唉。。。日子很差過啊,學習原本就很難。那麼在這一章當中咱們來說述Linux磁盤及文件系統的概念。服務器
咱們操做系統組成部分大體分爲硬件和軟件,硬件設備是最底層的,這是計算機的一個運行的基礎,馮諾依曼定義了硬件部件,分別爲是CPU(由運算器和控制器組成)而後是Memory(主存,也就是內存設備),是一個可編址的存儲單元,它的單元是一個的大小是一個字節,是一串八位二進制組成的,每個字節都有一個十六進制標識着,可是內存只是臨時性的存儲,只要一斷電,全部的數據也都會沒有,因此咱們須要一個輔存,用來永久存儲這些數據,斷電以後,數據依然存在,如今來講,若是主機沒法鏈接網絡的話就是一個孤島而已,那麼網卡設備就是另外一種重要的IO設備,對於服務器來講,網卡是極爲重要的,由於它是服務出入的一個接口。
早期的硬盤設備對於PC來說接口有不少種,早期的IDE,和如今SATA等,線纜的類型是不同的,對於數據類型的存取是由CPU來實現的,它們之間的傳輸也是經過某種協議來實現的。
咱們來總結一下硬件的組成以及硬盤接口的類型等屬性。網絡
CPU, Memory(RAM), I/O I/O:Disk, EhterCard 接口類型: IDE(ata):並口,133MB/s SCSI並口:Ultrascsi320, 320MB/s, Ultrascsi640, 640MB/s SATA:串口,6gbps; SAS:串口,6gbps; USB:串口,480MB/s
那麼關於接口的類型分爲大體兩部分,一個是並口,另外一個是串口,按理來講並口比串口要快,就像多個跑道一塊兒跑,可是它們相互之間防護機制很弱的話,就會產生干擾,ide
並口:同一線纜能夠接多塊設備 IDE:兩個,主,從; SCSI: 寬帶:16-1 窄帶:8-1 串口:同一線纜只能夠接一個設備 iops:io per second
那麼如今硬盤也分爲了兩種,一種是機械式硬盤,另外一種是固態式硬盤,這兩個實現存儲的方式是不同的,機械硬盤是一種機械設備,是經過硬盤旋轉來進行數據存取,而固態硬盤是電氣設備,是經過電子的運轉來實現的,因此後者對於數據的存取更快一些。學習
咱們主要了解機械式硬盤是如何工做的,簡單來說,就是由真空封裝的,由馬達帶動的多個鋼性的盤片,上面塗有磁性的材料,經過上面的固定軌道來實現存取數據,而數據的存儲容量取決於塗有磁性材料的密度,這對其工藝的要求是很高的,盤片上從外向內劃分了許多軌道,咱們稱之爲磁道。
在盤面上劃分了許多軌道,所存儲的數據對每一個軌道來講也是不同的,在同軸馬達上,所劃過的長度是不同的,屬於固定角速設備,對於數據的存取來講,在磁盤上面懸浮着一個磁頭,經過它來讀取磁盤上面磁性材料的數據,也能夠發送高能信號用來存儲在磁性材料當中;這個設備咱們稱之爲磁頭。
對於磁盤來講,正反兩面都有磁頭,這些磁頭都固定在一個機械臂上,因此讀取數據由兩部分組成,第一步就是挪動磁頭,定位在磁道當中,第二步就是等待那個數據轉過磁頭中去,因此在磁道上讀取數據就會有一個平均尋道時間。但因爲由內而外的周長其實不同,因此不可以以一個磁道來進行存儲,不然很難實現數據的有效管理,因而乎就把磁道劃分紅固定大小的扇區,每個扇區存儲量爲512bytes。
剛纔講過,這些磁頭都是固定在機械臂上,也就是說是能同步進退了,在某一時刻,不一樣盤面上同一個編號的磁道,叫作一個柱面。
那麼爲何進行分區,若是不分區的話,就會當成一個文件系統來進行存儲,但大致上只能支持四個分區,但爲了變成可獨立管理的文件系統,彼此間不互相干擾,因此就劃分了分區。而分區的劃分是按照柱面來進行的。越靠近外面的分區,分區較好,由於單位時間內,磁頭劃過的時間長,存儲的數據量也大,因此通常Windows默認會安裝在C盤。spa
硬盤:機械硬盤,固態硬盤; 機械硬盤: track:磁道bytes sector:扇區, 512 cylinder:柱面 分區劃分基於柱面; 平均尋道時間:5400rpm, 7200rpm, 10000rpm, 15000rpm
對於Linux的哲學思想來講,是一切皆文件,這種哲學思想來講可以對待在硬盤設備上,使得設備有兩種類別,一種是塊文件,另外一種爲字符文件。操作系統
設備類型: 塊(block):隨機訪問,數據交換單位爲"塊"; 字符(charactor):線性訪問,數據交換單位爲"字符";
而對於Linux哲學思想之一:一切皆文件來講,它們也有文件來對設備進行控制,咱們稱之爲設備文件,根據FHS(文件層級結構標準),系統將設備文件存放在/dev目錄下,而設備文件的主要做用就是關聯該設備的啓動程序,它是該設備的訪問入口,每個設備都會有一個設備號,沒有大小之分。orm
設備文件:FHS /dev 設備文件:關聯至設備的驅動程序;是設備的訪問入口; 設備號: major:主設備號,區分設備類型;用於標明設備所須要的驅動程序; minor:次設備號,區分同種設備類型下的不一樣設備;是特定的訪問入口;
若是未來須要手動建立設備文件時,可使用mknod命令。它是能夠建立塊設備以及字符設備文件的一條命令,其命令格式爲:接口
mknod [OPTION]... NAME TYPE [MAJOR MINOR]
該命令選項以下:內存
-m MODE:建立後的設備文件的訪問權限
那麼在系統上全部的設備文件名,都是由ICANN定義的,否則的話,不一樣的發行版對於設備的文件名會大相徑庭,對於系統來講,不一樣的磁盤設備都會有不一樣的設備文件。示例以下:同步
磁盤: IDE:/dev/hd[a-z] 例如:/dev/hda, /dev/hdb SCSI, SATA, USB, SAS:/dev/sd[a-z] 分區: /dev/sda# 注意:CentOS 6和7通通將硬盤設備文件標識爲/dev/sd[a-z]# 引用設備的方式: 設備文件名; 卷標; UUID;
咱們剛纔講過磁盤最多隻能分四個區,這是屬於MBR類型,如今不僅有MBR類型,還有GPT類型,在0磁道0扇區,用做於MBR扇區,MBR咱們稱之爲主引導記錄,共512個字節,分爲了三部分,可是好像不止能夠分到四個分區,這是由於咱們把其中一個分區拿出來指向另一個存儲空間,把那新的空間看成新的存儲表用來存儲,而用來引導其它分區標的分區就叫作擴展分區,所以整個的空間都可以給擴展分區,可是擴展不能直接使用,須要在該指向的空間中建立成邏輯分區,通常最後一個主分區咱們就劃分紅擴展分區,那麼咱們來總結一下:
磁盤分區:MBR, GPT MBR:0 sector Master Boot Record 分爲三部分: 446bytes:bootloader, 程序, 引導啓動操做系統的程序; 64bytes:分區表,每16bytes標識一個分區,一共只有4個分區; 4個主分區 3主1擴展: n個邏輯分區; 擴展分區:將某一個主分區指向另外一個分區表,咱們稱之爲擴展分區,而在這裏分區的空間咱們稱之爲邏輯分區; 2bytes:MBR區域的有效性標識;55AA爲有效; 主分區和擴展分區的標識:1-4; 邏輯分區:5+;
即便你的擴展分區一個都沒用,邏輯分區也得是從5+開始。
那麼管理磁盤分區的命令爲fdisk,做用爲管理磁盤分區表的,該命令的格式及用法爲:
fdisk命令: 一、查看磁盤的分區信息; fdisk -l [-u] [device]:列出指定磁盤設備上的分區狀況; 二、管理分區: fdisk device fdisk提供了一個交互式接口來管理分區,它有許多子命令,分別用於不一樣的管理功能;全部的操做均在內存中完成,沒有直接同步到磁盤;直接使用w命令保存至磁盤上; 經常使用命令: n:建立新分區; d:刪除已有分區; t:修改已有分區; l:查看全部已知ID; w:保存並退出; q:不保存並退出; m:查看幫助信息; p:顯示現有分區信息;
那麼接下來想要使用它的話,你就能夠添加一塊硬盤或者在現有的磁盤上,找出現有的空間來進行操做。