在Linux系统中若想使用某一个硬盘,需事先进行以下三点准备:
- 1 . 对硬盘进行分区;
- 2 .对硬盘分区进行格式化;
- 3 .将相应的硬盘分区挂载至文件系统相应的目录路径。
在第一点我们通常使用fdisk命令进行磁盘的分区操作,本次文章主要记录下fdisk命令的使用。
fdisk命令简介
命令格式:
fdisk [options] [DEVICE]
常用选项:
-l:显示对应磁盘设备的分区情况,如果没有提供相关的磁盘,则默认显示/proc/partitions里面记录的设备文件的分区情况;
-v:打印程序版本;
fdisk命令的操作选项
在使用fdisk命令编辑磁盘设备的过程中需要输入相应的操作命令才能完成相应的操作,在此过程中我们输入m并回车后可以查看到对应的操作命令及作用,常用的有如下选项:
m:显示菜单和帮助信息;
d:删除分区;
l:显示已知的分区类型;
n:新增一个分区;
p:打印分区的信息;
q:退出编辑,不保存;
w:保存当前的分区信息并退出;
t:设置分区号;
v:进行分区检查;
fdisk命令的使用方式
fdisk命令有几种使用方式,一种是直接使用选项执行命令,如:
[root@localhost ~]# fdisk -l
磁盘 /dev/sda:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x00089792
设备 Boot Start End Blocks Id System
/dev/sda1 * 2048 1026047 512000 83 Linux
/dev/sda2 1026048 41943039 20458496 8e Linux LVM
磁盘 /dev/mapper/centos-root:18.8 GB, 18756927488 字节,36634624 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘 /dev/mapper/centos-swap:2147 MB, 2147483648 字节,4194304 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
其次是fdisk [options] [device] 的使用方式,如fdisk -l /dev/sda 是查看/dev/sda的分区信息,fdisk /dev/sda 则是对对应磁盘的分区信息进行编辑。
注意:使用fdisk对磁盘编辑完成后,需要使用w选项进行保存退出,否则直接q退出后将丢失刚编辑完成的分区信息。
注意:对于已经在使用的磁盘来说,新建分区后需要让内核重读其分区表才能是新建的分区生效:
Centos 5:partprobe [device]
Centos6/7: partx -a [device] 或者 kpartx -af [device]
fdisk命令的使用案例
如系统中新增了一个磁盘为/dev/sdb,在正常使用前首先需要使用fdisk命令对该硬盘进行分区,首先我们先看看/dev/sdb的信息。
[root@localhost ~]# fdisk -l /dev/sdb
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
从上述命令的输出信息,我们可以看到/dev/sdb这个硬盘大小为20G,那么下面我们将该硬盘进行分区操作。
首先我们建立一个大小为5G,类型为swap的磁盘分区,操作如下:
[root@localhost ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x0155e28d 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n #选择选项n创建新的分区
Partition type: #默认支持4个主分区
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p #选择创建为主分区
分区号 (1-4,默认 1): #默认1-4为主分区号,5开始分拓展分区号
起始 扇区 (2048-41943039,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-41943039,默认为 41943039):+5G #Last扇区-起始扇区所得的大小为磁盘大小,此处可以利用单位来设置大小,如+5G为起始扇区+5G=Last扇区;
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):t
已选择分区 1
Hex 代码(输入 L 列出所有代码):82 #设置分区类型,默认类型为Linux
已将分区“Linux”的类型更改为“Linux swap / Solaris”
命令(输入 m 获取帮助):p #打印查看创建完成的分区信息
磁盘 /dev/sdb:21.5 GB, 21474836480 字节,41943040 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
磁盘标签类型:dos
磁盘标识符:0x0155e28d
设备 Boot Start End Blocks Id System
/dev/sdb1 2048 10487807 5242880 82 Linux swap / Solaris
命令(输入 m 获取帮助):w #保存退出
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
在完成分区后,下一步需要对新建的分区进行格式化操作,由于不同类似的分区的格式化方式不一样,此处我们新建的是swap分区,其格式化方式为:
[root@localhost ~]# mkswap /dev/sdb1
正在设置交换空间版本 1,大小 = 5242876 KiB
无标签,UUID=eccbb7d9-89aa-4123-8b11-2e3f37495f62
格式化完成后,即可正常启用该swap分区。