一、磁盘基本知
1、磁盘分类
机械式硬盘
固态硬盘
2、磁盘接口类型:
IDE:在Linux下文件名为/dev/hd[a-d],最高速率可达133MBytes
SCSI:在Linux下文件名为/dev/sd[a-z],最高速率可达640MBytes
SATA:在Linux下文件名为/dev/sd[a-z],最高速率可达6Gbps
SAS:在Linux下文件名为/dev/sd[a-z],最高速率可达6Gbps
USB:在Linux下文件名为/dev/sd[a-z],最高速率可达480MBytes
3、磁盘的分区:
主分区(primary)和扩展分区(Exended):/dev/sd[1-4],
逻辑分区(logicalpartition):从/dev/sd5开始,
4、设备号:
major:区分设备类型
minor:区分相同设备类型的不同设备
二、磁盘分区工具
1、fdisk:最多支持在一块硬盘上的15个分区
选项:
-l:列出所有磁盘设备
子命令:
p:显示分区列表
n:创建新的分区
d:删除分区
t:修改分区ID
l:列出所有支持ID类型
w:保存退出
q:退出不保存
m:获取帮助
查看内核是否以及识别到新的分区:cat /proc/partitions
让内核重读磁盘分区表:
centOS 5:partprobe [DEVICE]
centOS 6和7:partx –a [DEVICE]
kpartx –af [DEVICE]
三、文件系统管理
1、文件系统分类:
Linux:ext2,ext3,ext4,reiserfs,xfs,btrfs,swap
ext2为非日志文件,ext3为日志文件
光盘:ISO9660
Windows:fat32,ntfs
unix:ffs,ufs,jfs,jfs2
网络文件系统:nfs,cifs
集群文件系统:ocfs2,gfs2
分布式文件系统:ceph
2、创建文件系统
mkfs命令:mkfs [-V] [-t fstype] [fs-options] filesys [blocks]
选项:
-t:指定系统文件类型,相当于type=mkfs.type
mke2fs(只适用ext类型):mke2fs [OPTION]... DEVICE
选项:
-t:指定系统文件类型
-b:指定每个block的大小(支持1024,2048,4096)
-i:指定每多少字节给inode
-c:检查磁盘错误
-L:指定卷标名称
-j:相当于mke2fs –t ext3
-N:指定这个文件系统有多少个inode
-m:指定预留空间的百分比
3、文件体统属性查看及调整工具:
e2label: e2label device [ new-label ]
查看卷标:e2label /dev/DEVICE
设定卷标:e2label /dev/DEVICE “LABEL”
tune2fs:显示ext系列文件系统的属性和调整其属性
选项:
-l:显示超级块中的信息
-L:修改卷标
-j:相当于mke2fs –t ext3
-m:指定预留空间的百分比
-O:文件系统属性的启用或关闭
-o:文件系统默认挂载选项的启用或关闭
dumpe2fs:
dumpe2fs –h /dev/DEVICE :仅显示超级块信息
超级块:是记录整个文件系统相关信息的地方,主要信息有:
1、block和inode的总量
2、未使用和已使用的inode和block数量
3、block和inode的大小
4、文件系统的挂载时间、最近一次写入数据的时间、最近一次检验磁盘的时间
5、valid bit数值,已挂载为0,未挂载为1
4、文件系统的检测
fsck:
选项:
-t:指定系统文件类型
-a:自动检测有问题的扇
-r:交互式检查
-f:强制检查
-D:针对文件系统下的目录进行优化配置
e2fsck:ext系列文件系统专用的检测修复工具
5、文件系统的挂载和使用
mount:mount [options] [-o options] DEVICE MOUNT_POINT
[options]:选项命令
-t:指定挂载的文件类型
-a:依照/etc/fstab的数据将所有未挂载的磁盘都挂载上来
-l:指定卷标名
-r:以“只读”方式挂载此文件系统
-w:以“读写”方式挂载此文件系统
-B:绑定目录至另一个目录上
-n:每个文件系统在挂载时都会自动更新/etc/mtab文件,-n用于禁止此功能;此时,如果想查看挂载的所有文件系统cat /proc/mounts
[-o options]:挂载选项
async:异步模式
sync:同步模式
remount:重新挂载
acl:是否支持此设备上使用facl
user/nouser:是否允许普通挂载此设备
atime/noatime:是否更访问时间戳
auto/noauto:是否允许此设备被自动挂载
diratime/nodiratime:是否更新目录的访问时间戳
exec/noexec:是否允许执行此文件系统上的应用程序
dev/nodev:是否支持在此设备上使用设备文件
defaults:包括rw,suid,dev,exec,auto,nouser,async
DEVICE:要挂载的设备(可以为设备文件、卷标、UUID、伪文件系统名称)
MOUNT_POINT:挂载点
umount:卸载
umount DEVICE
umonut MOUNT_POINT
查看正在访问指定挂载点的进程:fuser –v MOUNT_POINT
终止所有正在访问指定的挂载点的进程:fuser:-km MOUNT_POINT
四、交换分区:
free:查看memory和swap的使用状态
-m:以MB为单位
-g:以GB为单位
mkswap:创建交换分区
mkswap [option] DEVICE
swapon:启用交换分区
swapon [option] [DEVICE]
-a:激活所有交换分区
-p:设定优先级
swapoff:禁用交换分区
swapoff [option] [DEVICE]
文件系统空间占用信息查看工具
df:查看分区情况
df [OPTION]... [FILE]...
选项:
-a:显示所有的文件系统,包括/proc等文件系统
-k:以KBytes显示文件系统
-m:以MBytes显示文件系统
-h:以人类易读形式显示
-i:以inode的数量显示
-P:以posix兼容的格式输出
du:
du [OPTION]... [FILE]...
-k:以KBytes显示文件系统
-m:以MBytes显示文件系统
-h:以人类易读形式显示
-a:显示所有文件和目录的容量
5、文件系统挂载的配置文件:/etc/fstab
使用cat /etc/fstab里显示的内容为每行定义一个文件系统,每一行的内容为:
要挂载的设备或伪文件:
设备文件、LABEL、UUID、伪文件系统名称
挂载点
文件系统类型
挂载选项:默认为default
转储频率:0为不转储、1为每天转储、2为每隔一天转储
自检次序:0为不自检,1为首先自检,通常只有/才为1
6、文件系统上的链接文件
硬链接:两个路径指向同一个inode(不能对目录和跨分区进行)
符号链接:链接文件的数据指向另一个文件路径
ln:ln [-s] SRC DEST