一、磁盘格式化

分好去的磁盘需要格式化之后才可以使用。磁盘分区一般用mke2fs命令或者mkfs.filesystemtype。这个filesystemtype分为ext4,ext3,xfs等等。xfs是centos7自带的文件系统格式。

那么怎么查看当前磁盘支持的文件系统呢?

[root@ruanwenwu02 ~]# cat /etc/filesystems
xfs
ext4
ext3
ext2
nodev proc
nodev devpts
iso9660
vfat
hfs
hfsplus
*

再看看已经挂载后的磁盘:

[root@ruanwenwu02 ~]# mount|grep "\/dev\/sd*"
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
/dev/sda3 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)

mke2fs有几个参数:-b指定块大小,-m指定预留百分比,-i指定每个inode节点大小。

现在我们使用mke2fs格式化xfs:

[root@ruanwenwu02 ~]# mke2fs -t xfs /dev/sdb1
mke2fs 1.42. (-Dec-) Your mke2fs.conf file does not define the xfs filesystem type.
Aborting...
[root@ruanwenwu02 ~]# find / -type f -name "mke2fs.conf"
/etc/mke2fs.conf
[root@ruanwenwu02 ~]# ^C
[root@ruanwenwu02 ~]# vim /etc/mke2fs.conf

失败,根据提示查看配置文件,发现配置文件中没有xfs文件系统的配置。

其实除了mke2fs命令可以格式化磁盘,另一个命令mkfs.xfs也可以,想对应的还有mkfs.ext4,mkfs.ext3等等:

[root@ruanwenwu02 ~]# mkfs.xfs /dev/sdb1
mkfs.xfs: /dev/sdb1 appears to contain an existing filesystem (ext4).
mkfs.xfs: Use the -f option to force overwrite.
[root@ruanwenwu02 ~]# mkfs.xfs -f /dev/sdb1
meta-data=/dev/sdb1 isize= agcount=, agsize= blks
= sectsz= attr=, projid32bit=
= crc= finobt=, sparse=
data = bsize= blocks=, imaxpct=
= sunit= swidth= blks
naming =version bsize= ascii-ci= ftype=
log =internal log bsize= blocks=, version=
= sectsz= sunit= blks, lazy-count=
realtime =none extsz= blocks=, rtextents=

通过实验,我们发现mkfs.xfs不支持-b(块的大小)选项,也不支持-m(预留空间百分比)和-i(每个inode大小)选项。但是mkfs.ext4是支持的:

[root@ruanwenwu02 ~]# mkfs.ext4 -b  -m 0.1 /dev/sdb1
mke2fs 1.42. (-Dec-)
文件系统标签=
OS type: Linux
块大小= (log=)
分块大小= (log=)
Stride= blocks, Stripe width= blocks
inodes, blocks
blocks (0.10%) reserved for the super user
第一个数据块=
Maximum filesystem blocks=
block groups
blocks per group, fragments per group
inodes per group
Superblock backups stored on blocks:
, , , , , , Allocating group tables: 完成
正在写入inode表: 完成
Creating journal ( blocks): 完成
Writing superblocks and filesystem accounting information: 完成

用mke2fs方法也能实现,事实上mke2fs和mkfs.ext4基本上是等同的。默认的块大小是4096。

[root@ruanwenwu02 ~]# mke2fs -t ext4 /dev/sdb1
mke2fs 1.42. (-Dec-)
文件系统标签=
OS type: Linux
块大小= (log=)
分块大小= (log=)
Stride= blocks, Stripe width= blocks
inodes, blocks
blocks (5.00%) reserved for the super user
第一个数据块=
Maximum filesystem blocks=
block groups
blocks per group, fragments per group
inodes per group
Superblock backups stored on blocks:
, , , Allocating group tables: 完成
正在写入inode表: 完成
Creating journal ( blocks): 完成
Writing superblocks and filesystem accounting information: 完成

通过观察发现,如果默认一个块是4096byte,那么一个Inode是4个块。如果我们把每个Inode调成8192,那么看看:

[root@ruanwenwu02 ~]# mke2fs -i  -b  /dev/sdb1
mke2fs 1.42. (-Dec-)
文件系统标签=
OS type: Linux
块大小= (log=)
分块大小= (log=)
Stride= blocks, Stripe width= blocks
inodes, blocks
blocks (5.00%) reserved for the super user
第一个数据块=
Maximum filesystem blocks=
block groups
blocks per group, fragments per group
inodes per group
Superblock backups stored on blocks:
, , ,

发现节点数增加了,块数没有增加。

查看电脑上已经挂载的磁盘:

[root@ruanwenwu02 ~]# mount | grep "\/dev\/sd*"
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
/dev/sda3 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)

二、磁盘挂载

磁盘需要挂载之后才可以读写。挂载需要找一个挂载点,比如/,/boot/这都是挂载点。我们先看看机器上有哪些磁盘是可以挂载的:

[root@ruanwenwu02 ~]# fdisk -l

磁盘 /dev/sda:21.5 GB,  字节, 个扇区
Units = 扇区 of * = bytes
扇区大小(逻辑/物理): 字节 / 字节
I/O 大小(最小/最佳): 字节 / 字节
磁盘标签类型:dos
磁盘标识符:0x00036cf2 设备 Boot Start End Blocks Id System
/dev/sda1 * Linux
/dev/sda2 Linux swap / Solaris
/dev/sda3 Linux 磁盘 /dev/sdb: MB, 字节, 个扇区
Units = 扇区 of * = bytes
扇区大小(逻辑/物理): 字节 / 字节
I/O 大小(最小/最佳): 字节 / 字节
磁盘标签类型:dos
磁盘标识符:0x2f45f776 设备 Boot Start End Blocks Id System
/dev/sdb1 Linux
/dev/sdb2 Linux
/dev/sdb3 Extended
/dev/sdb5 Linux
/dev/sdb6 Linux

/dev/sdb上的分区都没有挂载,那我们现在挂载一下/dev/sdb1/:

[root@ruanwenwu02 ~]# mount /dev/sdb1 /mnt
[root@ruanwenwu02 ~]# mount |grep "\/dev\/sd*"
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
/dev/sda3 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
/dev/sdb1 on /mnt type ext2 (rw,relatime,seclabel)

查看磁盘属性:

[root@ruanwenwu02 ~]# blkid
/dev/sda1: UUID="4d7f0a80-47f8-4b8a-a677-4c14b801d43e" TYPE="xfs"
/dev/sda2: UUID="c1ce52b4-b264-4de0-a7d6-4f33d1ab4a2d" TYPE="swap"
/dev/sda3: UUID="604bc673-7f8d-4355-919f-ed6740a8efc8" TYPE="xfs"
/dev/sdb1: UUID="0f8ee81b-d2df-48d3-adcd-ee79965ca313" TYPE="ext2"
/dev/sr0: UUID="2016-12-05-13-55-45-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"

卸载磁盘:

[root@ruanwenwu02 ~]# umount /dev/sdb1
[root@ruanwenwu02 ~]# !moun
mount |grep "\/dev\/sd*"
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev,seclabel)
/dev/sda3 on / type xfs (rw,relatime,seclabel,attr2,inode64,noquota)
/dev/sda1 on /boot type xfs (rw,relatime,seclabel,attr2,inode64,noquota)

新加入的磁盘要加入开机自动挂载的方法:

vim /etc/fstab

#
# /etc/fstab
# Created by anaconda on Tue Oct ::
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(), findfs(), mount() and/or blkid() for more info
#
UUID=604bc673-7f8d--919f-ed6740a8efc8 / xfs defaults
UUID=4d7f0a80-47f8-4b8a-a677-4c14b801d43e /boot xfs defaults
UUID=c1ce52b4-b264-4de0-a7d6-4f33d1ab4a2d swap swap defaults

文件内容每行被用空格分成5部分,每部分的意义:

uuid=604b... 的意思是磁盘id

xfs 磁盘文件系统

defaults : 挂载默认选项

0 : 备份(无意义)

0:0开启不检查磁盘,如果要检查的话,一般给/boot分区设置为1,其他设置为2

添加一个磁盘启动项:

#
# /etc/fstab
# Created by anaconda on Tue Oct ::
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(), findfs(), mount() and/or blkid() for more info
#
UUID=604bc673-7f8d--919f-ed6740a8efc8 / xfs defaults
UUID=4d7f0a80-47f8-4b8a-a677-4c14b801d43e /boot xfs defaults
UUID=c1ce52b4-b264-4de0-a7d6-4f33d1ab4a2d swap swap defaults
/dev/sdb1 xfs defaults

查看帮助使用命令:man fstab:

defaults
use default options: rw, suid, dev, exec, auto, nouser, and async.

三、手动增加swap空间

一般我们不会用到比较大的swap空间。如果内存为4G,我们最多分配8G的swap空间。如果某些应用程序要求使用那么大的空间,我们可以进行手动扩容。

步骤:

1.创建虚拟磁盘:

[root@ruanwenwu02 ~]# dd if=/dev/zero of=/tmp/testdisk bs=1M count=
记录了200+ 的读入
记录了200+ 的写出
209715200字节( MB)已复制,4.59577 秒,45.6 MB/秒
[root@ruanwenwu02 ~]# ls -ld /tmp/testdisk
-rw-r--r--. root root 11月 : /tmp/testdisk
[root@ruanwenwu02 ~]# ls -ldh /tmp/testdisk
-rw-r--r--. root root 200M 11月 : /tmp/testdisk
[root@ruanwenwu02 ~]# mkswap /tmp/testdisk
正在设置交换空间版本 1,大小 = 204796 KiB

这里面有几点需要说明一下。

dd命令的 if参数的意思是:数据源从哪里来。/dev/zero是个造零器。of的意思是到那里去。bs是块的大小。count是多少块。

mkswap是将造的空间转换成swap空间。

2.将虚拟磁盘的空间增加到swap:

[root@ruanwenwu02 ~]# free -m
total used free shared buff/cache available
Mem:
Swap:
[root@ruanwenwu02 ~]# swapon /tmp/testdisk
swapon: /tmp/testdisk:不安全的权限 ,建议使用 。
[root@ruanwenwu02 ~]# free -m
total used free shared buff/cache available
Mem:
Swap:
[root@ruanwenwu02 ~]# chmod /tmp/testdisk
[root@ruanwenwu02 ~]# free -m
total used free shared buff/cache available
Mem:
Swap:

如果要删除新增的空间,使用命令:

[root@ruanwenwu02 ~]# swapoff /tmp/testdisk
[root@ruanwenwu02 ~]# free -m
total used free shared buff/cache available
Mem:
Swap:

Linux学习(十四)磁盘格式化、磁盘挂载、手动增加swap空间的更多相关文章

  1. 磁盘格式化/磁盘挂载/手动增加swap空间

    4.5/4.6 磁盘格式化 4.7/4.8 磁盘挂载 4.9 手动增加swap空间 磁盘格式化 查看centos7支持的文件系统格式 cat  /etc/filesystem,centos7默认的文件 ...

  2. Linux centosVMware 磁盘格式化、磁盘挂载、手动增加swap空间

    一.磁盘格式化 磁盘分区后不能直接使用,需要对每一个分区格式化,格式化其实就是安装系统文件. 命令mke2fs:不支持格式化成xfs系统文件  mkfs.ext4 == mke2fs -t ext4 ...

  3. 磁盘格式化、磁盘挂载、手动增加swap空间 使用介绍

    第4周第2次课(4月10日) 课程内容: 4.5/4.6 磁盘格式化4.7/4.8 磁盘挂载4.9 手动增加swap空间 4.5/4.6 磁盘格式化 [root@jimmylinux-002 ~]# ...

  4. Linux学习笔记(4)磁盘分区(fdisk)、挂载与文件系统命令

    Linux学习笔记(4)磁盘分区(fdisk).挂载与文件系统命令 1.磁盘分区是怎么表示的? 1.1 对于IDE接口,第一主盘为hda,第1从盘为hdb,第1从盘的第1个分区为hdb1 1.2 对于 ...

  5. centos、linux查找未挂载磁盘格式化并挂载?

    centos.linux查找未挂载磁盘格式化并挂载? df -h 查看当前linux服务器硬盘: fdisk -l /dev/sda   第一块硬盘 /dev/sdb   第二块硬盘 依此类推 以/d ...

  6. Linux学习笔记(5)磁盘分区(parted)

    Linux学习笔记(5)磁盘分区(parted) .演示: ()parted /dev/sdb :进入parted 分区命令(可以使用help来查看命令详细描述)(2)p :列出当前磁盘分区信息,可以 ...

  7. linux硬盘的分区、格式化、挂载以及LVM

    linux硬盘的分区.格式化.挂载以及LVM   多块硬盘的组合: 硬盘分两种:ide和scsi. ide硬盘: /dev/hda 第一块IDE硬盘 /dev/hdb 第二块IDE硬盘 ... /de ...

  8. Linux 学习第四天

    Linux学习第四天 一.常用命令 1.tar  (压缩.解压) A.添加压缩包  tar czvf 压缩包名称.tar.gz 源文件 B.添加压缩包  tar cjvf 压缩包名称.tar.bz2 ...

  9. Linux学习笔记(四) vi编辑器

    一.vi 编辑器 vi 编辑器 (Visual Interface) 是所有 Unix 及 Linux 系统下标准的编辑器,相当于 Windows 系统中的记事本 它有三种模式,分别是: Comman ...

随机推荐

  1. Linux 常用命令之二

    整理以前学习Linux的笔记. 查找目录.查看当前所在路径.新建文件.查看文件内容.修改文件内容.压缩文件操作.搜索命令.管道命令.查看进程.终止进程.查看端口. 7,命令find--查找目录 fin ...

  2. 认识StringBuffer类

    概述: StringBuffer类是线程安全的可变字符序列 线程安全效率低 StringBuffer和String的区别 * String是一个不可变的字符序列 * StringBuffer是一个可变 ...

  3. .NetCore之下载文件

    本篇将和大家分享的丝.NetCore下载文件,常见的下载有两种:A标签直接指向下载文件地址和post或get请求后台输出文件流的方式,本篇也将围绕这两种来分享:如果对您有好的帮助,请多多支持. 允许站 ...

  4. oracle 表查询(一)

    通过scott用户下的表来演示如何使用select语句,接下来对emp.dept.salgrade表结构进行解说. emp 雇员表字段名称   数据类型       是否为空   备注-------- ...

  5. Redisson分布式锁的简单使用

    一:前言 我在实际环境中遇到了这样一种问题,分布式生成id的问题!因为业务逻辑的问题,我有个生成id的方法,是根据业务标识+id当做唯一的值! 而uuid是递增生成的,从1开始一直递增,那么在同一台机 ...

  6. Quartz学习——Quartz简单入门Demo(二)

    要学习Quartz框架,首先大概了解了Quartz的基本知识后,在通过简单的例子入门,一步一个脚印的走下去. 下面介绍Quartz入门的示例,由于Quartz的存储方式分为RAM和JDBC,分别对这两 ...

  7. Island Perimeter

    You are given a map in form of a two-dimensional integer grid where 1 represents land and 0 represen ...

  8. zoj3204 connect them 最小生成树 暴力

    Connect them Time Limit: 1 Second      Memory Limit:32768 KB You have n computers numbered from 1 to ...

  9. HDU2036 改革春风吹满地

    第一次看到这题果断放弃,毕竟几何白痴,第二次刷没做的题的时候突然想到这个三角形面积的向量法:S=|x1*y2-x2*y1|  但是此题可能是凹多边形,所以不能加绝对值,可以画个凹四边形看看. HDU2 ...

  10. 易语言关于使用CURL,网页_访问,网页_访问S,网页_访问_对象,鱼刺(winHttpW)发送Get性能测试

    易语言关于使用 CURL,网页_访问,网页_访问S,网页_访问_对象,鱼刺(winHttpW)发送Get性能测试 测试模块情况: |-精易模块5.8  |-鱼刺类Http  |-libCURL +++ ...