Linux CentOS调用打印机

文章目录


一、lpstat及cups安装

lpstat指令用来显示当前任务、打印机的状态。如果没有参数,那么就显示打印队列。

此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、Fedora、openSUSE、SUSE。

bash 复制代码
sudo yum update
sudo yum install cups

二、配置打印机

1.启动cups

bash 复制代码
sudo service cups start
## 开机启动
sudo systemctl enable cups

2.配置cups

1.打开cups的web访问

CUPS配置不允许通过Web界面访问:在CUPS的主配置文件 /etc/cups/cupsd.conf

中,有三个配置段,分别是、<Location /admin>和<Location

/admin/conf>,这些段用来控制哪些IP或主机可以访问CUPS的Web界面。你需要确保这几段的配置正确,允许从本地地址访问。


打开/etc/cups/cupsd.conf文件,检查以下部分:

bash 复制代码
   <Location />
   Order allow,deny
   Allow localhost
   </Location>

如果你想允许本地网络内的其他设备也能访问,你可以添加Allow @LOCAL,或者添加特定的IP地址。

CUPS服务没有监听在正确的地址:在/etc/cups/cupsd.conf文件中,有一个Listen指令,默认应该是Listen
localhost:631,这表示CUPS服务监听在本地的631端口。确保此处配置正确。

如果进行了更改,请记得重新启动CUPS服务以应用新的配置:

bash 复制代码
sudo service cups restart

示例:

配置将允许本机和本地网络中的设备访问CUPS的Web界面。

bash 复制代码
    <Location />
    Order allow,deny
    Allow @LOCAL
    </Location>

    <Location /admin>
    Order allow,deny
    Allow @LOCAL
    </Location>

    <Location /admin/conf>
    Order allow,deny
    Allow @LOCAL
    </Location>

重启后访问,应该可以正常访问

3.配置打印机

1.打开浏览器,输入CUPS服务器地址访问web界面,地址一般是:http://localhost:631。这里的"localhost"代表当前机器,如果你的CUPS服务器在别的机器上,你需要把"localhost"替换为那台机器的IP地址或者主机名。

2.查看"CUPS for Administrators",然后选择"Adding Printers and Classes"。

3.选择"Add Printer"。你可能需要输入管理员的用户名和密码。

3.1如果没出现本地打印机,则需要更新驱动

4.你会看到一列可用设备,找到你的打印机并选中它,然后点击"Continue"。

5.输入打印机连接地址:socket://打印机的ip

6.输入打印机的名字、位置和描述,这些信息将帮助你将来识别这台打印机。点击"Continue"。

7.从下拉框中选择打印机的具体型号,然后点击"Add Printer"。


8.设定打印选项,如纸张大小等,然后点击"Set Default Options"。

9.打印测试

三、shell测试脚本

用户输入文件具体文件地址,调用默认打印机打印

bash 复制代码
#!/bin/bash
read -p "imagePath: " pic
lp -d $(lpstat -d | cut -f2 -d':') $pic

给脚本可执行权限:

bash 复制代码
chmod 777 /usr/printer.sh
相关推荐
m0_380921801 小时前
容器虚拟化基础之LXC
linux
cidgur1 小时前
svn and maven 自动部署shell脚本
linux
孤独野指针*P1 小时前
MoveIt 机械臂碰撞检测:从环境搭建到障碍物规避
linux·3d·机器人
刘某的Cloud2 小时前
SSH命令建立隧道
linux·运维·ssh·系统·shell
weixin_471525785 小时前
【gdb/sqlite3移植/mqtt】
linux·运维·服务器
大聪明-PLUS5 小时前
TCP/IP 协议族—理论与实践(一)
linux·嵌入式·arm·smarc
迎風吹頭髮8 小时前
Linux内核架构浅谈2- Linux内核与硬件交互的底层逻辑:硬件抽象层的作用
linux·架构·交互
Guheyunyi9 小时前
消防管理系统如何重构现代空间防御体系
大数据·运维·人工智能·安全·信息可视化·重构
我是好小孩9 小时前
【Android】六大设计原则
android·java·运维·服务器·设计模式
孙同学要努力9 小时前
《Linux篇》进程状态——浅度、深度睡眠状态、僵尸状态、运行状态
linux·运维