这个dpkg命令究竟做了什么?

Modified on: Tue, 14 May 2019 08:20:02 +0800

我为nagios解决了一个许可问题,如描述这里

命令是:

sudo dpkg-statoverride --update --add nagios www-data 2710 /var/lib/nagios3/rw
sudo dpkg-statoverride --update --add nagios nagios 751 /var/lib/nagios3

很明显,这是某种改变的权限。但是它发生在哪里?它存放在哪里?它只是一个chmod修改?

最佳答案

dpkg-statoverride是由dpkg维护的数据库的管理工具,其中包含给定文件路径的所有者和模式设置。

在你的问题中调用,它将做两件事:如果存在(--update),立即设置给定文件的owenrship / mode并在覆盖文件中存储新条目( --add)。后者确保创建或修改列出文件的进一步dpkg操作将使用覆盖值而不是包定义的值。

这些覆盖是永久性的。它们通常胜过普通的chmod/chown,因为它可以帮助您在更新或重新安装软件包时手动重置权限。

可以通过运行dpkg-statoverride --list来列出现有覆盖。


相关问答

添加新评论