linux中mkfs是什么命令,如何在Linux中使用mkfs命令[用于磁盘格式化]

mkfs中的字母代表"制作文件系统"。命令通常用于管理Linux中的存储设备,你可以将mkfs看作是将磁盘格式化为特定文件系统的命令行工具。mkfs -t [fs type] [target device]

还可以使用以下方式使用mkfs命令。mkfs.[fs type] [target device]

mkfs命令示例

让我向你展示mkfs命令的一些常见用法。请不要盲目地在你的实际系统上尝试这些命令,它将格式化目标设备/磁盘分区,擦除所有数据,

没有任何选项的mkfs创建ext2文件系统

如果没有为目标设备指定文件系统类型,它使用默认的ext文件系统。sudo mkfs /dev/sdb1

使用mkfs指定文件类型

使用ext2并不是很方便或不可取。如今,大多数Linux系统建议使用ext4。可以通过以下方式指定文件系统:sudo mkfs -t ext4 /dev/sdb1

你也可以像这样使用它:sudo mkfs.ext4 /dev/sdb1

检查设备上的坏块

你也可以检查设备上的坏块,但要记住,检查通常需要很长时间。sudo mkfs -c /dev/sdb1

额外提示:检查设备的文件系统类型

您可能要检查刚刚使用mkfs命令格式化的设备的文件系统类型。您可以为此目的使用file命令。sudo file -sL /device

下面是一个示例,显示了它能够显示哪种类型的输出:[email protected]:~$ sudo file -s /dev/nvme0n1p2

/dev/nvme0n1p2: Linux rev 1.0 ext4 filesystem data, UUID=34daa4b7-a2c4-4983-b5cc-df9baa6a6543 (extents) (64bit) (large files) (huge files)

现实生活中的用例:使用mkfs命令在USB设备上创建文件系统

我认为最实用的演示是格式化USB Flash存储驱动器,这些相同的原理将适用于您选择的任何类型的存储。

查找设备

首先你需要找到你的设备,可以使用的一种方法是sudo fdisk -l,这将列出当前挂载的所有磁盘节点。[email protected]:~$ sudo fdisk -l

Disk /dev/sda: 25 GiB, 26843545600 bytes, 52428800 sectors

Disk model: VBOX HARDDISK

Units: sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disklabel type: dos

Disk identifier: 0x3c62c49c

Device Boot Start End Sectors Size Id Type

/dev/sda1 * 4096 1023998 1019903 498M 83 Linux

/dev/sda2 1024000 44036094 43012095 20.5G 83 Linux

/dev/sda3 44036096 52424702 8388607 4G 82 Linux swap / Solaris

Disk /dev/sdb: 28.93 GiB, 31040995328 bytes, 60626944 sectors

Disk model: Patriot Memory

Units: sectors of 1 * 512 = 512 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disklabel type: gpt

Disk identifier: 91A34D6F-E67B-E54D-B19C-5CC828DAAB9A

Device Start End Sectors Size Type

/dev/sdb1 2048 60626910 60624863 28.9G Linux filesystem

输出将明显不同,在识别你所需要的驱动器时,请非常小心,如果不确定,请卸下磁盘,然后再次运行fdisk -l命令。

验证分区

我使用的设备是Patriot内存USB,它位于/dev/sdb,除了识别正确的磁盘之外,您还需要确保更改了所需分区的fs。

我使用fdisk工具删除现有数据,并写入新的分区表,当我这样做时,我创建了一个新的分区来写入,分区将成为目标:/dev/sdb1。

卸载

在尝试更改文件系统之前,需要使用umount命令将它卸载。[email protected]:~$ sudo umount /dev/sdb1

创建文件系统

既然已经验证了目标,并卸载了驱动器,就可以继续创建文件系统了。

我在这里添加了-v verbose选项,以便在运行。[email protected]:~$ sudo mkfs.ext4 /dev/sdb1 -v

mke2fs 1.45.5 (07-Jan-2020)

fs_types for mke2fs.conf resolution: 'ext4'

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0 blocks

1896832 inodes, 7578107 blocks

378905 blocks (5.00%) reserved for the super user

First data block=0

Maximum filesystem blocks=2155872256

232 block groups

32768 blocks per group, 32768 fragments per group

8176 inodes per group

Filesystem UUID: 73882769-7599-4c79-a00b-ef317ccd921d

Superblock backups stored on blocks:

32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

4096000

Allocating group tables: done

Writing inode tables: done

Creating journal (32768 blocks): done

Writing superblocks and filesystem accounting information: done

此过程需要一些时间,但应在20分钟内完成,除非目标大于2TB。

验证新创建的文件系统

首先,检查刚才使用的设备的文件系统,sudo file -sL /dev/sdb1

重要的是要确保要在使用该设备的系统上识别该设备。mkdir test && cd test

touch test.txt

echo "THIS IS ONLY A TEST" > test.txt

cat test.txt

如果一切正常,则应该能够将驱动器安装到所需的系统并访问文件。

结论

如果你喜欢这篇教程,请在社交媒体上分享。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值