zoukankan      html  css  js  c++  java
  • indoe与block解析

    1.indoe与block

    indoe用于指向block块的指针(代表着原信息)

    block 块用来存储实际数据,每块block块大小为4KB(代表块信息)

    创建一个文件后,会同时创建一个inode和一个block,inode存放的是文件的属性信息,但是不包括文件名,并存放所对应数据所在的block块的地址的指针。

    block存放文件的数据,每个block最多存放一个文件,而当一个block存放不下的情况下,会占用下一个block。

    一般情况下,每个inode占用1024 byte,即128字节的磁盘空间文件内容存放在数据块中。

    每个block块最多可存放一个文件,所以一般block块的大小设置要根据我们服务器的应用了设置,如果这个服务器较多用来存放一些多的小文件,那就可以把block块的大小设置的小一些,不至于浪费空间,而当存放的都是大数据时就需要把block设置的大些,这样可以减少对磁盘block的读取次数,也可以减少inode的记录负担。

    block越大,inode越少,适合存储大文件的文件系统;block越小,inode越多,适合存储文件多而小的文件系统。
    系统运行时,inode和block会在修改后内存与磁盘做一个同步,我们用ls -li列出来的内容这是内存中的暂存,所以有时候系统非正常的关机会导致block和inode的不同步问题。
    2.系统内部打开文件的步骤
    (1.)系统找到这个文件名对应的inode号码
    (2.)通过inode号码获取inode信息
    (3.)根据inode信息找到文件数据所在的block,读取数据
    3.查看文件的inode号码:
    ls -i 文件名
    stat 文件名
    4.删除指定inode号对应的文件
    格式:find ./ -inum inode 号 -exec rm -i {};
    ll -i 查看文件的inode号,将其删除
    5.查看文件系统的inode 和block信息
    df -i   设备名 (挂载的情况下,查询inode总数和已用数量)
    非挂载情况查询:(只能查询ext4文件系统)
    dumpe2fs -h 设备名 
    tune2fs -l 设备名
    6.格式化时可指定文件系统的inode数量及block大小
    mkfs.ext4 -N 10000 -b 1024 /dev/sdb1
    -N 指定inode数量
    -b 指定biock块大小,单位是KB
    7.inode耗尽导致磁盘故障
    (1.)删除不使用的文件
    (2.)将文件进行备份,格式化文件系统并指定inode的数量
    nkdir /backup
    mv /test/* /backup/
    umount /dev/sdb1
    mkfs.ext4 -N 10000 /dev/sdb1
    8.Linux文件链接
    (1.)硬链接 :ln 源文件  目标文件
    硬链接指向inode,新生成的硬链接文件的inode号与源文件的inode号相同,不可针对目录进行硬链接,必须在同一个文件系统内。删除一个文件名,不影响另一个的访问
    (2.)软连接 :ln -s 源文件或目录  目标文件或目录
    软连接指向文件名,新生成的软连接文件的inode号与源文件不同,目录也可以生成软连接,当源文件移动或重命名时,软链接会报错
    (3.)硬链接与软连接的对比

    9.日志文件

    (1.)内核及系统日志

    大部分日志文件存放于 /var/log/message目录下

    主配置文件目录:/etc/rsyslog.conf

    常见格式及含义:

    (2.)用户日志

    记录Linux系统用户登录及退出系统的相关信息,包括用户名、登录的终端、登录时间、来源主机、进程操作等

    (3.)程序日志

    某些应用程序选择由自己独立管理一份日志文件,用于记录程序自己进程过程中的事件信息

    常见日志文件及查看方式:

    日志消息的级别

    10.对于日志文件的保护

    chattr +a 日志文件  ,为该日志文件加a锁,将内容只可追加不可删除或修改

    chattr +a -R  递归式追加a锁  ,将整个目录做a锁权限

  • 相关阅读:
    基于NIO的服务器模型
    Thinking in java 笔记三
    Thinking in java 笔记二
    Thinking in java 笔记一
    Windows 上的苹果 mac Time Machine 时间机器免费替代品 FreeFileSync 操作指南
    扫描仪扫描文件处理-ABBYY对扫描版PDF文字加黑加粗、去除背景漂白
    扫描仪扫描文件处理-Photoshop批处理无响应问题
    阅读-Calibre Library转PDF、EPUB配置
    扫描仪扫描文件处理-图像扫描加工到生成PDF步骤简述[JAVA版]
    扫描仪扫描文件处理-纸书切割扫描步骤
  • 原文地址:https://www.cnblogs.com/990114-jhc/p/11354726.html
Copyright © 2011-2022 走看看