11.3 磁盘格式化, 磁盘挂载, 手动增加swap空间

本文介绍了在Linux环境下如何进行磁盘的格式化、挂载及卸载操作,并详细讲解了相关命令及其选项,如mke2fs、mount和umount等。此外,还介绍了如何手动增加swap空间。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

4.5/4.6 磁盘格式化

命令 : mke2fs, mkfs.ext2, mkfs.ext3, mkfs.ext4

windows  NTFS  fat

LINUX   cat /etc/filesystems

文件系统  7  /   /boot    xfs

mkfs.ext4==mke2fs -t ext4(不支持xfs)

mkf.xfs -f /dev/sdb1

查看还没挂载的分区  blkid /dev/sdb1

当用man查询这四个命令的帮助文档时,会发现我们看到了同一个帮助文档,这说明四个命令是一样的。mke2fs常用的选项有:

‘-b’ 分区时设定每个数据区块占用空间大小,目前支持1024, 2048 以及4096 bytes每个块。

‘-i’ 设定inode的大小

‘-N’ 设定inode数量,有时使用默认的inode数不够用,所以要自定设定inode数量。

‘-c’ 在格式化前先检测一下磁盘是否有问题,加上这个选项后会非常慢

‘-L’ 预设该分区的标签label

‘-j’ 建立ext3格式的分区,如果使用mkfs.ext3 就不用加这个选项了

‘-t’ 用来指定什么类型的文件系统,可以是ext2, ext3 也可以是 ext4.

192104_6Tra_3716831.png

4.7/4.8 磁盘挂载

已经学习了磁盘的分区和格式化,那么格式化完了后,如何去用它呢?这就涉及到了挂载这块磁盘。格式化后的磁盘其实是一个块设备文件,类型为b,也许您会想,既然这个块文件就是那个分区,那么直接在那个文件中写数据不就写到了那个分区中么?当然不行。

在挂载某个分区前需要先建立一个挂载点,这个挂载点是以目录的形式出现的。一旦把某一个分区挂载到了这个挂载点(目录)下,那么再往这个目录写数据使,则都会写到该分区中。这就需要您注意一下,在挂载该分区前,挂载点(目录)下必须是个空目录。其实目录不为空并不影响所挂载分区的使用,但是一旦挂载上了,那么该目录下以前的东西就不能看到了。只有卸载掉该分区后才能看到。

命令 : mount

如果不加任何选项,直接运行 “mount” 命令,这个命令可以查看当前系统已经挂载的所有分区,以及分区文件系统的类型,挂载点和一些选项等信息,所以您如果想知道某个分区的文件系统类型直接用该命令查看即可。下面我们先建立一个空目录,然后在目录里建一个空白文档。

192521_lc9X_3716831.png

然后把刚才格式化的 /dev/sdb2 挂载到 /newdir 上。

192854_Yyhi_3716831.png

df -h可以看到刚刚挂载的分区 如下所示

192942_HKST_3716831.png

mount 命令常用的选项有:’-a’, ‘-t’, ‘-o’. 在讲 ‘-a’ 选项前,我们有必要先了解一下这个文件 /etc/fstab.

193706_vra9_3716831.png

这个文件是系统启动时,需要挂载的各个分区。第一列就是分区的标识,可以写分区的LABEL,也可以写分区的UUID,当然也可以写分区名(/dev/sda1);第二列是挂载点;第三列是分区的格式;第四列则是mount的一些挂载参数,一般情况下,直接写defaults即可;第五列的数字表示是否被dump备份,是的话这里就是1,否则就是0;第六列是开机时是否自检磁盘。在CentOS7系统里,所有分区中该列的值都是0。

以下是第4列中常用到的参数。

“async/sync” : async表示和磁盘和内存不同步,系统每隔一段时间把内存数据写入磁盘中,而sync则会时时同步内存和磁盘中数据;

“auto/noauto” : 开机自动挂载/不自动挂载;

“default” : 按照大多数永久文件系统的缺省值设置挂载定义,它包含了rw, suid, dev, exec, auto, nouser, async

“ro” : 按只读权限挂载 ;

“rw” : 按可读可写权限挂载 ;

“exec/noexec” : 允许/不允许可执行文件执行,但千万不要把根分区挂载为noexec,那就无法使用系统了,连mount命令都无法使用了,这时只有重新做系统了;

“user/nouser” : 允许/不允许root外的其他用户挂载分区,为了安全考虑,请用nouser ;

“suid/nosuid” : 允许/不允许分区有suid属性,一般设置nosuid ;

“usrquota” : 启动使用者磁盘配额模式,磁盘配额相关内容在后续章节会做介绍;

“grquota” : 启动群组磁盘配额模式;

学完这个/etc/fstab后,我们就可以自己修改这个文件,增加一行来挂载新增分区。

194121_xILJ_3716831.png

‘-t’ 选项用来指定挂载的分区类型,默认不指定会自动识别。

‘-o’ 选项用来指定挂载的分区有哪些特性,即上面 “/etc/fatab” 配置文件中第四列的那些。

由于指定了 ‘ro’ 参数,所以该分区只读了。通过 mount 命令也可以看到 /dev/sdb5 有 ‘ro’ 选项

命令 : blkid

在日常的运维工作中遇到过这样的情况,一台服务器上新装了两块磁盘,磁盘a(在服务器上显示为sdc)和磁盘b(在服务器上显示为sdd),如果把这两块磁盘都拔掉了,然后再重新插上,重启机器,结果磁盘编号调换了,a变成了sdd,b变成了sdc(这是因为把磁盘插错了插槽),问题来了。通过上边的学习,您挂载磁盘是通过/dev/hdb1 这样的分区名字来挂载的,如果先前加入到了/etc/fstab 中,结果系统启动后则会挂载错分区。那么怎么样避免这样的情况发生?

这就用到了UUID,可以通过 blkid 命令获取各分区的UUID:在 /etc/fstab 中添加一行,   UUID=c61117ca-9176-4d0b-be4d-1b0f434359a7 /newdir ext4 defaults 0 0

如果想让某个分区开机后就自动挂载,有两个办法可以实现:

  1. 在 /etc/fstab 中添加一行,如上例中那行;
  2. 把挂载命令写到 /etc/rc.d/rc.local 文件中去,会经常把想要开机启动的命令加到这个文件中。系统启动完后会执行这个文件中的命令,所以只要您想开机后运行什么命令统统写入到这个文件下面吧,直接放到最后面即可。

命令 : umount

后边可以跟挂载点,也可以跟分区名(/dev/hdb1), 但是不可以跟LABEL和UUID.

umount 命令有一个非常有用的选项那就是 ‘-l’, 有时候您会遇到不能卸载的情况

这是因为当前目录为要卸载的分区上,解决办法有两种,一是到其他目录,二是使用 ‘-l’ 选项

4.9 手动增加swap空间

从装系统时就接触过这个swap了,它类似与windows的虚拟内存,分区的时候一般大小为内存的2倍,如果您的内存超过8G,那么您分16G似乎是没有必要了。分16G足够日常交换了。然而,还会有虚拟内存不够用的情况发生。如果真遇到了,莫非还要重新给磁盘分区?当然不能,那我们就增加一个虚拟的磁盘出来。基本的思路就是:建立swapfile -> 格式化为swap格式 -> 启用该虚拟磁盘。

195558_p0aO_3716831.png

dd” 这个命令会经常用到,所以请您也要掌握它的使用方法,其实也不难,用 “if” 指定源,基本上除了 “/dev/zero” 外基本上不会写别的,而/dev/zero 是UNIX系统特有的一个文件,它可以提供源源不断的 “0”, 关于它的其他信息请您在网上查一下资料。 “of” 指定目标文件, “bs” 定义块的大小, “count” 定义块的数量,这两个参数的多少决定了目标文件的大小,目标文件大小 = bs x count. dd建了一个大小为400M的文件,然后格式化成swap格式:

195648_vQnE_3716831.png

格式化完后,就可以挂载上使用了:

195840_Hkzn_3716831.png

其中 “free” 这个命令用来查看内存使用情况, “-m” 表示以M为单位显示。

转载于:https://my.oschina.net/u/3716831/blog/1560632

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值