磁盘是什么?
磁盘的物理结构的组成:盘头:硬盘有多个盘头,每盘片2面
磁头:每个面一个磁头
硬盘的数据结构:扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据,硬盘的最小存储单位
磁道:同一盘片不同半径的同心圆
柱面:不同盘片相同半径构成的圆柱面,由同一半径圆的多个磁道组成
一、磁盘管理常用命令
1、检测并确认新硬盘命令
(1)查看磁盘分区命令
格式:fdisk -l [磁盘设备]
或者:fdisk [磁盘设备]
(2)交互模式常用指令
m:显示帮助菜单
p:显示磁盘当前分区列表
n:增加一个分区
d:删除一个分区
t:改变一个分区的系统号码
w:保存修改结果并退出
q: 退出fdisk,不保存任何修改
l :显示已知的分区类型,列如Liunx为82
u:改变显示记录单位
(3)磁盘分区类型:
XFS:是一种高性能的日志文件系统,特别擅长于处理大文件,可支持上百万 T字节的存储空间。由于XFS文件系统开启日志功能,所以即便发生宕机也不怕数据遭到破坏,这种文件系统可以根据日志记录在短时间内进行数据恢复
SWAP:交换文件系统,用于为Linux系统建立交换分区。交换分区的作用相当干虚拟内存,能够在一定程度上缓解物理内存不足的问题。一般建议将交换分区的大小设置为物理内存的15~2倍。例如,对于拥有512MB物理内存的主机,其交换分区的大小建议设置为1024MB。如果服务器的物理内存足够大(如8GB上),也可以不设置交换分区。交换分区不用于直接存储用户的文件和目录等数据。
EXT4:第4代扩展文件系统,用于存放文件和目录数据的分区,是Linux系统中默认使用的文件系统(Centos7默认使用XFS)。EXT4是典型的日志型文件系统,其特点是保存有磁盘存取记录的日志数据,便于恢复,在存取性能和稳定性方面更加出色。
(4)系统中fdisk -l 可查看硬盘的整体情况和分区情况
Device: 分区的设备文件名称。
Boot : 是否是引导分区。若是,则有"*"标识。
Start : 该分区在硬盘中的起始位置(柱面数)。
End : 该分区在硬盘中的结束位置(柱面数)。
Blocks: 分区的大小,以Blocks(块)为单位,默认的块大小为1024字节。
Id: 分区对应的系统ID号。83表示Linux中的XFS 分区或EXT4 分区、8e表示 LVM逻辑卷.LVM是Linux
操作系统中对磁盘分区进行管理的一种逻辑机制,与之相关的知识将在后面的章节介绍。 System:分区类型。识别到新的硬盘设备后,就可以在该硬盘中建立新的分区了。在Linux操作系统中,分区和格式化的过程是相对独立的,关于格式化分区的操作将在后续内容中讲解。
(5)扩充:gdisk命令
格式:gdisk [磁盘设备]
常用指令:
b :将GTP数据备份到一个文件
c : 更改分区名称
d : 删除一个分区
i :显示分区详细信息
l : 列出分区类型。 8200是Linux swap ,8300是Linux,8e00是Linux LVM
n: 增加一个新的分区
o:创建一个新的空白的GPT分区表
p: 显示当前磁盘的分区表
q:退出qdisk程序,不保存任何修改
r :恢复和转换选项(仅限专家)
s :排序分区
t : 改变分区的类型
w:将分区表写入裁判并退出(保存并退出)
? :显示帮助信息
(6) lsblk : 以树形查看磁盘的格式
blkid :查看磁盘UUID 唯一
blkid /dev/sdb1 //查看磁盘分区的UUID
2、创建分区格式命令
mkfs命令
Make Filesystem ,创建文件系统(格式化)
格式 : mkfs -t 文件类型(xfs 、etx4) 分区设备
示例:[root@zyf ~] # mkfs -t xfs /dev/sdb1
3、创建文件系统命令
mkswap命令
make swap 创建交换文件系统
格式:mkswap 【分区设备】
示例 :
4、挂载、卸载文件系统
(1)mount命令
挂载文件系统、ISO镜像到指定文件夹
格式:mount [ -t 类型 ] 存储设备 挂载点目录
: mount -o loop ISO镜像文件 挂载点目录
示例
[root@zyf ~] #mount /dev/sdb1 /hoome/zyf
(2)umount命令
卸载已挂载的文件系统
格式:umount 存储设备位置
:umount 挂载点目录
[root@zyf ~]# umount /dev/sdb1 /home/zyf
5、设置文件系统的自动挂载
/etc/fstab 配置文件
包含需要开机后自动挂载文件系统记录
6、查看磁盘的使用情况
df命令
格式: df [选项] [文件]
二、例题
列题1:如何不重启的情况下,识别到新加的盘
第一步:先在虚拟机中增加一个硬盘
先扫描下磁盘
输入命令:
[root@zyf ~]# echo "- - -" > /sys/class/scsi_host/host0/scan
[root@zyf ~]# ls /dev/sd*
/dev/sda /dev/sda1 /dev/sda2 /dev/sda3
[root@zyf ~]# echo "- - -" > /sys/class/scsi_host/host1/scan
[root@zyf ~]# echo "- - -" > /sys/class/scsi_host/host2/scan
[root@zyf ~]# ls /dev/sd*
可以看到没有重启虚拟机也可以查到新增的盘 /dev/sdb
列题2:把一块虚拟磁盘分成四个分区,三个主分区,一个扩展分区。
第一步:进入交互系统
fdisk /dev/sdb 在命令:输入n
然后输入p选择主分区
选择分区号为1
起始扇区选择默认值2048
选择磁盘大小为:+10G回车
在命令行输入:p //查看创建的分区
第二步:在命令行:输入n
然后输入p选择主分区
选择分区号为2
起始扇区选择默认值:上一个盘的结尾回车即可
选择磁盘大小为:+5G回车
在命令行输入:p //查看创建的分区
第三步:在命令行:输入n
然后输入e选择扩展分区 (注:扩展分区不能格式化)
选择分区号为4
起始扇区选择默认值:上一个盘的结尾回车即可
选择磁盘大小为:+15G回车
在命令行输入:p //查看创建的分区
第四步:命令行输入w保存并退出这样我们的虚拟磁盘的分区就创建成功了
其他操作
删除第三个分区
命令 输入d 然后选择分区就可以执行删除
输入p查看详细分区。误删的化可以输入n恢复。
分配逻辑分区
第一步:fdisk /dev/sdb //进入磁盘交互界面
第二步:输入命令n 然后回车,输入p查看
第三步:命令mkfs -t xfs /dev/sdb4 //格式化分区
第四步:mount /dev/sdb4 /mnt/ky21 df-h 挂载到mnt下面的ky21中,df-h查看。分配成功
永久挂载分区
第一步:vim /etc/fstab ///进入etc/fstab文件进行编辑
:/dev/sdb3 /mnt/ky21 xfs defaults 0 0 ///在文本中输入这些内容表示开机自动挂载分区
第二步:df -h查看分区
把创建的sdb1分区创建文件系统
第一步:输入:mkfs.xfs /dev/sdb1
第二步:用mkdir创建一个空文件为zyf到mnt目录下。
输入:mount /dev/sdb1 /mnt/zyf/ 将dev/sdb1挂载到mnt下的zyf目录上。
第三步:测试
cp一个/mnt/ky21/1.txt 到/mnt/ky22,ls查看/mnt/ky22。我这个分区就可以使用了。
如果我们卸载挂载盘的话,文件也会被删除
主分区改swap分区并挂载使用
第一步:fdisk /dev/sdb l查看swap的id号
第二步:输入m帮助命令
第三步:输入命令t更改id,选择分区3,输入要更改的swap代码为82
第四步:最后按p列出分区的参数。更改完成
第五步:格式化分区:输入mkswap /dev/sdb3 然后查看分区信息:lsblk
第六步:开启dev下面的sdb3分区:swapon /dev/sdb3 。在用lsblk查看分区信息也可以用free-m查看主分区改swap分就成功了
用gdisk分区
fdisk和gdisk的区别
gdisk可以对2T以上的磁盘进行操作,fdisk不行
fdisk只能用于MBR分区,gdisk可以用于GPT分区
MBR和GPT
MBR分区:不支持4T以上
GPT分区:GPT,全局唯一标识分区表(GUID Partition Table),它使用128位GUID来唯一标识每个磁盘和分区,与MBR存在单一故障点不同,GPT提供分区表信息的冗余,一个在磁盘头部一个在磁盘尾部;它通过CRC校验和来检测GPT头和分区表中的错误与损坏;默认一个硬盘支持128个分区
两个工具都是采用很好的交互式,操作上大体相同
常用命令参数:
gdisk
gdisk /dev/磁盘名
-n 创建一个新分区
-p 显示当前磁盘的分区表
-w 将更改写入并退出
-q 不保存退出
b 将GPT数据以文件格式备份
c 更改分区名
d 删除分区
i 显示分区详细信息
l 列出分区类型
o 创建一个新的空白GPT分区表
p 显示当前磁盘的分区表
t 改变分区类型
v 验证磁盘分区表
x 专家模式
? 帮助
gdisk分区转载自【鹏老板】原文链接:https://blog.csdn.net/qq_44293827/article/details/116567579
fdisk 和gdisk基本上操作方面都相差不大只是在用于分大容量盘的时候会用到gdisk