接收器目录如 /dev/null

jp_*_*jp_ 13 linux storage

我想要一个/dev/null目录,图形程序可以在其中写入文件,并且认为它实际上正在写入文件,就像将 stdout 重定向到/dev/null. 我无法将其写入/tmp,因为我几乎从不重新启动系统,这会使硬盘满。我也不想事后删除该文件。

har*_*ymc 21

帖子 如何创建类似 /dev/null 的“黑洞”目录? 建议这样做:

据我所知,任何 UNIX 都不支持开箱即用,但您可以使用FUSE做几乎任何事情。至少有一个nullfs 的实现,这是一种文件系统,其中每个文件都存在并且行为类似/dev/null(这不是我见过的唯一实现)。

帖子 Linux 中是否有相当于 /dev/null 的目录? 有一个备受好评的答案:

FHS不提供“标准”空目录。

Linux系统提供一个目录是很常见的/var/empty,但是这个目录在FHS中没有定义,并且实际上可能不为空。相反,某些守护进程将在这里创建自己的空目录。例如,openssh 使用空目录 /var/empty/sshd进行权限分离。

/run如果您对空目录的需求是暂时的,您可以自己创建一个空目录,作为或的子目录/tmp。如果您在程序外部执行此操作,则可以使用mktemp -d 它,或者mkdtemp(3)在程序内部使用 C 函数。不过,如果您始终需要存在空目录,请考虑/var/empty像 openssh 那样在下面创建一个目录。

对于这个用例,在下面创建一个目录/tmp可能是最合适的,尽管实际上,将其放在哪里并不重要。

  • 请注意,“/tmp”和“/run”通常安装为“tmpfs”,它作为 ramdisk 存在。如果您向其中写入大文件,它们可能并且将会耗尽空间,因此它们不一定适合作为任意程序的一次性目录(想象一下,如果相关程序想要写入图像或视频?) (2认同)