Linux磁盘管理(一)之分区、格式化、挂载使用

磁盘管理(一)

 

本章节内容:

磁盘结构

分区类型

  管理分区

  管理文件系统

  挂载设备

 

一、磁盘结构:

1、设备号码:

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

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

 blob.png 

2、磁盘接口类型:

   并行:IDESISC

   串口:SATA SAS USB

   rpmrotatonsper minute

3、磁盘设备的设备文件命名:

   IDE/dev/hd

   SISC/dev/sda/dev/sdb、……   (不同的设备,使用a-z

   (同一设备上,不同的分区,采用数字来命名区分,如:/dev/sda1/dev/sda2……)

4、  磁盘结构及磁盘存储:

如下图,结构:磁臂、电机、扇区(secotr\磁道(track)、磁头(head)、盘片、柱面(cylinder

   blob.png

(注:每个磁道有63个扇区,每个盘面有1024个磁道,每个磁盘最多有255个磁头,每个扇区最多能存储512个字节。柱面:每个盘面都有零磁道/扇区,每个盘片有两面,因此每个盘片有两个零磁道/扇区,每个磁盘有多个盘片,所以,磁盘的所有零磁道/扇区组成的立体为零柱面,其他柱面也是如此!)

二、分区类型:

1、首先了解为什么要分区?

   A 优化I/O性能

B、实现磁盘空间配额限制

C、提高修复速度

D、隔离系统和程序

E、安装多个OS

2、磁盘的两种分区方式:

   MBR GPT

1MBR分区:采用32位表示扇区数,分区不超过2T

   0磁道0扇区:512bytes446bytesboot loader64bytes为分区表(16bytes标示一个分区);2bytes55aa

   支持最多4个主分区(3个主分区+1扩展分区[N个逻辑分区]

   blob.png

2GPT分区:最大支持128个主分区,使用64位,支持8Z512bytes/block)和64Z4096bytes/block)。

     使用128UUID 表示磁盘和分区GPT分区表自动备份在头和尾两份,并有CRC校验位。

   UEFI (统一扩展固件接口)硬件支持GPT

   blob.png

3、查看硬盘分区信息:

   A、命令lsblk

   Bcat /proc/mounts

   Cls /dev/sd*

4、检查磁盘是否分区:

 blob.png

5、备份磁盘和还原分区表:

 备份:dd if=/dev/sda of=/root/mbr bs=1 count=512

 blob.png

 还原:dd if=mbr of=/dev/sda

 如下图,查看备份出来的mbr分区表信息(注:或者在备份前也可以使用命令查看,#hexdump -C -n 512 /dev/sda

 blob.png

 blob.png

6、清除分区表信息(写零):

   命令:dd if=/dev/zero of=/dev/sdc bs=1 count=64 skip=446 seek=446(跳过446字节)

7、清除boot loader信息(写零):

   命令:dd if=/dev/zero of=/dev/sdc bs=1 count=446

 blob.png

注:上面所提到的清除步骤,勿在系统安装的磁盘上操作。

三:管理分区:

1、如何列出系统中的磁盘分区:(命令#lsblk

  blob.png

  命令:blkid查看分区的UUID、系统类型等信息

 blob.png

2、分区创建:

fdisk

gdisk

主要创建MBR分区,也支持GPT,但对于一块磁盘最多只能管理15个分区

主要创建GPT分区,也可以将MBR分区转换成GPT

# fdisk /dev/sda(功能选项)

blob.png

# gdisk /dev/sda (功能选项)

blob.png

blob.png

blob.png

blob.png

blob.png blob.png

注:parted高级分区操作(创建、复制、调整大小等等)

3、同步分区表命令:

CentOS5

CentOS6

CentOS7

新建分区同步

#partprobe /dev/DEVICE

partx -a -n M:N /dev/DEVICE

kpartx -a /dev/DEVICE -f: force

#partprobe /dev/DEVICE

删除分区同步

#partprobe /dev/DEVICE

partx -d -n M:N /dev/DEVICE 删除一个分区

partx -d –nrN-M  /dev/DEVICE 删除多个分区

#partprobe /dev/DEVICE

4parted命令创建GPT分区:

 #parted /dev/sdb mklabel gptparted /dev/sdb mklabel msdos[MBR]

 blob.png

 blob.png 

 # parted /dev/sdb mkpart primary 1 1024  (从1开始到10241G

 blob.png

 删除分区:#parted /dev/sdb rm 1  1为分区的编号)

 blob.png

   注:parted的操作都是实时生效的,小心使用

四、管理文件系统:

1、什么是文件系统:

   文件系统是操作系统用于明确存储设备或分区上的文件的方法和数据结构;即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件结构称为文件管理系统,简称文件系统。

   从系统角度来看,文件系统是对文件存储设备的空间进行组织和分配,负责文件存储并对存入的文件进行保护和检索的系统。具体地说,它负责为用户建立文件,存入、读出、修改、转储文件,控制文件的存取,安全控制,日志,压缩,加密等。

2、文件系统类型:

   Linux文件系统: ext2, ext3, ext4, xfsSGI, btrfsOracle, reiserfs, jfsAIX, swap(交换分区)、光盘(iso9660

   Windowsfat32, ntfs

   Unix: FFSfast, UFSunix, JFS2

   网络文件系统:NFS, CIFS

   集群文件系统:GFS2, OCFS2oracle

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

   RAW:未经处理或者未经格式化产生的文件系统

3、文件系统类型分类:

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

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

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

 文件系统的组成部分:

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

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

    Linux的虚拟文件系统:VFS

   查前支持的文件系统:cat /proc/filesystems

4、创建文件系统:

   1)、mkfs命令:

        使用格式有:mkfs.ext2 mkfs.ext3 mkfs.ext4 mkfs.xfs mkfs.btrfs mkfs.vfat

        如下图:

        blob.png

        使用选项:

            -t FSTYPE[DEVICE]ext2 ext3 ext4

            即:mkfs.ext2=mkfs -t ext2

       blob.png

         blob.png

       

         -L :设置分区卷标

           #mkfs.ext4 /dev/sda2 -L ‘卷标名称

         blob.png

   2)、mke2fs命令:管理格式化ext系列的文件系统。

      #mke2fs -t {ext2|ext3|ext4} /dev/sda3

      -j: 相当于-t ext3

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

      blob.png

5ext系列文件系统的管理工具:

   1)、mke2fs命令:ext系列文件系统专用管理工具

    -b {1024|2048|4096}

-L 'LABEL'

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

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

-I 一个inode记录大小128—4096

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

-O FEATURE[,…]:启用指定特性

-O ^FEATURE:关闭指定特性

例题:选项-O的使用,如下图关闭指定特性日志功能:

blob.png

blob.png

2blkid系统分区信息查询:

 Ablkid:块设备属性信息查看

blkid[OPTION]… [DEVICE]

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

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

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

# e2label DEVICE [LABEL]

 Cfindfs:查找分区

findfs[options] LABEL=<label>

findfs[options] UUID=<uuid>

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

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

-L 'LABEL':修改卷标

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

blob.png

-j: ext2升级为ext3

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

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

例题:启用分区的日志功能,如下图:

blob.png

blob.png

-U UUID: 修改UUID号(此处可以通过命令产生随机UUID#uuidgen

blob.png

  (4dumpe2fs

             查看superblockdumpe2fs /dev/sda3

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

6、文件系统的检测与修复:

   常发生于死机或者非正常关机之后;挂载为文件系统标记为“dirty”

   fsck: File System Check

    fsck.FS_TYPE

    fsck -t FS_TYPE

    -a: 自动修复错误

    -r: 交互式修复错误

blob.png

blob.png

 注意: FS_TYPE一定要与分区上已经文件类型相同;

 e2fsckext系列文件专用的检测修复工具

-y:自动回答为yes

-f:强制修复

blob.png

五:管理挂载设备:

    1、什么是挂载和卸载:

   挂载:将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为。

   卸载:为解除此关联关系的过程

2、挂载条件与特殊:

   挂载点目录一般为空

   挂载点下原有文件在挂载完成后会被临时隐藏

3、挂载和卸载命令:

   进程正在使用的设备是无法被卸载的。

   把设备关联挂载点:mount /PATH/TO/dir

     卸载时:umount /PATH/TO/dir

     blob.png

4、挂载方法:

Amount /dev/sda3 /mnt/sda3

Bmount -L ‘backup’(卷标名) /mnt/sda3

Cmount -U ‘UUID’ /mnt/sda3

5、挂载后的操作:

A、查看挂载情况:findmnt /mnt/sda3

B、查看正在访问指定文件系统的进程:losf /mnt/sda3fuser /mnt/sda3

C、终止所有正在访问指定的文件系统的进程:fuser –km /mnt/sda3

6mount命令:(注:mount挂载使用所相应的选项达到的效果都不是永久的,机器一旦重启将丢失。)

A、使用格式:mount [-fnrsvw] [-t vfstype] [-o options] device dir

       B、常用选项:

               -t vsftype:指定要挂载的设备上的文件系统类型

               -r: readonly,只读挂载

              blob.png

               -w: read and write, 读写挂载

               -n: 不更新/etc/mtab,相当于#mount

               -a:自动挂载所有支持自动挂载的设备(定义在了/etc/fstab文件中,且挂载选项中有auto功能)

               -L 'LABEL': 以卷标指定挂载设备

               -U 'UUID': UUID指定要挂载的设备

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

               查看内核追踪到的已挂载的所有设备:cat /proc/mounts

       C-o的常用选项:

             -o options(挂载文件系统的选项),多个选项使用逗号分隔

async:异步模式

sync:同步模式,内存更改时,同时写磁盘

atime/noatime:包含目录和文件

diratime/nodiratime:目录的访问时间戳

auto/noauto:是否支持自动挂载,是否支持-a选项

exec/noexec:是否支持将文件系统上运行应用程序

dev/nodev:是否支持在此文件系统上使用设备文件(devmkdir /mnt/sda3/cdrom ;mknod cdrom b 11 0mount /dev/sda3/cdrom /media/

suid/nosuid:不否支持suidsgid权限

remount:重新挂载

ro:只读

rw:读写

user/nouser:是否允许普通用户挂载此设备,默认管理员才能挂载

acl:启用此文件系统上的acl功能(在CentOS6上系统安装完成后新分出来的分区是不启用acl的,此处虽然可以挂载时生效启用acl,但不是永久有效的,建议还是用tune2fs -o acl /dev/sda3 

              Defaults:相当于rw, suid, dev, exec, auto, nouser, async

               

  

演示:分区,格式,挂载

  分区:

  blob.png

  blob.png

  blob.png

                

  格式化:

  blob.png

  blob.png         

  blob.png         

           

  分区挂载:

  blob.png

  blob.png         

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

(3)
上一篇 2016-08-26 09:11
下一篇 2016-08-26 09:11

相关推荐

  • Tomcat相关知识整理

    初识Servlet SUN公司制定了一系列Web应用与Web服务器进行协作的标准Java接口,统称为Java Servlet API,还对Web服务器发布及运行Web应用的一些细节做了规约。SUN公司把这一系列标准Java接口和规约统称为Servlet规范。Servlet就是Web服务器与Web应用进行协作的标准接口。 Servlet规范把能够发布和运行Ja…

    Linux干货 2016-12-05
  • shell脚本编程进阶

    一些常用的编程语句,

    2017-12-23
  • 设计模式(三)建造者模式Builder(创建型)

    1. 概述        在软件开发的过程中,当遇到一个“复杂的对象”的创建工作,该对象由一定各个部分的子对象用一定的算法构成,由于需求的变化,复杂对象的各个部分经常面临剧烈的变化,但将它们组合在一起的算法相对稳定。        例子1:买肯德基     &…

    Linux干货 2015-06-25
  • 网络管理之配置文件及一些命令的应用

    IP配置、信息、相关命令    IP地址     它们可唯一标识 IP 网络中的每台设备     每台主机(计算机、网络设备、外围设备)必须具有唯一的地址     IP 地址由两部分组成:   &nb…

    Linux干货 2016-09-22
  • 程序包的编译安装

    程序包的编译安装 之所以需要安装编译程序包,是为了能及时更新程序包,制作好的rpm包,版本一般都有点老了,所以编译安装是必报的,而且我们可以自己定义安装路径,想卸载直接删除就KO了; 在centos7.3环境下安装apache http服务: 1.首先获取最新的apache源码包下载到/root目录下; 2.检查安装环境,没有就安装环境:   记住…

    Linux干货 2017-03-09
  • fdisk命令

    fdisk命令用于观察硬盘实体使用情况,也可对硬盘分区。

    2017-12-05