Linux磁盘格式化命令详解

命令:mke2fs mke2fs [选项] 文件系统 磁盘盘符=

注释:

1、磁盘虽然分好区了,但是还不能用,还需要在这每一个分区上格式化,所谓格式化,其实就是安装文件系统,Windows下的文件系统有Fat32、NTFS,CentOS使用的文件系统为ext,之前centOS5版本使用ext3作为默认的文件系统,而CentOS6使用ext4作为默认的文件系统;

2、当用man查询这四个命令的帮助文档时,你会发现我们看到了同一个帮助文档,这说明四个命令是一样的;

3、指定文件系统格式为ext4,该命令等同于mkfs ext4 /dev/sdb5,以后我们遇到余姚格式磁盘分区的时候,直接指定格式化为ext4即可,也可以根据操作系统的版本来决定格式化什么格式;

选项:

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

-i:设定inode的大小;

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

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

-L:预设该分区的标签label;

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

-t:用来指定什么类型的文件系统,可以是ext2、ext3也可以是ext4;

-m:格式化时,指定预留给管理员的磁盘比例,是一个百分比,只针对mke2fs命令;

例如:mke2fs -t ext4 -b 4096 /dev/sdb5

注意:其中一个指标是“块的大小=4096”这里涉及到一个“块”的概念,磁盘在被格式化的时候会预先规定好每一个块的大小,然后再把所有的空间分割成一个一个的小块,存数据的时候也是一个快一个快的去写入,所以如果你的磁盘存的都是特别小特别小的文件,比如说1k或者2k,那么建议在格式化磁盘的时候指定块数值小一点,ext文件系统默认块的大小为4096,也就是4k,在格式化的时候,可以指定块大小为1024、2048或者4096(它们是成倍增加的),虽然格式化的时候可以指定块大小超过4096,但是一旦超过4096则不能正常挂载;

指定块的大小: mke2fs -t ext4 -b 8192 /dev/sdb5

注意:可以使用-L来指定标签,标签会在挂载磁盘的时候使用,另外也可以写到配置文件里,关于格式化的这一部分,我建议除非有需求,否则不需要指定块的大小,也就是说,你只需要记住这两个选项:-t和-L即可。

更多关于Linux磁盘格式化的基础分享:

基本功,格式化命令,以格式化 /dev/sda1 分区为例:

$ sudo umount /dev/sda1

# 必须先卸载该分区

# 格式化为 FAT 分区

$ sudo mkfs.vfat -F 32 /dev/sda1 # -F 参数必须大写,参数有 12,16 和 32,分别对应 FAT12,FAT16,FAT32。

# 格式化为 NTFS 分区,先要安装ntfsprogs,以 Ubuntu / Debian 为例:

$ sudo apt-get install ntfsprogs

#然后执行格式化命令,以格式化 /dev/sda1 分区为例:

$ sudo umount /dev/sda1 # 必须先卸载该分区
$ sudo mkfs.ntfs /dev/sda1 # 格式化为ntfs速度有点慢。

# 格式化为ext4/3/2 , 以格式化 /dev/sda1 分区为例:

$ sudo umount /dev/sda1 # 必须先卸载该分区
$ sudo mkfs.ext4 /dev/sda1 # 格式化为ext4分区
$ sudo mkfs.ext3 /dev/sda1 # 格式化为ext3分区
$ sudo mkfs.ext2 /dev/sda1 # 格式化为ext2分区

由于ext系列的分区都有一个给super user的保留空间,必须占用一定的百分比,默认5%,这么一来格式化容量小的分区还不觉得,5%也没多少,但是如果是几百G,1T的分区就会有问题,in this case,5%可是不小的数目啊!

『解决方法』

一、针对将要格式化的分区,以ext3为例:

$ sudo umount /dev/sda1 # 必须先卸载该分区,这里要格式化的是 /dev/sda1 分区。

$ sudo mkfs.ext3 -m 0.05 /dev/sda1 # 注意-m后的参数,设定的已经是百分位,这里设定为0.05,是0.05%,也就是万分之5!

好了,这样以1T的分区为例,1T=1024GB=1048576MB(都是乘以1024的关系),1048576MB*0.0005=524.288MB。

也就是说设定-m参数之后,保留区大概是524MB。当然你可以根据自己喜好设定。

二、对已经格式化完毕的分区,并且不想擦出分区中的数据,可以使用tune2fs -m的方法:

# 这条命令无须先卸载分区。

$ sudo tune2fs -m 0.05 /dev/sda2 # 这个例子是转换 /dev/sda2 分区的super user保留区,同样设定为0.05,在提醒一次,是0.05%,也就是万分之5。

(0)

相关推荐

  • Linux十个新手命令分享

    Linux对我们的生活有着很大的影响.对于新手来说,头一次入手Linux只会让你觉得不适.因为在Linux上,你通常应该使用终端命令,而不是只要点击启动器图像(就像你在Windows上操作那样).不过别担心,本文介绍的这10个基本的Linux命令和重要命令会帮助你尽快入门. Linux对我们的生活有着很大的影响.至少,你的安卓手机上面就有Linux内核.然而,头一次入手Linux只会让你觉得不适.因为在Linux上,你通常应该使用终端命令,而不是只要点击启动器图像(就像你在Windows上操作那

  • linux中ipset命令的使用方法详解

    ipset介绍 iptables是在linux内核里配置防火墙规则的用户空间工具,它实际上是netfilter框架的一部分.可能因为iptables是netfilter框架里最常见的部分,所以这个框架通常被称为iptables,iptables是linux从2.4版本引入的防火墙解决方案. ipset是iptables的扩展,它允许你创建 匹配整个地址sets(地址集合) 的规则.而不像普通的iptables链是线性的存储和过滤,ip集合存储在带索引的数据结构中,这种结构即时集合比较大也可以进行

  • Linux中利用grep命令如何检索文件内容详解

    前言 Linux系统中搜索.查找文件中的内容,一般最常用的是grep命令,另外还有egrep命令,同时vi命令也支持文件内容检索.下面来一起看看Linux利用grep命令检索文件内容的详细介绍. 方法如下: 1.搜索某个文件里面是否包含字符串 命令格式:grep "被查找的字符串" filename1 例如: grep "0101034175" /data/transaction.20170118.log 2.在多个文件中检索某个字符串 命令格式: grep &qu

  • Linux中date命令转换日期提示date: illegal time format问题解决

    前言 很多shell脚本里面需要打印不同格式的时间或日期,以及要根据时间和日期执行操作.延时通常用于脚本执行过程中提供一段等待的时间.日期可以以多种格式去打印,也可以使用命令设置固定的格式.在类UNIX系统中,日期被存储为一个整数,其大小为自世界标准时间(UTC)1970年1月1日0时0分0秒起流逝的秒数. 语法 date(选项)(参数) 但最近在使用中遇到了一个问题,下面来一起看看详细的介绍吧. 问题:运行date命令抛错 date -j -f "%a %b %d %T %Z %Y"

  • java程序员必须要学会的linux命令总结(推荐)

    1.查找文件 find / -name filename.txt 根据名称查找/目录下的filename.txt文件. find . -name "*.xml" 递归查找所有的xml文件 2.查看一个程序是否运行 ps –ef|grep tomcat 查看所有有关tomcat的进程 3.终止线程 kill -9 19979 终止线程号位19979的进程 pkill -9 java 批量终止java进程 4.查看文件,包含隐藏文件 ls -al 5.当前工作目录 pwd 6.复制文件 c

  • expect命令在linux下实现批量ssh免密

    有时候我们需要批量发送ssh命令给服务器,但是有可能有些服务器是新加入的,还没有配置ssh免密,这个时候就会提示我们输入yes/no 或者password等,expect脚本命令就是用于在提示这些的时候,自动为我们输入相应的文字. expect脚本 先看一段shell脚本,实现了ssh自动连接 #!/usr/bin/expect spawn ssh 192.168.1.241 expect "password" send "123456\r" expect &quo

  • 简述Linux文本处理命令“sed”

    文本处理编辑命令sed sed是一种流编辑器,它是文本处理中非常中的工具,能够完美的配合正则表达式使用,功能不同凡响.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕.接着处理下一行,这样不断重复,直到文件末尾.文件内容并没有 改变,除非你使用重定向存储输出.Sed主要用来自动编辑一个或多个文件:简化对文件的反复操作:编写转换程序等. 命令格式: sed [选项] '(截取的

  • Linux中英文命令对应

    很多朋友在论坛上找Linux英文命令,我们给大家整理了比较全的Linux英文命令,并且附上了对应的中文意思. su:Swith user 切换用户,切换到root用户 cat: Concatenate 串联 uname: Unix name 系统名称 df: Disk free 空余硬盘 du: Disk usage 硬盘使用率 chown: Change owner 改变所有者 chgrp: Change group 改变用户组 ps:Process Status 进程状态 tar:Tape

  • Linux企业运维人员常用的150个命令分享

    本文将向大家介绍Linux企业运维人员常用的150个命令,如有不足之处,还望海涵.当然更希望大家留言指出.希望对大家有所帮助! 命令 功能说明 线上查询及帮助命令(2个) man 查看命令帮助,命令的词典,更复杂的还有info,但不常用. help 查看Linux内置命令的帮助,比如cd命令. 文件和目录操作命令(18个) ls 全拼list,功能是列出目录的内容及其内容属性信息. cd 全拼change directory,功能是从当前工作目录切换到指定的工作目录. cp 全拼copy,其功能

  • Linux中Git集中操作命令汇总

    SyntaxHighlighter git version # 查看版本 git config -l # 查看当前配置 git config --global user.name "Dean" # 设置用户名,邮箱 git config --global user.email g.xiangyu1990@gmail.com # 设置用户名,邮箱 git config --global alias.ci commit # 设置git命令的别名 git config --global al

  • linux下svn版本控制的常用命令大全

    1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 2.往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下所有的php文件) 3.将改动的文件提交到版本库 svn commit -m "LogMessage" [-N] [-

  • linux 操作 ftp 常用命令

    简介: FTP(File Transfer Protocol, FTP)是TCP/IP网络上两台计算机传送文件的协议,FTP是在TCP/IP网络和INTERNET上最早使用的协议之一,它属于网络协议组的应用层.FTP客户机可以给服务器发出命令来下载文件,上载文件,创建或改变服务器上的目录.  概述: FTP是应用层的协议,它基于传输层,为用户服务,它们负责进行文件的传输.FTP是一个8位的客户端-服务器协议,能操作任何类型的文件而不需要进一步处理,就像MIME或Unencode一样.但是,FTP

  • Linux系统利用cp命令实现强制覆盖功能的方法

    前言 cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录.它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下.cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误. 语法 cp(选项)(参数) 选项 -a:此参数的效果和同时指定"-dpR"参数相同: -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录: -f:强行复制文件或目录,不论目标文件或目录是

  • Linux通过sar命令查看网卡流量

    sar(System Activity Reporter系统活动情况报告)是目前 Linux 上最为全面的系统性能分析工具之一,可以从多方面对系统的活动进行报告,包括:文件的读写情况.系统调用的使用情况.磁盘I/O.CPU效率.内存使用状况.进程活动及IPC有关的活动等. sar命令参数很多,有时间man一下. -n参数很有用,他有6个不同的开关:DEV | EDEV | NFS | NFSD | SOCK | ALL .DEV显示网络接口信息,EDEV显示关于网络错误的统计数据,NFS统计活动

  • 详解Linux中两个查找命令locate和find教程

    Linux中有很多查找命令,今天主要讲解locate,find两个命令. 1.locate locate命令其实是"find -name"的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息.Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件.为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库. (

  • Linux定时执行任务at和crontab命令详解

    Linux下的两种定时执行任务的方法:at命令,以及crontab服务,小编整理了关于这2个命令的详细用法,希望大家学习后能够更加深入的理解. (1)at命令 假如我们只是想要让特定任务运行一次,那么,这时候就要用到at监控程序了. 设置at命令很简单,指示定运行的时间,那么就会在哪个时候运行.at类似打印 进程,会把任务放到/var/spool/at目录中,到指定时间运行它 .at命令相当于另一个shell,运行at time命令时,它发送一个个命令,可以输入任意命令或者程序.at now +

  • Linux帮助和用户管理命令

    上篇文章我们介绍了Linux文件搜索命令,其中find是用的最多的也是功能最强大的文件或目录搜索命令,和另一个搜索命令locate的区别是,find命令是全盘搜索,刚创建的文件也能搜索的到,而locate是在文件资料库中进行搜索,对比find命令搜索速度快很多,但是新创建的文件如果没有收录到文件资料库中,使用locate命令是搜索不到的,再就是/tmp目录是不收录到文件资料库的,也就是说使用locate命令搜索不到在/tmp目录下的文件.然后我们介绍搜索命令所在的目录以及别名信息which,搜索

随机推荐