按名稱存取是文件系統存在的一個主要目的
定義: 文件系統是一個軟件,對磁盤上存在的二進制進行管理
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