在软件包安装过程中如何更改文件夹权限

努诺五世

我正在制作一个deb软件包以安装自定义应用程序。为了避免在安装过程中出现警告,我将所有文件/文件夹的所有权都更改为root,并且在Ubuntu中所有运行都很顺利,因为Ubuntu将文件/文件夹的所有权更改为安装软件包的用户。

但是当我在Debian上安装时,root仍然是所有者。该应用程序使用文件夹写入数据,这就是问题所在。该应用程序以标准用户身份运行,没有在该文件夹上写入的权限。

现在,我该如何处理这个问题?我应该在deb软件包上制作安装后脚本,执行chmod o+w吗?我是否应该使用已设置的权限打包目录?

还是有什么方法可以将文件的所有者设置为自动安装应用程序的用户(就像Ubuntu一样)?

斯蒂芬·基特

我不确定Ubuntu的行为如何,但是通常对于.deb包含具有非标准权限的文件或目录软件包,您需要确保 dh_fixperms运行设置这些权限如果您使用dh-style rules,则可以按照以下步骤进行操作:

override_dh_fixperms:
        dh_fixperms
        chmod 777 yourfolder

您也可以在中执行以下操作postinst

if [ "$1" = "configure" ]; then
    chmod 777 yourfolder
fi

但是这种rules方法更简单(至少,我更喜欢这样做,而不是依赖维护者脚本)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在npm安装过程中出现错误,未安装所有软件包

如何将全局安装的软件包导入virtualenv文件夹

在Docker中安装Rcpp软件包会导致安装过程冻结

在“安装软件包”过程中创建少量二进制文件

npm-在其他文件夹中安装软件包的依赖项?

setuptools在安装过程中发现错误的软件包

在r软件包安装过程中找不到stdio.h

NuGet软件包安装到错误的文件夹

在dpkg软件包安装过程中输出自定义消息

在本地文件夹中从github安装python软件包/模块并使用它

在组件安装过程中调试软件包

为什么在Ubuntu安装过程中看到“删除其他软件包”?

现有的Java软件包在软件包安装过程中不满足依赖关系

在安装过程中如何获取文件夹的权限?

安装过程中的软件选择中的“基本Ubuntu服务器”软件包包含什么?

如何在安装过程中始终信任软件?

由于安装过程中的严重问题,以下软件包一团糟

如何创建包含源代码的软件包,这些软件包将在安装过程中进行编译

安装过程中的“不保留任何内容”选项会删除“ Windows”以外的文件夹吗?

如果在软件包安装过程中apt中断,会发生什么?

如何仅在首次安装软件包时而不是在升级过程中运行脚本?

在软件包安装过程中如何设置环境变量

Linux中的软件包,存储库和安装过程

如何防止在Debian软件包安装过程中失败的子进程立即终止安装

在Debian软件包安装过程中重命名文件

安装软件包时如何为供应商中的子文件夹设置自定义文件夹路径?

在appx安装过程中将软件包存储在Program Files文件夹中

如何安装通常在Ubuntu安装过程中下载的软件包?

如何通过 Composer 在供应商文件夹之外修复软件包的安装