GNU/Linux >> Linux の 問題 >  >> Panels >> Webmin

プリンター管理

このページでは、Webminを使用してシステムにプリンターとプリンタードライバーをセットアップする方法について説明します。 CUPS、LPRng、Solarisプリントサーバーなど、使用されているさまざまなプリントシステムをカバーしています。

コンテンツ

Linuxでの印刷の概要

他のオペレーティングシステムと同様に、Linuxは、直接接続されているプリンター、またはネットワーク上の別のシステムに接続されているプリンターに印刷できます。印刷を希望するプログラムは、lprなどのコマンドを実行して、ジョブをプリントサーバーデーモンに送信します。これにより、指定されたプリンターのキューにジョブが追加されます。プリンタの準備ができると、デーモンは適切なパラレルポートまたはUSBデバイスファイルを開き、印刷ジョブデータを送信します。または、プリンタがネットワーク上の別のシステムに接続されている場合、デーモンは適切なプロトコルを使用して接続し、キューイングと印刷のためのジョブを送信します。

ほとんどすべてのLinuxプログラムは、プレーンテキストまたはPostScriptの2つの形式のいずれかで印刷ジョブを送信します。ほとんどの民生用プリンターは追記をサポートしていないため、プリントサーバーデーモンは送信された追記をプリンターが認識できる形式に変換する必要があります。これは、ドライバープログラムまたはスクリプトを使用して行われます。これらのほとんどは、無料で入手できるghostscriptPostScriptレンダリングプログラムに基づいています。

ほぼすべての異なるプリンターメーカー(および同じメーカーの異なるモデル)には、印刷ジョブを受け入れる独自のデータ形式があります。すべてのメーカーがプリンターにWindows用のドライバーソフトウェアを提供していますが、Linux用のドライバーを含むものはほとんどありません。つまり、ドライバーを作成する作業は、新しいデータ形式の新しいプリンターがリリースされる速度に常に追いつくことができないフリーソフトウェア愛好家によって行われる必要があります。一部の新しいプリンタモデルは、リリース後しばらくの間Linuxでサポートされない場合があります。また、ドライバ情報が利用できない一部のモデルは、サポートされない場合があります。

Linuxには、LPR、LPRng、CUPSなどのいくつかの異なる印刷システムパッケージがあります。すべてが基本的に同じタスクを実行しますが、機能が異なり、構成方法も異なります。最新のLinuxディストリビューションのほとんどにはLPRngまたはCUPSが含まれていますが、一部の古いバージョンにはLPRのみが含まれている場合があります。

プリンタドライバにはいくつかの異なるパッケージもあり、その多くはLinuxディストリビューションベンダーによって作成されました。ポストスクリプトをプリンタで受け入れられるデータ形式に変換するという同じ目的がありますが、構成ファイルと機能が異なります。 CUPSプリントサーバー用に設計され、十分に統合されているため、CUPSドライバーが最適です。

プリンタ管理モジュール

システムにインストールされているプリントサーバーの種類に関係なく、Webminのプリンター管理モジュールを使用して構成できます。このモジュールは、使用されている印刷システムやドライバーに関係なく、同様のユーザーインターフェイスを提供しようとしますが、それらのすべての機能を使用できるようにします。デフォルトでは、モジュールは、Linuxディストリビューションによって標準でインストールされているドライバーおよびプリンターデーモンパッケージを使用していることを前提としています。別のプリントサーバー(上位のCUPSなど)をインストールした場合は、使用しているプリントシステムをWebminに通知する必要があります。詳細については、*プリンター管理モジュールの構成*のセクションを参照してください。

この章のすべての手順は、CUPS印刷システムとドライバーを念頭に置いて書かれており、すべてのスクリーンショットはCUPSを使用するシステムから取得されています。これは、Linuxで利用できる最高の印刷システムであると私が信じているためであり、多くの最新のLinuxディストリビューションでデフォルトで使用されているためです。

ハードウェアカテゴリからモジュールを入力すると、メインページに、以下に示すように、システムにインストールされているすべてのプリンタが一覧表示されます。 Redhat Linuxバージョン7.0以降では、Webminを使用して作成されたプリンターのみが表示されます。他のプログラム(Redhatのprintconfツールなど)によって追加されたものは、このモジュールを使用して編集できないため、リストされません。


プリンタ管理モジュール

プリントサーバーデーモンが実行されている場合、メインページの下部にスケジューラの停止というラベルの付いたボタンが表示されます。 。クリックするとデーモンが停止し、すべての印刷が停止します。再開するには、スケジューラの開始をクリックします その場所に表示されるボタン。

現在設定されている印刷システムがインストールされていないことをWebminが検出すると、代わりにメインページにエラーメッセージが表示されます。これは、印刷ソフトウェアがサーバーにまだインストールされていないか、モジュール構成ページで間違ったシステムが選択されたことを示しています。

新しいプリンタの追加

プリンタをシステムに接続したばかりの場合、またはローカルネットワーク上の別のシステムに接続されているプリンタにアクセスする場合は、Linuxシステム上のプログラムがプリンタに印刷する前に、プリンタをプリンタデーモンの設定に追加する必要があります。これを行うには、次の手順に従います。

  1. 新しいプリンタリンクを追加をクリックします モジュールのメインページにあります。これにより、下の画像に示すプリンター作成フォームが表示されます。スクリーンショットはCUPSプリントシステムを使用しているシステムから取得されているため、ユーザーインターフェイスはLinuxマシンで同じではない可能性があります。
  2. 新しいプリンタの一意の名前を入力します( epsion など)。 またはhp_laser名前に 分野。これは、lprコマンドを使用するとき、または他のプログラムから印刷するときにプリンターが指定する名前になります。
  3. Office Epson Stylus 740などの簡単な説明を[説明]フィールドに入力します 。
  4. すべての印刷ジョブの前に、印刷するファイルの名前とそれを印刷したユーザーを含むバナーページを配置する場合は、バナーの印刷?を設定します。 はいへのフィールド 。大規模な組織で多数の人がプリンタを使用していない限り、これは通常、紙の無駄です。
  5. これをlprコマンドラインでプリンタ名が指定されていない場合に使用されるデフォルトのプリンタにするには、[*デフォルトのプリンタ?*]オプションをはいに設定します。 。このオプションは、すべての印刷システムで使用できるわけではありません。
  6. 一部の印刷システムを使用する場合、[最大印刷ジョブサイズ]フィールドを使用して、プリンターに送信できるジョブの最大サイズを制御できます。自分のパーソナルマシン上のプリンタの場合、これは無制限に設定する必要があります 、ただし、多くのユーザーがいるネットワークでは、1KBブロックの数を少なくするのが理にかなっている場合があります。
  7. システムでLinuxまたはLPRng印刷システムを使用している場合は、プリンターのスペースで区切られた複数のエイリアスを代替プリンター名に入力できます。 分野。プリンタをデフォルトにするには、 lpと入力します エイリアスの1つとして。
  8. プリンタがシステムに直接接続されている場合は、印刷先で セクションで*ローカルデバイス*オプションを選択し、その横のメニューからそれがオンになっているパラレルまたはUSBポートを選択します。デバイスがリストにない場合は、ローカルファイルを選択します 代わりに、 / dev / ttyS5などのデバイスパスをそのフィールドに入力します 。すでに存在し、プリントサーバーデーモンによって書き込み可能である限り、印刷先のファイル名を入力することもできます。
  9. プリンタがネットワーク上の別のシステムに接続されている(またはネットワーク自体に直接接続されている)場合は、プリンタに印刷するプロトコルを選択する必要があります。 Unixシステムに接続されているプリンタの場合は、リモートUnixサーバーを選択します。 サーバーのホスト名とそのサーバー上のプリンターの名前をその横のフィールドに入力します。ほとんどのUnixシステムでは、タイプ BSDに設定できますが、リモートサーバーがCUPSを実行している場合は、代わりにIPPを選択できます。 Windowsシステム上のプリンターの場合は、[*リモートWindowsサーバー*]を選択し、その横にある適切なフィールドにホスト名とプリンター名を入力します。サーバーが印刷前にクライアントにログインする必要がある場合は、ユーザーに入力します およびパスワード Windowsシステムの有効なログインを持つフィールド。ネットワーク上に複数のワークグループがある場合は、ワークグループに入力する必要がある場合があります フィールドも。ネットワークに直接接続できる一部のプリンタでは、直接TCP接続を選択する必要があります オプションを選択し、その横のフィールドにホスト名とポート番号を入力します。 hpnpコマンドがシステムにインストールされている場合、オプションリモートHPNPサーバー そのプロトコルを使用するHPネットワークプリンターに印刷できるようになります。選択した場合は、その横のフィールドにホスト名とポート番号を入力する必要があります。
  10. 選択したプロトコルを使用してリモートプリンターに実際にアクセスできるかどうかをWebminで確認するには、[*リモートサーバーが起動しているかどうかを確認しますか?*]チェックボックスをオンにします。
  11. プリンタがPostScriptをサポートしている場合は、なしを選択します プリンタドライバのオプション セクション。 PostScriptから正しいデータ形式への変換はサーバー上で行われるため、リモートUnixサーバーに印刷する場合にもこのオプションを選択する必要があります。 PostScriptをサポートせず、システムに直接接続されているか、直接TCP接続を使用してネットワーク経由でアクセスされるプリンタの場合 または*リモートWindowsサーバー*オプションの場合は、次の手順で説明するようにプリンタードライバーを選択する必要があります。
  12. プリンタがPostScriptを使用しない場合は、ドライバが必要な場合は、CUPSドライバを選択してください。 オプション。別の印刷システムを使用する場合、このオプションにはWebminドライバーというラベルが付いている場合があります またはRedhatドライバー またはCOASドライバー 代わりは。いずれにせよ、その隣には、プリンタのメーカーとモデルを選択できるプリンタモデルのリストが表示されます。リストに表示されない場合は、同じメーカーで最も近いモデル番号のエントリを選択してみてください。たとえば、 FooTronic 810をお持ちの場合 FooTronicのみ モデル800 および1000 が表示されたら、モデル 800を選択します 。
  13. 印刷システムでは、DPIや用紙サイズなどの他のオプションがプリンタモデルリストで利用できる場合があります。お使いのプリンタに適したものを選択してください。
  14. 最後に、作成をクリックします ボタン。何か問題が発生した場合(リモートプリントサーバーに接続できない、プリンターの作成に失敗したなど)、エラーメッセージが表示されます。それ以外の場合は、モジュールのメインページに戻り、新しいプリンタが一覧表示されます。
  15. CUPS印刷システムを使用していて、プリンターのドライバーを設定している場合は、リストで新しいプリンターの名前をクリックして、プリンター編集フォームに移動します。プリンタモデルリストの下の下部には、用紙サイズ、印刷品質、用紙の種類などを設定するための追加のフィールドセットがあります。フィールドは選択したプリンターのタイプに依存するため、プリンター作成フォームには表示されません。用紙サイズ、DPIなどをシステムに適したものに設定します。デフォルトでは通常、高速で低品質の出力が生成されるため、光沢紙でプリンタの写真品質モードを使用する場合は、それらを変更する必要があります。プリンタ固有のオプションの変更が完了したら、[保存]をクリックします ページ下部のボタン。
  16. これで、新しく作成したプリンターを、lprコマンドまたは印刷をサポートする任意のプログラムを使用して印刷できます。


プリンター作成フォーム

既存のプリンターの編集

Webminまたはその他のツールを使用して作成されたプリンターは、プリンター管理モジュールを使用して編集できます。また、プリンタを一時的に無効にして、ジョブを受け入れないようにしたり、ジョブをプリンタに送信したりしないようにすることもできます。これを行うには、次の手順に従います。

  1. モジュールのメインページでプリンタの名前をクリックします。これにより、図22-2に示す作成フォームに似た編集フォームが表示されます。
  2. ユーザーが新しいジョブをプリンタに送信できないようにするには、リクエストを受け入れますか?を設定します。 いいえへのフィールド 。プリンタが利用できない理由を理由に入力できます このフィールドは、lprコマンドを使用しようとするユーザーに表示されます。ただし、このフィールドは一部の印刷システムでは使用できない場合があります。
  3. プリンターによるリモートサーバーへのジョブの印刷または送信を停止するには、印刷を有効にしますか? いいえへのフィールド 。これは、プリンタをメンテナンスのためにオフラインにする場合に役立ちます。フィールドがはいに戻されても、キューは印刷されるジョブを引き続き受け入れるためです。 また。 理由に理由を入力することもできます フィールド。lpqコマンドで印刷キューが表示されたときに表示されます。
  4. 新しいプリンタの追加で説明されているように、ページ上の他のすべてのフィールドを変更できます。 上記のセクション。唯一の例外はプリンタ名です。これは、プリンタの作成後に変更することはできません。
  5. プリンタの詳細の変更が完了したら、[保存]をクリックします ボタン。変更はすぐに有効になり、モジュールのメインページに戻ります。

削除をクリックして、既存のプリンタを削除することもできます 編集フォームのボタン。プリンタのキューにあるジョブもすべて削除されます。

印刷ジョブの管理

ジョブがプリンターに送信されると、プリンターのキューに入れられます。印刷に成功した場合、またはリモートサーバーに送信された場合にのみ削除されます。多くのユーザーがいるシステムや低速のプリンターでは、ジョブが印刷よりも速く送信されると、キューが非常に大きくなる可能性があります。

このWebminモジュールを使用して、プリンターのキュー内のジョブを一覧表示したり、その内容を表示したり、削除したりできます。これらを行うための手順は次のとおりです。

  1. モジュールのメインページで、リストをクリックします ジョブの下のリンク キューを管理するプリンターの列。これにより、現在印刷中または印刷を待機しているすべてのジョブを一覧表示するページに移動します。
  2. 印刷ジョブの内容を表示するには、そのサイズをクリックします。ほとんどのジョブはPostScript形式で送信されるため、ブラウザには、この形式を処理できるプラグインまたはヘルパーアプリケーションが必要です。これは、リモートプリンタ、または一部の印刷システムでは不可能です。
  3. 印刷ジョブを削除するには、最初の列のIDをクリックします。または、キュー内のすべてのジョブを削除するには、[*すべての印刷ジョブをキャンセルする*]ボタンをクリックします。

印刷ジョブページを使用してテストページをプリンターに送信することもできるため、Webmin内からテストページが機能していることを確認できます。これを行う手順は次のとおりです。

  1. モジュールのメインページで、リストをクリックします ジョブの下のリンク テストページを印刷するプリンタの列。
  2. テストページの印刷をクリックします ボタン。
  3. 白黒のPostscriptページのいずれかを選択します 、*カラーポストスクリプトページ*またはプレーンASCIIテキスト Webminの組み込みテストページの1つを使用するオプション。または、アップロードされたファイルを選択します その横のフィールドを使用して、印刷するシステム上のファイルを選択します。
  4. ページの印刷をクリックします ボタンをクリックして、選択したページをプリンタに送信します。 lprコマンドからの出力を示すWebページが表示され、即時エラーが発生したかどうかを確認できます。

モジュールアクセス制御

多くの場合、印刷キューを表示してジョブを削除する権限をユーザーに付与しますが、プリンターを作成または編集する権限は付与しないと便利です。これは、Webminユーザーモジュールを使用して実行できます。1つは、プリンター構成モジュールにアクセスできるユーザーを作成したか、既存のユーザーを編集してアクセスを許可します。第52章では、これを行う方法について詳しく説明しています。

モジュールにアクセスできるユーザーが存在する場合は、次の手順に従って、管理できるプリンタとそのプリンタに対して実行できる操作を制限できます。

  1. Webminユーザーモジュールで、ユーザーまたはグループの名前の横にある[プリンター管理]をクリックします。
  2. フィールドを設定しますモジュール構成を編集できますか? いいえ 、ユーザーが印刷システムまたは構成ファイルへのパスを変更できないようにします。
  3. [このユーザーが構成できるプリンター]フィールドを選択済みに変更することで、ユーザーが宛先、ドライバー、およびその他の属性を編集できるプリンターを制限できます。 以下のリストからそれらを選択します。ただし、これによって、彼がそれらのプリンターでジョブを管理するのを止めることはできません。ステップ4のオプションでそれを制御できます。ユーザーがプリンタを管理できないようにするには、[選択済み]を選択します ただし、以下のリストからプリンタを選択しないでください。プリンタを編集または作成できるユーザーは、独自のドライバプログラム(通常はrootとして実行されます)を指定するか、プリンタに/ etc / passswdなどのシステムファイルに書き込むことで、rootアクセスを取得できることに注意してください。
  4. ユーザーが印刷ジョブを管理できるプリンターを制限するには、印刷ジョブをキャンセルできますか?を変更します。 [選択したプリンタのみ*]にフィールドを入力し、以下のリストから選択します。または、いいえを選択します 彼が任意のプリンターでジョブの内容をキャンセルまたは表示するのを止めるため。
  5. 所有する印刷ジョブの管理を使用して管理できるジョブをさらに制限することもできます。 分野。デフォルトでは、許可されたプリンターでユーザーが送信したジョブはキャンセルできますが、このフィールドの最後のオプションを選択し、その横のフィールドにユーザー名を入力すると、そのユーザーが所有するジョブのみを管理できます。 *現在のWebminユーザー*オプションを選択することもできます。これにより、ユーザーは、Webminユーザーと同じ名前のUnixユーザーによって送信されたジョブに制限されます。
  6. Webminユーザーが新しいプリンターを作成しないようにするには、新しいプリンターを追加できますか?を設定します。 いいえのオプション 。彼が既存のプリンターを編集することを許可されていない場合、これを行う必要があります。
  7. ユーザーがスケジュールされた印刷プロセスを停止または再開する必要がある理由がないため、[*スケジューラーを停止または開始できますか?*]フィールドをいいえに変更します。 。
  8. ユーザーが印刷ジョブの編集または管理を許可されていないメインページのプリンターを非表示にするには、[*構成不可能なプリンターを表示しますか?*]オプションをいいえに設定します。 。
  9. ユーザーがWebminを介してページを印刷するのを停止するには、テストページを印刷できますか?を変更します。 いいえのオプション 。
  10. 最後に、[保存]ボタンをクリックして、新しい制限を有効にします。

その他のオペレーティングシステム

Linuxに加えて、Printer Configurationモジュールは、他のいくつかのUnixオペレーティングシステムでも使用できます。それぞれに独自の印刷システムがあるため、モジュールのユーザーインターフェイスはわずかに異なります。CUPSやLPRngなどのLinux印刷システムに違いがあるのと同じです。

サポートされているオペレーティングシステムとその違いは次のとおりです。

SunSolarisおよびSCOUnixWare
SolarisとUnixwareの印刷システムはCUPSと非常に似ているため、PrinterConfigurationモジュールのユーザーインターフェイスはほぼ同じです。 1つの違いは、ドライバーが受け入れるの追加です。 プリンタ作成フォームのフィールド。これは、ドライバプログラムが処理できるフォーマットデータを印刷システムに通知します。ほとんどの場合、 postscriptを選択するだけです。 -または、すべてのデータをフィルタリングせずに直接プリンタに渡す場合は、その他を選択します binaryと入力します その隣のフィールドに。もう1つの独自の機能は、アクセス制御を使用して、各プリンタを使用できるユーザーを制御する機能です。 作成フォームのフィールド。これらのUnixバリアントの最大の省略は、直接TCP接続です。 宛先タイプ。
HP/UXおよびSGIIrix
これらのオペレーティングシステムの印刷システムには、説明など、Linuxで利用できる多くのオプションがありません。 フィールドとバナー オプション。プリンタが作成されると、その宛先またはドライバを変更することはできません。直接TCP接続を介した印刷もサポートされていません。
FreeBSD、NetBSD OpenBSD、およびApple MacOS X
これらのオペレーティングシステムの印刷システムは、LinuxのLPRngと非常によく似ています。したがって、プリンタをデフォルトとして指定したり、プリンタが使用できないかオフラインになっている理由を入力したりすることはできません。ただし、最大印刷ジョブサイズを指定して、プリンターの代替名を入力することは可能です。

上記のオペレーティングシステムにはプリンタドライバが含まれていないため、Webminはghostscriptパッケージを使用して独自のオペレーティングシステムを作成する必要があります。 gsコマンドがインストールされていないことをモジュールが検出した場合、プリンターの作成または編集時にドライバーを選択することはできません。同様に、Windowsサーバーに印刷できるようにするには、Samba smbclientプログラムをインストールし、そのパスをモジュール構成ページで設定する必要があります。

上記のすべてのオペレーティングシステムでは、モジュールはデフォルトで標準の印刷システムになります。したがって、CUPSやLPRngなどの別のパッケージをインストールした場合は、Webminが正しく構成できるように、モジュール構成を変更する必要があります。


Webmin
  1. psを印刷グループにするにはどうすればよいですか?

  2. Goでstderrにメッセージを出力するにはどうすればよいですか?

  3. 2 プリンタ 1 キュー

  1. フォルダ内のすべてのファイルを印刷しますか?

  2. ネットワークプリンタが見つかりましたが、印刷できませんか?

  3. ブラザーHl-l2340dwプリンター?

  1. 管理 Linux サーバー

  2. pthread_t を出力する方法

  3. errno をニーモニックとして出力しますか?