按名稱存取是文件系統存在的一個主要目的
定義: 文件系統是一個軟件,對磁盤上存在的二進制進行管理
MBR:Master Boot Record 主引導記錄
512byte:
bootloader:記載器,4 46bytes
fat:每16個字節引導一個分區,
MBR有效性標記:5A
4個主分區
3主,1擴展分區,引用其他額外的分區表
邏輯分區
硬盤:
存放位置 /dev
硬盤接口:
IDE(ATA):並口,每個控制器可接兩個硬盤,master/slave,133MB/S
/dev/hd[a-z]
/dev//hda[1-4]
邏輯分區5開始
/dev/hda[5+]
SCSI:Small Computer System Interface 小型計算機接口
320mb/s
SATA(Serial):300Mbps,600Mbps,6Gbps
SAS:6Gbps
DMA:Direct Memory Access直接內存訪問機制
USB:
/dev/sd[a-z]
[1-4]
[5+ ]
文件系統:
基本文件系統:Ext3,Ext3,Ext4,Reiserfs,xfs(支持單個巨大的文件),JFS,vfat,NTFS 交換分區:swap 集群文件系統:GFS2,OCFS2 網絡文件系統:NFS,smbfs(window是CIFS) 光盤:iso9660
raw:
沒有做任何的文件系統
實現分區工具:
fdisk sfdisk parted
d 刪除分區 n:新建一個分區 p:列出已有分區 t:調至分區ID l:列出內核支持的分區id w:保存退出 q:不保存退出 m:幫助
Centos5:partprobe
Centos6:partx kpartx
kpartx -l /dev/sda kpartx -af /dev/sda partx -a /dev/sda
-t 文件系統 :指定文件系統以後來格式化分區 mke2fs -t Ext4:mkfs -t ext4 = mkfs.ext4 = mke2fs -t ext4 Ext3(日志文件系統):mkfs -t ext3 = mkfs.ext3 = mke2fs -t ext3 = mke2fs -j
mke2fs:
配置文件:/etc/mke2fs.conf
-t:指定文件類型
-j:
-L label: 指定卷標,
-b{1024|2028|4096}:指定塊大小
-i # :#個字節給指定一個indone
-N # : 直接指定預留多少個indone
-I # : 指定Inode大小
-m # :預留給管理員的空間百分比,默認為5
-O :指定分區特性
e2label
e2label /dev/SOMEDEVICE 查看卷標, e2label /dev/SOMEDEVICE Label 直接更改卷標
blkid
格式:blkid /dev/SOMEDEVICE 查看設備的屬性,UUID和TYPE
dumpe2fs 查看超級塊和是否有碎片
-h:僅顯示超級塊中保存的信息
tune2fs:調整mke2fs的信息
-l:查看超級塊中的信息
-L: 設定卷標
-m:預留管理員的空間百分比
-j:如果原來的文件系統為ext2,-j能夠將其提升為ext3
-o:[^]mount-options[,...] 指定默認掛載選項
-O:[^]feature[,...] 調整分區特性
tune2fs -o 掛載選項 設備
tune2fs -o ^設備選項 取消
fsck:文件系統檢測
-t 文件類型 設備 -f 強行檢測 -a 自動修復錯誤 -r 交互式修復錯誤
e2fsck -t 指定時間
-y 自動回答為yes -f 強行檢測
交換分區:
虛擬內存
mkswap 格式化為虛擬內存
-L label 指定卷標
swapon 啟動虛擬內存
-a 啟動所有的虛擬分區 -p:指定優先級
swapoff 關閉虛擬內存
獲取IDE磁盤的相關信息
hdparm
-i 從操作系統讀取 -I 直接從硬盤讀取 -g 顯示硬盤的布局信息 -t 測試硬盤的性能 -T 測試硬盤的性能
*/proc/partitions 查看掛在信息
/proc/meminfo
/proc/filesystems 內核能識別的文件系統類型*
手動掛載 :按需要掛載
按需掛載 : autofs 自動文件系統 有人訪問就掛載
開機自動掛載
命令
mount[options] -t 文件類型 -o option 設備 掛載點 [options] : 命令的選項 -n:不更新/etc/mtab文件 --bind:dir1 dir2 將目錄掛載到目錄上,使得dir2也能訪問dir1的文件 -t fstype -r 只讀掛載 -w:讀寫掛載 -L lable 以卷標指定,也可以使用LABLE="lable" -U UUID:使用UUID掛載,也可以使用 UUID="uuid"
-o options:掛載時啟動分區特性
async:異步I/O
sync:同步I/O
noatime/atime 是否更新文件時間戳,不是特別重要的文件,建議noatime
auto: 是否能夠被mount -a 自動掛載所有(/etc/fstab中)的文件自動掛載
dev/nodev:是否能創建設備文件
diratime/nodirtime:是否更新目錄的時間戳
exec/noexec:是否允許執行二進制程序
_netdev:網絡設備
remount:重新掛載
relatime/norelatime 是否實時更新
acl 文件訪問控制列表
##tune2fs -o mount-option 設備 設置屬性
##tune2fs -o ^mount-option 設備 取消默認掛載屬性
掛載點:掛載以後原始數據將被隱藏
1、選擇空閒目錄
2、必須事先存在
卸載:
1、空閒時可以卸載
直接使用mount可以顯示當前系統的掛載信息,也可以查看/proc/mounts或者/etc/mtab
光盤:
/dev/cdrom /dev/dvdrom /dev/sr0
[-t iso9660]
查看占有掛載的設備的進程
fuser -v 掛載點
fuser -km 掛載點 強制剔除shell進程
df 磁盤空間使用狀態報告
df [options] [device] -h:顯示易讀的信息 -i:顯示indoen -P:全部顯示
du 顯示文件占用磁盤的情況
-s :整個目錄大小 -h : 顯示易讀信息
/etc/rc.d/rc.sysinit:系統初始化腳本
其中一個功能:掛載/etc/fstab文件中定義的文件系統掛載表
/dev/mapper/vg0-root / ext4 defaults 1 1
UUID=58894bb8-5b23-4f00-baff-0c19d450bfe9 /boot ext4 defaults 1 2
/dev/mapper/vg0-usr /usr ext4 defaults 1 2
/dev/mapper/vg0-var /var ext4 defaults 1 2
/dev/mapper/vg0-swap swap swap defaults 0 0
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
##要掛載的設備:設備文件,LABEL=“” UUID
##掛載點: swap沒有掛載點,掛載點為swap
##文件系統類型
##掛載選項:多個選項間使用逗號分隔
##轉儲頻率:
0:從不備份
1:每日備份 2:每隔一天備份
##自檢次序
1:首先自檢,通常只能被/使用
2-9:順序
0:從不自檢
物理內存不夠才會使用到交換分區
linux使用內存機制:/proc/sys/vm/swapiness
多大選擇:
大於2G,小於4G =4G 小於2G =2*物理內存 8G+:=4G
查看內存空間使用狀態
cat /proc/meninfo
free
-m:顯示結果以MB為單位
-g:顯示結果以GB為單
使用情況:磁盤沒有空間,創建不了新的分區,有空閒的空間可以用,交換分區不夠用
dd命令:
bs:一次讀多大的數據量 count:讀取次數 if:輸入文件 of:輸出文件 oflag=FLAGS 寫出數據時的格式 #格式: dd if=input_file of=output_file dd if=input_file of=output_file bs=#[b|k|m|g] count=# ##/dev/zero:吐01的
ln 源文件 目標文件
硬鏈接:
不能跨分區,
指向同一個indone的兩個位置
不能對目錄創建硬鏈接
硬鏈接會改變文件被鏈接的次數
符號鏈接: ln -s
符號鏈接可以跨分區 符號鏈接文件跟源文件不同一個inode 可以對目錄創建符號鏈接 符號鏈接不會改變源文件被鏈接的次數
zip:
gzip:gunzip= gzip -d,zcat
後綴:.gz
-c 將壓縮結果送往標准輸出,可以使用重定向將其保存在壓縮文件,從而保留文件
bzip2,bunzip2 =bzip2 -d
-k 保留源文件
後綴 .bz
xz
後綴.xz
-#:指定壓縮比 1-9,默認的為6
tar [options] -f file.tar file1....
-c: 創建歸檔
-x:展開歸檔
-t:不展開而直接查看被歸檔的文件
-z:使用gzip壓縮
-j:使用bz2壓縮
-J:使用xz壓縮
通常使用 zcf zxf jcf jxf Jcf Jxf
命令總結 hdparm ln,dd,df,du,gzip,gunzip,zcat,bzipw,bunzip2,bzcat,zip,unzip,xz,unxz,xzcat,tar