以前使用的是Deepin 15.7桌面版本,系统自带的深度文件管理器少了些功能,比如最近访问的路径、收藏文件夹等,所以升级到Deepin 15.8系统,并且在文件管理器有一个最近使用的功能,所以打算直接升级文件管理器尝试下,但是失败,以下为解决办法。
具体问题 在Deepin 15.8系统下升级深度商店时发现升级失败,并且重试了几次也无法更新成功。由于自己的强迫症,想找到不能更新的原因并且解决它,于是在深度商店上的深度文件管理器中再点击一次更新按钮,使用命令行查看下apt-get的进程并要尝试解决它。
解决详情如下(以下执行的命令为红色字) ops@localhost:~$ ps aux | grep apt root 3628 0.0 0.0 99016 6424 pts/2 S+ 00:22 0:00 sudo apt-get -y -m -o APT::Status-Fd=3 -o Debug::NoLocking=1 -o Acquire::Retries=1 -c /var/lib/lastore/apt.conf install -d --allow-change-held-packages -- dde-file-manager # 尝试直接执行命令升级,发现竟然会有404的情况。 ops@localhost:~$ sudo apt-get -y -m -o APT::Status-Fd=3 -o Debug::NoLocking=1 -o Acquire::Retries=1 -c /var/lib/lastore/apt.conf install -d --allow-change-held-packages -- dde-file-manager ... 于“仅下载”模式中下载完毕 E: 无法下载 http://packages.deepin.com/deepin/pool/main/d/dde/dde_15.8_all.deb 404 Not Found [IP: 202.141.160.114 80] ... # 为了证明不是我的网络问题,于是我登入其他vps查看deb包是否确实不存在。结果果然又是404 [ops@centos ~]$ curl -I http://packages.deepin.com/deepin/pool/main/d/dde/dde_15.8_all.deb HTTP/1.1 404 Not Found # 一般这种情况是官方发布错链接或者忘记上传资源了,于是打开浏览器看了下deb的地址:http://packages.deepin.com/deepin/pool/main/d/dde/ # 这时发现包名是dde_15.8+1_all.deb ,而不是dde_15.8_all.deb。 # debain分支为什么要用+号来命名文件,一直搞不懂,以前在Ubuntu也遇到过这类问题,这不又出问题了 # 但是这并不能阻碍我们背锅工程师的脚步,我决定手动升级一下 # 在包的地址上右键复制实际链接,并用wget下载下来 ops@localhost:~$ wget http://packages.deepin.com/deepin/pool/main/d/dde/dde_15.8%2b1_all.deb # 手动安装 ops@localhost:~$ sudo dpkg -i dde_15.8+1_all.deb (正在读取数据库 ... 系统当前共安装有 188785 个文件和目录。) 正准备解包 dde_15.8+1_all.deb ... 正在将 dde (15.8+1) 解包到 (15.7+deepin1) 上 ... dpkg: 依赖关系问题使得 dde 的配置工作不能继续: dde 依赖于 fonts-noto-color-emoji;然而: 未安装软件包 fonts-noto-color-emoji。 dpkg: 处理软件包 dde (--install)时出错: 依赖关系问题 - 仍未被配置 在处理时有错误发生: dde # 尝试再执行一次apt更新 ops@localhost:~$ sudo apt-get -y -m -o APT::Status-Fd=3 -o Debug::NoLocking=1 -o Acquire::Retries=1 -c /var/lib/lastore/apt.conf install -d --allow-change-held-packages -- dde-file-manager ... 正在读取状态信息... 完成 您也许需要运行“apt --fix-broken install”来修正上面的错误。 下列软件包有未满足的依赖关系: dde: 依赖: fonts-noto-color-emoji 但是它将不会被安装 推荐: printer-driver-all 但是它将不会被安装 推荐: printer-driver-hpijs 但是它将不会被安装 推荐: open-vm-tools-desktop 但是它将不会被安装 推荐: open-vm-tools 但是它将不会被安装 推荐: deepin-fpapp-org.deepin.flatdeb.deepin-picker 但是它将不会被安装 dde-file-manager: 依赖: libdde-file-manager (= 4.7.1.1-1) 但是 4.6.5-1 正要被安装依赖: libdtkwidget2 (>= 2.0.9.9-1) 但是 2.0.9.2-1 正要被安装 E: 有未能满足的依赖关系。请尝试不指明软件包的名字来运行“apt --fix-broken install”(也可以指定一个解决办法)。 # 以上报错建议我们用apt --fix-broken install,那我们就按它说的做吧 ops@localhost:~$ sudo apt --fix-broken install 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 正在修复依赖关系... 完成 将会同时安装下列软件: fonts-noto-color-emoji 下列【新】软件包将被安装: fonts-noto-color-emoji 升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 136 个软件包未被升级。 有 1 个软件包没有被完全安装或卸载。 需要下载 0 B/7,167 kB 的归档。 解压缩后会消耗 7,841 kB 的额外空间。 您希望继续执行吗? [Y/n] y 正在选中未选择的软件包 fonts-noto-color-emoji。 (正在读取数据库 ... 系统当前共安装有 188785 个文件和目录。) 正准备解包 .../fonts-noto-color-emoji_0~20180424-2_all.deb ... 正在解包 fonts-noto-color-emoji (0~20180424-2) ... 正在设置 fonts-noto-color-emoji (0~20180424-2) ... 正在设置 dde (15.8+1) ... 正在处理用于 fontconfig (2.13.0-5) 的触发器 ... # 发现这次没报错了,于是再执行一次更新命令 ops@localhost:~$ sudo apt-get -y -m -o APT::Status-Fd=3 -o Debug::NoLocking=1 -o Acquire::Retries=1 -c /var/lib/lastore/apt.conf install -d --allow-change-held-packages -- dde-file-manager ... 下列软件包将被升级: dde-desktop dde-disk-mount-plugin dde-file-manager libdde-file-manager libdtkcore2 libdtkwidget2 升级了 6 个软件包,新安装了 0 个软件包,要卸载 1 个软件包,有 129 个软件包未被升级。 ...
结语 以上为更新深度文件管理器处理的全部过程,它解决了深度文件管理器更新失败的问题。
相关主题 |