1.设备类型:
块设备(block):随机访问,数据交换单位是"块"
字符设备(character):线性访问,数据交换的单位是"字符"
2.设备文件:FHS
/dev
设备文件:关联至设备的驱动程序;设备的访问入口
设备号:
major:主设备号,区分设备类型;用于标明设备所需要的驱动程序
minor:次设备号,区分同种类型下的不同设备;是特定设备的访问入口
设备文件的文件名不是随便定义的是由ICANN(互联网名称分配机制)
磁盘的并口和串口:
并口:同一线缆可以接多块设备
IDE:两块设备,主设备和从设备
SCSI:宽带:16-1个设备 窄带:8-1个设备
串口:同一设备上只可以接一个设备
SATA,SAS
磁盘命名:
IDE:/dev/hd[a-z]
一般就是四个 hda hdb hdc hdd
SCSI,SATA,USB,SAS:/dev/sd[a-z]
引用设备的方式:
设备文件名:
卷标:
UUID:
分区:/dev/sda# (/dev/sda1,/dev/sda2,…)
注意:CentOS6和CentOS7统一将硬盘的文件标识为/dev/sd[a-z]#
磁盘分区:MBR和GPT
MBR:Master Boot Record(主引导扇区) 512字节
分为三部分:446bytes:bootloader,引导启动操作系统的程序
64bytes:FAT,文件系统分区表,每16字节标识一个分区,一共只能有四个分区
2bytes:说明当前MBR区域的有效性标记 55AA代表为有效
若当前系统有剩余的空间未被文件系统的分区表所标识,这些剩余的空间将无法使用。
GPT:GPT是一种新型磁盘模式,与我们常用的MBR磁盘相比更稳定,自纠错能力更强,
一块磁盘上主分区数量不受(4个的)限制,支持大于2T的总容量及大于2T的分区
(几乎没有上限,最大支持到128个分区,分区大小支持到256TB
主分区和扩展分区的标识:1-4 逻辑分区:5+:无论主分区和扩展分区的数量是4个,但是逻辑分区的编号都是从5开始的。
3.mknod命令:
make block or character special files:创建字符或块的特殊文件
mknod [OPTION]… NAME TYPE [MAJOR MINOR]
-m MODE:创建后的设备文件的访问权限
mknod testv b 1 5 (创建一个名为testv的块设备,主设备号为1,次设备号为5)
4.fdisk命令:用于管理磁盘分区表
(1)查看磁盘的分区列表
fdisk -l:列出制定磁盘设备上的分区情况
fdisk -l /dev/sd[a-z]:查看/dev/sd[a-z]的磁盘分区表
CentOS6标识的是从哪个柱面开始到哪个柱面结束
CentOS7标识的是从哪个扇区开始到哪个扇区结束
Linux正常的分区Id用83来表示,扩展分区Id用5来表示,交换分区Id用82表示
(2)管理分区
①lsblk:列出块设备;
②partprobe:重新设置内存中的内核分区表版本
③fdisk /dev/sd[a-z](device)
fdisk提供了一个交互式接口来管理分区,它有许多自命令,分别用于不同的管理功能;
所有的操作均在内存中完成,没有直接同步到磁盘;只有当使用w保存时,才会同步到磁盘上;
m:获取fdisk的帮助信息
n:添加一个新的分区
w:保存退出
d:删除一个分区
t:表示更改一个分区Id号
l:列出系统上所有的分区类型(已知Id)
q:不保存并退出
p:列出系统上已有的分区列表
④parted命令:parted的操作都是实时生效的,请小心使用
parted [options] [device [command [options…]…]]
parted /dev/DEVICE mklabel gpt|msdos (将磁盘类型改变为GPT|MBR)
parted /dev/DEVICE print (列出目前本机的分区表资料)
parted /dev/DEVICE mkpart {primary|logical|extended} [ext3|ext4|xfs|..] 开始 结束
parted /dev/DEVICE mkpart primary 1 200(默认M)(设置/dev/DEVICE为主分区且分区大小为200M)
parted /dev/DEVICE mkpart logical ext4 19.2GB 19.7GB
parted /dev/DEVICE rm 1 将刚才新建的1号磁盘分区删除
parted -l 显示系统上面所有的磁盘分区
(3)新建分区
a.fdisk /dev/sda:管理/dev/sda分区,以/dev/sda为例
b.使用p命令去查看当前系统上面已有的分区列表
c.n新建一个分区,当系统上主系统分区和扩展系统分区的和等于4时,即三主一从时,使用n命令会自动创建分区为扩展分区;当主分区和扩展分区的数量小于4时,则需指定为创建主分区或扩展分区(当系统分区中只有小于等于三个主分区并且扩展分区不存在的时候,需要创建扩展分区),之后再去按照说明利用n去创建新的磁盘分区
d.n键创建完之后会显示添加的逻辑分区(主分区)的分区号,然后回车
e.显示默认的扇区号(CentOS7系列显示的是扇区号,CentOS6系列显示的是柱面号)
f.使用+#{K,M,G}选择要添加的分区的大小(KMG)
g.使用p命令去查看系统上的分区(现在对于磁盘来说还没有被修改,只有使用w退出之后,才能被修改)
h.确定没有错误了 w保存退出,但是现在的磁盘并没有被内核Kernel所识别
注意:在已经分区并且已经挂载其中某个分区的磁盘设备上创建的新分区,内核可能在创建完成后无法直接识别;
使用cat /proc/partitions查看系统上面内核所识别到的磁盘分区,需要通知内核强制重读磁盘分区表paetx -a [device](CentOS6为例)
使用cat /proc/partitions确保内核已经读取到了所有的新创建的磁盘分区才算成功
(4)创建文件系统:(元数据和数据)
格式化:低级格式化和高级格式化
低级格式化:分区之前,是出厂时由硬件制造厂商开始的,主要为了划分磁道
高级格式化:分区之后,对于分区进行格式化,创建文件系统
文件系统分为 元数据区和数据区
元数据区:
文件元数据:inode (index node)
主要放文件属性信息,大小、权限、属主属组、时间戳、数据块指针等,但不包含文件名,文件名存放于目录
符号链接文件:存储数据指针的空间当中存储的是真实文件的访问路径;
设备文件:存储数据指针的空间存储的是设备号(major,minor)
bitmap index:位图索引
磁盘块位图索引:
在元数据区预留出一部分小空间,存储磁盘块的有无存储,1表示已使用,0表示空闲状态
inode位图索引:
在元数据区预留出一部分小空间,元数据区inode的有无存储,1表示已使用,0表示空闲状态
数据区:
需要预留出一部分供管理员进行对于磁盘文件的操作(当磁盘已满或者磁盘出现什么问题)
超级块:定义了系统上面有多少块组,每个块组从哪个磁盘块到哪个磁盘块的编号
5.cat /proc/partitions 查看系统上面内核识别到的磁盘分区
通知内核强制重读磁盘分区表:
CentOS5 7:
partprobe [device]
CentOS6:partx kpartx
partx -a [device]:有时需要使用命令行#遍,才能确保读取磁盘成功。
kpartx -af [device]
分区创建工具:
parted sfdisk
6.文件系统:
VFS:Virtual File System
Linux的文件系统:ext2,ext3(CentOS5),ext4(CentOS6),xfs,btrfs(CentOS7),reisefs(反删除内容强)
光盘:iso9660
网络文件系统:nfs,cifs
集群文件系统:gfs2,.ocfs2
内核级分布式文件系统:ceph
windows的文件系统:vfat,ntfs
伪文件系统:proc,sysfs,tmpfs,hugepagefs
Unix文件系统:UFS,FFS,JFS
交换文件系统:swap
用户空间的分布式文件系统:mogilefs,moosefs,glusterfs
RAW:未经处理或者未格式化产生的文件系统
根据其是否支持"journal"功能分类:
日志型文件系统:ext3,ext4,xfs…
非日志型文件系统:ext2,vfat
文件系统的组成部分:
内核中的模块:ext4,xfs,vfat
用户空间的管理工具:mkfs.ext4 mkfs.xfs mkfs.vfat
注意:xfs是企业级64位存储工具,文件大小没有上限值
CentOS5.x默认的是ext3文件系统,CentOS6.x默认使用的ext4文件系统,CentOS7.x默认使用的是xfs文件系统
CentOS6.x上面默认是没有预装xfs文件系统,使用xfs系统时,需要使用yum源安装xfsprogs,之后才能使用xfs文件系统,
7.链接文件:访问同一个文件的不同路径;
硬链接:指向同一个inode的多个文件路径
特性:
(1)目录不支持硬链接;为了避免循环连接;
(2)硬链接不能跨文件系统;
(3)创建硬链接会增加inode引用计数
符号链接:指向一个文件路径的另一文件路径
特性:
(1)符号链接与文件是两个各自独立的文件,各自自己的inode;对原文件创建符号链接不会增加引用计数;
(2)支持对目录创建符号链接,可以跨文件系统;
(3)删除符号链接文件不会影响原文件,但是删除原文件,符号指定的路径不存在,此时会变成无效链接;
8.内核级文件系统的组成部分:
文件系统驱动:由内核提供
文件系统管理工具:由用户控件的应用程序提供
原创文章,作者:sjsir,如若转载,请注明出处:http://www.178linux.com/40709