磁盘管理之分区格式化及其挂载

简介:

一、磁盘管理总体分类 

1)磁盘结构 

2)分区类型 

3)管理分区

4)管理文件系统 

5)挂载设备

6)管理虚拟内存

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

重要分类模块详解

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

1、磁盘常用术语

head:磁头    track:磁道    sector:扇区    cylinder:柱面  


2、分区种类 

1)主引导记录(MBR)

    MBR: Master Boot Record,1982年,使用32位表示扇区数,分区不超过2T如何分区:按柱面0磁道0扇区:512bytes 446bytes: boot loader 64bytes:分区表 16bytes: 标识一个分区 2bytes: 55AA 4个主分区;3主分区+1扩展(N个逻辑分区)

2)GPT 

    GPT:GUID patition table (GUID分区表) 支持128个分区,使用64位,支 持8Z( 512Byte/block )64Z ( 4096Byte/block)使用128位UUID 表示磁盘和分区 GPT分区表自动备份在头 和尾两份,并有CRC校验位UEFI (统一扩展固件接口)硬件支持GPT


3、常用分区管理工具

lsblk命令:

    lsblk - list block devices

演示:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
[root@centos6 ~] # lsblk
NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  3.7G  0 rom
sda      8:0    0  120G  0 disk
├─sda1   8:1    0  200M  0 part  /boot
├─sda2   8:2    0   80G  0 part /
├─sda3   8:3    0   20G  0 part  /testdir
├─sda4   8:4    0    1K  0 part
├─sda5   8:5    0    4G  0 part [SWAP]
└─sda6   8:6    0    5G  0 part
sdb      8:16   0  120G  0 disk
sdc      8:32   0   20G  0 disk
sdd      8:48   0   20G  0 disk
sde      8:64   0   20G  0 disk
[root@centos6 ~] #

fdisk命令:

     fdisk - Partition table manipulator for Linux

     fdisk -cu device  fdisk device 

    常用子命令: 

   d   delete a partition  #删除分区表

   l   list known partition types #列出分区类型

   m   print this menu    #打印帮助信息

   n   add a new partition #添加一个新的分区

   p   print the partition table #打印分区表

   q   quit without saving changes #不保存退出

   t   change a partition's system id #改变一个分区的系统ID

   w   write table to disk and exit #将分区表写入系统


partx/partprobe命令:通知内核重新读取硬盘分区表信息

   partx -a /dev/device 例如:partx -a /dev/sda1 

   kpartx -a /dev/device -f:force 

   删除分区:

    partx -d --nr # /dev/device #号表示删除的第几块分区    

    partx -d --nr 7 /dev/sda

   CentOS5.x CentOS7.x使用:partprobe命令即可  

    查看内核是否已经识别新的分区:cat /proc/partitations 

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

演示:

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

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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
[root@centos6 ~] # fdisk -l /dev/sda
Disk  /dev/sda : 128.8 GB, 128849018880 bytes
255 heads, 63 sectors /track , 15665 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical /physical ): 512 bytes / 512 bytes
I /O  size (minimum /optimal ): 512 bytes / 512 bytes
Disk identifier: 0x000813f2
    Device Boot      Start         End      Blocks   Id  System
/dev/sda1    *           1          26      204800   83  Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2               26       10469    83886080   83  Linux
/dev/sda3            10469       13080    20971520   83  Linux
/dev/sda4            13080       15666    20765696    5  Extended
/dev/sda5            13081       13603     4194304   82  Linux swap / Solaris
/dev/sda6            13604       13865     2104515   83  Linux
/dev/sda7            13866       13997     1060258+  83  Linux
[root@centos6 ~] # cat /proc/partitions
major minor   #blocks  name
    8        0  125829120 sda
    8        1     204800 sda1
    8        2   83886080 sda2
    8        3   20971520 sda3
    8        4          1 sda4
    8        5    4194304 sda5
    8       16  125829120 sdb
    8       32   20971520 sdc
    8       48   20971520 sdd
    8       64   20971520 sde
[root@centos6 ~] # partx -a /dev/sda
sda   sda1  sda2  sda3  sda4  sda5
[root@centos6 ~] # partx -a /dev/sda
BLKPG: Device or resource busy
error adding partition 1
BLKPG: Device or resource busy
error adding partition 2
BLKPG: Device or resource busy
error adding partition 3
BLKPG: Device or resource busy
error adding partition 4
BLKPG: Device or resource busy
error adding partition 5
[root@centos6 ~] # partx -a /dev/sda
BLKPG: Device or resource busy
error adding partition 1
BLKPG: Device or resource busy
error adding partition 2
BLKPG: Device or resource busy
error adding partition 3
BLKPG: Device or resource busy
error adding partition 4
BLKPG: Device or resource busy
error adding partition 5
BLKPG: Device or resource busy
error adding partition 6
BLKPG: Device or resource busy
error adding partition 7
[root@centos6 ~] # !cat
cat  /proc/partitions
major minor   #blocks  name
    8        0  125829120 sda
    8        1     204800 sda1
    8        2   83886080 sda2
    8        3   20971520 sda3
    8        4          1 sda4
    8        5    4194304 sda5
    8        6    2104515 sda6
    8        7    1060258 sda7
    8       16  125829120 sdb
    8       32   20971520 sdc
    8       48   20971520 sdd
    8       64   20971520 sde
[root@centos6 ~] #

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

二、创建文件系统

mkfs命令:创建一个linux文件系统

    mkfs - build a Linux file system 

用法:

    mkfs.fs_type /dev/device  #fs_type{ext4 xfs btrfs vfat}

    mkfs.fs_type /dev/device -L 'LABEL' #指定卷标  

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

演示:

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
[root@centos6 ~] # mkfs.ext4 /dev/sda6 -L 'MYDATE'
mke2fs 1.41.12 (17-May-2010)
文件系统标签=MYDATE
操作系统:Linux
块大小=4096 (log=2)
分块大小=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
131648 inodes, 526128 blocks
26306 blocks (5.00%) reserved  for  the super user
第一个数据块=0
Maximum filesystem blocks=541065216
17 block  groups
32768 blocks per group, 32768 fragments per group
7744 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912
正在写入inode表: 完成
Creating journal (16384 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
This filesystem will be automatically checked every 27 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@centos6 ~] # blkdi
- bash : blkdi:  command  not found
[root@centos6 ~] # blkid
/dev/sda2 : UUID= "240533cf-b37f-4460-974f-702bab867da5"  TYPE= "ext4"
/dev/sda1 : UUID= "4e245c68-a392-4ce9-9a99-5d32d8d43872"  TYPE= "ext4"
/dev/sda3 : UUID= "86aa7b74-24df-4043-ba83-f3b41a99ce0e"  TYPE= "ext4"
/dev/sda5 : UUID= "f8ef48ef-b141-48e5-9735-ff9089bd54ba"  TYPE= "swap"
/dev/sda6 : UUID= "b153fa9a-5b82-4bbc-b580-9170ab88b4a6"  TYPE= "ext4"  LABEL= "MYDATE"
[root@centos6 ~] #

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

mke2fs命令:创建ext系列文件系统

    mke2fs - create an ext2/ext3/ext4 filesystem

选项:

    -t{ext2|ext3|ext4} #指定文件类型

    -b{1024|2048|4096} #指定块大小

    -L 'LABEL' #指定卷标

    -j #相当于mke2fs -t ext3,mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3 

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

    -N #: 为数据空间创建杜少而过inode   

    -m #: 为管理员预留的空间占总空间的百分比,默认为5%


blkid命令: 

     blkid - command-line utility to locate/print block device attributes

选项: 

    -U:UUID #按UUID来查找到相应的设备

    -L:LABEL #按卷标查找到相应的设备名       

e2label命令: 

    用法:e2label device LABEL 

          e2lable deveice   


tune2fs命令:重新设定文件系统的超级块可调参数的属性值  

 选项: 

     -L 'LABEL':修改卷标

     -j 将ext2升级到ext3   

     -o 调整文件系统挂载选项,acl,取消为^acl   

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


dumpe2fs命令: 

     -h:查看超级块信息(分组信息),分区用分组管理

    例如:dumpe2fs -h /dev/sda8   tune2fs -l /dev/sda8   


文件修复和检测: 

常发生于死机或者非正常关机之后,常发生于死机或者非正常关机之后 

fsck: File System 

Check fsck.FS_TYPE 

fsck -t FS_TYPE 


演示:

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

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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
[root@centos6 ~] # mke2fs -t ext4 -b 2048 -L 'MAN' -m 1 /dev/sda8
mke2fs 1.41.12 (17-May-2010)
文件系统标签=MAN
操作系统:Linux
块大小=2048 (log=1)
分块大小=2048 (log=1)
Stride=0 blocks, Stripe width=0 blocks
804864 inodes, 6438032 blocks
64380 blocks (1.00%) reserved  for  the super user
第一个数据块=0
Maximum filesystem blocks=544210944
393 block  groups
16384 blocks per group, 16384 fragments per group
2048 inodes per group
Superblock backups stored on blocks:
16384, 49152, 81920, 114688, 147456, 409600, 442368, 802816, 1327104,
2048000, 3981312, 5619712
正在写入inode表: 完成
Creating journal (32768 blocks): 完成
Writing superblocks and filesystem accounting information: 完成
This filesystem will be automatically checked every 30 mounts or
180 days, whichever comes first.  Use tune2fs -c or -i to override.
[root@centos6 ~] # mount /dev/sda8 /mnt
[root@centos6 ~] # tune2fs -l  /dev/sda8
tune2fs 1.41.12 (17-May-2010)
Filesystem volume name:   MAN
Last mounted on:          <not available>
Filesystem UUID:          8528b2b5-4dc3-48c9-91f5-a0d096442b36
Filesystem magic number:  0xEF53
Filesystem revision  #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
Filesystem flags:         signed_directory_hash
Default  mount  options:    (none)
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS  type :       Linux
Inode count:              804864
Block count:              6438032
Reserved block count:     64380
Free blocks:              6297100
Free inodes:              804853
First block:              0
Block size:               2048
Fragment size:            2048
Reserved GDT blocks:      512
Blocks per group:         16384
Fragments per group:      16384
Inodes per group:         2048
Inode blocks per group:   256
Flex block group size:    16
Filesystem created:       Mon Aug 22 22:43:55 2016
Last  mount  time :          Mon Aug 22 22:44:44 2016
Last write  time :          Mon Aug 22 22:44:44 2016
Mount count:              1
Maximum  mount  count:      30
Last checked:             Mon Aug 22 22:43:55 2016
Check interval:           15552000 (6 months)
Next check after:         Sat Feb 18 22:43:55 2017
Lifetime writes:          262 MB
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:          256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
Default directory  hash :   half_md4
Directory Hash Seed:      c5fdca9f-fd8e-4a75-8301-39a64f0e9f3c
Journal backup:           inode blocks
[root@centos6 ~] # blkid /dev/sda8
/dev/sda8 : LABEL= "MAN"  UUID= "8528b2b5-4dc3-48c9-91f5-a0d096442b36"  TYPE= "ext4"
[root@centos6 ~] # blkid -U "8528b2b5-4dc3-48c9-91f5-a0d096442b36"
/dev/sda8
[root@centos6 ~] # blkid -L MAN
/dev/sda8
[root@centos6 ~] #
[root@centos6 ~] # e2label /dev/sda8 HUMAN
[root@centos6 ~] # e2label /dev/sda8
HUMAN
[root@centos6 ~] # tune2fs -L 'BABY'  /dev/sda8
tune2fs 1.41.12 (17-May-2010)
[root@centos6 ~] # tune2fs -o acl /dev/sda8
tune2fs 1.41.12 (17-May-2010)
[root@centos6 ~] # tune2fs -l /dev/sda8
tune2fs 1.41.12 (17-May-2010)
Filesystem volume name:   BABY
Last mounted on:          <not available>
Filesystem UUID:          8528b2b5-4dc3-48c9-91f5-a0d096442b36
Filesystem magic number:  0xEF53
Filesystem revision  #:    1 (dynamic)
Filesystem features:      has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super huge_file uninit_bg dir_nlink extra_isize
Filesystem flags:         signed_directory_hash
Default  mount  options:    acl
Filesystem state:         clean
Errors behavior:          Continue
Filesystem OS  type :       Linux
Inode count:              804864
Block count:              6438032
Reserved block count:     64380
Free blocks:              6297100
Free inodes:              804853
First block:              0
Block size:               2048
Fragment size:            2048
Reserved GDT blocks:      512
Blocks per group:         16384
Fragments per group:      16384
Inodes per group:         2048
Inode blocks per group:   256
Flex block group size:    16
Filesystem created:       Mon Aug 22 22:43:55 2016
Last  mount  time :          Mon Aug 22 22:44:44 2016
Last write  time :          Mon Aug 22 23:01:13 2016
Mount count:              1
Maximum  mount  count:      30
Last checked:             Mon Aug 22 22:43:55 2016
Check interval:           15552000 (6 months)
Next check after:         Sat Feb 18 22:43:55 2017
Lifetime writes:          262 MB
Reserved blocks uid:      0 (user root)
Reserved blocks gid:      0 (group root)
First inode:              11
Inode size:              256
Required extra isize:     28
Desired extra isize:      28
Journal inode:            8
Default directory  hash :   half_md4
Directory Hash Seed:      c5fdca9f-fd8e-4a75-8301-39a64f0e9f3c
Journal backup:           inode blocks
[root@centos6 ~] # tune2fs -m 5 /dev/sda8
tune2fs 1.41.12 (17-May-2010)
Setting reserved blocks percentage to 5% (321901 blocks)
[root@centos6 ~] # tune2fs -l /dev/sda8

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

三、挂载文件系统 

mount命令:   

用法: 

    mount DEVICE MOUNT_POINT 

    mount [-fnrsvw] [-t vfstype] [-o options] device dir 

挂载方式:

1)设备文件 例如:mount /dev/sda5 /mnt 

2)卷标 例如:mount -L 'MYDATE' /mnt  

3)UUID 例如:mount -U '40d51666-7a52-4613-bac9-0a1f27afeee8'/mnt   

    选项: 

    -t:指定文件类型 

    -r:只读挂载

    -w:读写挂载 

    -n:不更新/etc/mtab   

    -a:自定挂载/etc/fstab定义的设备

    -L:卷标   

    -U:uuid 

    -B:绑定目录到另一个目录上 

查看内核最终到的挂载的所有设备:cat /proc/mounts 

-o options:(挂载文件系统的选项),多个选项使用逗号分隔 async:异步模式 sync:同步模式,内存更改时,同时写磁盘 atime/noatime:包含目录和文件 diratime/nodiratime:目录的访问时间戳 auto/noauto:是否支持自动挂载,是否支持-a选项 exec/noexec:是否支持将文件系统上运行应用程序 dev/nodev:是否支持在此文件系统上使用设备文件 suid/nosuid:不否支持suid和sgid权限 remount:重新挂载 ro:只读 rw:读写 user/nouser:是否允许普通用户挂载此设备,默认管理员才能挂载 acl:启用此文件系统上的acl功能  Defaults:相当于rw, nosuid, dev, exec, auto, nouser, async


umount命令: 

    umount  DEVICE  

    umount MOUNT_POINT    

    

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

四、挂载至配置文件

/etc/fstab 每行定义一个要挂载的文件系统说明

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
[root@centos6 ~] # cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Thu Aug 11 03:07:57 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=240533cf-b37f-4460-974f-702bab867da5 /            ext4    defaults        1 1
UUID=4e245c68-a392-4ce9-9a99-5d32d8d43872  /boot           ext4    defaults        1 2
UUID=86aa7b74-24df-4043-ba83-f3b41a99ce0e  /testdir          ext4    defaults        1 2
UUID=f8ef48ef-b141-48e5-9735-ff9089bd54ba swap           swap    defaults        0 0
tmpfs                    /dev/shm          tmpfs   defaults         0 0
devpts                   /dev/pts          devpts  gid=5,mode=620          0 0
sysfs                    /sys            sysfs   defaults         0 0
proc                     /proc           proc    defaults        0 0
#要挂载的设备或为文件系统         #挂载点         #文件类型   #选项             #转储 #自检                  
[root@centos6 ~



本文转自chengong1013 51CTO博客,原文链接:http://blog.51cto.com/purify/1842660,如需转载请自行联系原作者

相关文章
|
3月前
|
Linux
磁盘的分区、格式化、检验与挂载 ---- fdisk,mkfs,mount
该文章介绍了如何在Linux系统中进行磁盘的分区、格式化、检验与挂载操作。
磁盘的分区、格式化、检验与挂载 ---- fdisk,mkfs,mount
|
7月前
|
存储 算法 IDE
磁盘管理,文件系统,挂载
磁盘管理,文件系统,挂载
硬盘分区与格式化
硬盘分区与格式化。
43 1
一文学会磁盘分区、格式化、永久挂载
一文学会磁盘分区、格式化、永久挂载
格式化,分区,挂载 ,解决挂载两个盘,为什么只显示一块盘(已解决)
格式化,分区,挂载 ,解决挂载两个盘,为什么只显示一块盘(已解决)
172 0
|
Linux Windows
LINUX04_分区的概述、设备挂载情况lsblk、磁盘分区fdisk、格式化硬盘、挂载mount(一)
LINUX04_分区的概述、设备挂载情况lsblk、磁盘分区fdisk、格式化硬盘、挂载mount(一)
312 0
LINUX04_分区的概述、设备挂载情况lsblk、磁盘分区fdisk、格式化硬盘、挂载mount(一)
|
开发工具
LINUX04_分区的概述、设备挂载情况lsblk、磁盘分区fdisk、格式化硬盘、挂载mount(二)
LINUX04_分区的概述、设备挂载情况lsblk、磁盘分区fdisk、格式化硬盘、挂载mount(二)
315 0
LINUX04_分区的概述、设备挂载情况lsblk、磁盘分区fdisk、格式化硬盘、挂载mount(二)
|
IDE Linux 开发工具
Linux添加新硬盘、分区、格式化、自动挂载
Linux添加新硬盘、分区、格式化、自动挂载 在为主机添加硬盘前,首先要了解Linux系统下对硬盘和分区的命名方法。 1) 在Linux下对SCSI的设备是以sd命名的,第一个ide设备是sda,第二个是sdb,依此类推。
1027 0