前言
在本章节中我们会学习在Linux虚拟机下磁盘如何分区、格式化、挂载、卸载等一系列操作。
实验步骤一、添加虚拟磁盘
在Linux下的磁盘分区、格式化、挂载、卸载等一系列操作之前,我们先给虚拟机添加一块磁盘linux查看磁盘,具体操作步骤如下(软件为VMware Workstation Pro)。
1、在当前的虚拟机选项卡点击鼠标右键,选择“设置”,如图1-1所示。
点击设置进入图1-2界面
2、点击添加,选择硬盘,点击下一步进入图1-3界面
点击下一步,默认创建新虚拟磁盘,进入图1-4界面
磁盘大小可以根据操作需要来设置大小,这里我选择默认20个G,虚拟磁盘存储为单个文件或拆分成多个文件都可以,我就选择了默认,点击下一步,进入图1-5界面。
3、文件名可以自由设定,然后点击完成确定,一块磁盘就添加成功了。添加完成后,
用reboot命令重启虚拟机。重启后,使用lsblk命令查看磁盘,示例如下:
可以看到存在一块名叫sdb的块设备,大小为20GB。
二、磁盘分区
1、fdisk命令
fdisk命令是Linux硬盘分区下的一个分区命令,可以对磁盘进行分区操作。
示例命令如下:
2、下面介绍一下在此常用的几个命令
p:表示打印当前磁盘的分区情况。
n:表示创建一个新的分区。
w:表示保存。
q:表示退出。
d:表示删除一个分区。
3、下面我们将对新增的磁盘、/dev/sdb进行分区操作。
我们先给它建立第一个分区,示例如下:
使用n命令新建分区,它会提示我们是选择e(扩展分区)还是p(主分区)。我
选择的是p,于是输入p,然后回车,示例如下:
输入p后,会提示分区数,这里我写的1,因为这是第1个分区(你也可以写2或3,但最多为4)。按回车,会提示你起始扇区从哪里开始,默认是2048,可以写2048或者直接回车。然后,提示你输入一个扇区的数值,需要给这个分区划分空间大小。我这里写的是+1000M。用p命令打印查看,得知已经多出了一个分区,示例如下:
按照上面的步骤操作,一直创建主分区到4。示例如下:
创建4个主分区后,再想创建新分区时则会出问题,这是因为在Linux系统中最多只能创建4个主分区。如果你想创建多个分区,就是在创建第3个分区后、创建第4个分区时选择扩展分区。
4、首先删除第4个分区,然后再新建分区,示例如下:
输入命令p进行打印查看,示例如下:
会看到扩展分区在最后一列显示为Extended,接下来继续创建分区,示例如下:
用命令p进行打印查看linux查看磁盘,示例如下:
此时再分区就和以前不一样了,你不再需要选择是主分区还是扩展分区,而是直接定义分区大小。当创建完前3个主分区后,把剩余的磁盘空间全部划给了第4个扩展分区,再划分新的分区时,是在已经划分的扩展分区里来分的。
上例中,/dev/sdb4为扩展分区,/dev/sdb5是它的子分区,这个子分区称为逻辑分区。如果你发现分区不合理,想删除某个分区,这就用到了d命令,下面我再继续演示一下:
命令输入d,然后输入1(也可以输入其它的分区号)用p进行打印查看
5、逻辑分区划分
如果把第1个分区定为扩展分区,并把全部空间都划分给扩展分区,那么再继续分区时,会提示你选择分区类型为主分区(primary partition)还是逻辑分区(logical partition),逻辑分区的id是从5开始的,因为前4个id为主分区或者扩展分区,示例如下:
分区完成后,需要输入w命令来保存我们的配置,示例如下:
然后使用命令fdisk -l /dev/sdb查看分区情况,示例如下:
通过以上的操作,相信你已经学会分区了。
三、格式化磁盘分区
磁盘分区虽然分好了,但是暂时不能用,我们还需对每个分区进行格式化,所谓格式化,其实就是安装文件系统。
1、命令 mke2fs、mkfs.ext2、mkfs.exts、mkfs.ext4和 mkfs.xfs
当用man命令查询前4个命令的帮助文档时,我们看到的的是同一个帮助文档,这三个命令是一样的。我们以mke2fs命令为例进行介绍。
mkefs命令的选项如下:
-b: 表示分区时设定每个数据区块占用的空间大小。目前,每个数据块支持1024B,2048 B以及4096B。
-i: 表示设定inode的大小。
-N:表示设定inode的数量。
-c : 表示在格式化前先检测一下磁盘是否有问题。
-L: 表示预设该分区的标签(label)。
-j : 表示建立ext3格式的分区。如果使用mkfs.ext3格式,就不用加这个选项了。
-t : 用来指定文件系统的类型,可以是ext2、ext3,也可以是ext4。
示例如下:
2、指定文件系统格式为ext4时,命令mke2fs -t ext /dev/sdb5等同于mkfs.ext4 /dev/sdb5。然而,mke2fs并不支持把分区格式化成XFS类型,而只能使用mkfs.xfs,示例如下:
在上例中,你是否注意到“块大小=4096”或者bsize=4096呢?磁盘在格式化的时候,会预先规定好每一块的大小,然后再把所有的空间分割成一个一个的小块。存储数据的时候,也是一个块一个块地写入。如果你的磁盘里存储的都是特别小的文件,比如说1KB或者2KB,我建议你在格式化磁盘时指定块数值小一点。ext4文件系统的默认块大小4096B(即4KB)。在格式化时,可以指定块的大小为1024B、2048B或者4096B(它们是成倍增加的)。虽然格式化可以指定块大小超过4096B,但一旦超过4096B,就不能正常挂载。如何指定块大小呢?下面我演示一下具体操作,示例如下:
通过上面的操作可以发现,如果指定块大小为8192B,会提示块值设置的太大了,我们可以直接输入y强制格式化。你还可以输入其他数字,但需要是1024的指数倍(1024、2048、4096、或者68192)。另外,还可以给分区指定标签,示例如下:
这里我们可以使用-L选项来指定标签。标签会在挂载磁盘是使用,也可以写入配置文件。
关于格式化这部分内容,我建议你,除非有需要,否则不需要指定块大小。你只需要记住-t和-L这两个选项即可。
四、挂载/卸载磁盘
前面我们讲到了磁盘的分区和格式化,那么格式化完成后,如何使用这些磁盘呢?这就涉及到了挂载磁盘。格式化后的磁盘其实是一块设备文件,类型为b。
在挂载某个分区前,需要先建立一个挂载点,这个挂载点是以目录的形式出现的。一旦把某个分区挂载到这个挂载点(目录)下,要再往这个目录写数据时,就都会写到该分区中。
1、命令mount
使用此命令,可以查看当前系统已经挂载的所有分区、分区文件系统的类型、挂载点及一些选项等信息。如果想指定某个已挂载分区的文件系统类型,直接用mount命令查看即可。
2、下面我们先建立一个空目录,然后在目录里建立一个空白文档。我这里已经建好目录了 下面就直接在目录下建立一个文档示例如下:
查看会看到newdir目录下,有个newfile.txt文档。
然后把刚才格式化的/dev/sdb5挂载到?newdir 上,示例如下:
把/dev/sdb5挂载到/newdir后,原来在、newdir下的newfile.txt就看不到了,通过命令df -h可以查看刚刚挂载的分区。
3、命令umount
此命令为卸载命令,后面可以跟挂载点,也可以跟分区名(、dev/sdb1),但是不能跟LABEL和UUID。我们卸载一下/dev/sdb5磁盘分区,示例如下:
用命令df -h |grep -v tmpfs查看会看到/dev/sdb5磁盘分区已经不存在了。
通过上面的实验操作相信你已经学会了如何在虚拟机下分区、格式化、挂载、卸载等一系列操作了。
限时特惠:本站每日持续更新海量设计资源,一年会员只需29.9元,全站资源免费下载
站长微信:ziyuanshu688