1. 程式人生 > 實用技巧 >磁碟儲存和檔案系統

磁碟儲存和檔案系統

1.機械磁碟和固態硬碟

機械硬碟:傳統普通硬碟,主要由:碟片,磁頭,碟片轉軸及控制電機等,每張碟片之間是平行的,在每個碟片的儲存面上有一個磁頭,磁頭與碟片之間的距離比頭髮絲的直徑還小。磁頭可沿碟片的半徑方向運動,加上碟片每分鐘幾千轉的高速旋轉,磁頭就可以定位在碟片的指定位置上進行資料的讀寫操作。資料通過磁頭由電磁流來改變極性方式被電磁流寫到磁碟上,也可以通過相反方式讀取。

固態硬碟:用固態電子儲存晶片陣列而製成的硬碟,由控制單元和儲存單元組成。

固態硬碟SSD傳輸速率效能是HDD的2倍

相較於SSD,HDD在價格,容量佔有絕對優勢

硬碟有價,資料無價,目前SSD不能完全取代HHD

2.硬碟儲存術語

head:磁頭 磁頭數=盤面數

track:磁軌 磁軌=柱面數

sector:扇區,512bytes

cylinder:柱面 1柱面=512*63*255=7.84M

識別SSD和機械硬碟型別

lsblk -d -o name,rota
1表示機械,0表示ssd

3.MBR分割槽

MBR:1982年,使用32位表示扇區數,分割槽不超過2T

MBR分割槽中一塊硬碟最多有4個主分割槽,也可以3主分割槽+1擴充套件(N個邏輯分割槽)

MBR分割槽:主和擴充套件分割槽對應1-4,/dev/sda3,邏輯分割槽從5開始,/dev/sda5

分割槽表含4個分割槽項,偏移地址01BEH--01FDH,每個分割槽表項長16個位元組,共64位元組為分割槽項1,分割槽項2,分割槽項3,分割槽項4

結束標誌字,偏移地址01FE--01FF的2個位元組值為結束標誌55aa

備份MBR的分割槽表,並破壞後恢復

[13:43:13 root@centos7 ~]$dd if=/dev/sda of=ybw bs=1 count=64 skip=446
[13:47:11 root@centos7 ~]$scp ybw 10.0.0.8:
備份分割槽表 [
13:49:51 root@centos7 ~]$dd if=/dev/zero of=/dev/sda bs=1 count=64 seek=446
破壞分割槽表
[14:00:39 root@centos7 ~]$reboot 用光碟進入救援模式 ifconfig ens33 10.0
.0.7/24 配置ip地址 scp 10.0.0.8:/root/ybw . 拷貝到本機 dd if=ybw of=/dev/sda bs=1 count=64 seek=446 reboot 恢復分割槽表

4.GPT分割槽

GPT支援128個分割槽

使用128為uuid表示磁碟和分割槽GPT分割槽表自動備份在頭和尾兩份,並有CRC校驗位

GPT分割槽結構分為4個區域

GPT頭

分割槽表

GPT分割槽

備份區域

5.管理分割槽

lsblk:列出塊裝置

建立分割槽命令

fdisk [device...]:管理MBR分割槽

fdisk -l 檢視分割槽

子命令:

l 檢視可更改的型別

p 分割槽列表

t 更改分割槽型別

n建立新分割槽

d刪除分割槽

v校驗分割槽

w儲存並退出

q 不儲存並退出

u 轉換單位

gdisk[device...]:管理GPT分割槽

cat /proc/partations:檢視核心是否已經識別新的分割槽

partprobe:重新設定記憶體中的核心分割槽表版本,適合除了Centos6以外的其他版本5,7,8

6.檔案系統

linux常用檔案系統

ext4:是ext檔案系統的最新版。提供了很多新的特性,包括納秒級時間戳,建立和使用舉行檔案16TB,最大1EB的檔案系統,以及速度的tisheng

xfs:支援最大8EB的檔案系統

cat /proc/filesystems:檢視當前支援的檔案系統

7.建立檔案系統

mkfs.ext4 /dev/sda

xfs

btrfs

常用選項

-b 指定塊block大小

-L ‘LABEL’設定卷標

-N 指定分割槽中建立多少個inode

-m 預設5%,為管理人員預留空間佔中空間的百分比

8.檢視和管理分割槽資訊

blkid 可以檢視塊裝置屬性資訊

findfs查詢分割槽

[15:15:57 root@centos7 ~]$findfs UUID="fa11e439-93c9-4f96-89e9-9903bd003f55"
/dev/mapper/centos-home

[15:21:53 root@aiyoubucuo ~]$findfs `sed -rn '/boot/s#^([^ ]+).*#\1#p' /etc/fstab`
/dev/nvme0n1p1

tun2fs:重新設定ext系列檔案系統可調整引數的值

-l 檢視指定檔案系統超級塊資訊

-L ‘LABEL’ 修改卷標

-m 修改管理人員預留空間佔中空間的百分比

-U uuid 修改uuid號