格式化(format)是指对磁盘或磁盘中的分区(partition)进行初始化的一种操作,这种操作通常会导致现有的磁盘或分区中所有的文件被清除。格式化通常分为低级格式化和高级格式化。如果没有特别指明,对硬盘的格式化通常是指高级格式化。格式化后会生成UUID。

一、linux支持的分区格式化命令

CentOS7-1810和Ubuntu18.04支持的格式化命令

mkfs   mkfs.cramfs   mkfs.ext3    mkfs.fat   mkfs  .msdos    mkfs.xfs
mkfs.btrfs    mkfs.ext2    mkfs.ext4    mkfs.minix    mkfs.vfat

openSUSE15支持的格式化命令

mkfs    mkfs.btrfs   mkfs.ext2   mkfs.ext4   mkfs.minix   mkfs.ntfs    mkfs.xfs
mkfs.bfs    mkfs.cramfs   mkfs.ext3   mkfs.fat    mkfs.msdos   mkfs.vfat

Debian9.5支持的格式化命令
mkfs    mkfs.cramfs   mkfs.ext2   mkfs.ext4    mkfs.minix    mkfs.ntfs
mkfs.bfs   mkfs.exfat    mkfs.ext3   mkfs.fat    mkfs.msdos   mkfs.vfat

二、常用的格式化命令说明

1、mkfs
mkfs是在Linux下各文件系统专用程序mkfs.fs-type的前端程序。mkfs本身并不执行建立文件系统的工作,而是去调用相关的程序来执行。例如,若在"-t" 参数中指定ext4,则
mkfs会调用 mkfs.ext4来建立文件系统。mkfs命令是util-linux包的一部分。

用法:
mkfs    [选项]    [类型]    [设备]

选项:
-t, 文件系统类型;若不指定,将使用 ext2,如果想知道-t后面都支持什么文件系统,可以在命令行下输入mkfs.后在按两次Tab键,会显示几个命令除去前面的mkfs.后面就是支持的文件系统。如mkfs.ext4就是明支持ext4文件系统。

举例:格式化成ext4文件系统
-------------------------------------------------------
[root@CentOS7 ~]# mkfs  -t  ext4  /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376

Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (8192 blocks): 完成
Writing superblocks and filesystem accounting information: 完成 #成功
-------------------------------------------------------

举例:格式化成xfs的文件系统
-------------------------------------------------------
[root@CentOS7 ~]# mkfs  -t  xfs  /dev/sdb1
mkfs.xfs: /dev/sdb1 appears to contain an existing filesystem (ext4). #提示这个分区已有ext4文件系统
mkfs.xfs: Use the -f option to force overwrite. #使用-f选项强制覆盖。
[root@CentOS7 ~]# mkfs -t xfs -f /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=65536 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=262144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
[root@CentOS7 ~]#
-------------------------------------------------------

2、mke2fs
mke2fs命令是专门用于管理ext系列文件系统的一个专门的工具。其还有像mkfs.ext2,mkfs.ext3,mkfs.ext4等衍生的命令,它们的用法mke2fs类似,在系统man下它们的帮助手册会直接跳转mke2fs命令的帮助手册。这个命令下有很多选项用于格式化特点的需求。这么命令的选项很多这里就只介绍下面几个更多的通过man mke2fs来查看

命令格式:

mke2fs  [选项]  [设备]

-t    指定文件系统类型(如ext2,ext3,ext4等等),则会从/etc/mke2fs.conf文件中读取默认配置;
-b   设置硬盘的block大小。
-L    设置卷标;
-j   创建ext3文件系统,mkfs.ext3自带了该选项;
-N   设置inode节点的数量;
-m   设置为文件系统预留的块的百分比;
-c   在创建文件系统前进程硬盘自检;
-U    使用指定的UUID创建文件系统,UUID要符合他的命名格式,这个选项非常有用,可以把现有分区格式化成以前分区的UUID。

举例:创建ext4文件系统并设置卷标为vname:
-------------------------------------------------------
[root@CentOS7 ~]# mke2fs  -t  ext4  -L  vname  /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=vname
OS type: Linux
块大小=4096 (log=2) #block默认大小
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
65536 inodes, 262144 blocks
13107 blocks (5.00%) reserved for the super user
第一个数据块=0
Maximum filesystem blocks=268435456
8 block groups
32768 blocks per group, 32768 fragments per group
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376

Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (8192 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

-------------------------------------------------------

3、mkfs.xfs
XfS文件系统是SGI开发的高级日志文件系统,XFS极具伸缩性,非常健壮。所幸的是SGI将其移植到了Linux系统中。RedHat7以后的默认文件系统。

命令格式:

mkfs.xfs  [选项]  [设备]

选项
-b   size=      设置硬盘的block大小,默认4096字节,等号后面是自己的大小,不要加单位
-m  uuid=    更改分区的UUID号,等号后面接实际像设置的uuid,UUID要符合他的命名格式。
-f        强制覆盖
这么命令的选项很多这里就只介绍下面几个更多的通过man mkfs.xfs来查看

举例:格式化分区block大小为1024B uuid为0dd5db1c-2f1f-45e7-bbc1-0cbd68ca2f2d并强制覆盖现有文件系统
-------------------------------------------------------
[root@CentOS7 ~]# mkfs.xfs -b size=1024 -m uuid=0dd5db1c-2f1f-45e7-bbc1-0cbd68ca2f2d -f /dev/sdb1
meta-data=/dev/sdb1 isize=512 agcount=4, agsize=262144 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=1024 blocks=1048576, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=1024 blocks=10240, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
-------------------------------------------------------

4、mkfs.ext3
格式化分区为ext3文件系统,这里就不举例介绍了。

命令格式:

mkfs.ext3  [选项]  [设备]      #可以不加选项直接将分区格式化成ext3

5、mkfs.vfat
这个命令是格式化U盘的,vfat是文件系统类型,linux叫vfat, windows下叫FAT32 、 这样格完后,windows linux 默认都都能认识了,这里就不举例介绍了。

命令格式:

mkfs.vfat   [选项]  [设备]      #可以不加选项直接将分区格式化成FAT32

6、mkfs.btrfs
Btrfs 是一种新型的写时复制 (COW) Linux 文件系统已经并入内核主线。Btrfs 设计实现高级功能的同时,着重于容错、修复以及易于管理。它由 Oracle, Red Hat, Fujitsu, Intel, SUSE, STRATO 等企业和开发者共同开发, Btrfs 以 GNU GPL 协议授权,同时欢迎任何人的贡献.这里就bu举例介绍了。

命令格式:

mkfs.btrfs  [选项]  [设备]      #可以不加选项直接将分区格式化成btrfs

三、使用工具partprobe让kernel从新读取分区表信息

当我们新建立一个分区后在没有重启系统的前提下我们对分区进行格式化,有时候会报错,不能对分区进行格式化,出现上面的原因是我们新建的分区,内核还不知道新分区的存在,只有通过partprobe命令通知操作系统分区表的更改或重启系统后当内核从新加载分区表后才能识别这个分区从而进行格式化,这个命令是在parted软件包中的命令。

用法:
partprobe   [选项]    [设备]

选项:

-d   不更新内核

-s   显示磁盘分区汇总信息

-h   显示帮助信息

-v   显示版本信息

[设备]这里可以不体现

举例:通知操作系统分区表的更改同时显示磁盘分区汇总信息
-------------------------------------------
[root@CentOS7 ~]# partprobe -s    #通过这里命令可以很好的了解系统下有多少磁盘,磁盘的分区表类型,磁盘下的分区数。如果不更新内核分区表信息加上-d选项
/dev/sda: gpt partitions 1 2 3
/dev/sdb: msdos partitions 1 2
/dev/sdc: gpt partitions 1
[root@CentOS7 ~]#
-------------------------------------------

Linux分区格式化的更多相关文章

  1. linux 分区格式化

    要对一个u盘进行分区 windows上直接格式化就行了,但是我的u盘 由于之前做成的系统把u盘分成三个分区,windows只能格式化第一个分区其他两个分区只能看着,理论上windows上也有dd之类的 ...

  2. Linux分区,格式化概念理解

    一.分区概念: 逻辑上分成不同的存储空间. 分区类型: 主分区:最多只能有4个 扩展分区:最多只能有1个. 主分区加扩展分区最多有4个. 布恩那个写入数据,只能包含逻辑分区 逻辑分区: 主分区为什么只 ...

  3. linux硬盘分区格式化及挂载

    1.硬盘的接口类型 硬盘的接口一般分为两种,一种是IDE并行接口,一种是SATA串行接口, 在linux上面IDE接口的硬盘被识别为/dev/hd[a-z]这样的设备,其中hdc表示光驱设备,这是因为 ...

  4. Linux磁盘分区/格式化/挂载(树莓派3挂载硬盘)

    [前言] 本文将要讲解的功能为Linux环境下对磁盘进行操作.包括分区.格式化.挂载外接移动存储设备等. 该文的写作背景为本人的树莓派需要外接一个固态硬盘作为存储设备,因此,便开始了一系列的折腾. [ ...

  5. Linux系统格式化新磁盘并挂载分区

    Linux系统格式化新磁盘并挂载分区 在虚拟机的设置界面中,我们可以选择添加硬盘 添加好硬盘后,我们输入命令fdisk -l 看到有一个未经分区的硬盘 Fdisk命令编辑这个硬盘 输入n创建分区,p选 ...

  6. Linux 硬盘格式化、分区、挂载、卸载、删除分区,Linux重新调整分区

    目录 Linux 硬盘格式化.分区.挂载.卸载.删除分区 0. 查看挂载情况 1. 查看硬盘信息 2. 创建分区 3. 查看磁盘信息 4. 格式化分区 5. 将分区信息写入fstab, 设置开机自动挂 ...

  7. linux增加硬盘 磁盘分区格式化及挂载

    nux磁盘分区格式化及挂载 意义: 给linux 系统服务器扩容, 加一块硬盘 实验环境: virtualBox虚拟软件  + centos6.5 第一步: 添加硬件 硬盘 (我这里用virtualB ...

  8. linux挂载新硬盘并进行分区格式化

    最近要给小伙伴们写几篇文章,关于<linux下误删除文件之后该如何恢复>.对于没有进程占用的文件想要进行数据恢复,不同的文件系统格式需要使用不同的工具,比如:ext4.xfs等.我找遍了我 ...

  9. linux 分区 物理卷 逻辑卷

    今天我们主要说说分区.格式化.SWAP.LVM.软件RAID的创建哈~ 格式化 查看当前分区:fdisk   -l 这个命令我们以前是讲过的,我现在问下,ID那项是什么意思? 83 是代表EXT2和E ...

随机推荐

  1. C#中使用XML存储数据

    创建XML文档 首先引用System.Xml命名空间 1.初始化一个实例 XmlDocument xd = new XmlDocument(); 2.创建XML头文件声明 XmlDeclaration ...

  2. oracle笔记之计算年龄、工龄和TRUNC

    方法一:利用months_between 函数计算 SELECT TRUNC(months_between(sysdate, birthday)/12) AS agefrom dual; 方法二:日期 ...

  3. 使用babel es6 转 es5

    安装 //Webpack 接入 Babel 必须依赖的模块 npm i -D babel-core babel-loader //preset,告诉babel编译的文件中用到了哪些语法env包含当前所 ...

  4. VS.NET(C#)--1.3_VS2005开始

    VS2005开始 开始页 1.文件系统:这是默认,把网站创建到当前物理文件系统上(可以本地或网络).此时VS2005将使用内置的Web服务器,不使用IIS运行Web应用程序.2.HTTP使用IIS处理 ...

  5. Python 2.7.x 和 3.x 版本的重要区别小结

    许多Python初学者都会问:我应该学习哪个版本的Python.对于这个问题,我的回答通常是"先选择一个最适合你的Python教程,教程中使用哪个版本的Python,你就用那个版本.等学得差 ...

  6. VBA switch语句

    当用户想要根据Expression的值执行一组语句时,使用Switch Case语句. 每个值被称为一个”情况”,并根据每种情况变量接通测试.如果测试表达式与用户指定的任何Case不匹配,则执行Cas ...

  7. TensorFlow实现自编码器及多层感知机

    1 自动编码机简介        传统机器学习任务在很大程度上依赖于好的特征工程,比如对数值型,日期时间型,种类型等特征的提取.特征工程往往是非常耗时耗力的,在图像,语音和视频中提取到有效的特征就更难 ...

  8. FICO-Payment Terms 收付款条件和分期付款设置

    转载:https://www.cnblogs.com/weichuo/p/3524278.html Payment Terms 收付款条件和分期付款设置 SAP Payment Terms 中文翻译为 ...

  9. flask之蓝图BulePrint使用

    之前flask启用程序代码和逻辑代码都是在一个页面,这样代码多了很自然不利于关于,如果要将逻辑代码和进行分离,这里需要用到Falsk的蓝图(Blueprint) 项目结构 app文件夹为项目最外层文件 ...

  10. LNMP环境搭建之编译安装指南(php-5.3.27.tar.gz)

    测试环境:CentOS release 6.5 (Final) 软件安装:nginx   mysql-5.5.32-linux2.6-x86_64.tar.gz   php-5.3.27.tar.gz ...