磁盤管理與文件系統

  關于磁盤與文件系統大致思路:要想對磁盤進行充分利用,必須要對磁盤進行分區,第二步就是要對分區進行高級格式化,也就是在分區上創建文件系統,在此過程中可以對磁盤的各種屬性進行自定義。打個比方來說,創建磁盤分區好比剛買來一個毛坯房,還未裝修,還不適宜人居住,那么創建文件系統就好比在光禿禿的毛坯房上進行了裝修,這樣才更適于人居住使用。


要想搞懂磁盤,首先就要從根上了解硬盤的組成。

    head 磁頭 一個盤片正反兩面對應兩個磁頭,有多個盤片

    track 磁道 磁頭旋轉一圈劃分的圓環

    sector 扇區 512bytes

    cylinder 柱面 所有盤片的相同磁道


設備:ll /dev/ 可見 

    blob.png

塊設備(block):支持隨機訪問,數據交換單位是塊

字符設備(character):線性訪問,數據交換單位為字符

設備文件:FHS

/dev

設備文件:關聯至設備的驅動程序;設備的訪問入口

設備號:

主設備號

major:主設備號,區分設備類型,用于標明設備所需要的驅動程序

minor:次設備號,區分同種類型下的不同的設備,是特定設備的訪問入口

mknod:創建塊和字符設備

mknod /dev/testdev c 110 1

-m MODE:創建后的設備文件的訪問權限,利用系統調用

設備文件名:ICANN

磁盤

SCSI SATA USB SAS:/dev/sd[a-z]

并口:同一線纜可以接多塊設備

SCSI:

寬帶:16-1

窄帶:

主分區和擴展分區表示:1-4

邏輯分區:5+

查看分區:cat /proc/partitions

通知內核強制重讀磁盤分區表:

cnetos 6:partx -a [device]

元數據不包括文件名,文件名保存在目錄

元數據:inode 

文件使用磁盤有不連續的塊,碎片

文件元數據:inode 數據塊指針

********************

inode

128bytes

block=2^n sector 

符號鏈接文件:存儲數據指針的空間當中存儲的是真實文件的訪問路徑

塊和inode比例

需要預留一部分塊空間給管理員

如何判斷inode和block是否使用,0表示空,1表示使用

bitmap index:位圖索引

找一空間,每一位對應block

GDT:快組描述符

元數據區域:

1.inode

2.inode位圖

3.block位圖

GDT:

stat查看元數據

文件名存放在目錄上,與inode一一對應

低級格式化

高級格式化

******************

VFS:Virtual File System

linux文件系統:ext2-4,xfs(centos 7 defaults),relserfs,btrfs(測試階段)

光盤:ISO9660

網絡文件系統:nfs,cifs

集群文件系統,gfs2,osfs2

內核級分布式文件系統:ceph

windows的文件系統:vfat,ntfs

偽文件系統:proc,sysfs,tmpfs,hugepagefs

Unix的文件系統:UFS,FFS,JFS

交換文件系統:swap

用戶空間得分布式文件系統

************************

虛擬內存

32位 4G內存可用

交換分區

創建文件系統工具

mkfs.ext4

檢測及修復文件系統的工具

fsck

查看其屬性的工具

dumpe2fs,tune2fs

調整文件系統特性

tune2fs

***

journal

降低磁盤碎片

日志區,在處理數據時先放在日志區,

如果遇到特殊情況要修復時,優先修復日志區中的內容

鏈接:指向同一文件的不同路徑

硬鏈接:指向同一inode的多個路徑

1.目錄不支持硬鏈接

2,。不能跨文件系統,各分區inode各自管理,從0開始

3。引用次數增加

4.大小相同

符號鏈接:指向一個文件的指針指向另一文件路徑

1.符號鏈接與文件時兩個單獨文件,有各自inode

2.可跨分區

3.文件大小為指向的路徑的字符串的字節數

ls -i example.txt

ls -i命令列出整個目錄文件,即文件名和inode號碼:

  ls -i /etc

blob.png

理解了上面這些知識,就能理解目錄的權限。目錄文件的讀權限(r)和寫權限(w),都是針對目錄文件本身。由于目錄文件內只有文件名和inode號碼,所以如果只有讀權限,只能獲取文件名,無法獲取其他信息,因為其他信息都儲存在inode節點中,而讀取inode節點內的信息需要目錄文件的執行權限(x)。

先創建分區,再創建文件系統,

內核中有相關的文件系統驅動程序,可使用lsmod查看

lsmod :查看內核已經加載的驅動程序

blob.png

文件系統管理工具:由用戶控件的應用程序提供

1.

mkfs -t ext2=mkfs.ext2

blkid /dev/sda6

2.

mke2fs ext專用工具

-t ext4 指定要創建的文件系統類型

-b {1024|2048|4096(MAX默認)}指定文件系統的block大小

-L 卷標

-j 創建有日志功能的文件系統的ext3

mke2fs -j=mke2fs -t ext3=mkfs.ext3

-i #:每多少字節一個inode,bytes-per-inode,

指明inode與字節的比率,即多少字節創建一個inode,

默認為

-N # 直接指明要給此文件系統創建的inode的數量

-O [^]FEATURE :以指定的特性創建目標文件系統,啟用某種特性

-m #指定預留空間百分比:5 –>5%s

3.改變卷標

e2label 卷標的查看和設定

e2label /dev/sda8 sb

blob.png

4.tune2fs 查看修改ext系列文件的某些屬性

不可修改:塊大小,

修改文件系統屬性

-j ext2–>ext3

-L label:修改卷標

-m #:調整預留空間百分比

-O FEATURE 啟用或者關閉某種特性

-o [^]mount_options:開啟或者關閉某種默認掛載選項

acl

^acl

5.dumpe2fs:顯示所有塊組信息,類似tune2fs

-d 只顯示superblock

6.

fsck命令:用于實現文件系統檢測的工具

因進程意外終止或者系統崩潰等原因導致進程非正常終止,可能造成文件損壞

此時要進行離線修復

e2fsck device

-y 對所有問題回答yes

-f 強制檢測

fsck.ext4

-a:無需交互修復所有錯誤

-r 交互式修復

通用命令

7.

blkid

-L label 根據卷名定位分區

-U UUID  

8。

swap文件系統

linux'上的交換分區必須使用獨立的文件系統

且文件系統的System ID必須為82

創建swap設備:

mkswap

-L :指明卷標

-f : 強制

9.

windows無法識別Linux的文件系統,要交叉使用時,

應該使用同時支持的文件系統

10.

根文件系統之外的其他文件愛系統想要能夠被訪問,都必須通過關聯至根文件系統上的某個目錄來實現,此關聯操作即為掛載:此目錄為掛載點

掛載點:用于作為另一個文件系統的訪問入口

1.事先存在

2.應該使用未被或不會被其他進程使用到的目錄

3.掛載點下原有的文件將不會被隱藏

11.

mount

-r 只讀filesystem

-w 讀寫掛載

-n 默認情況下,設備掛載或卸載的操作會同步更新至/etc/fstab中

-n禁止更新同步

-t vfs :指明要掛載的設備上的文件系統的類型,多數情況下可省略,

此時mount會通過blkid來判斷要掛載的設備的文件系統類型

-L label:掛載時以卷標的方式指明設備

mount -L lable dir

-U UUID 以UUID的方式指明設備

-o options:掛載選項

sync/async 同步/異步操作:

異步:先在內存寫完,再寫入磁盤

atime/noatime:文件或目錄被訪問時是否更新其訪問時間戳

diratime/nodiratime:目錄訪問時,是否保存訪問時間戳

remount:重新掛載;

acl;支持使用facl功能訪問控制列表

1.mount -o acl device dir

2.tune2fs -o acl device

ro 只讀

rw 讀寫

/dev/nodev:此設備上是否允許創建設備文件

exec/noexec 是否允許運行此設備上的程序文件

auto/noauto:自動掛載

/user/nouser:是否用戶掛載此文件系統

suid/nosuid:是否允許程序上的suid和sgid特殊權限生效

default:

12。 實現將目錄綁定至另一個目錄上,作為臨時訪問入口

    mount –bind 源目錄 目標目錄

13.查看當前系統所有已掛載的設備

1.mount

 blob.png

2.cat /etc/mtab 

 blob.png

3.cat /proc/mounts

掛載光盤

mount -r /dev/cdrom  mount_point

掛載U盤:需事先識別U盤的設備文件

mount -r

14.

umount

注意:正在被進程訪問的掛載點無法卸載

查看被哪些進程所占用

lsof mount——point

fuser -v mount_point

-km /mnt:踢出正在使用/mnt的用戶

終止所有某掛載點的進程

fuser -km

15

掛載本地回環設備

mount -o loop /path/to/some_loop mount_point

16

交換分區

創建交換分區:mkswap

啟動禁用

swapon 

-a:定義在/etc/fstab文件中的所有swap設備

swapoff

/etc/fstab

設備除根文件系統以外的其它文件系統能夠開機時的掛載

每行定義一個要掛載的文件系統及相關屬性

6個字段:

1.要掛載的設備

label

UUID偽文件系統

2.掛載點

swap 類型的設備的掛載點為swap

3.文件系統類型

4.掛載選項

defaults:默認

如果使用多個掛載選項,彼此間以逗號分隔

defaults,acl,noatime,noexec

5.轉儲頻率

0:從不備份

1.每天備份

2.隔天備份

6.自檢持續

0:不自檢

1.首先自檢,通常只能是根文件系統可用

2.次級自檢

mount -a:可自動掛載定義在/etc/fstab中的所有支持自動掛載的設備

16

df:disk free

-h 人類可讀

-l 本地可讀

-i inode的使用狀態

blob.png

du:顯示文件大小

-s :sumary

-h human-readable

blob.png


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

(0)
000000
上一篇 2016-08-29 16:53
下一篇 2016-08-30 10:10

相關推薦

  • tomcat-session server實現

    要求:tomcat cluster將會話保存至memcached中 1、利用nginx反代 2、兩臺tomcat服務器 3、兩臺memcache服務器 拓撲:      架構前配置:      1、反代服務器:nginx     &nbsp…

    2017-07-03
  • 基于heartbeat v1+ldirectord實現LVS集群高可用

    前言 高可用集群,High Availability Cluster,簡稱HA Cluster,是指以減少服務中斷時間為目的的服務器集群技術。通過上文可以看出,LVS集群本身并不能實現高可用,比如Director Server不能檢測Real Server的健康度,一旦其中一臺或全部Real Server宕機,Director Server還會繼續轉發請求,…

    Linux干貨 2015-06-08
  • N22第八周作業

    1. 請描述網橋、集線器、二層交換機、三層交換機、路由器的功能、使用場景與區別。 網橋從一個局域網接收MAC幀,拆封、校對、校驗之后,按另一個局域網的格式重新組裝,發往它的物理層。由于網橋是鏈路層設備,因此不處理數據鏈路層以上層次協議所加的報頭。   集線器的主要功能是對接收到的信號進行再生整形放大,以擴大網絡的傳輸距離,同時把…

    Linux干貨 2016-12-26
  • 端口轉發實例

    什么是端口轉發?      端口轉發(Port forwarding),有時被叫做隧道,是安全殼(SSH) 為網絡安全通信使用的一種方法。端口轉發是轉發一個網絡端口從一個網絡節點到另一個網絡節點的行為,其使一個外部用戶從外部經過一個被激活的NAT路由器到達一個在私有內部IP地址(局域網內部)上的一個端口。 為什么需要端口轉發? …

    2017-04-13
  • DNS和BIND配置(第一部分)

    一、知識整理 1、最初只有七個一級域名:Top Level Domain:tld:com、edu、mil、gov、net、org、int;     一級域名分三類:組織域、國家域、反向域。最多127級域名;全球有13個根節點服務器。 2、一次完整的查詢請求經過的流程:client—hosts文件&#8212…

    Linux干貨 2016-10-17
  • Bash1

    做語法測試,沒有消息就是最好的消息 加權限 單個語句的錯誤并不妨礙之后的語句,但是邏輯錯誤會導致后續語句執行不了 bash:     -n:語法測試     -x:模擬單步執行 變量類別:     本地變量   &nbs…

    Linux干貨 2016-09-17

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-08-30 10:09

    文章對磁盤管理各方面知識整理的很全面,層次結構也很清晰,但是對于硬盤基礎我們能夠給出一些圖片來敘述各個硬盤的各個組件會更好,同時,也希望作者能通過差資料,將筆記中的關鍵字組織成通順的話。

欧美性久久久久