Linuxにおけるプリンタ機能
CUPS
普段あまり意識することなく、使ったこともありませんでしたが、Windowsマシンなどと同様にLinuxにおいてもプリンタ(印刷)機能があります。
現時点の多くのディストリビューションでは、標準の印刷機能としてCUPS(the Common Unix Printing System)が採用されています。
元々の印刷機能について知見がないと特徴と言われてもなんのことを言っているのかいまいちピンときませんが、LPIC上必要そうな特徴を挙げておきます。
・IPP(次世代ネットワーク印刷プロトコル)の採用
・PPD(テキストファイルの設定)の採用
・webベースによるGUI設定機能
・プリンタクラスのサポート
■印刷実行の流れ概要
■設定ファイル
・/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