Linux磁盘管理

一、磁盘简介

机械硬盘的组成部件主要有:盘片、机械手臂、磁头与主轴马达;盘片又可以细分为扇区(Sector)和磁道(Track),所有盘片的同一个磁道称之为柱面(Cylinder)

目前主流的磁盘接口有SCSI、SATA、SAS、USB等

Linux一切皆文件,硬件设备也有对应的文件,linux访问设备,其实就是访问与其对应的文件系统接口

设备文件:

        字符设备:char

        块设备:block

设备号码:

        主设备号:major number, 标识设备类型

        次设备号:minor number, 标识同一类型下的不同设备

MBR:0磁道0扇区,主引导扇区(Master Boot Record)

        446 bytes: boot loader

        64 bytes:partition table

MBR特性:

  • 主分区与扩展分区最多可以有四个(硬盘的限制)

  • 扩展分区最多只能有一个(操作系统的限制)

  • 逻辑分区是由扩展分区持续切割出来的分区

  • 能够被格式化后,作为数据存取的分区为主分区与逻辑分区,扩展分区无法格式化

  • 逻辑分区的数量依操作系统而不同,在Linux系统中SATA硬盘已经可以突破63个以上的分区限制

MBR缺点:

  • 操作系统无法识别超过2T的磁盘分区

  • MBR内的存放开机管理程序的区块仅 446Bytes,无法容纳较多的程序码

二、分区

分区管理工具:fdisk, parted, sfdisk

fdisk:对于一块硬盘来讲,最多只能管理15分区;

语法格式:# fdisk -l [-u] [device…]

    fdisk分区管理子命令:

         p: print, 显示已有分区;

         n: new, 创建

         d: delete, 删除

         w: write, 写入磁盘并退出

         q: quit, 放弃更新并退出

         m: 获取帮助

         l: 列表所分区id

         t: 调整分区id

QQ图片20160601000131.png

分区创建好之后,查看内核是否识别新创建的分区:

# cat /proc/partations

通知内核重新读取硬盘分区表:

方法一:partx -a /dev/DEVICE

    -n M:N

方法二:kpartx -a /dev/DEVICE

    -f: force

QQ图片20160601000626.png

三、格式化

格式化管理工具:mkfs.FS_TYPE,mke2fs

# mkfs.FS_TYPE /dev/DEVICE

    -L 'LABEL': 设定卷标

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

     -t {ext2|ext3|ext4}

     -b {1024|2048|4096}

     -L 'LABEL'

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

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

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

QQ图片20160601001223.png

四、其他常用工具

1、显示ext系列文件系统属性信息或重新设定可调参数的值

blkid:块设备属性信息查看

blkid [OPTION]… [DEVICE]

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

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

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

# e2label DEVICE [LABEL]

dumpe2fs:

    -h:查看超级块信息

tune2fs:重新设定ext系列文件系统可调整参数的值

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

     -L 'LABEL':修改卷标

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

     -j: 将ext2升级为ext3

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

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

     -U UUID: 修改UUID号;

2、文件系统检测工具

fsck -t FS_TYPE

     -a: 自动修复错误

     -r: 交互式修复错误

e2fsck:ext系列文件专用的检测修复工具

     -y:自动回答为yes; 

     -f:强制修复;   

原创文章,作者:Net20-study,如若转载,请注明出处:http://www.178linux.com/17196