我想以我的(非 root)用户身份使用非共享绑定安装运行一个进程。我可以做这个。
$ unshare --mount --map-root-user mount --bind foo bar
Run Code Online (Sandbox Code Playgroud)
虽然这有效,但我在这种情况下假装扎根。我想以我自己的身份运行后续流程。我可以保留我的身份,--map-current-user但显然挂载失败了。
$ unshare --mount --map-current-user mount --bind foo bar
mount: bar: must be superuser to use mount.
Run Code Online (Sandbox Code Playgroud)
然后我想到将user这个安装的条目添加到/etc/fstab. 它在名称空间之外工作,但仍然顽固地拒绝在名称空间内部工作。在我所有的尝试中,这次失败是我觉得最令人惊讶的一次。
$ unshare --mount --map-current-user mount bar
mount: bar: must be superuser to use mount.
Run Code Online (Sandbox Code Playgroud)
好吧,这有点不愉快,但是通过 sudo 挂载怎么样?没有。
$ unshare --mount --map-current-user sudo mount --bind foo bar
sudo: /etc/sudo.conf is owned by uid 65534, should be 0
sudo: /usr/bin/sudo must be owned by uid 0 and …Run Code Online (Sandbox Code Playgroud) Red Hat 建议不要在 SSD 上使用 mdadm RAID 1 的其他问题中已经提到过。
Red Hat 还警告说,不建议在 SSD 上使用软件 RAID 级别 1、4、5 和 6。在这些 RAID 级别的初始化阶段,一些 RAID 管理实用程序(例如 mdadm)会写入存储设备上的所有块以确保校验和正常运行。这将导致 SSD 的性能迅速下降。
我明白这背后的原因。但是,我怀疑这是在mdtrim到来之前编写的,它是专门为 mdadm RAID 1 设计的。这是否回避了问题?如果我对 TRIM 的理解是正确的,那么我相信它确实如此,但我不确定,因此我在问。
不过,TRIM 可能不适合我。我需要这个用于生产系统,而 mdtrim 看起来充其量是实验性的。更重要的是,我需要强大的加密功能,研究表明,TRIM 通过突出显示驱动器的哪些部分实际在使用,从而透露了太多信息。有什么方法可以避免性能问题并且仍然具有强大的加密功能?我想知道是否有可能进行部分 TRIM,释放一些块以提高性能,但不要太多以至于放弃太多。
我看到的一个建议是只使用每个磁盘的 80% 左右,这样在 mdadm 进行初始检查后,仍有少量块未使用。但是这些块不会是第一个在随后使用磁盘时使用的块吗?它们仍然会很快用完,然后我也不会好过,对吧?