Linux磁盘知识,分区与文件系统

硬件设备在Linux系统中的表现

    设备文件

     I/O Ports: I/O设备地址

     一切皆文件:

        open(), read(), write(), close()

     设备类型:

        块设备: block,存取单位“块”,磁盘

        字符设备: char,存取单位“字符”,键盘

     设备文件:关联至一个设备驱动程序,进而能够跟与之对应硬件设备进行通信

     设备号码:

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

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

   

硬盘接口类型

并行:

    IDE: 133MB/s

    SCSI: 640MB/s

串口:

        SATA: 6Gbps

        SAS: 6Gbps

        USB: 480MB/s

    rpm: rotations per minute(转速)


设备文件

磁盘设备的设备文件命名: /dev/DEV_FILE

IDE: /dev/hd

SCSI, SATA, SAS, USB: /dev/sd

    不同设备: a-z

    /dev/sda, /dev/sdb, …

同一设备上的不同分区: 1,2, …

    /dev/sda1, /dev/sda5


硬盘物理结构


    硬盘存储术语

     head:磁头

     track:磁道

     cylinder: 柱面

     secotr: 扇区, 512bytes

   

        使用分区空间

         设备识别

         设备分区

         创建文件系统

         标记文件系统

         在/etc/fstab文件中创建条目

         挂载新的文件系统


    磁盘分区

为什么是分区?

优化I/O性能

实现磁盘空间配额限制

提高修复速度

隔离系统和程序

安装多个OS

硬盘分区

       为什么是分区?

        优化I/O性能

        实现磁盘空间配额限制

        提高修复速度

        隔离系统和程序

        安装多个OS


    分区

     两种分区方式: MBR, GPT

     MBR: Master Boot Record, 1982年, 使用32位表示扇区数,分区不超过2T

     如何分区:按柱面

     0磁道0扇区: 512bytes

        446bytes: boot loader

        64bytes:分区表

        16bytes: 标识一个分区

        2bytes: 55AA

      4个主分区; 3主分区+1扩展(N个逻辑分区)


    MBR分区结构


    GPT分区

         GPT:GUID patition table 支持128个分区,使用64位,支

        持8Z(512Byte/block ) 64Z (4096Byte/block)

         使用128位UUID 表示磁盘和分区 GPT分区表自动备份在头

        和尾两份,并有CRC校验位

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


        GPT分区结构

        EFI部分又可以分为4个区域: EFI信息区(GPT头)、分区表、 GPT分区、备份区域

    管理分区

         列出块设备

        blkid

         创建分区使用:

            fdisk 创建MBR分区,也支持GPT,对于一块硬盘,最多只能管理15分区

            gdisk 创建GPT分区

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

         partprobe-重新设置内存中的内核分区表版本

         fdisk /dev/sdb

         gfisk /dev/sdb

         # fdisk -l [-u] [device…]

         子命令:

         p 分区列表

         t 更改分区类型

         n 创建新分区

         d 删除分区

         w 保存并退出

         q 不保存并退出

        分区工具fdisk和gdisk

    

    同步分区表

         查看内核是否已经识别新的分区:

        # cat /proc/partations

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

            新增分区用

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

        kpartx -a /dev/DEVICE -f: force

    删除分区用

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

        centos6: –nr N-M

         CentOS 5, 7: 使用partprobe

         partprobe [/dev/DEVICE]

    

    parted命令

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

         用法: parted [选项]… [设备 [命令 [参数]…]…]

        parted /dev/sdb mklabel gpt|msdos

        parted /dev/sdb print

        parted /dev/sdb mkpart primary 1 200 (默认M)

        parted /dev/sdb rm 1

        parted -l

    

    文件系统

         文件系统是操作系统用于明确存储设备或分区上的文件的方

        法和数据结构;即在存储设备上组织文件的方法。操作系统

        中负责管理和存储文件信息的软件结构称为文件管理系统,

        简称文件系统。

         从系统角度来看,文件系统是对文件存储设备的空间进行组

        织和分配,负责文件存储并对存入的文件进行保护和检索的

        系统。具体地说,它负责为用户建立文件,存入、读出、修

        改、转储文件,控制文件的存取,安全控制,日志,压缩,

        加密等。

    

    文件系统类型

     Linux文件系统: ext2, ext3, ext4, xfs( SGI) , btrfs(

            Oracle) , reiserfs, jfs( AIX) , swap

            swap: 交换分区

        光盘: iso9660

     Windows: fat32, ntfs

     Unix: FFS( fast) , UFS( unix) , JFS2

     网络文件系统: NFS, CIFS

     集群文件系统: GFS2, OCFS2( oracle)

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

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

    

    文件系统分类

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

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

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

        文件系统的组成部分:

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

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

         Linux的虚拟文件系统: VFS

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

    

    创建文件系统

             mkfs命令:

            (1) # mkfs.FS_TYPE /dev/DEVICE

            ext4

            xfs

            btrfs

            vfat

            (2) # mkfs -t FS_TYPE /dev/DEVICE

            -L 'LABEL': 设定卷标

    

    创建ext文件系统

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

        -t {ext2|ext3|ext4}

        -b {1024|2048|4096}

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

(0)
317376161317376161
上一篇 2016-08-29
下一篇 2016-08-29

相关推荐

  • Linux基础知识之压缩、解压、归档工具

    压缩、解压、归档工具     压缩格式:gz,bz2,xz,zip,Z 压缩算法不同,压缩比也会不同     1.compress/uncompress (.Z) compress [-dfvcVr] [-b maxbits] [file …] -d: 解压缩,相当于 -c: 结果输出至标准输出, 不删除原…

    Linux干货 2016-08-19
  • MHA

    1.关于MHA MHA是一款开源的mysql的高可用程序,它为mysql主从复制架构提供了automating master failover功能。MHA在监控到master节点故障时,会提升其中拥有最新数据的slave节点成为新的master节点,在此期间,MHA会通过与其他从节点获取额外的信息来避免不一致性的问题。MHA还提供了master节点的在线切换…

    2016-11-26
  • 计算机组成及Linux入门知识

    计算机的基本组成: 存储器:     实现记忆功能的部件用来存放计算程序及参与运算的各种数据 运算器:     负责数据的算术运算和逻辑运算即数据的加工处理 控制器:     负责对程序规定的控制信息进行分析,控制并协调输入,输出操作或内存访问 输入设备:    实现计算程序和原始数据的输入 输出设备:    实现计算结果输出 组成的联系: 图一 图二 计算…

    Linux干货 2016-09-16
  • 08RPM的简单实用

    rpm命令,安装(-i,–install)、卸载、升级(-U,-F)、查询(-q,–query)、校验(-V,–verify)、数据库维护 安装:rpm {-i|–install} [install-options] PACKAGE_FILE… v:可视化 h:以#显示进度 rpm -ivh package_f…

    Linux干货 2016-11-03
  • 文本处理和正则表达式练习(0805)

    1、找出ifconfig命令结果中本机的所有IPv4地址     1.1 Centos7     1.2 Centos6 2、查出分区空间使用率的最大百分比值,取各分区利用率的数值 取出各分区数值 取出最大百分比 3、查出用户UID最大值的用户名、 UID及shell类型 4、查出/tmp…

    Linux干货 2016-08-06
  • Linux syslog 系统日志管理

    Linux系统上面,系统可以记录从开机到当前系统上面何时发生了哪些事情,在centos 上表现为rsylog,由三部分组成 1)syslogd:主要记录系统和网络等服务的日志信息 2)klogd:主要记录内核产生的各项信息 3)logretate:主要用来对日志文件进行切割循环记录等 特点: 1)多线程工作 2)支持以TCP,UDP,SSL,TSL,RELP…

    Linux干货 2016-10-24