FH:文件系統(tǒng)層次標(biāo)準(zhǔn)
一切從 “/” 開(kāi)始
- Linux系統(tǒng)中的一切文件都是從"根"目錄(/)開(kāi)始的狈邑,并按照文件系統(tǒng)層次標(biāo)準(zhǔn)采用倒樹(shù)狀結(jié)構(gòu)來(lái)存放文件婚惫。
- Linux系統(tǒng)中的文件和目錄名稱(chēng)是嚴(yán)格區(qū)分大小寫(xiě)的
- /boot 存放開(kāi)機(jī)所需文件——內(nèi)核封断、開(kāi)機(jī)菜單以及所需配置文件
- /dev 以文件形式存放任何設(shè)備與接口
- /etc 配置文件
- /home 用戶主目錄
- /bin 存放單用戶模式下還可以操作的命令
- /lib 用到的函數(shù)庫(kù),以及/bin與/sbin下面的命令要調(diào)用的函數(shù)
- /sbin 開(kāi)機(jī)過(guò)程中需要的命令
- /media 用于掛載設(shè)備文件的目錄
- /opt 放置第三方軟件
- /root 系統(tǒng)管理員的家目錄
- /srv 網(wǎng)絡(luò)服務(wù)的數(shù)據(jù)文件目錄
- /tmp 共享臨時(shí)目錄
- /proc 虛擬文件系統(tǒng)
- /usr/local 用戶自行安裝的軟件
- /usr/sbin Linux系統(tǒng)開(kāi)機(jī)時(shí)不會(huì)使用到的軟件/命令腳本
- /var 存放經(jīng)常變化的文件
- /lost+found 文件系統(tǒng)發(fā)生錯(cuò)誤替蔬,存放一些丟失的文件片段
物理設(shè)備的命名規(guī)則
- IDE設(shè)備 /dev/hd[a-d]
- SCSI/SATA /dev/sd[a-z]
- virtio /dev/vd[a-z]
- 軟驅(qū) /dev/fd[0-1]
- 打印機(jī) /dev/lp[0-15]
- 光驅(qū) /dev/cdrom
- 鼠標(biāo)/dev/mouse
- 磁帶機(jī) /dev/st0
硬盤(pán)的編號(hào)遵循:主分區(qū)或擴(kuò)展分區(qū)的編號(hào)從1開(kāi)始肴甸,到4結(jié)束
邏輯分區(qū)編號(hào)從5開(kāi)始
設(shè)備文件名稱(chēng)
/dev/目錄中保存的應(yīng)當(dāng)是硬件設(shè)備文件
sd表示的是存儲(chǔ)設(shè)備
a表示系統(tǒng)中同類(lèi)接口中第一個(gè)被識(shí)別到的設(shè)備
- 硬盤(pán)設(shè)備是由大量的扇區(qū)組成的,每個(gè)扇區(qū)容量為512字節(jié)咨油。
- 每個(gè)扇區(qū)容量為512字節(jié):主引導(dǎo)記錄446字節(jié)您炉,分區(qū)表64字節(jié),結(jié)束符占用2字節(jié)
-
分區(qū)表中每記錄一個(gè)分區(qū)信息就要16字節(jié)臼勉,分區(qū)表一共64字節(jié)邻吭,所以一塊硬盤(pán)只能有4個(gè)分區(qū)
硬盤(pán)分區(qū)
- 將第一個(gè)扇區(qū)的分區(qū)表中16個(gè)字節(jié)的空間指向另外一個(gè)分區(qū),這就是擴(kuò)展分區(qū)宴霸。也就是說(shuō)擴(kuò)展分區(qū)并不是一個(gè)真正的分區(qū)囱晴,而更像是一個(gè)占用16個(gè)字節(jié)分區(qū)表空間的指針——一個(gè)指向另外一個(gè)分區(qū)的指針,擴(kuò)展分區(qū)自身并不能存儲(chǔ)數(shù)據(jù)瓢谢,用戶需要在其指向的對(duì)應(yīng)分區(qū)上進(jìn)行操作
文件系統(tǒng)與數(shù)據(jù)資料
- Ext4 Ext4作為RHEL6系統(tǒng)中默認(rèn)的文件管理系統(tǒng)畸写。這種數(shù)據(jù)格式能夠在發(fā)生意外后快速恢復(fù)被破壞的文件,強(qiáng)大的日志功能只需花費(fèi)極低的計(jì)算和存儲(chǔ)性能
- XFS 是一種高性能的日志文件系統(tǒng)氓扛,而且RHEL7/8中默認(rèn)的文件管理系統(tǒng)枯芬。在宕機(jī)后可以快速恢復(fù)可能破壞的文件,強(qiáng)大的日志功能只需花費(fèi)極低的計(jì)算和存儲(chǔ)性能
掛載硬件設(shè)備
當(dāng)用戶需要使用硬盤(pán)設(shè)備或分區(qū)中的數(shù)據(jù)時(shí)采郎,需要先將其與一個(gè)已存在的目錄文件進(jìn)行關(guān)聯(lián)千所,這個(gè)關(guān)聯(lián)動(dòng)作就是掛載
mount
mount命令用于掛載文件系統(tǒng),
格式為mount 文件系統(tǒng) 掛載目錄
- -a 掛載所有在/etc/fstab中定義的文件系統(tǒng)
- -t 指定文件系統(tǒng)的類(lèi)型
blkid
blkid用于顯示設(shè)備的屬性信息 “block id”
blkid[設(shè)備名]
[root@linuxprobe ~]# blkid
/dev/nvme0n1: PTUUID="f3bd0e1e" PTTYPE="dos"
/dev/nvme0n1p1: UUID="8682376e-1f17-40b5-a88e-88be7a68c995" TYPE="xfs" PARTUUID="f3bd0e1e-01"
/dev/nvme0n1p2: UUID="d70MTd-3R9h-JoWp-dufg-zpD6-ikrx-c69VdS" TYPE="LVM2_member" PARTUUID="f3bd0e1e-02"
/dev/sr0: UUID="2019-04-04-08-40-23-00" LABEL="RHEL-8-0-0-BaseOS-x86_64" TYPE="iso9660" PTUUID="0da1aba4" PTTYPE="dos"
/dev/mapper/rhel-root: UUID="27921068-979 f-4568-9028-44e902fd84b2" TYPE="xfs"
/dev/mapper/rhel-swap: UUID="a57ea70c-1edb-4808-8586-7954ee33fcbf" TYPE="swap"
df
df用于查看已掛載的磁盤(pán)空間使用情況 df -h
umount
掛載文件系統(tǒng)是為了使用硬件資源蒜埋,而卸載文件系統(tǒng)則意味著不再使用硬件的設(shè)備資源
unmount [設(shè)備文件/掛載目錄](méi)
lsblk
查看已掛載的磁盤(pán)空間使用情況淫痰,以樹(shù)狀圖的形式列舉硬盤(pán)和分區(qū)的使用情況
添加硬盤(pán)設(shè)備
fdisk
fsdisk用于新建、修改及刪除磁盤(pán)的分區(qū)表信息
fdisk 磁盤(pán)名稱(chēng)
- m 查看全部可用參數(shù)
- n 添加新的分區(qū)
- d 刪除某個(gè)分區(qū)信息
- l 列出所有可用的分區(qū)類(lèi)型
- t 改變某個(gè)分區(qū)的類(lèi)型
- p 查看分區(qū)表信息
- w 保存并退出
- q 不保存直接退出
mkfs
Linux系統(tǒng)中用格式化操作的命令是mkfs
如果要將分區(qū)為XFS的文件系統(tǒng)進(jìn)行格式化整份,則命令應(yīng)為mkfs.xfs /dev/sdb1
du
du命令用查看分區(qū)或目錄所占用的磁盤(pán)容量大小待错,語(yǔ)法
du -sh 目錄名稱(chēng)
du -sh /* 來(lái)查看在Linux系統(tǒng)根目錄下所有一級(jí)目錄分別占用的空間大小
添加交換分區(qū)
交換分區(qū)(swap)是一種通過(guò)在硬盤(pán)中預(yù)先劃分一定的空間籽孙,然后把內(nèi)存中暫時(shí)不常用的數(shù)據(jù)臨時(shí)存放到硬盤(pán)中,以便騰出物理內(nèi)存空間讓更活躍的程序服務(wù)來(lái)使用火俄。主要是為了解決真實(shí)物理內(nèi)存不足的問(wèn)題犯建,也就是讓硬盤(pán)幫內(nèi)存分擔(dān)壓力。但是由于交換分區(qū)是通過(guò)硬盤(pán)設(shè)備讀寫(xiě)數(shù)據(jù)瓜客,速度肯定比物理內(nèi)存慢适瓦。只有當(dāng)真實(shí)的物理內(nèi)存耗盡后才會(huì)調(diào)用交換分區(qū)的資源
- 在生產(chǎn)環(huán)境中,交換分區(qū)的大小一般為真實(shí)物理內(nèi)存的1.5~2倍忆家。
mkswap
mkswap用于對(duì)新設(shè)備進(jìn)行交換分區(qū)格式化mkswap 設(shè)備名稱(chēng)
swapon
swapon用于激活新的交換分區(qū)設(shè)備犹菇,使用swapon把準(zhǔn)備好的SWAP硬盤(pán)設(shè)備正式掛載到系統(tǒng)中⊙壳洌可以使用free -m
查看交換分區(qū)的大小變化
磁盤(pán)容量配額
由于硬件資源是固定且有限的揭芍,如果某些用戶不斷地在Linux系統(tǒng)上創(chuàng)建文件,硬盤(pán)空間總有一天會(huì)被占滿卸例。在這種情況下称杨,root管理員就需要使用磁盤(pán)容量配額服務(wù)來(lái)限制某位用戶或某個(gè)用戶組針對(duì)特定文件夾可以使用的最大硬盤(pán)空間或最大文件個(gè)數(shù),一旦達(dá)到這個(gè)最大值就不再允許繼續(xù)使用筷转」迷可以使用quota技術(shù)進(jìn)行磁盤(pán)容量配額管理,從而限制用戶的硬盤(pán)可用容量或所能創(chuàng)建的最大文件個(gè)數(shù)呜舒。quota技術(shù)還有軟限制和硬限制
- 軟限制:當(dāng)達(dá)到軟限制時(shí)會(huì)提示用戶锭汛,但仍允許繼續(xù)使用
- 硬限制:當(dāng)達(dá)到硬限制時(shí)會(huì)提示用戶,并且強(qiáng)制終止用戶操作
xfs_quota
xfs_quota用于管理設(shè)備的磁盤(pán)容量配額袭蝗,xfs_quota[參數(shù)]配額 文件系統(tǒng)
edquota
edquota用于管理系統(tǒng)磁盤(pán)配額
VDO
VDO是一種通過(guò)壓縮或刪除存儲(chǔ)設(shè)備上的數(shù)據(jù)來(lái)優(yōu)化存儲(chǔ)空間的技術(shù)唤殴。VDO技術(shù)的關(guān)鍵就是對(duì)硬盤(pán)內(nèi)原有的數(shù)據(jù)進(jìn)行刪重操作,在第一次正常上傳文件時(shí)速度特別慢到腥,在第二次上傳相同的文件時(shí)僅作為一個(gè)數(shù)據(jù)指針朵逝,幾乎可以達(dá)到秒傳的效果
紅帽公司在VDO介紹中,在部署虛擬機(jī)或容器時(shí)乡范,建議采用邏輯存儲(chǔ)與物理存儲(chǔ)為10:1的比例進(jìn)行配置配名。1TB物理存儲(chǔ)對(duì)應(yīng)10TB邏輯存儲(chǔ)。部署對(duì)象存儲(chǔ)時(shí)采用邏輯存儲(chǔ)與物理存儲(chǔ)為3:1晋辆,即使用1TB物理存儲(chǔ)對(duì)應(yīng)3TB邏輯存儲(chǔ)
記錄挖坑渠脉,將來(lái)填坑
軟硬方式鏈接
Linux系統(tǒng)中的快捷方式,快捷方式就是指向原始文件的一個(gè)鏈接文件瓶佳,可以讓用戶從不同的位置來(lái)訪問(wèn)原始的文件连舍。原文件一旦被刪除或剪切到其他地方,會(huì)導(dǎo)致鏈接文件失效
Linux系統(tǒng)中存在軟鏈接和硬鏈接兩種不同的類(lèi)型
-
軟鏈接:soft link 也叫符號(hào)鏈接(symbolic link)涩哟,僅僅包含所鏈接文件的名稱(chēng)和路徑索赏。可以針對(duì)文件贴彼、目錄設(shè)置軟鏈接潜腻,跨文件系統(tǒng)進(jìn)行鏈接也可以,類(lèi)似于windows系統(tǒng)的快捷方式
軟鏈接 -
硬鏈接:hard link 可理解為指向原始文件block的指針器仗,系統(tǒng)會(huì)創(chuàng)建出一個(gè)與原來(lái)一模一樣的inode信息塊融涣。所以硬鏈接文件與原始文件其實(shí)是一模一樣的。每添加一個(gè)硬鏈接精钮,該文件的inode個(gè)數(shù)就會(huì)增加1威鹿;而且當(dāng)文件的inode個(gè)數(shù)為0時(shí),才算徹底將它刪除轨香。由于硬鏈接實(shí)際上是指向原文件block的指針忽你。因此即使原始文件被刪除,依然可以通過(guò)硬鏈接文件來(lái)訪問(wèn)臂容。
不能跨分區(qū)對(duì)目錄文件進(jìn)行硬鏈接
硬鏈接
ln
ln用于創(chuàng)建文件的軟硬鏈接科雳,語(yǔ)法
ln [參數(shù)] 原始文件名 鏈接文件名
- -s 創(chuàng)建符號(hào)鏈接 如果不帶-s參數(shù),則默認(rèn)創(chuàng)建硬鏈接
- -f 強(qiáng)制創(chuàng)建文件或目錄的鏈接
- -i 覆蓋前詢(xún)問(wèn)
- -v 顯示創(chuàng)建鏈接的過(guò)程
案例:創(chuàng)建出一個(gè)文件脓杉,為其創(chuàng)建一個(gè)軟鏈接
[root@linuxprobe ~]# echo "welcome to linux "> old.txt
[root@linuxprobe ~]# ln -sf old.txt new.txt
[root@linuxprobe ~]# cat old.txt
welcome to linux
[root@linuxprobe ~]# cat new.txt
welcome to linux
[root@linuxprobe ~]# ls -l old.txt
-rw-r--r--. 1 root root 18 Nov 28 10:45 old.txt
創(chuàng)建硬鏈接糟秘,相當(dāng)于針對(duì)原始文件的硬盤(pán)存儲(chǔ)位置創(chuàng)建了一個(gè)指針,新創(chuàng)建的這個(gè)硬鏈接就不再依賴(lài)于原始文件的名稱(chēng)等信息球散,原始文件刪除后依然可以讀取
[root@linuxprobe ~]# ln old.txt newhard.txt
[root@linuxprobe ~]# cat old.txt
welcome to linux
[root@linuxprobe ~]# cat newhard.txt
welcome to linux
[root@linuxprobe ~]# rm -rf old.txt
[root@linuxprobe ~]# cat newhard.txt
welcome to linux