Quantcast
Channel: CodeSection,代码区,Linux操作系统:Ubuntu_Centos_Debian - CodeSec
Viewing all articles
Browse latest Browse all 11063

Linux文件系统简介及其系统管理工具

$
0
0

常见的文件系统

linux文件系统: ext2, ext3, ext4, xfs, btrfs, reiserfs, jfs, swap

swap: 交换分区

光盘:iso9660

windows:fat32, ntfs

Unix: FFS, UFS, JFS2

网络文件系统:NFS, CIFS

集群文件系统:GFS2, OCFS2

分布式文件系统:ceph,moosefs, mogilefs, GlusterFS, Lustre

实验环境CentOS7.2

Linux根据其是否支持"journal"功能:

日志型文件系统: ext3, ext4, xfs, ...

非日志型文件系统: ext2, vfat

Linux的文件系统的组成部分:

内核中的模块:ext4, xfs, vfat

用户空间的管理工具:mkfs.ext4, mkfs.xfs, mkfs.vfat

在正式介绍文件系统的前先说一下创建文件系统之前的格式化问题。

格式化

低级格式化:硬件制造商、分区之前划分磁道,形成簇 磁盘出厂前由厂家完成

高级格式化:分区之后对分区进行,创建文件系统

每种操作系统所设置的文件属性/权限不相同,为了存放这些所需的数据

我们常说的重装系统及格式化都是属于高级格式化层面的。本文所说的文件系统均为高级格式化后的产物。

Linux文件系统管理工具

blkid:块设备属性信息查看

命令使用格式:blkid [OPTION]... [DEVICE]

-U UUID: 根据指定的UUID来查找对应的设备

-L LABEL:根据指定的LABEL来查找对应的设备

命令演示:


1

2

3

4

[root@localhost~]#blkid/dev/sda1

/dev/sda1:UUID="6efb8a23-bae1-427c-ab10-3caca95250b1"TYPE="xfs"

[root@localhost~]#blkid-U6efb8a23-bae1-427c-ab10-3caca95250b1

/dev/sda1


…………………………………………………………………………………………………………

mkfs:文件系统创建工具:

mkfs - build a Linux filesystem

命令使用格式:

1、 mkfs [options] [-t type] device [size]
[ -t type] :指定要创建的文件系统类型ext4|xfs|btrfs|vfat|...|]
[options]:-L 'LABEL': 设定卷标 在创建文件系统同时指定卷标。

-f 若文件系统已存在,强制覆盖

命令演示:

[root@localhost~]#mkfs-L'new1'-text4/dev/sdb5

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

mke2fs1.42.9(28-Dec-2013)

文件系统标签=new1

OStype:Linux

块大小=1024(log=0)

分块大小=1024(log=0)

Stride=0blocks,Stripewidth=0blocks

25688inodes,102400blocks

5120blocks(5.00%)reservedforthesuperuser

第一个数据块=1

Maximumfilesystemblocks=33685504

13blockgroups

8192blockspergroup,8192fragmentspergroup

1976inodespergroup

Superblockbackupsstoredonblocks:

8193,24577,40961,57345,73729

Allocatinggrouptables:完成

正在写入inode表:完成

Creatingjournal(4096blocks):完成

Writingsuperblocksandfilesystemaccountinginformation:完成

[root@localhost~]#blkid/dev/sdb5

/dev/sdb5:LABEL="new1"UUID="10880486-7ad9-43de-9607-f9bc1fda1edf"TYPE="ext4"


…………………………………………………………………………………………………………

2、mkfs.FS_TYPE /dev/DEVICE

FS_TPYE:ext4、xfs、btrfs、vfat...

命令演示:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

[root@localhost~]#mkfs.xfs-L'new2'/dev/sdb6

mkfs.xfs:/dev/sdb6appearstocontainanexistingfilesystem(ext3).

mkfs.xfs:Usethe-foptiontoforceoverwrite.

[root@localhost~]#mkfs.xfs-f-L'new2'/dev/sdb6

meta-data=/dev/sdb6 isize=256 agcount=4,agsize=6400blks

= sectsz=512 attr=2,projid32bit=1

= crc=0 finobt=0

data = bsize=4096 blocks=25600,imaxpct=25

= sunit=0 swidth=0blks

naming =version2 bsize=4096 ascii-ci=0ftype=0

log =internallog bsize=4096 blocks=853,version=2

= sectsz=512 sunit=0blks,lazy-count=1

realtime=none extsz=4096 blocks=0,rtextents=0

[root@localhost~]#blkid/dev/sdb6

/dev/sdb6:LABEL="new2"UUID="ed636bf6-1cee-43d1-96e2-8baa8dc29087"TYPE="xfs"


若/dev/sdb# 指定的磁盘块已经存在文件系统,执行命令mkfs会失败,若加-f,则强制将原文件系统覆盖。慎用-f。

…………………………………………………………………………………………………………

mke2fs:ext系列文件系统专用管理工具

mke2fs - create an ext2/ext3/ext4 filesystem

-t {ext2|ext3|ext4}指明要创建的文件系统类型

-b {1024|2048|4096}指明文件系统的块大小

-L 'LABEL'指明卷标

-j: 创建有日志功能的文件系统ext3

mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3

-i #: 为数据空间中每多少个字节创建一个inode;此大小不应该小于block的大小;

-N #:为数据空间创建个多少个inode;

-m #: 为管理人员预留的空间占据的百分比;

-O [^]FEATHER:开启或关闭某种特性;

命令演示:mk2fs创建ext2格式的文件系统


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

[root@localhost~]#mke2fs-text2/dev/sd

sda sda1 sda2 sdb sdb1 sdb2 sdb5 sdb6 sdb7

[root@localhost~]#mke2fs-text2/dev/sdb7

mke2fs1.42.9(28-Dec-2013)

文件系统标签=

OStype:Linux

块大小=1024(log=0)

分块大小=1024(log=0)

Stride=0blocks,Stripewidth=0blocks

25688inodes,102400blocks

5120blocks(5.00%)reservedforthesuperuser

第一个数据块=1

Maximumfilesystemblocks=67371008

13blockgroups

8192blockspergroup,8192fragmentspergroup

1976inodespergroup

Superblockbackupsstoredonblocks:

8193,24577,40961,57345,73729

Allocatinggrouptables:完成

正在写入inode表:完成

Writingsuperblocksandfilesystemaccountinginformation:完成

[root@localhost~]#blkid/dev/sdb7

/dev/sdb7:UUID="4b9767fc-a8bf-4dda-9ce1-50eb5418da04"TYPE="ext2"


指定inode数及为管理人员预留空间的百分比


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

[root@localhost~]#mke2fs-N1024-m3/dev/sdb7

mke2fs1.42.9(28-Dec-2013)

文件系统标签=

OStype:Linux

块大小=1024(log=0)

分块大小=1024(log=0)

Stride=0blocks,Stripewidth=0blocks

1040inodes,102400blocks

3072blocks(3.00%)reservedforthesuperuser

第一个数据块=1

Maximumfilesystemblocks=67371008

13blockgroups

8192blockspergroup,8192fragmentspergroup

80inodespergroup

Superblockbackupsstoredonblocks:

8193,24577,40961,57345,73729

Allocatinggrouptables:完成

正在写入inode表:完成

Writingsuperblocksandfilesystemaccountinginformation:完成


…………………………………………………………………………………………………………

e2label:管理ext系列文件系统的LABEL

查看:e2label device

设定:e2label device LABEL

命令演示:设定指定块设备的卷标


1

2

3

[root@localhost~]#e2label/dev/sdb7new3
[root@localhost~]#e2label/dev/sdb7

new3


…………………………………………………………………………………………………………

tune2fs:重新设定ext系列文件系统可调整参数的值(不进行格式化)

-l:查看指定文件系统超级块信息;super block

-L 'LABEL':修改卷标

-m #:修预留给管理员的空间百分比

-j: 将ext2升级为ext3

-O: 文件系统属性启用或禁用

-o: 调整文件系统的默认挂载选项

-U UUID: 修改UUID号;

命令演示:修改卷标


1

2

3

4

[root@localhost~]#tune2fs-L'anotherlabel'/dev/sdb7

tune2fs1.42.9(28-Dec-2013)

[root@localhost~]#blkid/dev/sdb7

/dev/sdb7:LABEL="anotherlabel"UUID="a57b2116-d72b-48d2-a648-bb6d2d5487ac"TYPE="ext2"


升级ext2到ext3


1

2

3

4

5

[root@localhost~]#tune2fs-j/dev/sdb7

tune2fs1.42.9(28-Dec-2013)

Creatingjournalinode:完成

[root@localhost~]#blkid/dev/sdb7

/dev/sdb7:LABEL="anotherlabel"UUID="a57b2116-d72b-48d2-a648-bb6d2d5487ac"SEC_TYPE="ext2"TYPE="ext3"


…………………………………………………………………………………………………………

dumpe2fs:

-h:查看超级块信息等同于tune2fs -l

命令演示:


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

[root@localhost~]#dumpe2fs-h/dev/sdb7

dumpe2fs1.42.9(28-Dec-2013)

Filesystemvolumename: anotherlabel

Lastmountedon: <notavailable>

FilesystemUUID: a57b2116-d72b-48d2-a648-bb6d2d5487ac

Filesystemmagicnumber: 0xEF53

Filesystemrevision#: 1(dynamic)

Filesystemfeatures: has_journalext_attrresize_inodedir_indexfiletypesparse_super

Filesystemflags: signed_directory_hash

Defaultmountoptions: user_xattr

Filesystemstate: clean

Errorsbehavior: Continue

FilesystemOStype: Linux

Inodecount: 1040

Blockcount: 102400

Reservedblockcount: 3072

Freeblocks: 96568

Freeinodes: 1029

Firstblock: 1

Blocksize: 1024

Fragmentsize: 1024

ReservedGDTblocks: 256

Blockspergroup: 8192

Fragmentspergroup: 8192

Inodespergroup: 80

Inodeblockspergroup: 10

Filesystemcreated: SunAug2120:11:132016

Lastmounttime: n/a

Lastwritetime: SunAug2120:52:012016

Mountcount: 0

Maximummountcount: -1

Lastchecked: SunAug2120:11:132016

Checkinterval: 0(<none>)

Reservedblocksuid: 0(userroot)

Reservedblocksgid: 0(grouproot)

Firstinode: 11

Inodesize: 128

Journalinode: 8

Defaultdirectoryhash: half_md4

DirectoryHashSeed: 3e1f3581-59c7-41b3-bd4f-d262e3ce026e

Journalbackup: inodeblocks

Journalfeatures: (none)

日志大小: 4113k

Journallength: 4096

Journalsequence: 0x00000001

Journalstart: 0


…………………………………………………………

Viewing all articles
Browse latest Browse all 11063

Trending Articles