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
相关推荐
Xの哲學7 分钟前
Linux CFS 调度器深度解析
linux·服务器·算法·架构·边缘计算
大聪明-PLUS7 分钟前
关于 systemd 和桌面应用程序自动启动
linux·嵌入式·arm·smarc
广东大榕树信息科技有限公司32 分钟前
如何运用国产信创动环监控系统来保障生产安全与效率提升?
运维·网络·物联网·国产动环监控系统·动环监控系统
野猪佩挤35 分钟前
jenkins-ci/cd yaml模版配置
运维·ci/cd·jenkins
松涛和鸣36 分钟前
DAY42 SQLite3 : Dictionary Import and Data Query Implementation with C Language
linux·c语言·数据库·单片机·网络协议·sqlite
斯普信云原生组41 分钟前
开源软件日志统一管理方案-Filebeat
运维·jenkins
小馬佩德罗1 小时前
如何将x264 x265的动态库编译入Linux系统中的FFmpeg源码 - x265库编译
linux·ffmpeg·x265
飞Link1 小时前
【Anaconda】Linux(CentOS7)下安装Anaconda教程
linux·运维·python
Ama_tor1 小时前
docker|F盘安装の1键部署软件及数据储存+2个保姆级运行实例
运维·docker·容器
@时间旅行者@1 小时前
LINUX离线安装postgres,rpm方式安装
linux·运维·服务器·postgresql·离线安装