为什么符号链接在 ext4fs 中没有分配给它们的数据块?

dir*_*obs 2 filesystems ext4 symlink inode files

我是一个 Unix 流浪者。我只是注意到符号链接没有分配给它们的数据块,我认为符号链接文件的 inode 存储符号链接所指的文件名,实际上是这样吗?

$ stat sdb
  File: sdb -> /dev/sdb
  Size: 8               Blocks: 0          IO Block: 4096   symbolic link
Device: 803h/2051d      Inode: 26348139    Links: 1
....
Run Code Online (Sandbox Code Playgroud)

我现在只能想象一种可能性,sdb 符号链接的 inode 包含其他内容(即所有者、权限...)+/dev/sdb路径。

Ste*_*itt 5

ext4将符号链接的目标存储在 inode 内,如果目标长度小于 60 字节。更长的目标将存储在数据块中。