找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
广告投放联系QQ68610888
查看: 9942|回复: 17

openwrt下用cups共享打印机

[复制链接]
本帖最后由 muwanqing 于 2021-8-21 19:09 编辑

我的打印机是HP LaserJet P1007,很老的打印机了,用其它方法很不稳定,所以就想到了CUPS。路由器是极路由B70,已刷了openwrt 19.07

一、交叉编译cups
    1、下载openwrt的SDK,找到对应的版本
               https://downloads.openwrt.org/re ... Linux-x86_64.tar.xz
               tar vxJf xxx.tar.xz
               cd sdk
     2、集成CUPS
          echo "src-git cups https://github.com/fengchen-github/openwrt-cups.git" >> feeds.conf.default
     3、更新代码
          ./scripts/feeds update -a
          ./scripts/feeds install -a
      4、编译选项,默认已经选择了CUPS
          make menuconfig (set Network->  Printing->cups as "M")
       5、编译
           make package/cups/compile V=s

         注意:交叉编译时,在x64系统下,生成的cups库文件会在x64文件目录里,复制出到x32目录就可通过编译并生成安装包。具体目录自己查看编译错误提示,很容易找到。

二、安装cups相关包、复制脚本和驱动到相应目录

       1、以刚更新完固件为例
           opkg update
           opkg install luci-i18n-base-zh-cn
           opkg install kom-usb-print
           ls /dev/usb/      ###查看是否有lp0
       2、复制脚本和驱动
           20-usb_printer_p1007.sh          ##把此文件放入/etc/hotplug.d/usb/目录下,当打印机打开后,系统会自动识别usb接口的打印机,并载入驱动
           根据上面脚本的设置,把固件sihpP1007.dl放入/etc/目录下
           打印机固件下载地址:http://oleg.wl500g.info/hplj/
      3、安装
            libcups_2.3.3-a_mipsel_24kc.ipk
            cups_2.3.3-a_mipsel_24kc.ipk

三、设置cups,添加打印机共享
     
     1、设置cups配置文件
          vi /etc/cups/cupsd.conf
             主要修改三个地方
             打开web设置界面功能
             根据自己的局域网地址段,设置开放响应的地址段,有两处。
          /etc/init.d/cupsd restart

     2、 http://192.168.0.1:631/admin
          根据提示添加打印机即可
      
    3、Windows下添加打印机,把下面的地址填入即可,根据提示设置。
          http://192.168.0.1:631/printers/HP_LaserJet_P1007


下面是20-usb_printer_p1007.sh文件内容。
  1. #!/bin/sh
  2. #把此文件放入/etc/hotplug.d/usb/目录下
  3. #当打印机打开后,系统会自动识别usb接口的打印机,然后载入驱动
  4. set -e

  5. # change this to the location where you put the .dl file:
  6. FIRMWARE=/etc/sihpP1007.dl
  7. DEVICE=/dev/usb/lp0
  8. LOGFILE=/tmp/hp-fm

  9. if [ "$PRODUCT" = "3f0/4817/100" -a "$ACTION" = "add" -a "$DEVTYPE" = "usb_interface" ]; then
  10.    echo "$(date): STARTING" > $LOGFILE
  11.    for i in $(seq 30); do
  12.        echo "$(date): Attempt number $i on $DEVICE" » $LOGFILE
  13.        if [ -c $DEVICE ]; then
  14.           echo "$(date): Device $DEVICE found." » $LOGFILE
  15.           if [ -z "`usb_printerid $DEVICE | grep FWVER`" ]; then
  16.               echo "$(date): No firmware found on $DEVICE" » $LOGFILE
  17.               echo "$(date): Sending firmware to printer…" » $LOGFILE
  18.               cat $FIRMWARE > $DEVICE
  19.               echo "$(date): done." » $LOGFILE
  20.           else
  21.               echo "$(date): Firmware already there on $DEVICE" » $LOGFILE
  22.           fi
  23.           echo "$(date): EXITING" » $LOGFILE
  24.           exit
  25.        fi
  26.        sleep 1
  27.     done
  28. fi
复制代码






本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
谢谢分享
回复

使用道具 举报

楼主精神可嘉!op下GDi打印机已有成熟方案了
回复

使用道具 举报

 楼主| | 显示全部楼层
5566hyc 发表于 2021-8-9 07:44
楼主精神可嘉!op下GDi打印机已有成熟方案了

这个最稳定,其它方案基本不能用,偶尔能用,大部分时间点击打印,打印机没反应。应该是个案,但找不到原因。
回复

使用道具 举报

我看这个cups编译文件内去掉了很多库支持。实际使用中应该功能缺失吧?
回复

使用道具 举报

支持技术贴




























































回复

使用道具 举报

楼主有编译好的固件吗,不会编译
回复

使用道具 举报

 楼主| | 显示全部楼层
425369918 发表于 2021-8-19 09:36
楼主有编译好的固件吗,不会编译

只用编译个cups即可  上传安装即可   没必要编译固件
回复

使用道具 举报

怎么感觉弄得这么复杂,Padavan只要打开开关就可以共享打印机了。
回复

使用道具 举报

楼主,请问你的手机可以发现共享的打印机么?
回复

使用道具 举报

 楼主| | 显示全部楼层
觅凤的梧桐 发表于 2021-9-21 14:02
楼主,请问你的手机可以发现共享的打印机么?

不能,没研究过。
不过好像手机端也要安装cups才行。
回复

使用道具 举报

muwanqing 发表于 2021-10-29 07:38
不能,没研究过。
不过好像手机端也要安装cups才行。

我现在弄好了,很方便
回复

使用道具 举报

 楼主| | 显示全部楼层
觅凤的梧桐 发表于 2021-10-29 08:54
我现在弄好了,很方便

发出来  思考思考
回复

使用道具 举报

muwanqing 发表于 2021-10-29 22:02
发出来  思考思考

我是n1刷了f大的openwrt,用docker搞的,不用额外配置avahi,cups装完了就有驱动,手机也能同时发现。openwrt玩这个是各种坑。
回复

使用道具 举报

本帖最后由 跷跷板注册 于 2022-4-1 18:25 编辑
觅凤的梧桐 发表于 2021-10-29 08:54
我现在弄好了,很方便

给个详细的过程呗,拯救一下313
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

欢迎大家光临恩山无线论坛上一条 /1 下一条

有疑问请添加管理员QQ86788181|手机版|小黑屋|Archiver|恩山无线论坛(常州市恩山计算机开发有限公司版权所有) ( 苏ICP备05084872号 )

GMT+8, 2024-5-24 15:20

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

| 江苏省互联网有害信息举报中心 举报信箱:js12377 | @jischina.com.cn 举报电话:025-88802724 本站不良内容举报信箱:68610888@qq.com 举报电话:0519-86695797

快速回复 返回顶部 返回列表