zoukankan      html  css  js  c++  java
  • linux第十六文件系统管理

    1、格式化

    低级格式化:分区之前进行,划分磁道、形成簇,硬件制造商出厂之前做;
    高级格式化:分区之后对分区进行,创建文件系统。

    2、元数据区和数据区

    文件系统分为元数据区和数据区。
    元数据区存放文件元数据(inode (index node)),元数据指文件的大小、权限、属主属组、时间戳、数据块指针,而不包含文件名,文件名在目录上存放,inode存放inode编号和数据块指针,数据区的目录存放文件名和inode编号的对应关系。
    删除文件的操作即是将此文件inode指向的所有data block标记为未使用状态,将此文件的inode标记为未使用,以及修改data block和inode位图。
    复制文件的操作即是新建文件。而移动文件的操作,在同一文件系统中,改变的仅是其路径映射,inode还是那个值,在不同文件系统中,复制数据至目标文件,并删除原文件。
    符号链接文件:存储数据块指针的空间当中存储的是真实文件的访问路径,不占据磁盘的数据区域,是一种特殊文件类型。
    设备文件:存储数据指针的空间当中存储的是设备号(major, minor),不占据磁盘的数据区域,是一种特殊文件类型。
    位图索引(bitmap index):每一位对应一个数据块或者一个inode,在块组级别实现,数据块位图索引位为1代表该数据块已占用,为0代表该数据块未占用,inode位图索引位为1代表该inode已占用,为0代表该inode未占用。
    超级块:定义一共有多少个块组,每个块组从哪个编号开始,哪个编号结束。

    创建文件系统:

    使用方法:

    mkfs -t /ext3

    其中:

    mkfs -t ext2 = mkfs.ext2
    mkfs -t ext3 = mkfs.ext3

    专门管理ext系列文件:

    mke2fs:

    -j: 创建ext3类型文件系统
    -b BLOCK_SIZE: 指定块大小,默认为4096;可用取值为1024、2048或4096;
    -L LABEL:指定分区卷标;
    -m #: 指定预留给超级用户的块数百分比
    -i #: 用于指定为多少字节的空间创建一个inode,默认为8192;这里给出的数值应该为块大小的2^n倍;
    -N #: 指定inode个数;
    -F: 强制创建文件系统;
    -E: 用户指定额外文件系统属性;

    #: mke2fs [-j] ...

    blkid: 查询或查看磁盘设备的相关属性

    UUID
    TYPE
    LABEL


    e2label: 用于查看或定义卷标

    e2label 设备文件 卷标: 设定卷标

    #:e2label /proc/...

    tune2fs: 调整文件系统的相关属性

    -j: 不损害原有数据,将ext2升级为ext3;
    -L LABEL: 设定或修改卷标;
    -m #: 调整预留百分比;
    -r #: 指定预留块数;
    -o: 设定默认挂载选项;
    acl
    -c #:指定挂载次数达到#次之后进行自检,0或-1表关闭此功能;
    -i #: 每挂载使用多少天后进行自检;0或-1表示关闭此功能;
    -l: 显示超级块中的信息;

    dumpe2fs: 显示文件属性信息

    -h: 只显示超级块中的信息

    #:dumpe2fs -h 


    fsck: 检查并修复Linux文件系统


    -t FSTYPE: 指定文件系统类型
    -a: 自动修复
    #:fsck  -a


    e2fsck: 专用于修复ext2/ext3文件系统

    -f: 强制检查;
    -p: 自动修复;

    #:e2fsck -p

    挂载:将新的文件系统关联至当前根文件系统
    卸载:将某文件系统与当前根文件系统的关联关系预以移除;

    mount:挂载
    mount 设备 挂载点
    设备:
    设备文件:/dev/sda5
    卷标:LABEL=“”
    UUID: UUID=“”
    挂载点:目录
    要求:
    1、此目录没有被其它进程使用;
    2、目录得事先存在;
    3、目录中的原有的文件将会暂时隐藏;

    mount: 显示当前系统已经挂载的设备及挂载点
    mount [options] [-o options] DEVICE MOUNT_POINT
    -a: 表示挂载/etc/fstab文件中定义的所有文件系统
    -n: 默认情况下,mount命令每挂载一个设备,都会把挂载的设备信息保存至/etc/mtab文件;使用—n选项意味着挂载设备时,不把信息写入此文件;
    -t FSTYPE: 指定正在挂载设备上的文件系统的类型;不使用此选项时,mount会调用blkid命令获取对应文件系统的类型;
    -r: 只读挂载,挂载光盘时常用此选项
    -w: 读写挂载

    -o: 指定额外的挂载选项,也即指定文件系统启用的属性;
    remount: 重新挂载当前文件系统
    ro: 挂载为只读
    rw: 读写挂载



    挂载完成后,要通过挂载点访问对应文件系统上的文件;

    umount: 卸载某文件系统
    umount 设备
    umount 挂载点

    卸载注意事项:
    挂载的设备没有进程使用;

  • 相关阅读:
    .net调用Oracle存储过程
    Ext.Net基本讲解
    Sql Server数据库中的数据类型和c#的数据类型的映射表
    c#.net常用字符串函数 .
    Extjs & Ext.net中的一些属性
    Oracle表名做为参数 返回值
    Oracle CASE WHEN 用法介绍
    c开发策略之错误处理
    堆和栈的区别
    assert用法总结
  • 原文地址:https://www.cnblogs.com/X404/p/12363132.html
Copyright © 2011-2022 走看看