开发者社区> 科技小能手> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Centos 磁盘管理(一)

简介:
+关注继续查看

查看支持的文件系统:

/lib/modules/内核版本/kernel/fs

cat /proc/filesystems

热挂载的磁盘在不重启的情况下,是不可以使用lsblk看到的,可以使用以下命令扫描发现

#echo '- - -' > /sys/class/scsi_host/host2/scan

1.png

可以看分区前512字节数

hexdump -C -n 512 /dev/sda

备份指定扇区

#dd if=/dev/sda of=/app/mbr bs=1 count=512

备份指定扇区内容

#dd if=/dev/sda of=mbr64 bs=1 count=64 skip=446 seek=446

恢复分区表

#dd if=mbr of=/dev/sda bs=1 count=512

可以将一个分区表备份文件恢复至一个新的磁盘空间上

UUID编号生成

#uuidgen

20383f4d-0201-49c1-aa25-49934bcccd9f

查看磁盘UUID或者分区文件系统

blkid

#blkid

/dev/sr0: UUID="2017-09-06-10-53-42-00" LABEL="CentOS 7 x86_64" TYPE="iso9660" PTTYPE="dos"

/dev/sda1: UUID="2d41b82c-dd7f-46c1-800e-f9ae533ecb48" TYPE="xfs"

/dev/sda2: UUID="d920bdb4-e2bf-48e9-b7b5-6657c58bfb3e" TYPE="xfs"

UUID只有重新格式化磁盘分区的时候才会发生变化

#xfs_info 查看xfs格式的super block,必须先挂载

super block:

Filesystem volume name

/app/sdb2

卷标

Last mounted on

/app/sdb2

最后挂载点

Filesystem UUID

ac3c758c-5f46-4839-8c76-57065ece252b

UUID信息

Filesystem magic number

0xEF53

头部信息描述

Filesystem revision #

1 (dynamic)


Filesystem features

has_journal ext_attr resize_inode

dir_index filetype needs_recovery

 extent 64bit flex_bg sparse_super

large_file huge_file uninit_bg

dir_nlink extra_isize

分区支持的特性

Filesystem flags

signed_directory_hash 


Default mount options

user_xattr acl

挂载选项。使用命令

#tune2fs -o acl /dev/sdb2

Filesystem state

clean

正常时显示此字符串

Errors behavior

Continue


Filesystem OS type

Linux


Inode count

65536

本分区Inode总数

Block count

262144

本分区BlockU总数

Reserved block count

13107

本分区保留的Inode总数

Free blocks

249189

本分区目前可用的BlockU总数

Free inodes

65525


First block

0


Block size

4096


Fragment size

4096


Group descriptor size

64


Reserved GDT blocks

127


Blocks per group

32768


Fragments per group

32768


Inodes per group

8192


Inode blocks per group

512


Flex block group size

16


Filesystem created

Sun Dec  3 22:24:29 2017

文件系统创建时间

Last mount time

Sun Dec  3 22:27:33 2017

文件系统最后挂载时间

Last write time

Sun Dec  3 22:29:06 2017

文件系统最后写入时间

Mount count

1


Maximum mount count

-1


Last checked

Sun Dec  3 22


Check interval

0 (<none>)


Lifetime writes

33 MB


Reserved blocks uid

0 (user root)


Reserved blocks gid

0 (group root)


First inode

11


Inode size



Required extra isize

28


Desired extra isize

28


Journal inode

8


Default directory hash

half_md4


Directory Hash Seed

c97fac6c-5fbe-4a4c-96f2-196e3164fa96


Journal backup

inode blocks


一、CentOS 7磁盘及文件系统特性

   在CentOS 7,不管是IDE硬盘还是SATA硬盘,在linux里面的硬盘设备文件标识都为/dev/sd[a-z]。(当然这一特性在CentOS 6中就已经实现)

   CentOS 7默认使用的文件系统为xfs。

二、磁盘分区管理工具

   磁盘分区管理工具有很多,在CentOS 7上也支持传统的fdisk工具,还有parted,sfdisk,本文以fdisk介绍浅谈在Linux中磁盘超出2T的管理方式

fdisk命令:

       fdisk -l [-u] [device...]

1、查看分区表信息

       fdisk -l [device]  # 不加任何设备,默认查看所有

fdisk -l /dev/sda

Disk /dev/sda: 128.8 GB, 128849018880 bytes, 251658240 sectors

Units = sectors of 1 * 512 = 512 bytes

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

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

Disk label type: dos

Disk identifier: 0x000b0d11

Device Boot      Start         End      Blocks   Id  System

/dev/sda1   *        2048     1026047      512000   83  Linux

/dev/sda2         1026048   251658239   125316096   8e  Linux LVM

 2、管理分区

fdisk提供了一个交互式的借口来管理分区,他有许多子命令,分别实现不同管理功能;特点是在内存中完成,不直接同步到硬盘上,可通过w来保存。

常用命令:

n:创建新分区

d:删除已有分区

t:修改分区类型

l:查看所有已经ID

w:保存并退出

q:不保存并退出

m:查看帮助信息

p:显示现有分区信息

1.png

1.png

1.png

注意:使用w保存退出后,内核不会立即识别新分区,此处如果有需要,可以使用命令使内核强制读取。

    查看已经读取分区列表:

1

2

3

4

5

6

7

8

9

10

11

12

# cat /proc/partitions 

major minor  #blocks  name

   8       16   20971520 sdb

   8       17    5242880 sdb1

   8       18    5242880 sdb2

   8        0  125829120 sda

   8        1     512000 sda1

   8        2  125316096 sda2

  11        0    7413760 sr0

 253        0   52428800 dm-0

 253        1    2097152 dm-1

 253        2   70721536 dm-2

通知内核强制重读磁盘分区表:

Centos 6

增加分区时使用

# partx -a /dev/sdb

删除分区时使用

# partx -d --nr 6-7 /dev/sdb

Centos 7

# partprobe /dev/sda

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

# partx -a /dev/sdb

partx: /dev/sdb: error adding partitions 1-4

# cat /proc/partitions 

major minor  #blocks  name

   8       16   20971520 sdb

   8       17    5242880 sdb1

   8       18    5242880 sdb2

   8       19    5242880 sdb3

   8       20          1 sdb4

   8        0  125829120 sda

   8        1     512000 sda1

   8        2  125316096 sda2

  11        0    7413760 sr0

 253        0   52428800 dm-0

 253        1    2097152 dm-1

 253        2   70721536 dm-2

三、文件系统管理

创建文件系统,就是对分区进行格式化,格式化分为:低级格式化(分区之前进行,划分磁道)、高级格式化(分区之后对分区进行,创建文件系统),一般低级格式化都有硬盘厂商来完成。

文件系统管理工具:

A、ext系列文件系统管理工具:

1、创建文件系统工具

mkfs系列(mkfs.ext2, mkfs.ext3, mkfs.ext4)

# mkfs系列的使用方法比较简单,没有过多参数

1.png

mke2fs:

使用格式: mke2fs [OPTIONS] device

常用命令参数:

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

mkfs.ext4 = mkfs -t ext4 = mke2fs -t ext4

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

-L LABEL:指明卷标;

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

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

1.png

2、卷标查看与设定

e2label

1

2

3

4

5

# e2label /dev/sdb2

MYDATA

# e2label /dev/sdb2 DATA

# e2label /dev/sdb2

DATA

3、检查及修复文件系统工具

e2fsck

-y:对所有问题自动回答为yes;

-f:即使文件系统处于clean状态,也要强制进行检测;

1

2

3

4

5

6

7

8

9

10

11

# e2fsck /dev/sdb2

e2fsck 1.42.9 (28-Dec-2013)

DATA: clean, 11/655360 files, 204238/10484736 blocks

# e2fsck -yf /dev/sdb2

e2fsck 1.42.9 (28-Dec-2013)

Pass 1: Checking inodes, blocks, and sizes

Pass 2: Checking directory structure

Pass 3: Checking directory connectivity

Pass 4: Checking reference counts

Pass 5: Checking group summary information

DATA: 11/655360 files (0.0% non-contiguous), 204238/10484736 blocks

fsck:

-t fstype:指明文件系统类型;

        fsck -t ext4 = fsck.ext4

-a:无须交互而自动修复所有错误;

-r:交互式修复;

1

2

3

4

# fsck -t ext4 /dev/sdb1

fsck from util-linux 2.23.2

e2fsck 1.42.9 (28-Dec-2013)

/dev/sdb1: clean, 11/196608 files, 31036/786432 blocks

4、查看修改ext系列文件的某些属性

dumpe2fs:           

1

 # dumpe2fs /dev/sdb1

tune2fs:

命令格式:tune2fs [OPTIONS] device

常用参数:

-l:查看超级块的内容;    

#tune2fs /dev/sdb2 -l   查看ext格式的super block

#dumpe2fs /dev/sdb1 -h  查看ext格式的super block    

添加ACL功能,Centos 6 默认在系统安装好之后手工添加的分区没有ACL功能

#tune2fs -o acl /dev/sdb2,需要重新挂载或重新启动系统才生效

1

# tune2fs -l /dev/sdb1

-j:启用日志系统,在ext3以上默认启用,此处仅针对ext2文件系统

-L LABEL:修改卷标;

1

2

3

4

5

6

# e2label /dev/sdb1

MYDATA

# tune2fs -L TESTDATA /dev/sdb1

tune2fs 1.42.9 (28-Dec-2013)

# blkid /dev/sdb1

/dev/sdb1: LABEL="TESTDATA" UUID="2ca4b66c-3e37-460d-a300-022e916413a8" TYPE="ext4"

-m #:调整预留空间百分比,默认为5%;

1.png

1.png

# 此操作一般在硬盘比较大的场景中适用

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

 -o [^]mount_options:开启或关闭某种默认挂载选项

1.png

1.png

B、xfs文件系统管理工具:

创建文件系统工具:

1、mkfs.xfs    

1

2

3

4

5

6

7

8

9

10

# mkfs.xfs -f /dev/sdb1

meta-data=/dev/sdb1              isize=256    agcount=4, agsize=655360 blks

         =                       sectsz=512   attr=2, projid32bit=1

         =                       crc=0        finobt=0

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

         =                       sunit=0      swidth=0 blks

naming   =version 2              bsize=4096   ascii-ci=0 ftype=0

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

修复文件系统工具:

2、fsck

-t fstype:指明文件系统类型;

-a:无须交互而自动修复所有错误;

-r:交互式修复;

1

2

3

# fsck -t xfs -a /dev/sdb1

fsck from util-linux 2.23.2

/sbin/fsck.xfs: XFS file system.

   




本文转自 ljpwinxp 51CTO博客,原文链接:http://blog.51cto.com/191226139/2051183

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
CentOS8 磁盘管理
磁盘使用情况、磁盘大小调整
161 0
centos 安装python2.7版本
装阿里云agent的时候需要装。必须始终个版本。
112 0
CentOS7安装VMware Tools
CentOS7安装VMware Tools 安装依赖包[root@localhost ~]# yum -y install perl gcc make kernel-headers kernel-devel 加载vmware tools 到CentOS7光驱CD-ROM点击菜单 虚拟机 ——> 安装VMware Tools(T).
3150 0
23703
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载