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)
Aaron_wangAaron_wang
上一篇 2016-08-26
下一篇 2016-08-26

相关推荐

  • CentOS7下使用rmcli配置IP地址详解及网络连接状态查看工具和进程管理工具的使用

    一、在CentOS7中推荐使用nmcli工具来管理网卡配置,nmcli是NetworkManager Command-Line Interface(网络管理命令行接口)的简称,可以通过它以命令行的方式管理网卡。也可以使用nmtui管理工具,nmtui是NetworkManager Text-User Interface(网络管理文本用户接口)的简称,它提供的…

    Linux干货 2016-09-07
  • SElinux 练习

    练习 .1、安装httpd服务,改变网站的默认主目录为/website,添加SELinux文件标签规则,设置http_sys_content_t到/website及目录下所有文件,使网站可访问 mkdir    /website vim    /etc/httpd/conf/ht…

    Linux干货 2016-09-19
  • 第十八周作业

    1.LNMP架构添加Memcached支持,并验证其缓存结果 Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。 Memcached是以守护程序(监听)方式运行于一…

    2017-07-07
  • 马哥教育网络班20期+第六周课程练习

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#;     cp /etc/rc.d/rc.sysinit  /tmp   &n…

    Linux干货 2016-10-19
  • vsftp简单应用

    vsftp配置详解 前言 FTP(File Transfer Protocol)是文件传输协议的简称。它能让用户 连接上一个远程计算机(运行着 FTP 服务器程序)查看远程 计算机上有哪些文件,然后把文件从远程计算机上下载到 本地计算机,或把本地计算机文件上传到远程计算机。但是ftp是一种古老的文件传输协议,是明文传输,特别的不安全所以就有了vsftp。 一…

    Linux干货 2016-12-18
  • date用法心得

    Linux时间格式极大程度的遵循了人类习惯,以下为部分常见时间。
    date命令本身提供了日期的加减运算,shell编程时灵活运用

    2017-11-09