Ubuntu Weekly Recipe

第218回 Ubuntuから職場や研究室のプリンターに印刷しよう

この記事を読むのに必要な時間:およそ 3.5 分

こんにちは。流れのプリンター愛好家こと,おがさわらなるひこと申します。プリンターのことしか分からない変わり者ですが,どうぞよろしくお願いします。

新年度も始まり,新しい環境での生活をスタートされた方も多いかと思います。配属先や研究室などで楽しいUbuntu生活を送るためには,所属先にあるいろいろな機器,例えばプリンターなどを使えるようにしたいですよね。ということで今回は,みんなで共有しているプリンターにUbuntuから印刷をするための方法を簡単に紹介するために,Recipeを寄稿させていただきました。

用語の確認

Ubuntuの印刷システムがCUPSというソフトウェアを中心にしているのは,みなさまもご存知かと思います。ここで詳しくは説明はしませんが,次のことを抑えておきましょう。

  • CUPSベースの印刷システムはAdobe社のPostScriptやPDFを内部データとして使っている
  • CUPSはそれぞれのプリンターごとに,⁠PPD」「印刷データフィルター」の組を管理している。あわせてプリンタードライバーと呼ぶ(こともある)
    • PPDとはプリンターごとに,印刷について設定する項目と,それぞれの項目の選択肢を記述するファイル
    • 印刷データフィルターはCUPSの内部データから,プリンターが解釈することができる画像を示すデータ(PDL)に変換するモジュール

システムメニューから表示される「プリンター」は,system-config-printer(通称SCP)という名前のプログラムです。プリンターを追加したり設定したりするときにはSCPを活用することになります。

図1 システムメニューの「プリンター」

図1 システムメニューの「プリンター」

図2 system-config-printerを起動した画面

図2 system-config-printerを起動した画面

それから,ちょっとややこしいのですが,先に述べた「PPD」「印刷データフィルター」の組である「プリンタードライバー」というソフトウェアをインストールすることと,それらを使ってプリンターを利用できるようにすることは,厳密にいえば異なる操作です。本稿では前者を「ドライバーのインストール」⁠後者を「プリンターの追加」と呼びます。

プリンター管理ポリシーの確認

組織によっては,特に大学や大きな企業では,プリンターについて特別なポリシーが存在する場合があります。その点について,まずはネットワーク管理者や先輩などに確認しておきましょう。

とりわけよくあるのが,印刷する際に個別のユーザー識別子をデータに付与し,それにひもづける形で印刷枚数に制限をかけたり,部門課金を行ったりするようなケースです。このようなデータ付与を行える環境は,Windowsに限定されていることも多いでしょう。このような場合,残念ながら Ubuntuから直接印刷することは難しい注1ですが,WindowsやMac OS Xを中継することは可能です。Ubuntuに用意されているCUPS-PDFというパッケージを用いれば,印刷する代わりにPDFとしてファイルに落とすことができるので,これをWindowsやMacで印刷するのがお手軽でしょう。

そうでなくて,Windowsなどでも単純にネットワークプリンターとして共有しているなら,Ubuntuから直接利用することができます。接続方法として,プリントサーバーを経由する方式なのか,ネットワークプリンターとして直接接続する方式なのかも聞いておきましょう。

注1
非常に頑張ればできないわけではないですが,対応は個別的に過ぎますし,かなり複雑になります。PPDの文法とfoomatic-ripというモジュールを理解し,Windowsプリンタードライバーからの出力結果を調べてそれと同じ出力が得られるようにPPDを書く,ということになります。本稿では説明を省略しますが,ガッツがある人はチャレンジしてみてください。

プリンターのメーカーと機器名称からサポート状況の確認

次に,所属先のプリンターのメーカーと機器名称を確認します。だいたいの場合は筐体に明記されているのですぐわかるはずです。分からない場合はすでに用意されているWindowsのドライバーを確認するなどの方法もあります。

メーカーのホームページを開き,メーカー自身がUbuntuをサポートしているかどうかを調べましょう。ドライバーのダウンロードページから「Linux用」などで探せるはずですが,メーカーによっては違うところに置いてある場合もあります。サイト内検索で「linux」を探すなども試してみましょう。

少し注意が必要なのは,ヒューレット・パッカード (以下HP) の製品です。HPの場合,専用の印刷システムHPLIPというプロジェクトは,HPはスポンサーしているけれども独立なプロジェクトという位置づけです。そのためメーカーのサイトではなく,HPLIPのサポートプリンター情報のページを見なければなりません。なお,HPLIPの印刷に必要なモジュールはUbuntuに標準で含まれていますので,インストールの必要はありません。

それぞれのドライバーパッケージのインストール方法は異なるので,本稿で説明は行いません。パッケージによっては専用のインストーラが用意されており,ドライバーのインストールとプリンターの追加を一度に行うものもあります。またパッケージが昔に作られた場合など,新しいUbuntuだとインストールが素直には上手く行かなかったりすることもあります。導入マニュアルなどを確認した上で,インターネットなどで情報を収集するようにしましょう。

OpenPrintingのPPDを使う

メーカーがドライバーを供給していない場合でも,プリンターによってはUnix系印刷の標準化団体OpenPrintingOpenPrinting Databaseで配布しているPPDを用いることができます。このデータベースは,ある条件注2が整っていれば利用できるPPDを誰でも登録できるサイトです。OpenPrinting DatabaseのPPDはUbuntuにはopenprinting-ppdsというパッケージに収録され標準でインストールされていますので,特別なインストールなしで利用できます注3)⁠

印刷データフィルターが不要なPostScript搭載プリンターについては数多く収録されていますので,プリンターがPostScriptあるいはその互換処理系注4を搭載している場合,Ubuntu標準で用意されているPPDから「製造元」を頼りに探してみるとよいでしょう。実際の例については次項で説明します。

そのプリンター専用のPPDが存在しない場合でも,⁠どのプリンターでもだいたい持っているだろう指定だけを有効にしたPPD」⁠すなわち「Generic PPD」も用意されています。PostScript以外についても,次の表に示すPDLもやはりGeneric PPDが用意されています。

メーカーなどPDL名SCPの「製造元」SCPの「モデル」 SCPの「ドライバー」
海外系の多くのプリンターPCL 6 (モノクロ機)GenericPCL 6/PCL XLGeneric PCL 6/PCL XL Printer Foomatic/pxlmono [en]
PCL 6 (カラー機)Generic PCL 6/PCL XL Printer Foomatic/pxlcolor [en]
キヤノンLIPS IV/V(LXは対象外)CanonLIPS IVCanon LIPS-IVv Foomatic/lips4v [en]
エプソンESC/PageEpsonLP-xx00Epson LP-xx00 Foomatic/escpage [en]
リコーRPDLRicohRPDL IV LaserRicoh RPDL IV Laser Printer Foomatic/rpdl [en]

これらのPDLはプリンターによってオプションのときもあるため,プリンターの管理者に尋ねるか,あるいは「サマリシート」と呼ばれるプリンター自体のテスト印刷機能を用いることで確認しましょう。Generic PPDは「どの機種でもそこそこ遣える」ことが目標なので,専用のドライバーやPPDがある場合はそちらを使うほうがよいですが,とにかく印刷したいという場合には試す価値があります。

注2
印刷システムCUPS,PostScriptインタプリタGhostscript,制御データ加工フィルターfoomatic,フリーのプリンタードライバーgutenprintの組み合わせをサポートしている環境です。
注3
ただし,openprinting-ppdsパッケージが作られた後にOpenPrinting Databaseに登録された機種については,本サイトからPPDを入手し,インストールする必要があります。
注4
例えばブラザーのレーザープリンターなどに採用されているBR-Scriptなど。PostScriptはAdobeの策定したもので,その処理系もAdobeから各プリンターベンダーに供給されていますが,非常に高価です。一方でPostScriptの言語仕様は公開されているため,その仕様に則った処理系を独自に開発すれば,低コストでPostScriptデータを印刷できるプリンターを作成できます。ただし,完全にAdobe製の処理系と同じ動きをするのは困難なため,データによっては正しく出力できないこともあります。なお,GhostscriptもPostScript互換処理系の一つです。

著者プロフィール

おがさわらなるひこ

流離のプリンター愛好家。(株)ミライト情報システム所属。印刷技術を中心に,フリーでオープンなデスクトップ環境の向上のためにあちこちに顔を出しています。

Twitter@naru0ga

コメント

コメントの記入