首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >dpkg无法在路径变量中找到ldconfig/start-stop daemon。

dpkg无法在路径变量中找到ldconfig/start-stop daemon。
EN

Unix & Linux用户
提问于 2014-10-08 11:26:28
回答 3查看 153.7K关注 0票数 65

我试图安装软件包安装的bsd-mailx实用程序,但是我想知道这个错误。

这是我得到的错误:

代码语言:javascript
运行
复制
Preconfiguring packages ...
dpkg: warning: 'ldconfig' not found in PATH or not executable.
dpkg: warning: 'start-stop-daemon' not found in PATH or not executable.
dpkg: error: 2 expected programs not found in PATH or not executable.
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin.
E: Sub-process /usr/bin/dpkg returned an error code (2)
EN

回答 3

Unix & Linux用户

发布于 2019-11-27 19:10:41

由于问题中缺乏描述,很难确定这种情况下的确切问题,但我最近也面临着同样的问题:

代码语言:javascript
运行
复制
user@debian:su
Password: 
root@debian:/home/user/Downloads# dpkg -i [Some package]
dpkg: warning: 'ldconfig' not found in PATH or not executable
dpkg: warning: 'start-stop-daemon' not found in PATH or not executable
dpkg: error: 2 expected programs not found in PATH or not executable
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin

解决方案是使用su -而不是su (这通常更好,详见这个问题的答案):

代码语言:javascript
运行
复制
user@debian:su -
Password: 
root@debian:~# cd /home/user/Downloads/
root@debian:/home/user/Downloads# dpkg -i [Some package]
票数 7
EN

Unix & Linux用户

发布于 2017-05-10 15:08:26

我今天遇到了这个问题,并通过注释行(使用#)来解决它。

代码语言:javascript
运行
复制
Defaults    exempt_group=sudo

从我的/etc/sudoers文件中使用

代码语言:javascript
运行
复制
# visudo

作为根

此更改将导致sudo使用相同文件中的默认secure_path变量集。

票数 1
EN

Unix & Linux用户

发布于 2022-06-13 05:22:51

这里显示的任何解决方案都没有对我有帮助,所以我将解释发生在我身上的事情,以及我为解决这个问题做了什么:

我试图在我的Q4OS系统中安装Insync,但是我无法安装,因为应用程序需要libc6 >= 2.32,而Q4OS使用2.31。我发现了一个2.32的libc6 deb,然后噩梦开始了。它已经破坏了我的整个系统。apt-get停止工作,并表示系统需要libc6 2.31才能正常工作。当时我不知道如何降低这个版本的等级。因此,在重新启动之后,系统根本没有启动并挂起启动时的消息:

代码语言:javascript
运行
复制
A start job is running for Hold until boot process finishes up (Xmin Xs/no limit)

我试图改变终端机,但没有成功。希望我的Linux在VMWare下运行,并且我能够使用SSH在机器中进行连接。VM -> SSH -> Connect to SSH...

在那之后,我尝试了很多东西,但都没有成功。我试着升级:

代码语言:javascript
运行
复制
sudo apt install upgrade

消息说我必须逃跑:

代码语言:javascript
运行
复制
sudo apt --fix-broken install

但是当我尝试运行这个程序时,它说很多包都会被删除,包括q4os-desktop本身。好吧,我接受这些条件并试过了。我还能失去什么?

在那之后,事情变得更糟了。我什么都查不出来。我的问题也有一个类似的错误:

代码语言:javascript
运行
复制
Preconfiguring packages ...
dpkg: warning: 'ldconfig' not found in PATH or not executable.
dpkg: warning: 'start-stop-daemon' not found in PATH or not executable.
dpkg: error: 2 expected programs not found in PATH or not executable.
Note: root's PATH should usually contain /usr/local/sbin, /usr/sbin and /sbin.
E: Sub-process /usr/bin/dpkg returned an error code (2)

但是问题不是路径本身,而是ldconfig是libc6的一部分,并且它被删除了。我什么也做不了,因为几乎所有事情都依赖于libc6和ldconfig。我试图从源代码编译libc6,但没有成功。它有很多依赖项,当我试图安装依赖项时,库尝试使用一些libc6。一种依赖循环。

因此,我使用Q4OS live重新启动系统,并将二进制ldconfig复制到/usr/sbin/ldconfig。很好!现在,apt-get又开始工作了(不是很完美,但是.)。因此,我发现了如何降低库的级别:

代码语言:javascript
运行
复制
sudo apt install libc6=2.31-13+deb11u3

如果不确定要使用哪个版本,请运行:

代码语言:javascript
运行
复制
apt list --installed | grep libc6

在现场光盘里。输出应该类似于:

代码语言:javascript
运行
复制
libc6/stable,now 2.31-13+deb11u3 amd64 [installed]

在此之后,我再次安装了Q4OS:

代码语言:javascript
运行
复制
sudo apt install q4os-desktop

重启后,一切都恢复正常了!

但是现在当我运行Insync时,应用程序在5秒后就崩溃了。

票数 0
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/160019

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档