【问题标题】:Errors: Installing a .deb without sudo/root错误:安装没有 sudo/root 的 .deb
【发布时间】:2013-09-17 19:34:44
【问题描述】:

我创建了一个 .deb 包,我正在尝试在不使用任何 sudo/root 权限的情况下部署它。但是,我收到了Permission denied 消息,我不知道dpkg 在做什么以及是什么原因造成的。

运行dpkg -i --force-not-root --root=$HOME/a --log=$HOME/a/log a.deb 返回:

(Reading database ... 0 files and directories currently installed.)
Unpacking tetra-backup (from a.deb) ...
dpkg: error processing a.deb (--install):
 unable to open '/home/simon/a/simon_exec.dpkg-new': Permission denied
Errors were encountered while processing:
 a.deb

这里是deb的内容($ dpkg --contents a.deb):

drwxrwxr-x simon/simon       0 2013-09-17 14:49 ./
-r--r--r-x simon/simon    5568 2013-09-16 15:46 ./simon_exec

我想知道我需要做什么来解决上述问题并在此类限制下部署内容。如果不可能,我想知道原因和一些替代方案。

【问题讨论】:

  • $HOME/a 存在吗?你有权限在那里写吗?

标签: ubuntu debian deb dpkg


【解决方案1】:

使用--force-not-root 安装可能会给您带来很多问题。 dpkg 很可能无法解决很多包依赖关系,或者将文件安装到主目录之外的某些位置。

您可以尝试的一件事是执行apt-get source <package> 并将其配置为在本地安装。这可能需要您下载并编译它的所有依赖项。您还需要安装开发工具才能做到这一点。

【讨论】:

  • 或者,如果您想非正式地签出软件包,请设置一个合适的虚拟化环境(KVM、VMware、您有什么),并在一个临时框内拥有您需要的所有 root 访问权限。
  • dchroot
猜你喜欢
  • 2020-12-01
  • 2016-09-12
  • 1970-01-01
  • 2013-09-07
  • 1970-01-01
  • 2018-05-25
  • 2017-09-30
  • 2016-11-13
  • 2016-02-05
相关资源
最近更新 更多