"dpkg-deb:错误:子进程 粘贴 被信号(断开的管道) 终止了" 问题解决过程

问题trace信息:

sudo apt-get install libcublas-dev

正在读取软件包列表... 完成

正在分析软件包的依赖关系树      

正在读取状态信息... 完成      

下列软件包是自动安装的并且现在不需要了:

  openjdk-9-jdk-headless

使用'sudo apt autoremove'来卸载它(它们)。

下列【新】软件包将被安装:

  libcublas-dev

升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 316 个软件包未被升级。

有 66 个软件包没有被完全安装或卸载。

需要下载 0 B/39.9 MB 的归档。

解压缩后会消耗 115 MB 的额外空间。

获取:1 file:/var/cuda-repo-10-1-local-10.1.105-418.39 libcublas-dev 10.1.0.105-1 [39.9 MB]

(正在读取数据库 ... 系统当前共安装有 277232 个文件和目录。)

正准备解包 .../libcublas-dev_10.1.0.105-1_amd64.deb  ...

正在解包 libcublas-dev (10.1.0.105-1) ...

dpkg: 处理归档 /var/cuda-repo-10-1-local-10.1.105-418.39/./libcublas-dev_10.1.0.105-1_amd64.deb (--unpack)时出错:

 正试图覆盖 /usr/lib/x86_64-linux-gnu/stubs/libcublas.so,它同时被包含于软件包 nvidia-cuda-dev 7.5.18-0ubuntu1

dpkg-deb:错误:子进程 粘贴 被信号(断开的管道) 终止了

在处理时有错误发生:

 /var/cuda-repo-10-1-local-10.1.105-418.39/./libcublas-dev_10.1.0.105-1_amd64.deb

其实最原始不是安装这个包:libcublas-dev, 而是随便一个软件,比如nginx

sudo apt-get install nginx

正在读取软件包列表... 完成

正在分析软件包的依赖关系树      

正在读取状态信息... 完成      

您可能需要运行“apt-get -f install”来纠正下列错误:

下列软件包有未满足的依赖关系:

 cuda-libraries-dev-10-1 : 依赖: libcublas-dev (>= 10.1.0.105) 但是它将不会被安装

 cuda-samples-10-1 : 依赖: libcublas-dev (>= 10.1.0.105) 但是它将不会被安装

 cuda-visual-tools-10-1 : 依赖: libcublas-dev (>= 10.1.0.105) 但是它将不会被安装

 nginx : 依赖: nginx-core (>= 1.10.3-0ubuntu0.16.04.5) 但是它将不会被安装 或

                 nginx-full (>= 1.10.3-0ubuntu0.16.04.5) 但是它将不会被安装 或

                 nginx-light (>= 1.10.3-0ubuntu0.16.04.5) 但是它将不会被安装 或

                 nginx-extras (>= 1.10.3-0ubuntu0.16.04.5) 但是它将不会被安装

         依赖: nginx-core (< 1.10.3-0ubuntu0.16.04.5.1~) 但是它将不会被安装 或

                 nginx-full (< 1.10.3-0ubuntu0.16.04.5.1~) 但是它将不会被安装 或

                 nginx-light (< 1.10.3-0ubuntu0.16.04.5.1~) 但是它将不会被安装 或

                 nginx-extras (< 1.10.3-0ubuntu0.16.04.5.1~) 但是它将不会被安装

E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt-get -f install”(也可以指定一个解决办法)。

所以需要先安装libcublas-dev,而安装这个又出现上面这个错误。导致很多软件都无法安装。这个问题一直困扰。。。尝试过卸载nvidia, cuda等,卸都卸不了。。。

终于找到一篇可用https://www.jianshu.com/p/3ede7aaf29e4

上面的问题是: libcublas-dev与nvidia-cuda-dev 7.5.18-0ubuntu1同时包含了libcublas.so,那么强制将nvidia-cuda-dev 7.5.18-0ubuntu1这个删除就可以了。

cd  /var/lib/dpkg/info

sudo rm nvidia-cuda-dev 7.5.18-0ubuntu1*

sudo apt-get -f install libcublas-dev

sudo apt-get install nginx

成功完成!!!

你可能感兴趣的:("dpkg-deb:错误:子进程 粘贴 被信号(断开的管道) 终止了" 问题解决过程)