文件系統
ln [option] SRC DST
option:
-s 軟鏈接(默認是硬鏈接),windows的快捷方式就是軟鏈接,只是windows有文件後綴
-v 顯示詳細信息
linux支持的文件系統類型:
ext2,ext3,ext4
reiserfs
xfs,jfs,(UNIX默認支持的文件系統,linux內核支持)
iso9660(光盤文件系統)
GFS2,OCFS2(集羣文件系統)
NFS,CIFS(網絡文件系統)
FAT,FAT32(VFAT),NTFS(windows文件系統)
扇區:物理上的最小存儲單位,出廠時格式化(低級格式化),512bytes
第一個扇區(MBR):引導扇區(512bytes)
446:boot loader(程序代碼)
64:磁盤分區表(每16byte可以標示一個分區,即一塊硬盤只可以分64/16=4個分區)
2:分區的結束代碼(程序代碼)
16byte:
擴展分區:邏輯概念
再次分區 --> 邏輯分區
硬盤接口:
IDE,ATA 並行口 133Mbps USB2.0 480Mbps
SCSI(有自己獨立的控制器,需要CPU控制的量很小,相當於IDE接口的1/10)並行口 320Mbps
SATA 串行口 SATA3 6Gbps
SAS 串行SCSI (服務器使用,速度比SATA快)
linux分區:
IDE:/dev/hda(第一口主),/dev/hdb(第一口從),/dev/hdc(第二口主)
SATA:/dev/sda
主分區(擴展分區):1-4
邏輯分區:5+
USB:/dev/sd
SCSI:/dev/sd
SAS:/dev/sd
高級格式化:在分區上創建文件系統(內核)
ext2:不支持日誌功能
ext3:支持日誌
格式化:
mkfs.ext3 等同於mkfs -t ext3
mke2fs
-j 創建成日誌文件系統
-L 指定卷標
-b 指定磁盤塊大小
-m 指定爲管理員預留塊的百分比(默認5%)
-i 指定inode的創建比例(不能小於磁盤塊大小)
tune2fs
-l 顯示超級塊的信息 例如:tune2fs -l /dev/sda5
-L
-j
-m #
-c
-i #[d|m|w]
-o 設定文件系統默認掛載選項
dumpe2fs /dev/sda5 查看其超級塊詳細信息
e2label /dev/sda5查看卷標
e2label /dev/sda5 hello 修改卷標
blkid /dev/sda5 查看信息
mount:
格式:mount [option] DEVICE MOUNT_POINT
option:
-t 指定文件系統類型
-o 指定設備訪問屬性(rw,suid,dev,exec,auto,nouser,async這些都是默認屬性)
remount重新掛載,例如:mount -o remount,rw /dev/sda5
loop掛載鏡像文件
-r 相當於-o ro表示只讀
-n 掛載時不往/etc/mtab中寫入
-a 將寫在/etc/fstab文件中支持自動掛載的文件掛載在掛載點上
umount:
格式:umount DEVICE或者umount MOUNT_POINT
fuser:用於查看正在訪問文件的目錄
-v
-k 殺死進程
-m 指定文件名(可以和-k一同使用,則-km)
虛擬內存:必須是獨立的文件系統
格式:mkswap /dev/sda7 格式化swap分區
swapon -a同時啓用標識爲swap分區的虛擬內存
swapoff 關閉已啓用的swap內存
dd:底層的複製命令
控制符:
if=
of=
bs=
count=
格式:
舉例:dd if=/etc/issue of=/tmp/issue
dd if=/dev/sda of=/root/mbr.backup bs=512 count=1
dd if=/dev/zero of=/root/swap.vir bs=1M count=128 把文件模擬成虛擬交換分區
/etc/fstab文件格式:
字段:
1、設備:設備文件,LABEL= ,UUID=
2、掛載點:
3、文件系統類型:
4、掛載選型:多個選項間用逗號分隔
5、完全備份的頻率:0全部備份,1每日完全備份,2,每隔一天完全備份
6、文件系統檢測的次序(0-5):0表示不檢測;1首先檢測;2-5以此類推
RAID:(redundant array independent of disks)獨立的冗餘磁盤陣列
集成主板上的raid卡,稱爲控制器
獨立的raid卡,稱爲適配器
raid自帶的內存稱爲raid內存
raid卡電池給raid內存提供電源
級別:磁盤的不同組合方式
raid0:條帶卷,速度是單塊硬盤的N(硬盤數)倍,可靠性極差,臨時文件目錄可使用
raid1:鏡像卷,寫入性能未提高,讀取性能提高,可靠性提升,一般用於安裝操作系統
raid4:至少3塊磁盤,校驗碼磁盤壓力過大,因此一般不常用,使用raid5
raid5:至少3塊硬盤,校驗碼在磁盤中輪流存放,不像raid4放一塊硬盤
raid6:至少需要4塊盤,raid5的升級,可以壞兩塊盤,但沒raid5常用
raid10:至少4塊盤,可以同時損壞磁盤數的一半,但不能是raid1的同一組磁盤
raid01:至少4塊盤,可以同時損壞磁盤數的一半,但是raid0不能同時壞,沒有raid10常用
raid50:raid5+raid1,舉例同上
linux中軟RAID:
由內核中的md模塊實現,在/dev目錄中會有/dev/md#設備,軟raid可以是任意塊設備,即也可以基於分區,RAID等創建
命令mdadm:mdadm [mode] <raiddevice> [options] <component-devices>
mode:
-C 創建RAID
-D 顯示RAID的詳細狀態信息
-S 用於停止RAID設備
-A 用於裝配RAID
options:
-l,--level= 指定級別
-n,--raid-devices 指定設備的個數
-c,--chunk= 指定大小,默認64k,必須是磁盤塊的2的n次方倍
-a 創建時爲--auto,添加時爲--add
-r,--remove 移除
-f,--fault 標記爲損壞硬盤
-x,指定空閒盤的個數
舉例:mdadm -C /dev/md0 -a yes -l 0 -n 2 /dev/sda{5,6}
mdadm -C /dev/md1 -a yes -l 1 -n 2 /dev/sda{7,8}
mdadm -D /dev/md1
mdadm /dev/md1 -f /dev/sda8 指定/dev/md1中的/dev/sda8損壞
mdadm /dev/md1 -a /dev/sda9 將/dev/sda9假如/dev/md1中
mdadm -S /dev/md0 停掉/dev/md0
mdadm -A /dev/md0 /dev/sda{5,6}
mdadm -D --scan 掃描設備文件,並讀取/etc/mdadm.conf配置文件,可以先mdadm -D --scan >> /etc/mdadm.conf
配置文件:/dev/mdadm.conf,此文件不存在,需要手動去創建
watch -n 1 'cat /proc/mdstat' 每隔一妙動態刷新一次過程
LVM磁盤管理:
卷dm: 設備文件在/dev/mapper/下
meta device:LVM(Logical Volume Manager)
PV:
pvcreate,pvdisplay,pvremove,pvs,pvmove
VG:
vgcreate,vgdisplay,vgs,vgreduce,vgextend,vgremove
LV:
lvcreate,lvdisplay,lvs,lvsreduce,lvextend,lvresize,lvremove
pE:
LE:
fsck,e2fsck:檢測文件系統
文件系統的ACL:
lsattr:
chattr:
getfacl FILE查看文件的權限
setfacl 設定文件的ACL
格式:setfacl [options] id:MODE FILE_NAME
option:
-m 添加權限
-x:刪除權限
setfacl -m u:USERNAME:MODE FILE
setfacl -x u:USERNAME FILE 刪除權限
setfacl -m d:u:USERNAME:MODE FILE(d,創建默認的權限,一般是針對目錄的)
setfacl -m m:MODE FILE
舉例:setfacl a.txt查看a.txt的權限
setfacl -m m::r-- a.txt設置a.txt的掩碼權限,不論給分配什麼權限,都以mask權限爲主
新建的分區必須在掛在時指定支持ACL:mount -o acl /dev/sdb1 /data