• linux 磁盘管理三部曲——(2)管理分区,文件系统类型格式化


    上篇小编给大家讲解了磁盘结构和分区的介绍,这篇小编就给大家演示如何管理分区和文件系统类型格式化。

    小编上篇已经提到如何使用磁盘,今天这两步,就是其中很重要的两步。(前几天写的有点急,有点乱,今天又整理了下)

    一、管理分区  

    列出块设备 lsblk

             fdisk -l /dev/sda

             cat /proc/partitions

    创建分区使用的命令:

    1 fdisk  创建MBR 分区(7里也可以创建GPT 分区,但不推荐,contos 6 -l 时候gpt多个分区只显示1个)

      ①  fdisk  -l  /dev/sdX 查看硬盘分区信息

         -c(centos6 默认是dos) 打开或禁用dos模式  -u  (centos6 默认是柱面为单位) 切换显示的单位(扇区/柱面)

         -c (centos7 默认是非dos) -c=dos -c=nondos  -u  (centos7 默认是扇区为单位)  -u=cylinders(柱面)  -u=sectors(扇区)

      ② fdisk /dev/sdX 进行分区(交互式),建立分区时  

       m 帮助

       n 建立分区,建立分区时先选择 p主分区primary partition 或e 选择扩展分区extended,建议前3个建立逻辑分区,最后把所有空间给4扩展分区,有扩展分区可以创建多个逻辑分区。

       d 删除分区

        p 显示分区信息

       t 转换分区类型

       a 将指定分区设置/取消 活动分区   第一位为80活动

       L 查看分区类型

       o 重建分区表

       v 验证分区表,显示剩余没有被分区划分的扇区数量

       g 创建GPT格式的分区(centos7)不推荐使用,最好用gdisk

       q 退出不保存

       w 退出并保存,不保存,所有的修改都不生效

    :因为fdisk 是交互式创建分区,所以写入脚本时需要:

      echo -e "n p 1 +1G w " |fdisk /dev/sdb 来实现非交互创建分区

    2gdisk  创建GPT 分区(用法和fdisk相似)

        n创建分区时,直接从2-128进行分区,不分主分区,扩展分区

    3parted  高级分区操作(创建、复制、调整大小等等)实时性,小心使用,不用再w已经保存,可以直接非交互式创建分区,aix, amiga, bsd, dvh, gpt, mac, msdos, pc98, sun, loop 都能创建。(不常用)

      parted /dev/sdX

        help 寻求帮助,有很清晰的帮助的信息。

        mklabel help 有mklabel使用帮助信息

        mklabel msdos 选择msdos 方式分区

        mkpart 开始创建分区

        rm 删除分区

        p 查看分区信息

        q 退出

    4)重置内存中分区信息(当系统正在使用的分区修改时,内存不会改变)

       partprobe   新增分区,删除分区都可以,centos 5和7可以使用,centos 6中有bug

       新增分区时,同步 partx -a /dev/sdX 或 kpartx -a /dev/sdX -f

       删除分区时,同步 partx -d /dev/sdX   所有系统都能用,centos 6也可以

     

    二、文件系统

    1)查看支持的文件系统:/lib/modules/`uname –r`/kernel/fs

     

    2)文件系统类型

    Linux 文件系统:ext2(Extended file system), ext3,ext4, xfs SGI , btrfs Oracle , reiserfs, jfsAIX, swap

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

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

      非日志文件系统: ext2, vfat

    光盘:iso9660

    Windows FAT32, exFAT,NTFS

    Unix: FFS fast , UFS unix , JFS2

    网络文件系统:NFS, CIFS

    集群文件系统:GFS2, OCFS2 oracle) 例:11.11 淘宝

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

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

    (3)创建文件系统

    1mkfs 命令

      mkfs.   能创建很多类文件系统 例:mkfs.xfs /dev/sda1 给/dev/sda1创建xfs类型的文件系统

          ext#   xfs   btrfs   vfa

      mkfs -t 是个c写的脚本,就是调用mkfs. 命令 例:mkfs -t ext4 /dev/sda1 给/dev/sda1创建ext4类型的文件系统

               -f  强制重建,如果这个设备已经分过其他格式的文件系统了

     

    2mke2fs 创建文件系统ext系列文件系统专用管理工具,例:mke2fs -t ext4 -L test /dev/sdc1 给/dev/sdc1创建ext4卷标为test的文件系统

      -t {ext2|ext3|ext4} 格式

      -b {1024|4096} block快大小

      -L 'LABEL' 卷标

      -j: 于 相当于 -t ext3

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

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

      -N # :指定分区中创建多少个inode

      -I  一个inode 记录占用的磁盘空间大小,128---4096

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

      -O FEATURE[,...] :启用指定特性(只能开启以下特性) -O ^FEATURE 禁用指定特性

    3tune2fs修改文件系统信息,重新设定ext 系列文件系统可调整参数的值  例:tune2fs -o acl /dev/sdb2 开启/dev/sdb2的acl功能

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

      -L 'LABEL' 修改卷标(ext

        mkfs -L 'LABEL'  或  mke2fs -L 'LABEL' 创建时设置卷标

        e2label /dev/sd# 查看卷标

        e2label /dev/sd# 'LABEL' 重命名卷标

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

      -j:  ext2 升级为ext3

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

      -o:  调整文件系统的默认挂载选项,–o ^acl centos7里默认开启acl   6 默认不开启)

      -U UUID:  修改UUID

     

    4)查看信息

      blkid:块设备属性信息查看(centos 7里默认显示sr0    6 里需blkid /dev/sr0显示光盘)

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

        -L LABEL :根据指定的LABEL

       findfs:查找分区(ext)

        findfs [options] LABEL=<label>

        findfs [options] UUID=<uuid>

       dumpe2fs /dev/sda# 查看文件系统信息:superblock信息及block group信息

        -h :查看超级块,不显示block group而只显示superblock tune2fs -l一致

    小知识:超级块就是文件系统的内置,指定文件系统类型

        block group 0里有super block ,后奇数组都有备份,能用于修复

    5)文件系统检测和修复

      常发生于死机或者非正常关机之后,挂载为文件系统有几率标记为“no clean” ”

     注意:一定不要在挂载状态下修复centos67都禁止挂载下修复,5里可以修复)

    fsck(都可用) / e2fsckext先卸载再修复(6里默认交互式修复,7非交互)

      -y 自动回答yes

      -t filetype  指定文件系统类型

      -f 强制修复(当破坏太小时,强制扫描一遍修复)

     

     这篇的东西有些多,但其实经常用的命令也就:fdisk/gdisk、mkfs./mke2fs/tune2fs、blkid 这几个命令。下一篇就是磁盘管理最重要的一步了,mount挂载,敬请期待!!

              希望对大家有帮助,有什么错误请告诉我~

  • 相关阅读:
    .NET.GC 浅谈.net托管程序中的资源释放问题 (转帖)
    VB 中实现 For Each
    创建 ODBC 数据源以连接到 Windows CE 设备上的Sybase数据库
    VB 调用水晶报表2
    VC数据类型
    对.Net 垃圾回收Finalize 和Dispose的理解
    C# 播放器
    [转载]帮助C#菜鸟进入GDI+开发
    线程间操作无效: 从不是创建控件 的线程访问它
    VB.Net 中 WithEvents、AddHandler
  • 原文地址:https://www.cnblogs.com/along21/p/7410606.html
Copyright © 2020-2023  润新知