Linux 文件索引(inode)
发布时间:2020-12-14 01:31:20 所属栏目:Linux 来源:网络整理
导读:1、简介 ????ceph 文件系统中 接触太多 文件索引 的相关 操作,因此 还是 整理下 关于 Linux 文件索引 inode 相关知识(注意:本文 所描述的 都是 在同一个文件系统中,跨文件系统 情况 会有所不同) ???? 1.1 inode ????inode 也被称为 索引(表项),主要
1、简介
????ceph 文件系统中 接触太多 文件索引 的相关 操作,因此 还是 整理下 关于 Linux 文件索引 inode 相关知识(注意:本文 所描述的 都是 在同一个文件系统中,跨文件系统 情况 会有所不同) 1.1 inode????inode 也被称为 索引(表项),主要包含 如下一些信息
1.2 显示文件信息1.2.1 文件属性## 获取文件 属性 # stat hosts File: ‘hosts‘ Size: 186 Blocks: 8 IO Block: 4096 regular file Device: 803h/2051d Inode: 786776 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2019-04-23 10:44:33.076000301 +0800 Modify: 2017-10-17 13:45:05.862183948 +0800 Change: 2017-10-17 13:45:05.862183948 +0800 Birth: - ???? 1.2.2 目录属性## 获取目录属性 # stat /etc/ File: ‘/etc/‘ Size: 4096 Blocks: 8 IO Block: 4096 directory Device: 803h/2051d Inode: 786433 Links: 89 Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2019-04-23 10:45:38.343525394 +0800 Modify: 2019-04-16 09:51:15.453364823 +0800 Change: 2019-04-16 09:51:15.453364823 +0800 Birth: - ???? 2、inode 查看2.1 文件 inode2.1.1 普通文件## 文件查看 inode # ls -il /etc/hosts 786776 -rw-r--r-- 1 root root 186 Oct 17 2017 /etc/hosts ???? 2.1.2 目录## 目录查看 inode # ls -li -d /etc/ 786433 drwxr-xr-x 89 root root 4096 Apr 16 09:51 /etc/ ???? 2.2 磁盘 inode(df)## inode 不足时,哪怕 磁盘有剩余空间,也无法 写入文件 # df --inode Filesystem Inodes IUsed IFree IUse% Mounted on udev 55269 484 54785 1% /dev tmpfs 60278 649 59629 2% /run /dev/sda3 3096576 69768 3026808 3% / tmpfs 60278 1 60277 1% /dev/shm tmpfs 60278 3 60275 1% /run/lock tmpfs 60278 16 60262 1% /sys/fs/cgroup /dev/sda1 61056 302 60754 1% /boot tmpfs 60278 4 60274 1% /run/user/1000 ???? 2.3 superblock inode(tune2fs)# tune2fs -l /dev/sda1 | grep inode Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize Free inodes: 60754 First inode: 11 Journal inode: 8 Journal backup: inode blocks ???? 3、inode 操作、状态3.1 文件查找 基于 inode# find /etc -inum 786776 /etc/hosts ???? 3.2 文件基本操作(增、删、改) inode状态3.2.1 创建文件# touch inode_1 # ls -il inode_1 1310729 -rw-r--r-- 1 root root 0 Apr 23 14:11 inode_1 # touch inode_2 # ls -il inode_2 1310730 -rw-r--r-- 1 root root 0 Apr 23 14:11 inode_2 3.2.2 拷贝文件## 拷贝后的 目标文件,会被赋予新的 inode # cp /etc/hosts /opt/inode_cp # ls -il /opt/inode_cp 1310726 -rw-r--r-- 1 root root 186 Apr 23 11:07 /opt/inode_cp ???? 3.2.3 移动文件## mv 后的目标文件,保留原有的 inode(文件时间属性 会改变) # mv /opt/inode_cp /opt/inode_mv # ls -il /opt/inode_mv 1310726 -rw-r--r-- 1 root root 186 Apr 23 11:07 /opt/inode_mv ???? 3.2.4 删除文件## 被删除 文件的 inode 可以被别的文件使用 # ls -il inode_2 1310730 -rw-r--r-- 1 root root 0 Apr 23 14:13 inode_2 # rm inode_2 # touch inode_3 # ls -il inode_3 1310730 -rw-r--r-- 1 root root 0 Apr 23 14:13 inode_3 ???? 3.2.5 编辑文件## 编辑 文件文本内容 不会 改变 inode # vim inode_3 # ls -il inode_3 1310732 -rw-r--r-- 1 root root 3 Apr 23 14:14 inode_3 ???? 3.3 链接文件 inode状态????链接 分为两种,硬链接 和 软链接(本文 主要 描述 inode,所以 链接相关的 不会进行描述) 3.3.1 软链接 inode状态## 软链接 inode 不同 # ln -s fork fork_soft_link # ls -il ... ... 1310724 -rwxr-xr-x 2 root root 8920 Mar 20 16:32 fork 1310728 lrwxrwxrwx 1 root root 4 Apr 23 13:43 fork_soft_link -> fork ???? 3.3.2 硬链接 inode状态## 硬链接 inode 相同 # ln fork fork_hard_link # ls -il ... ... 1310724 -rwxr-xr-x 2 root root 8920 Mar 20 16:32 fork 1310724 -rwxr-xr-x 2 root root 8920 Mar 20 16:32 fork_hard_link (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |