现在,我如何知道分区中文件系统的类型?
#1 楼
如何确定文件中包含哪种数据(数据格式)?→使用
file
实用程序。这里,您想知道设备文件中的数据格式。 ,因此您需要传递
-s
标志来告诉file
不仅要说它是设备文件,还要看内容。如果设备文件名是符号链接,有时还需要-L
标志。您将看到以下输出:# file -sL /dev/sd*
/dev/sda1: Linux rev 1.0 ext4 filesystem data, UUID=63fa0104-4aab-4dc8-a50d-e2c1bf0fb188 (extents) (large files) (huge files)
/dev/sdb1: Linux rev 1.0 ext2 filesystem data, UUID=b3c82023-78e1-4ad4-b6e0-62355b272166
/dev/sdb2: Linux/i386 swap file (new style), version 1 (4K pages), size 4194303 pages, no label, UUID=3f64308c-19db-4da5-a9a0-db4d7defb80f
鉴于此示例输出,第一个磁盘有一个分区,第二个磁盘有两个分区。
/dev/sda1
是ext4文件系统,/dev/sdb1
是ext2文件系统,/dev/sdb2
是一些交换空间(大约4GB)。您必须以root用户身份运行此命令,因为普通用户可能无法直接读取磁盘分区:if需要时,在前面添加
sudo
。评论
输入$ sudo文件/ dev / sda1时,我得到/ dev / sda1:特殊块
–heinrich5991
2013年1月10日16:55
@ heinrich5991“您需要传递-s标志……”。我显示命令文件-s / dev / sd *-前面是sudo,即sudo文件-s / dev / sd *。
–吉尔斯'所以-不再是邪恶的'
2013年1月10日16:57
哦,对不起,我忽略了这一点。 :(
–heinrich5991
13年1月10日在20:35
不适用于LVM:parted -l似乎更好
– TiloBunt
2014年11月28日在21:35
@TiloBunt使用-L标志使该文件-sL / dev / mapper / foo-bar取消引用符号链接。
–吉尔斯'所以-不再是邪恶的'
2014年12月1日17:04
#2 楼
另一种选择是使用blkid
:$ blkid /dev/sda1
/dev/sda1: UUID="625fa1fa-2785-4abc-a15a-bfcc498139d1" TYPE="ext2"
这可以识别大多数文件系统类型和诸如加密分区之类的东西。
也可以使用以下命令搜索分区给定类型:
# blkid -t TYPE=ext2
/dev/sda1: UUID="625fa1fa-2785-4abc-a15a-bfcc498139d1" TYPE="ext2"
/dev/sdb1: UUID="b80153f4-92a1-473f-b7f6-80e601ae21ac" TYPE="ext2"
评论
+1:我已经验证了在使用mount -t ext4挂载ext2文件系统时,这能给出正确的结果。 blkid不被那个愚弄。
–沃伦·杨(Warren Young)
2013年1月9日在16:45
对于它的价值,这似乎也适用于xfs驱动器,尽管显然blkid不如lsblk在检测未安装的驱动器时大(如果需要)
–乔斯·迪亚兹·冈萨雷斯(Jose Diaz-Gonzalez)
2015年3月4日在22:41
谢谢!文件命令不起作用,但这给了我所需的东西。
– Brain2000
16年4月14日在4:51
我不得不sudo blkid / dev / sda1否则我得到空白结果
– jokab
19年1月16日在15:46
#3 楼
您可以使用sudo parted -l
[shredder12]$ sudo parted -l
Model: ATA WDC WD1600BEVT-7 (scsi)
Disk /dev/sda: 160GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Number Start End Size Type File system Flags
1 32.3kB 8587MB 8587MB primary ext3 boot
4 8587MB 40.0GB 31.4GB primary ext4
2 40.0GB 55.0GB 15.0GB primary ext4
3 55.0GB 160GB 105GB extended
5 55.0GB 158GB 103GB logical ext4
6 158GB 160GB 1999MB logical linux-swap(v1)
源
评论
parted未安装。而且驱动器尚未安装。
–user4951
2013年1月9日在10:45
@JimThio我假设您能够安装它?如果您使用的是Ubuntu或任何其他debian衍生产品,则只需执行sudo apt-get install parted(或gparted)即可获得它。
– Karthik T
2013年1月9日12:24
+1:我已经验证了在使用mount -t ext4挂载ext2文件系统时,这能给出正确的结果。分开并不被那个愚弄。
–沃伦·杨(Warren Young)
2013年1月9日在16:45
虽然这不是最受好评的答案,但这是我实际使用的答案。另外,我不需要指定设备。
–user4951
13年10月10日在2:34
因为这不是最佳答案:分区可能被grub标记为ext2并且包含ext4文件系统(然后将通过mount -t auto挂载为ext4)。
–Basile Starynkevitch
16 Jan 18'在8:18
#4 楼
还有一种方法,因为您知道您正在运行某种形式的ext?
,所以请查看文件系统的功能列表:# tune2fs -l /dev/sda1 | grep features
如果在列表中看到:
extent
—是ext4 没有
extent
,但是has_journal
—它是ext3 extent
和has_journal
都不是-ext2 如果您希望这些试探法自动为您运行,则
parted
和blkid
答案会更好。 (他们还通过功能检查来区分差异。)他们还可以识别非ext?
文件系统。此方法的优点在于向您显示了低级差异。
这里要意识到的重要一点是,这三个文件系统是前向兼容的,并且在某种程度上也是向后兼容的。更高版本仅在旧版本的基础上增加了功能。
有关此信息,请参阅ext4 HOWTO。
#5 楼
惊讶的是这里还没有。不需要
sudo
:lsblk -f
评论
如果我不使用sudo运行此文件,则FSTYPE列为空白。
– Flup
15年7月15日在14:45
@Flup我自己又尝试了一次,并且在没有sudo的情况下也能完美工作。 FSTYPE列已完全填充。我们的系统之间可能存在一些差异?
– Freedom_Ben
15年7月18日在1:50
@Flup-您必须使用Debian / Ubuntu或派生类...它们以做某事(或可能不做某事,我不知道)而闻名,最终结果是您需要root特权才能列出一些lsblk列。 ..
–don_crissti
2015年9月3日22:00
对我来说,最好的答案是,不使用sudo,也可以在Debian / Ubuntu衍生产品上使用,而我在Pop Os上。
–zer09
19年11月24日在1:36
#6 楼
尝试使用df -T
参见man df
以获得更多选项还有我发现的另一种方法是cfdisk
评论
这与h3rmiller基于安装的答案具有相同的弱点。
–沃伦·杨(Warren Young)
2013年1月9日在16:38
h3rrmiller删除了他的答案,所以对于那些现在没有代表看的人来说,问题是,如果您在ext2文件系统上说挂载-t ext4,则df -T报告ext4。也就是说,它只是在读取安装表上的内容,而不是通过查看文件系统元数据来解决这个问题。
–沃伦·杨(Warren Young)
2013年1月9日18:19
@Warren:那是因为在这种情况下它是ext4文件系统。只有一个功能不多。
–mattdm
2013年1月9日19:05
@mattdm:所以,当您卸载它时...它仍然是ext4文件系统吗?
–沃伦·杨(Warren Young)
2013年1月9日19:26
@Warren:从某种意义上说,所有ext2文件系统也是ext4文件系统,是的。 (但是,当然,这不是大多数人的意思。)
–mattdm
2013年1月9日19:32
#7 楼
使用-T选项打印文件系统类型[root@centos6 ~]# df -T
Filesystem Type 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup-lv_root
ext4 6795192 6367072 76276 99% /
tmpfs tmpfs 639164 0 639164 0% /dev/shm
/dev/sda1 ext4 487652 28684 433368 7% /boot
#8 楼
fdisk -l
列表
用法:
fdisk [options] -l <disk> list partition table(s)
fdisk -s <partition> give partition size(s) in blocks
fdisk [options] <disk> change partition table
评论
在什么系统上? fdisk,至少在我目前使用的系统上,仅显示分区类型,而不显示文件系统类型。这意味着不仅不能分辨出ext2,ext3和ext4之间的区别,还不能从中分辨出ReiserFS或XFS。
–沃伦·杨(Warren Young)
2013年1月9日在20:17
+1努力。在问这个问题之前,我已经做了fdisk。保持分数。
–user4951
2013年1月10日下午2:35
#9 楼
这是一个仅获取文件系统类型的有用的单行代码:blkid -o export <partition-device> | grep '^TYPE' | cut -d"=" -f2
示例运行为:
# blkid -o export /dev/sda1 | grep '^TYPE' | cut -d"=" -f2
vfat
# blkid -o export /dev/sda2 | grep '^TYPE' | cut -d"=" -f2
ext4
#10 楼
这没有显示我正在寻找的BSD答案。我有印象,这些类型字节实际上包含在磁盘的分区表中,对此不确定。所有Linux extfs类型都只有85类型,但是Linux根本无法识别OpenBSD的A6类型。> 00 unused 20 Willowsoft 66 NetWare 386 A9 NetBSD > 01 DOS FAT-12 24 NEC DOS 67 Novell AB MacOS X boot > 02 XENIX / 27 Win Recovery 68 Novell AF MacOS X HFS+ > 03 XENIX /usr 38 Theos 69 Novell B7 BSDI filesy* > 04 DOS FAT-16 39 Plan 9 70 DiskSecure B8 BSDI swap > 05 Extended DOS 40 VENIX 286 75 PCIX BF Solaris > 06 DOS > 32MB 41 Lin/Minux DR 80 Minix (old) C0 CTOS > 07 NTFS 42 LinuxSwap DR 81 Minix (new) C1 DRDOSs FAT12 > 08 AIX fs 43 Linux DR 82 Linux swap C4 DRDOSs 09 AIX/Coherent 4D QNX 4.2 Pri 83 Linux files* C6 DRDOSs >=32M > 0A OS/2 Bootmgr 4E QNX 4.2 Sec 84 OS/2 hidden C7 HPFS Disbled > 0B Win95 FAT-32 4F QNX 4.2 Ter 85 Linux ext. DB CPM/C.DOS/C* > 0C Win95 FAT32L 50 DM 86 NT FAT VS DE Dell Maint > 0E DOS FAT-16 51 DM 87 NTFS VS E1 SpeedStor > 0F Extended LBA 52 CP/M or SysV 8E Linux LVM E3 SpeedStor > 10 OPUS 53 DM 93 Amoeba FS E4 SpeedStor > 11 OS/2 hidden 54 Ontrack 94 Amoeba BBT EB BeOS/i386 > 12 Compaq Diag. 55 EZ-Drive 99 Mylex EE EFI GPT > 14 OS/2 hidden 56 Golden Bow 9F BSDI EF EFI Sys > 16 OS/2 hidden 5C Priam A0 NotebookSave F1 SpeedStor > 17 OS/2 hidden 61 SpeedStor A5 FreeBSD F2 DOS 3.3+ Sec > 18 AST swap 63 ISC, HURD, * A6 OpenBSD F4 SpeedStor > 19 Willowtech 64 NetWare 2.xx A7 NEXTSTEP FF Xenix BBT > 1C ThinkPad Rec 65 NetWare 3.xx A8 MacOS X
格式可能会被弄乱,这是一个不错的表宽70列。如果您在OpenBSD的fdisk中,并且打了?当它要求分区类型时,这就是您得到的。这些类型在您编辑或列出分区表时显示。
Wikipedia上的分区类型:https://en.wikipedia.org/wiki/Partition_type
评论
出于好奇,您要测试什么?日记与没有日记?作为记录,您可以在无新闻记录的模式下运行ext4,并且仍然受益于所有其他新功能。unix.stackexchange.com/questions/34623/…