linux中磁盘管理
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux中磁盘管理相关的知识,希望对你有一定的参考价值。
一、linux磁盘分区
硬盘可以分成若干个分区,每个分区可视为独立的磁盘来使用。硬盘的分区方案被记录到“磁盘分区表”中,通常该表由4个部分组成,每个部分定义一个分区的信 息,因此原始概念中一个硬盘最多只能建立4个分区,称为“主分区”。由于硬盘越来越大,4个分区已不无法满足用户的需要,为此引入“扩展分区”的概念。扩展分区由扩展磁盘分区表维护,可以把某个主分区作为扩展分区划分为若干更小的“逻辑分区”。理论上,硬盘空间足够时,可以建立任意数量的分区。
二、Linux磁盘分区工具
在linux中磁盘分区的工具有parted ,fdisk ,gdisk 。fdisk与gdisk功能一样,本文只介绍fdisk。以下具体介绍:(本文中的sdX表示所指定的硬盘分区名称)
1、parted
parted:Linux下的磁盘分区与分区调整工具。
parted /dev/sdX 可进入交互模式
parted -l 列出所有硬盘的分区表
parted /dev/sdX print 列出指定硬盘的分区信息
parted /dev/sdb print 列出指定硬盘sdb的分区信息
parted /dev/sdX mklabel gpt | msdos 给指定硬盘重建指定类型的分区表gpt | mbr
parted /dev/sdb mklabel gpt 给指定硬盘sdb重建指定类型gpt的分区表 交互模式 parted /dev/sdb print 再次列出指定硬盘sdb的分区信息
parted /dev/sdb mklabel msdos -s 给指定硬盘sdb重建指定类型msdos的分区表 非交互模式
parted命令对/dev/sdb 进行分区,只能人为输入起始空间。
parted /dev/sdb mkpart primary 1 2G 给sdb分一个大小为2G的标准分区 parted /dev/sdb mkpart primary 2G 5G 下一个标准分区起始地址为上一个分区的结束地址 parted /dev/sdb mkpart primary 5G 10G parted /dev/sdb mkpart extended 10G 21.5G 为sdb分一个扩展分区 parted /dev/sdb mkpart logical 10G 11G
2、fdisk
fdisk 是一个强大的磁盘分区工具,为交互模式。
fdisk -l 列出所有块设备的分区信息
fdisk -l /dev/sdX 查看指定块设备的分区信息
fdisk -l /dev/sdb 查看指定块设备sdb的分区信息
fdisk /dev/sdX 对指定硬盘修改分区
fdisk /dev/sdb 对硬盘sdb修改分区
输入m后显示以下帮助提示
具体步骤如下:
经过以上操作创建了一个空间大小为2G的标准分区。
硬盘sdb为非操作系统,创建分区后可以直接w保存并同步到内核,但如果是操作系统所在硬盘,w后自动同步不成功,需要手动同步,输入命令:partprobe(限centos7及之后)。
三、 常用的磁盘管理命令
mkfs :设置磁盘的文件系统。
mkfs.ext4 /dev/sdb1 设置磁盘sdb的文件系统为ext4
parted /dev/sdb print 列出指定硬盘sdb的分区信息
mkfs.ext4 /dev/sdb1 设置磁盘sdb的文件系统为ext4
parted /dev/sdb print 再次列出指定硬盘sdb的分区信息,文件系统为ext4
mkfs.ext4 -L 新建名 硬盘分区名 设置卷标
umount /a11 或 umount /dev/sdb1 在此之前已挂载,设置卷标前需要先卸载 mkfs.ext4 -L chen /dev/sdb1 设置卷标为chen
e2label /dev/sdX 查看卷标
e2label /dev/sdb1 查看卷标 e2label /dev/sdb1 fan 修改卷标为fan
四 、mount命令
当我们把磁盘分区之后,再初始化文件系统后就可以把块设备挂载到目录或文件上。
mount /dev/sdb1 /a11 mount 挂载源 挂载点
使用df命令查看当前分区挂载情况
mount /dev/sdb1 /a11 把/dev/sdb1挂载到a11目录上 df
在etc/fstab配置文件里面可以添加永久挂载项,开机启动时会自动读取该文件,相当于执行命令mount -a
vim etc/fstab 进入编辑 ,只截取了部分,在最后一行输入了以下命令: /dev/sdb1 /a11 ext4 defaults 0 0
还可以在default后面添加挂载选项,添加完之后如果该磁盘被挂载,需要先卸载后挂载才能生效。
vim /etc/fstab /dev/sdb1 /a11 ext4 defaults,noacl,ro 1 0 增加两项noacl,ro
方法一:
mount -a 读取/etc/fstab 挂载当前尚未挂载的文件系统,已经挂载的文件系统不会重新挂载,也不会更新挂载选项
mount -o remnount (挂载选项)/dev/sdb1来修改挂载项。
此方法需要手工重新挂载。
umount /a11 卸载 mount /dev/sdb1 /a11 重新挂载 mount |grep /a11 只摘取/a11 这一行,查看具体信息 (可不查看,只是显示出结果易区分) mount -a mount |grep /a11 只摘取/a11 这一行,再次查看具体信息 (可不查看) mount -o remnount /a11 mount |grep /a11 再次查看,挂载选项已改变
方法二:
umount /a11 卸载 mount -a mount |grep /a11 查看,挂载选项已改变
以上是关于linux中磁盘管理的主要内容,如果未能解决你的问题,请参考以下文章