按照时间的逆序显示文件 ll -rt
命令:ll -i
-i 查看文件的inode号码
33569267 -rw-r--r-- 1 root root 233 Jun 23 2020 printcap
第一列:inode号码 #33569267
第二列:文件类型 #-
第三列:文件的权限 #rw-r--r--
第四列:硬链接个数 #
第五列:属主
第六列:属组
第七列:大小
第八列:文件的时间
第九列:文件名称
第一列:inode号码
文件详细属性的第一列:inode号
作用:存放了文件具体内容指针的指向和文件的详细信息
find -inum 查找
eg:find / -inum 69285292
类似于藏宝图(指向宝藏的路线和宝藏的说明)
查看文件inode号:
[root@shang:~]# ll -i
total 4
67161299 -rw-r--r-- 1 root root 29 Jul 9 12:58 1.txt
67161290 -rw-r--r-- 1 root root 0 Jul 9 13:02 a.txt
67161298 -rw-r--r-- 1 root root 0 Jul 9 13:02 b.txt
68852097 -rw-r--r-- 1 root root 0 Jul 9 13:02 c.txt
68852098 -rw-r--r-- 1 root root 0 Jul 9 14:40 e.txt
69191416 -rw-r--r-- 1 root root 0 Jul 9 14:40 f.txt
69191418 -rw-r--r-- 1 root root 0 Jul 9 14:40 g.txt
查看磁盘总inode号码 df -i
[root@shang:~]# df -i
Filesystem Inodes IUsed IFree IUse% Mounted on
devtmpfs 115269 468 114801 1% /dev
tmpfs 119315 1 119314 1% /dev/shm
tmpfs 119315 712 118603 1% /run
tmpfs 119315 17 119298 1% /sys/fs/cgroup
/dev/mapper/klas-root 24619008 123799 24495209 1% /
磁盘中最小的存储单位block(块) 4k大小
数据存储在block块中 inode的作用是:用户需要查看数据
inode指向块 相当于指明了块的路径以便用户查看
类似于书本目录
问?为什么一个块不用200m甚至更多?
原因:数据存储需要占一个块 如果数据只有10k 浪费了磁盘空间
导致无法存储数据的原因有两个:
1、inode号满了
2、磁盘空间满了
第二列:文件类型
find file -type
文件类型
windows:.txt普通文件 .exe可安装的 .....
linux:文件类型是方便给我们看的 linux一切皆文件
- 普通文件 命令文件 数据文件 图片 视频....
d 目录
l 软连接 类似windows的快捷方式
c 字节文件:字节文件也被称为普通文件
b 块设备
字节文件:c
了解:
[root@shang:~]# ll /dev/urandom #一直不停的往外吐乱码
crw-rw-rw- 1 root root 1, 9 Jul 8 08:03 /dev/urandom
[root@shangu:~]# ll /dev/null #空 类似于宇宙的黑洞
crw-rw-rw- 1 root root 1, 3 Jul 8 08:03 /dev/null
黑洞 作用:不想看见的结果可以放进里面
使用 $? 判断是否执行成功,0为成功 非0失败
$? 上一条命令的执行结果 ping -c1 -w1 ww.baidu.com c1一个包 w1 延迟一秒
案例:/dev/null
[root@shang:~]# ls > /dev/null
[root@shang:~]# echo $?
0 #显示0成功
字节设备:/dev/zero
经常用来做测试 生成大文件使用 #使用dd命令
[root@shang:~]# dd if=/dev/zero of=a.txt bs=1M count=10
10+0 records in
10+0 records out
10485760 bytes (10 MB, 10 MiB) copied, 0.00320965 s, 3.3 GB/s
[root@shang:~]# ll -h a.txt
-rw-r--r-- 1 root root 10M Jul 9 17:11 a.txt
dd 命令
if input file 要读取 /etc/zero
of output file 输出到当前的 a.txt
bs 一次要输出多大
count 总共要输出的次数
软连接:l
[root@shang:~]# ll /etc/rc.local
lrwxrwxrwx 1 root root 13 Apr 20 2022 /etc/rc.local -> rc.d/rc.local
第三列:文件的权限
rw-r--r- #九位权限位
前三位 表示属主的权限 笔记本是我们自己的 rw- #可读可写
中三位 表示属组的权限 笔记本在小组的权限 r-- #可读
后三位 其他用户陌生人的权限 其他教室的权限 r-- #可读
r reed #读
w write #写
x excute #执行
- #空的
对于文件来讲 谁是主人 文件属于哪个组
root root 10M Jul 9 17:11 a.txt #第一个root是主人 第二个root是小组的名称
第四列:文件的硬链接
目的:/etc/hosts发生变化,/opt/hosts.bak同时会发生变化
如果误删 则链接回去就可以了
硬链接的特点: #一起改变
1 inode号码相同互为硬链接
2 通过ln 源文件 目标文件 创建硬链接
3 目录不能做硬链接
4 目录硬链接不能跨文件系统(磁盘)
5 目录可以做软链接
6 删除一个不影响其他的门
7 目录的硬链接门的个数为2
#下面每创建一个目录可以多一个门
#cd . 是一个门 #cd./shang是一个门 #cd .. 是一个门
#普通文件的硬链接门的个数为1
创建硬链接:
语法结构:ln 源文件 目标文件
ln a.txt b.txt
带路径:
ln /root/a.txt /opt/b.txt
环境准备:
第一步:有一个存在的文件 #inode号为123 a.txt
第二步:创建 ln a.txt b.txt --> 对应的inode123
[root@shang:~]# touch a.txt
[root@shang:~]# ln a.txt b.txt
[root@shang:~]# ll -i
total 0
67161290 -rw-r--r-- 2 root root 0 Jul 9 20:30 a.txt
67161290 -rw-r--r-- 2 root root 0 Jul 9 20:30 b.txt
插入数据两个文件会一起改变:
[root@shang:~]# echo "i love this world!" >> 1.txt
[root@shang:~]# cat ./1.txt /opt/11.txt
hello world!
i love this world!
hello world!
i love this world!
[root@shang:~]# ll -i /opt/11.txt ./1.txt
67161281 -rw-r--r-- 2 root root 32 Jul 11 12:55 ./1.txt
67161281 -rw-r--r-- 2 root root 32 Jul 11 12:55 /opt/11.txt
删除一个门 不会影响其他的门 可以重新连接回来 随便哪一个都都可以是源文件 :
[root@shang:~]# rm -rf /opt/11.txt
[root@shang:~]# ll /opt/
total 0
[root@shang:~]# cat ./1.txt
hello world!
i love this world!
[root@shang:~]# ln ./1.txt /opt/11.txt
[root@shang:~]# cat /opt/11.txt
hello world!
i love this world!
文件的软链接
作用:实时备份同步文件
特点:
1 inode不同
2 类似windows的快捷方式 通过快捷方式找到源文件
3 软链接中存放这源文件的指针指向
4 目录可以做软连接
5 软连接可以跨文件系统(磁盘)
6 删除软链接不影响源文件
7 删除源文件影响链接文件 链接文件打不开 链接文件会变成红
创建软链接
语法结构:ln -s a.txt b.txt
[root@shang:~]# ln -s a.txt c.txt
[root@shang:~]# ll
total 0
-rw-r--r-- 2 root root 0 Jul 9 20:30 a.txt
-rw-r--r-- 2 root root 0 Jul 9 20:30 b.txt
lrwxrwxrwx 1 root root 5 Jul 9 21:22 c.txt -> a.txt
案例1:软链接inode号不同
[root@shang:~]# ln -s ./1.txt ./a.txt
[root@shang:~]# ll -i
total 4
67161281 -rw-r--r-- 2 root root 32 Jul 11 12:55 1.txt
67161290 -rw-r--r-- 1 root root 0 Jul 11 12:22 2.txt
67161316 -rw-r--r-- 1 root root 0 Jul 11 12:22 3.txt
67161298 lrwxrwxrwx 1 root root 7 Jul 11 13:35 a.txt -> ./1.txt
案例2:目录可以做软链接
[root@shang:~]# ln -s ./oldboy1 ./oldboyedu
[root@shang:~]# ll -i
total 4
68852098 lrwxrwxrwx 1 root root 9 Jul 11 13:36 oldboyedu -> ./oldboy1
案例3:实时同步
文件:
[root@shang:~]# cat a.txt
hello world!
i love this world!
shi shi tong bu
[root@shang:~]# cat 1.txt
hello world!
i love this world!
shi shi tong bu
目录:
[root@shang:~]# ll -i oldboyedu/
total 0
34158997 drwxr-xr-x 2 root root 6 Jul 11 13:39 shang
[root@shang:~]# ll ./oldboy1
total 0
drwxr-xr-x 2 root root 6 Jul 11 13:39 shang
案例4:删除源文件 影响软链接
[root@shang:~]# rm -rf ./1.txt
[root@shang:~]# ll -i
total 0
67161290 -rw-r--r-- 1 root root 0 Jul 11 12:22 2.txt
67161316 -rw-r--r-- 1 root root 0 Jul 11 12:22 3.txt
67161298 lrwxrwxrwx 1 root root 7 Jul 11 13:35 a.txt -> ./1.txt
[root@shang:~]# cat a.txt
cat: a.txt: No such file or directory
软链接作用:
1 解决磁盘不够用 #源文件移动到第二块磁盘
2 代码变更
软链接和硬链接的区别:
1.硬链接inode号相同
2.软链接inode号不同
3.目录不能做硬链接,文件可以做硬链接,目录和文件都可以做软链接
4.硬链接不能跨文件系统,软链接可以跨文件系统
5.创建方式不同,硬: 1n 软: 1n -s
6.目录默认硬链接数2,文件默认硬链接数是1
7.删除硬链接不影响其他硬链接,删除软链接不影响源文件,删除源文件影响软链接 变红。
8.链接数为0,和文件不被进程所占用,文件才真正的被删除。类似于vim编辑文件的情况下删除 文件依旧占用磁盘空间
9.硬链接和软链接都是普通文件,使用rm删除
inode号码
目录和文件的软硬链接的区别
跨系统的区别
删除的区别
软硬连接的区别
解决磁盘不够用问题
1.硬链接inode号相同
2.软链接inode号不同
3.目录不能做硬硬链接,文件可以做硬链接,目录可以做软链接
4.硬链接不能跨文件系统,软链接可以跨文件系统
5.创建方式不同,硬链接:1n 软连接:1n -s
6.目录默认硬链接数,文件默认硬链接数是1
7.删除硬链接不影响其他硬链接,删除软链接不影响源文件,删除源文件影响软链接变红。
8.链接数为0,和文件不被进程所占用,文件才真正的被删除。
9.硬链接和软链接都是普通文件,使用rm删除
第八列:文件时间
Access: 文件的访问时间 # less 查看
Modify: 文件修改时间 # echo sed 添加
Change: 文件属性改变时间 # chmod 增加权限
[root@shang:~]# stat a.txt
File: ‘a.txt’
Size: 0 Blocks: 0 IO Block: 4096 regular empty file
Device: fd00h/64768d Inode: 67161290 Links: 2
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2024-07-09 20:30:55.989793748 +0800
Modify: 2024-07-09 20:30:55.989793748 +0800
Change: 2024-07-09 20:31:04.731154059 +0800
Birth: -