使用 noexec 和 nosuid 挂载 /tmp 会导致问题吗?

使用 noexec 和 nosuid 挂载 /tmp 会导致问题吗?

我计划在/etc/fstab运行 LAMP 的 Ubuntu 14.04 服务器上使用此行:

/run/shm/tmp  tmpfs   nosuid,nodev,noexec,size=8G   0  0

我的问题是,是否有人知道使用和进行安装是否会/tmp产生nosuid问题noexec


2015年1月31日编辑:上文提到的答案“在 fstab 中挂载 /tmp 的最佳方法?“”并没有回答我的问题:如果我使用 nosuid 和 noexec 挂载 /tmp,可能出现什么问题。它只是提到没有必要这样做,并且如果我使用这些选项,某些东西“可能”会损坏。

以下由 aFoP 和 muru 提供的答案确实回答了我的问题通过列举哪些情况会失败以及如何解决问题。

感谢 aFoP 和 muru!

答案1

我使用我的 fstab 中的条目 tmpfs /tmp tmpfs defaults,noexec,nosuid 0 0

可能会出现两个问题:在 apt-get upgrade 期间无法安装更新。我通过创建一个/etc/apt/apt.conf包含以下几行的文件解决了这个问题:

DPkg::Pre-Invoke{"mount -o remount,exec /tmp";};
DPkg::Post-Invoke {"mount -o remount,defaults,noexec,nosuid /tmp";};

这样,apt 将/tmp暂时使用 exec 重新挂载,以便能够执行更新。

我意识到另一个问题是,当我需要手动运行时update-initramfs -u,它直到我再次使用 exec 重新挂载 /tmp 才运行:

mount -o remount,exec /tmp

完成后我再次重新安装了默认设置......

mount -o remount,defaults,noexec,nosuid /tmp

相关内容