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
相关文章
|
Linux
CentOS卸载LVM磁盘的方法
CentOS卸载LVM磁盘的方法
200 0
|
Linux
CentOS7下使用growpart工具进行磁盘热扩容
CentOS7下使用growpart工具进行磁盘热扩容
922 0
CentOS7下使用growpart工具进行磁盘热扩容
|
Linux
CentOS7 系统磁盘空间不足,如何进行扩容
CentOS7 系统磁盘空间不足,如何进行扩容
1540 0
CentOS7 系统磁盘空间不足,如何进行扩容
|
Linux
CentOS7.X磁盘挂载及取消挂载
CentOS7.X磁盘挂载及取消挂载
7891 0
|
4月前
|
存储 监控 Linux
【一键解锁神秘力量!】CentOS 7 磁盘分区与挂载终极指南 —— 从零到英雄的磁盘管理实战秘籍!
【8月更文挑战第9天】随着业务扩展和技术进步,服务器硬盘容量需求增加。本文通过实例介绍如何在CentOS 7中管理大容量硬盘(如1TB)。首先确认未使用的硬盘(如`/dev/sdb`),然后使用`fdisk`创建分区(一个200GB的日志分区和一个剩余空间的用户文件分区)。接着使用`mkfs.ext4`格式化分区,并创建挂载点(如`/mnt/log`和`/mnt/userfiles`)。最后,通过修改`/etc/fstab`实现分区的永久挂载。注意事项包括备份数据、合理规划分区以及定期监控磁盘使用情况等。这些步骤有助于高效管理和利用磁盘空间。
386 1
|
4月前
|
Linux
阿里云CentOS数据盘挂载(磁盘扩容)
阿里云CentOS数据盘挂载(磁盘扩容)
248 0
|
7月前
|
Linux
centos7实现磁盘挂载,解挂,开机自动挂载,解决挂载文件覆盖问题
centos7实现磁盘挂载,解挂,开机自动挂载,解决挂载文件覆盖问题
445 0
|
Linux
Linux centos7.x系统将/home磁盘分配给/
然后再执行umount /home就可以成功了 , 同时执行以下命令把逻辑卷删除了
103 0
|
Linux
Centos7 系列:磁盘挂载和磁盘扩容(新加硬盘方式)
在Centos 7 系统中,新添加硬盘,并将其挂载到自定义的新目录下;新添加硬盘,并为已有硬盘扩容。
3366 0
Centos7 系列:磁盘挂载和磁盘扩容(新加硬盘方式)
|
Linux 网络安全
阿里云centos 挂载新磁盘
阿里云centos 挂载新磁盘
654 2