SEワンタンの独学備忘録

IT関連の独学した内容や資格試験に対する取り組みの備忘録

【LPIC102】Linuxにおけるプリンタ機能 LPICで学ぶLinux11

Linuxにおけるプリンタ機能

CUPS

普段あまり意識することなく、使ったこともありませんでしたが、Windowsマシンなどと同様にLinuxにおいてもプリンタ(印刷)機能があります。

現時点の多くのディストリビューションでは、標準の印刷機能としてCUPS(the Common Unix Printing System)が採用されています。

元々の印刷機能について知見がないと特徴と言われてもなんのことを言っているのかいまいちピンときませんが、LPIC上必要そうな特徴を挙げておきます。

・IPP(次世代ネットワーク印刷プロトコル)の採用
・PPD(テキストファイルの設定)の採用
・webベースによるGUI設定機能
・プリンタクラスのサポート

■印刷実行の流れ概要

f:id:wantanBlog:20201230013101p:plain

■設定ファイル

・/etc/cups/cupsd.conf

リッスンポートなど、全体的な設定はcupsd.confファイルにより行います。

[root@localhost cups]# cat cupsd.conf
MaxLogSize 0
#
# "$Id: cupsd.conf.in 7888 2008-08-29 21:16:56Z mike $"
#
# Sample configuration file for the CUPS scheduler.  See "man cupsd.conf" for a
# complete description of this file.
#

# Log general information in error_log - change "warn" to "debug"
# for troubleshooting...
LogLevel warn

# Only listen for connections from the local machine.
Listen localhost:631
Listen /var/run/cups/cups.sock
*****省略*****

・/etc/cups/printers.conf

CUPSが使用するプリンタ情報はprinters.confに記述します。
以下は設定例ですが、もちろんそのまま記述しても正常に動作はしません。

<DefaultPrinter lp1>
UUID urn:uuid:83a1018b-8b63-3aa4-48d3-811fdc20801b
Info lp1
DeviceURI lpd://netprint/lp1
State Idle
StateTime 1609256668
Type 4
Accepting Yes
Shared Yes
JobSheets none none
QuotaPeriod 0
PageLimit 0
KLimit 0
OpPolicy default
ErrorPolicy stop-printer
</Printer>

CUPSの標準コマンド

これまで使用経験がないと意識するのが難しいですが、印刷系コマンドにはCUPSの標準コマンドレガシーコマンドがあります。
似たようなコマンドで実行できることも同じようなことになりますが、試験的には明確に区別して覚える必要があります。
コマンド自体は使ったことがなくても比較的覚えやすいので、2種存在していることを意識しておけば試験的にはなんとかなると思います。

lpコマンド

lpコマンドは印刷ジョブを生成しプリントキューに登録するコマンドです。

・cupstest.txtをプリントキューに登録する

[root@localhost ~]# lp cupstest.txt

-nオプションで部数の指定ができます。

cancelコマンド

cancelコマンドはプリントキューにある印刷ジョブを削除します。

・指定プリンタ(printsvr1)のキューを全て削除する

cancel -a printsvr1

余談:cancelってコマンドが他の機能で使われておらず印刷用に使われているのはなんかちょっと意外。

lpstatコマンド

lpstatコマンドはプリントキューを表示するコマンドです。

・プリンタキューの表示

[root@localhost cups]# lpstat

レガシーコマンド

CUPS標準コマンドとほぼ同様のことが実施できますが、試験的にはレガシーコマンドの方がやや重要性が高い傾向にある気がします。

lprコマンド

lprコマンドは印刷ジョブをプリントキューに登録するコマンドであり、CUPS標準コマンドで言うとlpコマンドと同様です。
「register」の「r」なので比較的覚えやすいところです。

■オプション

オプション 内容
-# 部数を指定
-P プリンタの指定

・printsvr1でtest.txtを3部印刷する

[wantan@localhost work]$ lpr -#3 -Pprintsvr1 test.txt

オプション指定の後、部数やプリンタ名を指定をスペースを入れずに入力するのがコマンド的な一種の特徴になっています。

lprmコマンド

lprmコマンドは対象プリンタの印刷ジョブを削除するコマンドであり、CUPS標準コマンドのcancelコマンドと対応しています。

■オプション

オプション 内容
-P プリンタの指定
- 全ジョブを削除

・自身の全ジョブを削除する

[wantan@localhost ~]$ lprm -

プリンタの指定は他のコマンドと同様。

lpq

lpqコマンドはプリンタキューの印刷ジョブを表示するコマンドでCUPS標準コマンドではlpstatコマンドに相当します。

■オプション

オプション 内容
-P プリンタの指定

・全プリンタのジョブを表示する

[wantan@localhost ~]$ lpq

ーーーーーーーーーーーーーーーーー

・前回(第十回)
www.wantanblog.com


・次回(第十二回)
www.wantanblog.com