zoukankan      html  css  js  c++  java
  • 转载【2017-05-20】OpenWrt 打印机共享专用固件 (trunk, r47249)

    [2017-05-20 更新]
    经过研究发现,Windows 共享打印机使用 RAW 数据(不是 RAW 协议)传输,因此 CUPS 可以去掉所有的过滤器和 PPD 文件。
    因此重新编译了 8M 的 ar71xx 固件,只包含了CUPS和后端程序,并附带上未包含进固件的过滤器和PPD文件。
    另外提供 ramips 和 x86_64 的相关软件包。
    ar71xx 和 ramips 都使用 musl 库。x86_64 使用 glibc 库。

    此固件使用 CUPS 来共享打印机,因此兼容性比 p910nd 更好,但是对路由的硬件配置要求也会更高。
    固件包含了主流打印机的 CUPS 支持,可以在 http://www.openprinting.org/printers 里面查询支持的打印机。
    http://www.openprinting.org/drivers 此页面里显示为 CUPS Raster 类型的驱动本固件都支持。
    通过外部存储扩展以及安装 ipk,可以获得更多的打印机支持。

    包含的功能如下:
    CUPS 打印服务(含串口、并口的后端程序)
    带虚拟多用户支持的 vsftpd (第二版)
    EXT4、exFAT、FAT 挂载支持
    hd-idle

    额外软件包提供的功能:
    Python2.7
    UFSD(NTFS)挂载支持,仅 ar71xx
    SAMBA 共享,仅 ar71xx

    路由配置要求:
    Flash: 8MB
    RAM: 最低 64MB推荐 128MB 或以上
    (内存过低会导致 CUPS 耗尽内存)
    另外建议使用外接存储器,将 /tmp 重定向到外部存储,以保证 CUPS 的 spool 功能不会耗尽内存

    一些简要说明:
    CUPS backend: CUPS 后端程序,可以理解为打印机的接口驱动(USB、串口、LPT并口、网络等)
    CUPS filter: CUPS 过滤器,将打印数据转换为打印机可以识别的数据,并传递给 CUPS 后端程序,可以理解为打印机的型号支持驱动
    PPD 文件: PostScript Printer Description,即打印机描述文件,一个 PPD 文件对应一个或一个型号系列的打印机,它描述了打印机的各种参数,以及该使用何种 CUPS 过滤器。

    CUPS 打印的基本流程:
    打印数据 -> CUPS 后台进程 -> 打印机 PPD 文件 -> CUPS filter 程序 -> CUPS backend 程序 -> 硬件接口 -> 打印机

    对于如何配置 CUPS 以支持打印机共享,请自行搜索 Google、百度等。
    添加打印机时在选择 Manufacturer(Make)/Model 时请选择 RAW

    软件包说明:
    网盘中带有固件的软件源,可以安装一些附加的包(内核模块、luci、打印机相关的软件等)。

    固件中包含 ghostscript,但是不包含其 ppd 文件,若要使用,需要自行寻找。
    软件包中有 gutenprint,也不包含 ppd 文件。
    此外软件包还有 openprinting-cups-filters,它因为需要的依赖项太多太大,因此没有集成在固件中。

    软件包:

    软件包名
    固件中是否包含
    说明
    cups CUPS 主程序
    cups-filters CUPS 自带的 Raster 过滤器
    foomatic-filters Foomatic 通用打印机过滤器,独立 PPD 文件。依赖 GhostScript
    foomatic-db-ppds Foomatic 通用打印机过滤器,PPD 文件
    brlaser Brother 激光打印机,过滤器,包含 PPD 文件。支持型号查阅 https://github.com/pdewacht/brlaser
    c2esp Kodak ESP 与 Hero 一体机,过滤器,包含 PPD 文件。支持型号查阅 https://sourceforge.net/projects/cupsdriverkodak/
    carps-cups Canon CARPS 激光打印机,过滤器,包含 PPD 文件。支持型号查阅 https://github.com/ondrej-zary/carps-cups
    cndrvcups-common Canon 打印机过滤器
    cndrvcups-capt-backend Canon CAPT 激光打印机,后端程序。支持型号查阅 http://software.canon-europe.com/software/0028622.asp
    cndrvcups-capt-filters Canon CAPT 激光打印机,过滤器,独立 PPD 文件。不确定是否能用。支持型号查阅 http://software.canon-europe.com/software/0028622.asp
    cndrvcups-capt-ppds Canon CAPT 激光打印机,PPD 文件
    cndrvcups-lb Canon UFR II/UFRII LT 打印机,过滤器,独立 PPD 文件。不确定是否能用。支持型号查阅 http://software.canon-europe.com/software/0043689_0011161.asp
    cndrvcups-lb-ppds Canon UFR II/UFRII LT 打印机,PPD 文件
    cups-bjnp Canon BJNP 协议网络打印机,后端程序。项目主页 https://sourceforge.net/projects/cups-bjnp/
    epson-alc1100-filter Epson ALC1100 打印机,PPD 文件,依赖 foomatic-filters 过滤器
    epson-alcx11-filter Epson ALCX11 打印机,PPD 文件,依赖 foomatic-filters 过滤器
    epson-inkjet-printer-escpr Epson ESC/P-R打印机,过滤器,包含 PPD 文件。支持型号查阅 http://www.openprinting.org/driver/epson-escpr/
    epson-inkjet-printer-filters Epson InkJet 打印机,过滤器,独立 PPD 文件。支持型号查阅 http://www.openprinting.org/drivers 里面 epson 开头的 CUPS Raster 驱动
    epson-inkjet-printer-ppds Epson InkJet 打印机,PPD 文件
    foo2zjs foo 系列 (foo2zjs、foo2xqx等) 第三方打印机,过滤器,含 PPD 文件。依赖 GhostScript。支持型号查阅 http://foo2zjs.rkkda.com/
    fxlinuxprint Fuji Xerox 打印机,过滤器,含 PPD 文件。依赖 GhostScript。支持型号查阅 http://www.fujixerox.co.jp/downl ... s/linux_module.html
    gutenprint Gutenprint (原 gimp-print) 通用打印机驱动,不含 PPD 文件。项目主页 http://gimp-print.sourceforge.net/
    hplip-cups HP 打印机和一体机,后端程序和过滤器,独立 PPD 文件。依赖 Python。支持型号查阅 http://hplipopensource.com/hplip-web/supported_devices/
    hplip-ppds HP 打印机和一体机,PPD 文件
    openprinting-cups-backends OpenPrinting 托管的 CUPS 不再开发的后端程序。项目描述 http://www.linuxfoundation.org/c ... inting/cups-filters
    openprinting-cups-filters OpenPrinting 托管的 CUPS 不再开发的过滤器,独立 PPD 文件。项目描述 http://www.linuxfoundation.org/c ... inting/cups-filters
    openprinting-ppds 基于 foomatic-filters 的 PPD 文件
    splix Samsung、Dell、Lexmark、Toshiba、Xerox 使用 SPL (Samsung Printer Language)的打印机,过滤器,包含 PPD 文件。支持型号查阅 http://splix.ap2c.org/
    ppdb PPD Driver 文件解包工具
         
    其它软件包    
    python Python 2.7,含 python-light
    hplip-sane HP 一体机和扫描仪的 SANE 驱动
         
    ar71xx 特有的额外软件包(部分列出)    
    kmod-fs-hfs  
    kmod-fs-hfsplus  
    kmod-fs-ufsd  
    kmod-fuse  
    kmod-nls-iso8859-1  
    kmod-nls-utf8  
    kmod-usbip  
    kmod-usbip-client  
    kmod-usbip-server  
    kmod-video-uvc  
    pyopenssl  
    luci-app-ddns  
    luci-app-qos  
    luci-app-samba  
    luci-app-transmission  
    luci-app-upnp  
    luci-app-wol  
    luci-theme-bootstrap  
    luci-proto-3g  
    luci-proto-relay  
    mjpg-streamer  
    parted  
    uboot-envtools  
    usb-modeswitch  


    请使用 U 盘扩充路由器存储空间后再安装剩余的软件包。

    如果路由内存只有 64M,请不要向路由装任何较大的 PPD 文件包!否则会导致 CUPS 耗尽内存而无法正常工作。

    网盘地址及文件说明:
    http://www.hackpascal.net/OpenWrt/Printer_Support/
    挽尊

    packages 文件夹对应的软件源。


    <ignore_js_op> 

    <ignore_js_op> 

    <ignore_js_op> 

  • 相关阅读:
    C#动态显示时间
    死锁问题
    TCP_NODELAY算法使用事项
    二叉搜索树的后序遍历
    从上到下打印二叉树
    栈的压入、弹出序列
    包含min函数的栈
    顺时针打印矩阵
    树的子结构
    合并两个排序链表
  • 原文地址:https://www.cnblogs.com/h2zZhou/p/11162514.html
Copyright © 2011-2022 走看看