1. 程式人生 > 實用技巧 >linux磁碟管理與檔案系統

linux磁碟管理與檔案系統

一.磁碟物理組成

圓形的碟片:主要記錄資料

機械臂與機械臂上的磁頭:可讀寫碟片上的磁頭

主軸馬達:轉動碟片,讓磁頭在碟片上讀取資料

扇區(sector):將圓形的碟片劃分成若干個扇形區域,這些區域就是扇區,扇區為最小的物理儲存單位,每個扇區為512bytes

柱面(cylinder):具有相同編號的磁軌形成一個圓柱,稱之為磁碟的柱面,柱面是分割槽(partition)的最小單位。

第一個扇區最重要,裡面有硬碟主引導記錄(MBR)及分割槽表(partitiontable),其中MBR佔有446bytes,而partitiontable則佔有46bytes(其中每16bytes標識一個分割槽,最多4個分割槽),最後兩個

bytes標識磁碟是否可引導。

二.磁碟分割槽

1.什麼是分割槽?

分割槽是將一個硬碟驅動器分成若干個邏輯驅動器,分割槽是把硬碟連續的區塊當做一個獨立的磁硬使用。分割槽表是一個硬碟分割槽的索引,分割槽的資訊都會寫進分割槽表。

2.為什麼要有多個分割槽?

1)防止資料丟失:如果系統只有一個分割槽,那麼這個分割槽損壞,使用者將會丟失所的有資料。

2)增加磁碟空間使用效率:可以用不同的區塊大小來格式化分割槽,如果有很多1K的檔案,而硬碟分割槽區塊大小為4K,那麼每儲存一個檔案將會浪費3K空間。這時我們需要取這些檔案大小的平均值進行區塊大小的劃分。

3)資料激增到極限不會引起系統掛起:將使用者資料和系統資料分開,可以避免使用者資料填滿整個硬碟,引起的系掛起。

3.分割槽的一些特性

1)主分割槽與擴充套件分割槽最多可以有4個(磁碟限制)

2)擴充套件分割槽最多隻能有一個(OS限制)

3)邏輯分割槽是有擴充套件分割槽持續分出來的分割槽

4)能夠被格式化後作為資料訪問的分割槽為主要分割槽與邏輯分割槽,擴充套件分割槽無法格式化。

三.Linux目錄與檔案系統

1.linux下的目錄

/root,根目錄:與開機系統有關

/bin/sbin作業系統自身執行需要用到的程式

/usr/bin/usr/sbin:二進位制程式(命令),基本的系統工具

/usr/local/bin/usr/local/sbin:第三方程式

/lib函式庫(開機時會用到的函式庫)

/usr/lib包含各應用軟體的函式庫,目標檔案

/usr/local/lib

/grup多重作業系統啟動管理器

/dev裝置檔案

Linux裝置型別

字元裝置:c線性裝置

塊裝置:b隨機裝置

/etc配置檔案

/home使用者家目錄

/boot用於引導作業系統的檔案

/media掛載點目錄,通常用於掛載便攜性裝置

/mnt掛載點目錄,掛載額外的檔案系統

/misc備用目錄

/opt可選目錄通常第三方軟體偶爾安裝於此路徑下

/proc偽檔案系統,記憶體中的核心的對映

/selinux安全加強的linux

/srv屬於服務的中間資料的儲存位置

/sys偽檔案系統,通常用於訪問硬體裝置屬性資訊

/tmp臨時檔案目錄

/usr儲存只讀檔案

/var經常會發生變化的檔案,例如:日誌

2.檔案系統

檔案系統:簡單的說檔案系統就是管理儲存空間上的檔案能夠實現按名存取的一個附加在硬碟儲存空間之上的,負責管理儲存在此空間中檔案的一個專用軟體。通常由核心提供。

Linux支援的檔案系統:

Linux支援幾乎所有的檔案系統,常見的有如下檔案系統:

ext2ext3ext4xfsreiserfsnfsiso9600jfsbrtfsvfatGFSGFS2OCFS2

四.Linux磁碟管理

系統環境:RHEL6

1.磁碟在檔案系統中的標識:

IDEATA/dev/hd[a-z]

SCSISASSATAUSB/dev/sd[a-z]

2.磁碟分割槽

我們已經知道一塊磁碟最多有四個分割槽,所以當需要更多的分割槽時就需要擴充套件分割槽,而且擴充套件分割槽最多隻能有一個。可以對擴充套件分割槽進行持續的切割分割槽即為邏輯分割槽。

命令:fdisk

語法:fdisk[-l]裝置名稱

例項:

fdisk–l/dev/sda:輸出/dev/sda裝置所有分割槽內容

163801465.jpg

fdisk–l:輸出所有裝置分割槽內容

163913800.jpg

fdisk/dev/sda:檢視磁碟分割槽及磁碟分割槽操作

165450909.jpg

options

d:刪除一個分割槽

n:新建一個分割槽

p:顯示當前分割槽資訊

w:儲存退出

q:不儲存退出

t:更改分割槽的系統ID

3.讓核心重新讀取硬碟分割槽表

Partx-a裝置檔案裝置

例項:part-a/dev/sda3/dev/sda

165750828.jpg

4.格式化分割槽,建立檔案系統

1)格式化

命令:mkfsmke2fs

語法:mkfs-t檔案系統型別裝置檔案

Mke2fs-t{ext2|ext3|ext4}裝置檔案

例項:mkfs-text4/devsda3:格式化新建分割槽/dev/sda3檔案型別為ext4

165529261.jpg

Mke2fs-text4/dev/sda3:同上

2)命令mke2、fstune2fs

mke2fs

options

-L:設定卷標

-m#:顯示預留給管理員的塊所佔比

-r:塊個數

-E:檔案系統擴充套件屬性

tune2fs

options

-L:重新設定卷標=e2lable分割槽卷標

-m#:調整預留給管理員的塊所佔比

-r#:調整預留塊塊個數

-E:調整檔案系統擴充套件屬性

-o:設定掛在預設選項

-O:設定檔案系統預設特性

5.磁碟掛載與解除安裝

命令:mount(掛載)umount(解除安裝)

語法:mount[-t檔案系統型別]裝置檔案掛在點

mount檢視當前系統所有裝置

umount裝置檔案

umount掛載點

例項:mount/dev/sda3/mnt/mydata

165557607.jpg

其他掛載方式:

mount[-t檔案系統型別]LABLE=”卷標掛載點

mount[-t檔案系統型別]UUID=”uuid”掛載點

mount-o:指定掛載選項

ro:只讀掛載

rw:讀寫掛載

noatime:關閉更新訪問時間

auto:是否能夠有“mount-a“掛載

sync:同步寫入

async:非同步寫入

dev:允許使用裝置檔案

noexec:不允許上面的程式被執行

remount:重新掛載

loop:掛載本地迴圈裝置

6.要使掛載結果在系統下次啟動時實現開機掛載需要寫入配置檔案/etc/fstab


vim/etc/fstab


轉載於:https://blog.51cto.com/dreamwolf/1253880