fs是唯一可以访问文件系统的内置模块吗?

时间:2017-03-30 10:41:05

标签: node.js

我知道还有其他一些可以访问真实文件系统的require,但是appears to use fs to do so

我是否认为没有其他内置设备可以直接访问磁盘?

也就是说,如果我能够使用我自己的读取(并写入)内存虚拟文件系统的模拟全局覆盖所有fs方法,那么就无法访问真正的文件系统 - 这是正确的吗?

2 个答案:

答案 0 :(得分:2)

原则上,这是正确的。但是其他模块可能会生成进程来访问文件系统,或者他们可以使用一些使用文件系统的本机插件。如果您想将其作为安全措施,那么这还不够。如果您想确保没有模块可以访问真实文件系统,那么您必须在操作系统级别上劫持系统调用,并确保不能运行任何外部进程。这不是一件容易的事。使用内存文件系统运行的容器可能更容易实现同样的目的,并且无法访问主机系统上的外部文件系统,而不能访问JavaScript级别。

答案 1 :(得分:0)

您可以通过多种方式访问​​文件系统 让子进程执行

ls
cd ..
nano filename

并获取结果。