为什么VI在/dev/shmem中使用不正常?

在/dev/shmem中用vi创建文件123.txt.
然后用cat看内容没有问题。
但用vi本身或less看的时候报错。

less 123.txt

123 is not a regular file

谁能在原理上给一下解释吗?谢谢!

/dev/shmem 虽然看似可以存文件,但它并没有完整实现POSIX文件系统的全部操作。所以不能想当然把/dev/shmem当作一个文件系统来使用。

要使用基于内存的文件系统,可以用devb-ram。