1、查看文件属性 ls -lhi

文件属性详细说明

1.    第一列: inode索引节点编号
2.    第二列:文件类型及权限
3.    第三列:硬链接数
4.    第四列:文件或目录所属的用户,即文件的所有者
5.    第五列:文件或目录所属的组。
6.    第六列:文件或目录的大小。
7.    第七、八、九列:文件或目录的修改时间

2、inode小结

磁盘被分区并格式化为ext4文件系统会生成一定数量的inode和block。inode被称为索引节点,它的作用是存放文件的属性信息及作为文件内容的索引(指向实体block)。
一个非空文件至少要占有一个inode和一个block。inode节点号相同的文件,互为硬链接文件。inode在一个文件系统(分区)中是唯一的。用ls -i(查看某些文件的inode)或df -i(查看系统里面inode剩余量)进行查看inode信息。

3、block小结

      block是用来存储实际数据的,磁盘读取信息是以block为单位读取的;一个文件可能占用多个block,每读取一个block就会消耗一次磁盘I/O,一个block剩余空间会被浪费,无论内容有多小。用dumpe2fs/dev/sda3 |grep -i "block size"或者df -h查看磁盘使用量。

4、文件权限

5、硬链接 

ln 源文件 目标文件

软连接: ln -s 源文件 目标文件

硬链接是通过执行命令“ln 源文件 目标文件”来创建完成的;在同一文件系统中,具有相同inode节点号的多个文件互为硬链接文件。

硬链接与删除:

把源文件和硬链接都删除,文件才能被彻底删除。文件被删除的条件之一是硬链接数量为0。

查看文件的硬链接数:ls -lhi、stat

6、软链接

linux里的软链接文件实际上是一个特殊的文件,文件类型是l,可以理解为是一个文本文件,这个文件包含有软连接指向另一源文件的位置信息。

软链接是通过执行命令“ln -s 源文件 目标文件”来创建的;软链接和源文件是不同类型的文件,也是不同的文件,其inode也不同。

硬链接文件与源文件的inode相同,软链接则与源文件不同;

对于目录不能创建硬链接但是可以创建软链接

软链接可以跨文件系统,硬链接不可以跨文件系统;

删除链接的源文件对硬链接无影响,软链接将无法使用;

同时删除源文件及硬链接文件,整个文件才能被删除

7、文件删除

linux通过link数量控制文件删除,只有当一个文件i-count和i-link都为零文件才被删除。

i-count 当前文件被调用的数量(内存引用计数器,被进程调用时增加)

i-link 介质链接数量(磁盘引用计数器,创建硬链接时增加)

8、企业小案例

磁盘空间已满但是与du -sh结果不一致,如何解决?

①第一个里程碑

####已经删除了,但是空间没有释放

####已经删除了-----把文件的硬链接数量为0

####空间没有释放---还有人在使用---进程

②第二个里程碑

# lsof |grep delete

rsyslogd  1250      root    1w      REG                http://078881.cn/ 8,3 1888889326     274029 /var/log/messages (deleted)

#####硬链接数为0了,但是还有一个rsyslog软件正在使用

###这个文件没有被彻底删除

③第三个里程碑

##重启对应的软件/服务即可

# /etc/init.d/rsyslog restart

Shutting down system logger:                               [  OK  ]

Starting system logger:                                         [  OK  ]

④第四个里程碑

dh -f

1.尽量清空日志文件不要删除

2.切割日志,删除旧的文件(几天以前的)

no space left on device(磁盘空间不足)

block满了,df -h ----- du -sh  /*---500G磁盘放入了3个300G的文件

block满了,硬链接数为0(日志文件被rm删除),进程占用数量不为零。www.hjdyl.com lsof|grep  delete

inode满了

linux运维、架构之路-linux文件属性的更多相关文章

  1. linux运维架构师职业规划

    1.假如你从来未接触过Linux的话,首先要做的就找一本指导书来学习.现在公认的Linux的入门书籍是“鸟哥的私房菜”,讲的很全面,鸟哥的私房菜一共分为两部,一部是基础篇,一部是服务器篇.“鸟哥的私房 ...

  2. 教老婆学Linux运维(二)Linux常用命令指南【上】

    目录 教老婆学Linux(二)Linux常用命令指南[上] 一.概述 二.常用命令 教老婆学Linux(二)Linux常用命令指南[上] 作者:姚毛毛的博客 tips:文章太长,分两篇发出,本篇发前三 ...

  3. 第一阶段·Linux运维基础 第3章·文件属性、正则表达式、文件权限

    01-文件属性内容介绍 02- inodeyublock讲解 03-访问oldboyfile的寻宝过程 04-inode与block小结 05-磁盘空间不足案例详解 06-Linux文件类型及拓展名 ...

  4. 教老婆学Linux运维(二)Linux常用命令指南【下】

    目录 tips:紧接上一篇,Linux常用命令指南[上] 2.4 文件解压缩 2.4.1 官宣的linux压缩工具:tar tar的基本命令格式为 tar [参数选项] [文件或目录] 我们前面学的命 ...

  5. Linux运维入门到高级全套常用要点

    Linux运维入门到高级全套常用要点 目 录 1. Linux 入门篇................................................................. ...

  6. 其它综合-运维老鸟分享linux运维发展路线规划

    运维老鸟分享linux运维发展路线规划 linux 运维发展路线常见的就是下面两条路线: 第一条:运维应用-->系统架构-->运维开发-->系统开发 第二条:运维应用-->应用 ...

  7. [ Linux运维学习 ] 路径及实战项目合集

    我们知道运维工程师(Operations)最基本的职责就是负责服务的稳定性并确保整个服务的高可用性,同时不断优化系统架构.提升部署效率.优化资源利用率,确保服务可以7*24H不间断地为用户提供服务. ...

  8. 运维是做什么的?史上最全互联网Linux工作规划!十分钟找到linux运维工程师职业方向!

    首先祝贺你选择学习Linux,你可能即将踏上Linux的工作之旅,出发之前,让我带你来看一看关于Linux和Linux运维的一切. Linux因其高效率.易于裁剪.应用广等优势,成为了当今中高端服务器 ...

  9. 最适合初学者的Linux运维学习教程2018版

    Linux运维工程师是一个新颖岗位,现在非常吃香,目前从行业的角度分析,随着国内软件行业不断发展壮大,越来越多复杂系统应运而生,为了保证系统稳定运行,必须要有足够多的Linux运维工程师.维护是软件生 ...

  10. Linux运维工程师学习大纲

    linux运维课程大纲: Linux运维: Linux系统管理: Linux服务及安全管理: httpd,lamp,lnmp cache:memcached,varnish DB:mysql(mari ...

随机推荐

  1. 把DataTable转换为List<T>

    前一篇有学习过<把List<T>转换为DataTable>http://www.cnblogs.com/insus/p/8043173.html 那此篇,将是学习反向,把Dat ...

  2. C# 异步上传图片案例

    好久没写博客了,都感觉自己快堕落了!今天随性写一篇关于异步上传图片的程序及插件! 说是程序及插件,其实程序占大头,所谓的插件只是两个JS.分别为:jquery.html5upload.js 和 jqu ...

  3. linux awk 内置函数实例

    awk内置函数,主要分4种:算数函数.字符串函数.时间函数.一般函数 一.算术函数 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y, x ) 返回 y/x ...

  4. 【php增删改查实例】第十三节 - EasyUI列格式化

    因为easyUI的datagrid组件是横着一格一格加载数据的,一行加载好了之后才会去加载下一行.所谓的列格式化,就是在加载某一列的所有单元格时,对即将加载到这些单元格的数据进行二次包装. 比如,我们 ...

  5. 分布式监控系统Zabbix-3.0.3-新版微信报警(企业微信取代企业号)

    一般来说,Zabbix可以通过多种方式把告警信息发送到指定人,常用的有邮件,短信报警方式,但是现在越来越多的企业开始使用zabbix结合微信作为主要的告警方式,这样可以及时有效的把告警信息推送到接收人 ...

  6. Fedora 19关闭防火墙

    关闭防火墙systemctl stop firewalld.service 关闭开机启动防火墙systemctl disable firewalld.service

  7. Linux内核及分析 第六周 分析Linux内核创建一个新进程的过程

    实验过程 1.github上克隆相应的mengning/menu.git 2.测试menuOS,测试fork直接执行结果 3.配置调试系统,进入gdb调试,利用file linux-3.18.6/vm ...

  8. 转发:Android开发?用C#!!

    转发自 最近偶然在QQ技术群里见到有人提起用C#开发Android,当时我感觉到很诧异:Android不是只能用Java开发吗?何时可以使用C#了?那个群友便告知我:mono. 百度一下吧!搜到了mo ...

  9. 结对项目gobang

    题目介绍:实现五子棋的基本规则,分黑棋和白棋.连成5个的胜利,完成了五子棋的单人游戏. 代码地址:https://github.com/liuxianchen/gobang 结对人:刘仙臣  康佳 结 ...

  10. 用软件工程分析开源项目octave的移植

    在本科的时候学习了软件工程,报考了信息系统项目管理师的考试,,虽然没有过,但是其实还是学了一些相关项目管理方面的知识,,9大管理,,当年应该能背出来,,, 1 项目整体管理 2 项目范围管理 3 项目 ...