一、文件系统管理

        什么是文件系统?

            我的理解是文件系统是对磁盘上的数据和文件结构的管理规范。

            如果文件系统没有继承性,那么以前文件系统的数据就无法传到新的文件系统中。

            Linux的文件系统有这么几种:ext2, ext3, ext4, xfs, btrfs, reiserfs, jfs, swap

            以及Linux的虚拟文件系统:VFS

        Linux中创建文件系统的工具:mkfs

             用法:mkfs [选项] [-t <类型>] [文件系统选项] <设备> [<大小>]

             选项:

             -t, –type=<类型>  文件系统类型;若不指定,将使用 ext2

                 fs-options    实际文件系统构建程序的参数

                 <设备>         要使用设备的路径

                 <大小>         要使用设备上的块数

             -V, –verbose     解释正在进行的操作;

                                 多次指定 -V 将导致空运行(dry-run)

             -V, –version     显示版本信息并退出

                                 -V 作为 –version 选项时必须是惟一选项

             -h, –help        显示此帮助并退出

        我们创建一个文件系统试试

            Linux文件系统的创建、检测、修复、分区等工具的使用_第1张图片

            fdisk -l查看刚才创建的/dev/sdb

            

        创建虚拟内存即交换分区:mkswap

            用法:mkswap [选项] 设备 [大小]

            选项:

             -c, –check              创建交换区前检查坏块

             -f, –force              允许交换区大于设备大小

             -p, –pagesize SIZE      指定页大小为 SIZE 字节

             -L, –label LABEL        指定标签为 LABEL

             -v, –swapversion NUM    指定交换空间版本号为 NUM

             -U, –uuid UUID          指定要使用的 UUID

             -V, –version            输出版本信息并退出

             -h, –help               显示此帮助并退出

        块设备属性信息查看:blkid

        blkid可以查到块设备的UUID号、TYPE等信息

            Linux文件系统的创建、检测、修复、分区等工具的使用_第2张图片

        对文件系统进行检测修复:fsck

            用法:fsck [选项] [文件系统]

            选项:

            -a :自动修复文件系统,不询问任何问题。

            -A :依照/etc/fstab配置文件的内容,检查文件内所列的全部文件系统。

            -N :不执行指令,仅列出实际执行会进行的动作。

            -P 当搭配"-A"参数使用时,则会同时检查所有的文件系统。

            -r  :采用互动模式,在执行修复时询问问题,让用户得以确认并决定处理方式。

            -R  :当搭配"-A"参数使用时,则会略过/目录的文件系统不予检查。

            -s  :依序执行检查作业,而非同时执行。

            -t <文件系统类型> 指定要检查的文件系统类型。

            -T  :执行fsck指令时,不显示标题信息。

            -V  :显示指令执行过程。 

二、文件系统的分区

        在创建完成文件系统后需要对文件系统进行分区才可以使用

        可使用fdisk对文件系统进行分区(此工具最多可管理一个磁盘的15个分区)

        fdisk用法:

             fdisk [选项] <磁盘>    更改分区表

             fdisk [选项] -l <磁盘> 列出分区表

             fdisk -s <分区>        给出分区大小(块数)

            

            选项:

             -b <大小>             扇区大小(512102420484096)

             -c[=<模式>]           兼容模式:“dos”“nondos”(默认)

             -h                   打印此帮助文本

             -u[=<单位>]           显示单位:“cylinders”(柱面)“sectors”(扇区,默认)

             -v                   打印程序版本

             -C <数字>             指定柱面数

             -H <数字>             指定磁头数

             -S <数字>             指定每个磁道的扇区数

        例:fdisk -l 可显示出当前磁盘的分区信息

        Linux文件系统的创建、检测、修复、分区等工具的使用_第3张图片

        

        我们还可以通过fdisk后面接磁盘,对该磁盘进行创建分区等操作

        例如:fdisk /dev/sda然后按m进入帮助模式进行操作

        Linux文件系统的创建、检测、修复、分区等工具的使用_第4张图片

        

        例如:我们要删除一个分区就按d,我选择删除分区2

            wKioL1bdaHCiKiLgAAANaGm6T4o312.png

        例如:我们要创建一个新分区就按n

            Linux文件系统的创建、检测、修复、分区等工具的使用_第5张图片

        这里的p为主分区,e为扩展分区,选择你想要创建的分区,这里我选择创建一个主分区,分区号为2,分区大小为10G

        例如:我们按p可以看到刚才的分区情况

            

        最后我们按w写入分区表到磁盘然后退出

        Linux文件系统的创建、检测、修复、分区等工具的使用_第6张图片

        

        通过fdisk -l 列出新分区表对比一下之前的看是否成功

        

        

        wKioL1bdaNzhD8J5AAA84KG1RKI672.png

        可以看出分区是成功的

        也可以通过cat /proc/partations查看内核是否识别出新分区

            Linux文件系统的创建、检测、修复、分区等工具的使用_第7张图片

        如果没有成功可以使用partx -a/dev/sda或者kpartx -a /dev/sda通知内核重新读取分区表

        注:centos 5使用partprobe/dev/sda来重读分区表

        partx的用法:partx [-a|-d|-s|-u] [–nr |<分区>] <磁盘>

            选项:

             -a, –add           添加指定的分区或所有分区

             -d, –delete         删除指定的分区或所有分区

             -s, –show          列出分区

             -u, –update        更新指定的分区或所有分区

             -b, –bytes         以字节为单位而非易读的格式来打印 SIZE

             -g, –noheadings    –show 时不打印标题

             -n, –nr      指定分区范围(例如:–nr 2:4)

             -o, –output  定义使用哪个输出列

             -P, –pairs         使用 key=“value” 输出格式

             -r, –raw           使用原生输出格式

             -t, –type <类型>    指定分区类型(dosbsdsolaris )

             -v, –verbose       详尽模式

             -h, –help     显示此帮助并退出

             -V, –version  输出版本信息并退出

            

            可用的列(针对 –show–raw –pairs)

                    NR  分区号

                  START  分区起点(扇区数)

                    END 分区终点(扇区数)

                SECTORS  扇区数

                   SIZE 易读形式的大小

                   NAME 分区名

                   UUID 分区 UUID

                   TYPE 分区类型十六进制 uuid

                  FLAGS  分区标志

                 SCHEME  分区表类型(dosgpt…)