我试图安装软件包安装的bsd-mailx
实用程序,但是我想知道这个错误。
这是我得到的错误:
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)
发布于 2019-11-27 19:10:41
由于问题中缺乏描述,很难确定这种情况下的确切问题,但我最近也面临着同样的问题:
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
(这通常更好,详见这个问题的答案):
user@debian:su -
Password:
root@debian:~# cd /home/user/Downloads/
root@debian:/home/user/Downloads# dpkg -i [Some package]
发布于 2017-05-10 15:08:26
我今天遇到了这个问题,并通过注释行(使用#)来解决它。
Defaults exempt_group=sudo
从我的/etc/sudoers文件中使用
# visudo
作为根
此更改将导致sudo使用相同文件中的默认secure_path变量集。
发布于 2022-06-13 05:22:51
这里显示的任何解决方案都没有对我有帮助,所以我将解释发生在我身上的事情,以及我为解决这个问题做了什么:
我试图在我的Q4OS系统中安装Insync,但是我无法安装,因为应用程序需要libc6 >= 2.32,而Q4OS使用2.31。我发现了一个2.32的libc6 deb,然后噩梦开始了。它已经破坏了我的整个系统。apt-get
停止工作,并表示系统需要libc6 2.31才能正常工作。当时我不知道如何降低这个版本的等级。因此,在重新启动之后,系统根本没有启动并挂起启动时的消息:
A start job is running for Hold until boot process finishes up (Xmin Xs/no limit)
我试图改变终端机,但没有成功。希望我的Linux在VMWare下运行,并且我能够使用SSH在机器中进行连接。VM -> SSH -> Connect to SSH...
在那之后,我尝试了很多东西,但都没有成功。我试着升级:
sudo apt install upgrade
消息说我必须逃跑:
sudo apt --fix-broken install
但是当我尝试运行这个程序时,它说很多包都会被删除,包括q4os-desktop
本身。好吧,我接受这些条件并试过了。我还能失去什么?
在那之后,事情变得更糟了。我什么都查不出来。我的问题也有一个类似的错误:
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
又开始工作了(不是很完美,但是.)。因此,我发现了如何降低库的级别:
sudo apt install libc6=2.31-13+deb11u3
如果不确定要使用哪个版本,请运行:
apt list --installed | grep libc6
在现场光盘里。输出应该类似于:
libc6/stable,now 2.31-13+deb11u3 amd64 [installed]
在此之后,我再次安装了Q4OS:
sudo apt install q4os-desktop
重启后,一切都恢复正常了!
但是现在当我运行Insync时,应用程序在5秒后就崩溃了。
https://unix.stackexchange.com/questions/160019
复制相似问题