鸟哥私房菜 第八章 Linux磁盘与文件系统管理

来源:互联网 发布:阿里云登录界面 编辑:程序博客网 时间:2024/05/16 10:05

Linux磁盘与文件系统管理

硬盘的组成与分区的复习

        磁盘的组成:圆形的盘片(主要记录数据)、机械手臂与上面的磁头(可读写盘片上的数据)、主轴马达。

        盘片上的物理组成:扇区(Sector)为最小的物理存储单位,每个扇区为512bytes;柱面是分区的最小单位;第一扇区最重要,里面有硬盘主引导记录(MBR)及分区表(partition table),其中MBR占有446bytes,而partition table 占有64bytes。

        各种接口在Linux中的文件名:/dev/sd[a-p][1-15]:为SCSI,SATA,USB等接口

/dev/hd[a-d][1-63]:为IDE接口的磁盘文件名

        分区的定义:主分区与拓展分区最多可以有4个(硬盘限制);

                                拓展分区最多只能有一个(操作系统限制);

                                逻辑分区是由拓展分区持续分出来的分区;

                                能够被格式化后作为数据访问的分区为主要分区与逻辑分区, 拓展分区无法格式化。

          逻辑分区的数量依操作系统而不同,在Linux中,IDE硬盘最多有59个逻辑分区(5-63),SATA硬盘则有11个逻辑分区(5-15).

 

文件系统特性

        Linux的正规文件系统则为Ext2。

        Super block:记录此文件系统的整体信息,包括inode/block的总量、使用量、剩余量,以及文件系统的格式与相关信息等

        inode:记录文件的属性,一个文件占用一个inode,同时记录此文件的数据所在的block号码;

        block:实际记录文件的内容,若文件太大时,会占用多个block。

        碎片整理的原因:文件写入的block太过于离散了,此时文件读取的效能将会变得很差。

LinuxExt2文件系统(inode

        Data block(数据块)是用来放置文件内容的地方,在Ext2文件系统中所支持的block大小有1KB2KB4KB三种。

        原则上来说,block的大小与数量在格式化完就不能够再改变了(除非重新格式化);

        每个block内最多只能放置一个文件的数据;

        承上,如果文件大于block的大小,则一个文件会占用多个block数量;

        承上,若文件小于block,则该block的剩余空间就不能够再被使用了(磁盘空间会浪费)。

挂载点(mount print)的意义

        将文件系统与目录结合的操作我们称之为挂载

        挂载点一定是目录,该目录为进入该文件系统的入口。

磁盘与目录的容量:dfdu

        df:列出文件系统的整体磁盘使用量;

        df -h:将容量结果以人们较易阅读的GBMBKB等格式自行显示;

        df -i:将目前各个分区当中可用的inode数量列出。

 

        du:评估文件系统的磁盘使用量(常用于评估目录所占容量);

        du -a:列出目前目录下的所有文件与目录容量;

        du -s:列出总量而已,而不列出每个各别的目录占用容量。

磁盘的分区、格式化、检验与挂载

        磁盘MBR分区:fdisk (需管理员模式)

                先用df查看磁盘文件名;再fdisk /dev/sda  (例子)

        磁盘GPT分区:gdisk

        fdisk -l:查看目前系统内的所有分区有哪些

        fdisk没有办法处理大于2TB的磁盘分区。

 

        磁盘格式化命令:mkfs [-t 文件系统格式设备文件名

 

        磁盘检验命令:fsck [-t 文件系统] [参数设备名称

        fsck [tab][tab] 可以查看各个文件系统的响应检验方式。

 

        磁盘的挂载与卸载:

                挂载前的注意事项:

                      单一文件系统不应该被重复挂载在不同的挂载点(目录)中;

                      单一目录不应该重复挂载多个文件系统;

                      作为挂载点的目录理论上应该都是空目录才是。

        挂载命令:

                mount -a:依照配置文件/etc/fstab的数据将所有未挂载的磁盘全部挂载上来。

                mount -l:显示目前挂载的信息,包括Label的名称。

                等等还有许多 具体查看man mount。。。

        将设备文件卸载命令:umount [-fn]设备文件名或挂载点

                -f:强制卸载。

                -n:不更新/etc/mtab的情况下卸载

         Linux下的所有设备都是以文件来代表的,通过文件的majorminor数值来代替。

        修改磁盘参数命令:mknod 设备文件名 [bcp] [Major] [Minor]

                bcp:设备种类

                Major:主设备代码

                Minor:次设备代码

 

 


 

 

    
阅读全文
0 0
原创粉丝点击