如何在Ubuntu上安装最新的HPLIP以支持我的HP打印机和/或扫描仪?


27

假设有人拥有一些现代的HP打印机和/或扫描仪,但官方存储库中的HPLIP软件包不支持该打印机和/或扫描仪。

当前,Ubuntu版本Universe Pocket中具有以下版本

trusty (14.04LTS) (utils): 3.14.3-0ubuntu3.4
xenial (16.04LTS) (utils): 3.16.3+repack0-1
bionic (18.04LTS) (utils): 3.17.10+repack0-5
cosmic (18.10) (utils): 3.18.7+dfsg1-2ubuntu2  
disco (19.04) (utils): 3.19.1+dfsg0-1: all 

如果较新版本的HPLIP 支持打印机(在HP Developer Portal |所有受支持的打印机型号中选中),该怎么办?

Answers:


45

安装

当前没有带有更新hplip程序包的PPA 。

但是用户可以按照手册中的说明从HP下载并安装二进制文件。

在继续之前,您应该删除所有hplip相关软件包,以避免将来可能发生冲突。

HP在支持页面上有关于此问题的说明

警告:如果要升级HPLIP,并且HPLIP已随发行版预先安装,或者如果您使用RPM,DEB或其他软件包安装了HPLIP,请使用特定于发行版的方法卸载以前的版本。如果不这样做,则可能存在程序包冲突问题或功能问题。

我已经实验确定了软件包列表(在16.04 LTS和18.04 LTS上测试),以下是命令:

sudo apt-get purge hplip hplip-data hplip-doc hplip-gui hpijs-ppds \
libsane-hpaio printer-driver-hpcups printer-driver-hpijs
sudo rm -rf /usr/share/hplip/

sudo apt-get autoremove

然后,您应该执行以下步骤:

  1. 步骤1:从Ubuntu的官方链接下载自动安装程序(.run文件)

    下载适用于Ubuntu的HPLIP

    或今天使用 wget

    wget https://nchc.dl.sourceforge.net/project/hplip/hplip/3.19.10/hplip-3.19.10.run
    
  2. 步骤2:运行自动安装程序

    sh hplip-3.19.10.run
    

    然后按照屏幕上的说明进行操作(它应该要求您的sudo用户密码才能运行apt,并删除hplip-gui文件(如果已安装))。安装过程已经在HPLIP网站上有详细记录

    安装后,它将显示打印机安装向导,您可以将打印机添加到系统中。


解除安装

在这里,我们从二进制HPLIP安装开始(因此,我们没有安装与HPLIP相关的deb-packages)。

让我们考虑一下我们hplip-3.19.10.run在当前目录中有安装文件。我们需要从中提取存档,然后运行卸载脚本。

sh hplip-3.19.10.run --noexec
cd hplip-3.19.10
sudo ./uninstall.py
sudo rm -rf /usr/share/hplip/

之后,我们改为安装官方的Ubuntu软件包(可选):

sudo apt-get install hplip-gui

注意:我已经向HPLIP的LaunchPad帐户报告了错误1782137,要求开发人员包括来自Ubuntu的Deb -packages HPLIP组件的卸载功能。


3
这帮助我摆脱了python的依赖问题。谢谢。
Mookey

因此,sudo apt install hplib-gui肯定比下载并运行更好(我得到“没有可用的systemtrayicon”和“无法加载模块'canberra-gtk-module'”)。但是您如何运行它?我以前在工具栏上显示过一个图标。
Xorile博士

@DrXorile托盘行为取决于您的桌面环境。使用GNOME,它可能会失败,但是使用MATE,它将起作用。您可以使用运行HPLIP hp-toolbox。仅当您的设备需要最新的HPLIP版本时才需要二进制安装。
N0rbert

失败,并显示有关我的依赖项错误:askubuntu.com/questions/1173641/installing-hplip-3-19-8-fails
哑光

@matt请从此处删除您的评论,我无法在干净的18.04 LTS VM上重现您的问题。
N0rbert

5

直到几周前,HP Developers上可用的最新HPLIP驱动程序版本-HP Linux Imaging and Printing3.18.12。在Ubuntu 16.04官方存储库中,可用版本为3.16.3

首先,我尝试安装从网站下载的最新版本。但是,package引发了兼容性问题python-gobject。如N0rbert(主要答案)所述,在安装另一个版本之前,您需要完全卸载HPLIP的实际版本。手动执行操作,如N0rbert所述。之后,请确保不再存在以下文件(或相应的文件夹为空):

/etc/hp/hplip.conf /var/lib/hp/hplip.state /usr/share/hplip/ /usr/share/ppd/hplip ~/.hplip/hplip.conf /etc/cups/ppd/HP-....ppd

我不确定是否绝对需要删除上面列出的所有文件。但是,随着它们的消失,我可以继续进行新安装而不会出现问题。

尽管该存储库没有最新版本的驱动程序,但我还是决定通过安装它apt,因为它可以在不与其他预装软件包崩溃的情况下工作。我做了如下:

1)sudo apt install hplip(大多数HP打印机和扫描仪的Linux驱动程序)。

2)sudo apt install hplip-gui(hp-plugin所需)。

3)hp-plugin(作为普通用户)。

该插件是HP未开源的驱动程序的专有“部分”。没有它,该设备将无法工作。系统将提示您接受条款,并为您已安装的驱动程序的确切版本安装所需的插件。

4)hp-doctor(以确保所有东西都正确安装,尤其是插件)。

5)hp-setup添加连接的设备,或使用此时已安装的HP软件(带有图形界面)。

6)转到Ubuntu系统设置,然后使用HPLIP添加新的打印机/扫描仪。

PS:到2019年1月,最新版本是3.19.1,我尚未测试过。
通常,如果您真的不需要最新版本的软件包,请安装官方存储库中提供的软件包。后记很可能不会有问题。


这对于Ubuntu 18.04也是一个很好的解决方案。官方存储库中此软件包的较旧版本,并且hp-doctor确实声明该发行版尚不受支持,但是与3.19.1版本相比,整个过程对我来说效果很好,原因是我无法正常工作hp-setuphp-plugin命令期间的python2 / python3依赖项不匹配。
杰罗姆

1
对于那些像我这样谁拥有Ubuntu 18.04多个python2python3版本由管理update-alternatives工具(点击这里,如果你想了解更多),运行hp-doctorhp-setup命令可能不与工作错误:cupsext无法加载。请检查以打印出来的hplip安装消息。 解决方案:改为运行python3 $(which hp-doctor)python3 $(which hp-setup)命令。
KiriSakow

1
@KiriSakow对于我的HP LaserJet似乎最好的解决方案是Ubuntu 18.04官方存储库中的hplip软件包。我只是在工作-惠普最新产品没有任何问题。但是,即使使用您建议的解决方案,诸如hp-setup,hp-doctor,hp-systray之类的东西也将不起作用(尽管不是很重要)-尽管安装了python3,但我仍收到相同的python错误消息。你以为我想念什么吗?
萨迪

在我的情况下,第6步已经完成了第6步。
马特

这个答案非常重要,因为它包括hp插件步骤,这对于实际工作似乎是必需的。
马特
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.