1.磁盘类型介绍
IDE接口类型:主要用于个人家用计算机领域,优点价格便宜,缺点数据传输速度慢;
SCSI接口类型: 主要用于服务器领域,数据传输速度快,支持热插拔;
SATA接口类型:串口磁盘,主要用于个人家用计算机领域;
NVMe接口类型:固态硬盘接口,价格昂贵,数据传输速度快,利用内存的机制读写数据。
2.Linux常用分区格式
MBR分区格式:比较古老的分区格式,最初只能划分4个主分区,后来新增加扩展分区(容器)功能,可在扩展分区内划分更多逻辑分区,最大支持2.2T磁盘容量。
* IDE接口硬盘逻辑分区最多可以划分59个
* SCSI接口硬盘逻辑分区最多划分11个
* 最大支持2.2T以内磁盘容量
GPT分区格式:可以划分128个主分区,最大支持18EB磁盘容量
(1EB=1024PB 1PB=1024TB 1TB=1024GB)
3.文件系统类型详解
文件管理系统:赋予分区文件系统,分区才可以正常的使用,根文件系统,多少个多少个文件系统。
Centos5:分区默认使用文件系统类型ext3;
Centos6:分区默认是同文件系统类型ext4* ext4日志记录功能,意外宕机,通过日志记录把没有保存的数据,在系统再次重启时快速恢复回来;
* 单个文件系统最大支持1EB的分区容量,单个文件最大可以存储16TB数据;
Centos7:分区默认使用文件系统类型xfs;
* xfs 开启了日志记录功能,意外宕机,通过日志记录把没有保存的数据,在系统再次重启的时候快速恢复回来,数据的恢复速度比ext4文件系统快;
* 单个文件系统最大支持8EB的分区容量,单个文件最大可以存储500TB的数据;
* 单个文件每秒读写数据的速度可以到达4G;
swap文件系统:交换分区,硬盘空间去充当内存使用。
4.挂载
在linux系统中用户无法直接使用硬件设备的,硬件设备在系统中都是以只读的方式存在的,必须挂载。
挂载就是给我们用户提供一个可以使用设备的一个接口。
挂载注意事项:
* 挂载点必须是一个目录,理论上来说还得是一个空目录;
* 一个文件系统不允许重复挂载到多个目录下;
* 一个目录不允许重复挂载多个文件系统。
5.命令讲解
①lsblk命令
lsblk(英文全拼:list block )用于列出当前系统所有磁盘与磁盘的分区信息。
命令格式: lsblk [选项] [设备名]
常用选项:
* -d #仅显示磁盘本身,不会列出磁盘的分区数据;
* -f #列出磁盘分区使用的文件系统类型。
[root@localhost ~]# lsblk
解释:
①sda1 #sd代表SCSI磁盘,a代表第一块磁盘,1代表第一个分区
②sdb #sd代表SCSI磁盘,b代表第二块磁盘,1代表第一个分区
③NAME #设备名称
④MAJ:MIN #主设备号:次设备号,内核通过主次设备号识别磁盘
⑤RM #是否为可卸载设备,1可卸载,0不可卸载
⑥SIZE #设备的容量大小
⑦RO #表示设备是否为只读,0非只读设备,1只读设备
⑧TYPE #表示设备类型(disk为磁盘,part为分区,lvm逻辑卷,rom只读)
⑨MOUNTPOINT #设备挂载点(SWAP没有挂载点)
[root@localhost ~]# lsblk -d /dev/sda #列出指定的磁盘信息
[root@localhost ~]# lsblk -f #列出所有磁盘分区内使用的文件系统类型
[root@localhost ~]# lsblk -df /dev/sda1 #列出指定分区的文件系统类型
②df命令
df命令用于查看文件系统使用情况。
命令格式: df [选项] [参数]
常用选项:
* -h #以人类易懂的方式显示文件的系统容量;
* -T #显示文件系统类型。
[root@localhost ~]# df -Th
③du命令
du命令用于统计磁盘下目录或大小。
命令格式:du [选项] [参数]
常用选项:
* -h #以人类易懂方式(kb MB GB )显示文件大小;
* -s #只统计每个参数的总数。
[root@localhost ~]# du -sh initial-setup-ks.cfg
④ls查看/dev目录下文件
解释:
①hd[a-t] #IDE设备
②sd[a-z] #SCSI设备
③fd[0-7] #软盘驱动设备
④md[0-32] #软RAID设备
⑤loop[0-7] #本地回环设设备
⑥lp[0-3] #打印机设备
⑦mem #内存设备
⑧null #空设备,也称为黑洞,任何写入的数据都将被丢弃
⑨zero #零资源设备,任何写入的数据都将被丢弃
⑩full #满设备,任何写入的数据都将失败
⑪tty[0-63] #虚拟终端设备
⑫random #随机数设备
⑬urandom #随机数设备
⑭port #存取I/O端口
⑤blkid命令
blkid命令显示块设备属性信息(设备名称,设备UUID,文件系统类型)。
命令格式:blkid [选项] [参数]
[root@localhost ~]# blkid
⑥fdisk命令
fdisk命令用于查看磁盘使用情况和磁盘分区( MBR分区格式 )。
命令格式:fdisk [选项] [设备路径]
常用选项: -l #列出磁盘分区表类型与分区信息
[root@localhost ~]# fdisk -l
6.分区操作
①准备工作:添加一块硬盘
②查看
[root@localhost ~]# fdisk -l
③分区
解释:
分区操作:
分第一个分区/dev/sdb1
第一个分区/dev/sdb转换分区类型操作:
新增一个分区/dev/sdb2并删除操作:
④格式化文件系统
mkfs命令用于在分区上建立文件系统。
常用文件系统类型: ext4和xfs
命令格式:
#mkfs.xfs 分区设备路径 #格式化为xfs类型文件系统
#mkfs.ext4分区设备路径 #格式化为ext4类型文件系统
[root@localhost ~]# mkfs.xfs /dev/sdb1 #把/dev/sdb分区格式为xfs格式文件系统
[root@localhost ~]# blkid /dev/sdb1 #查看文件系统类型
⑤mount挂载操作
mount文件系统挂载命令
命令格式: mount 设备路径 挂载点路径
常用选项:
* -a #依照配置文件/etc/fstab的数据将所有未挂载上的数据都挂载上来;
* -o #该选项后边可跟挂载时额外参数。
remount命令:重新挂载文件系统,在文件系统出错时或重新挂载文件系统时非常重要。
umount命令:用于卸载文件系统
命令格式:umount 挂载点目录
[root@localhost ~]# mkdir /mybak #创建挂载点目录
[root@localhost ~]# mount /dev/sdb1 /mybak #挂载文件系统
[root@localhost ~]# df -Th #查看挂载信息
⑥开机启动自动挂载:
配置文件:/etc/fstab #用于存放文件系统信息,当系统启动时,系统会自动读取文件内容将指定的文件系统挂载到指定的目录
[root@localhost ~]# vim /etc/fstab
解释:
该文件内容为6个字段,每个字段详解如下:
第一个字段:要挂载的设备路径;
第二个字段:挂载点目录;
第三个字段:设备文件系统类型;
第四个字段:挂载参数,参数如下:
①sync,async #此文件系统是否使用同步写入 (sync) 或异步 (async) 的内存机制,默认为异步(async);
②atime,noatime #更新访问时间/不更新访问时间,访问分区时,是否更新文件的访问时间,默认为更新;
③ro,rw #挂载文件为只读(ro)或读写(rw),默认为rw;
④auto,noauto:自动挂载/手动挂载,执行mount -a时,是否自动挂载/etc/fstab文件内容,默认为自动(auto);
⑤dev,nodev #是否允许此文件系统上,可建立装置文件,默认为允许(dev);
⑥suid,nosuid #是否允许文件系统上含有SUID与SGID特殊权限,默认为允许(SUID);
⑦exec,noexec #是否允许文件系统上拥有可执行文件,默认为允许(exec);
⑧user,nouser #是否允许普通用户执行挂载操作,默认为不允许(nouser),只有root用户可以挂载分区;
defaults默认值:代表async,rw,auto,dev,suid,exec,nouser七个选项。
第五个字段:是否对文件系统进行备份,0不备份,1为备份;
第六个字段:是否检查文件系统顺序,允许的数字是0,1,2,0表示不检查,1的优先权最高。
设置/dev/sdb1开机自动挂载操作:
[root@localhost ~]# vim /etc/fstab #修改fstab配置文件
[root@localhost ~]# mount -a #依照配置文件fstab的数据将未挂载的数据挂载上来
[root@localhost ~]# df -Th #查看文件系统使用情况
[root@localhost ~]# umount /mybak #临时卸载文件系统,如果永久需要去掉fstab配置
[root@localhost ~]# df -Th #查看文件系统使用情况