マークが書いたコメント私のため
カップがスプールされないようにする方法、つまりプリンタドライバが実行された後にのみlprコマンドを終了させる方法はわかりません。
印刷で「スプール」とはどういう意味ですか?
Googleは「(周辺機器で印刷または処理するためのデータ)を中間リポジトリに送る」という意味の動詞だと述べました。コマンドで印刷するときのように、印刷スプールはどの中間記憶域を表しますかlpr
?
マークは失敗の意味を障害物に関連付けるようです。ただし、Googleが提供する定義を見ると、これはわかりません。
ありがとうございます。
答え1
つまり、スプーラは次の部分で構成されます。
- バックグラウンドプログラム
- プリンタごとに1つのディレクトリ
- 印刷ジョブごとに1ファイル
あなたの場合、フォアグラウンドプログラム(lpr
) は印刷ジョブを次に送信します。cups
、それを保存し、シリアル、パラレル、USB、ネットワークなどの通信を使用して実際に印刷プロセスを開始します。
だから今プリンタに用紙が足りなくてもコンピュータは引き続き使用できますが、私が子供の頃にCP / Mを使用したときは、紙を追加するまでコンピュータ全体がロックされていました...
なぜ「スプール」と呼ばれるのか?
その時代には、ディスクの価格が高すぎてメインフレームのコンピュータではテープを使ってこれらのファイルを保存していたので、コンピュータルームのデータセンターで作業するときに最初に聞いたのは、テープが回転し始めた音でした。時間が経つと、テープが回転し始める音が聞こえます。 2番目または3〜4番目のプリンタで印刷が始まります(運が良い場合)。;-)
注1:「スプール」とは、「磁気テープを巻くことができる円筒形装置」を意味する名詞であるため、「スプール」とは、磁気テープを巻き付ける円筒形装置を意味する。
答え2
ㅏ印刷スプール送信プログラムからジョブを受け取り、それを1つ以上のプリンターに渡す役割を担うプログラム(スプーラー)を使用してジョブごとに管理されるバッファー。スプーリングの目的は、速度が異なる2つのシステム間の通信を処理し、共有デバイスへのアクセスを制御することです。前者は、プログラムが必要なだけ早く印刷ジョブを送信でき、そのジョブはプリンタが処理できるだけ早く(または遅く)処理されることを意味します。後者(例:指摘渡すロンジョン)はジョブが一貫して処理されることを保証するため、印刷時にジョブが混在することはありません。
ネットワーク接続されたプリンタは独自のスプーリングを提供し、プリントサーバー(CUPSlpd
など)もスプーリングを実装します。ほとんどの印刷システムは、アクセス制御、クォータ、バナー、印刷オプションなども処理します。スプールは他の環境でも使用されます。たとえば、テープベースのバックアップサーバーは、高速ディスクベースのストレージシステムにネットワークホストのバックアップデータを保存し、最新のテープドライブにテープシューシャインを防ぐために必要な非常に高速な速度を提供できるようになりました。
コメントの文脈では、スプーリングの関連性は、印刷ジョブの提出と実装を分離することです。スプールしないということは、印刷ジョブが完了したときにのみ送信が完了することを意味するため、ジョブが完了するlpr
までコマンドは完了しません。スプールがプリンタ自体にも表示される可能性があるため、コンピュータからスプールを削除すると、目的の結果が得られない可能性があります。
答え3
まず、「スプール」という言葉の意味から始めましょう。文書サイズがプリンタのメモリよりも大きい場合もあるため、「プリンタスプーリング」を使用すると、複数の文書をプリンタに送信し、これらの文書をすべてキューに入れることができます。
現在、Unixには2つの印刷システムがあります。
- BSDスプーリングシステムは
lpd
デーモンプロセスを使用して印刷ジョブをスケジュールします。 - SVR4スプーリングシステムが
lpsched
スケジューラとして使用されます。
ジェフレ島USAIL:Unixシステム管理の独立した学習に関するセクションがあります。Unixで印刷するBSDとSVR4システムの良い概要を提供します。
これBSDスプーリングシステム
大規模な異機種ネットワークに合わせて拡張されるため、多くのコンピュータがプリンタを共有できます。
BSDスプーリングシステムでは、プリンタへのアクセスは
lpd
デーモンとlpr
プログラムによって制御されます。lpr
ファイルをキューに追加して印刷できるBSDシステムの唯一のプログラムです。
lpr
印刷するデータを受け入れ、それをスプールディレクトリに配置してからlpd
デーモンに通知します。各印刷ジョブに対して、lpr
スプールディレクトリに制御ファイル(cfxxx)とデータファイル(dfxxx)の2つのファイルが作成されます。ここで、xxx は一意のジョブ ID を表します。制御ファイルには、所有者の身元を含む印刷ジョブを処理するための情報が含まれています。データファイルには、印刷する実際のデータが含まれています。デーモンはファイルを
lpd
チェックし/etc/printcap
てターゲットプリンタを識別します。ターゲットプリンタがローカルデバイスの場合は、lpd
デーモンのコピーが印刷キューで実行されていることを確認してください。lpd
それ以外の場合、lpd
プリンタは接続されたリモートホストへの接続を開き、制御ファイルとデータファイルを転送します。
lpd
印刷ジョブは先入れ先出し(FIFO)方式でスケジュールされます。ただし、システム管理者はlpcコマンドを使用して、印刷キュー内のジョブの優先順位を変更できます。
SVR4スプーリングシステムSolarisおよびHP-UXで使用されます。より多くの制御力と柔軟性を提供しますが、ネットワーク印刷用に設計されておらず、設定がより複雑です。
SVR4スプールシステムでは、この
lp
コマンドは印刷するデータを受け入れ、ターゲットに関連付けられているスプールディレクトリからデータをコピーします。ターゲットは、プリンタ名とプリンタが属するカテゴリのオプション仕様で構成されます。指定されたプリンタが使用されている場合、そのジョブは同じレベルの別のプリンタに送信されます。通常、スプールディレクトリ/var/spool/lp/request/printer-name
と印刷ファイルには、ジョブとユーザーを識別するために一意の名前が付けられます。プリンタへのアクセスはデーモンによって制御されます
lpsched
。スプールディレクトリからジョブをインポートし、利用可能な場合は適切な宛先に送信します。 lpschedは通常ログを保持します/usr/spool/lp/log
。ログファイルは、ユーザー名とともに印刷ジョブの処理中に発生したエラーを示します。
また見なさい:プリンタとプリンタスプーラ - ITブログのlp、lpstat、およびcancelコマンドのヒントとヒント
答え4
スプーリングはかなり古い学校用語です。これで、印刷キューがより頻繁に使用されることがわかります。
To Queueは「行を立てて待つ」という意味の英国のことわざです。したがって、印刷ジョブは「キュー」、すなわち印刷キューに追加される。
ジョブがスプールされた後(印刷行間に長い「認識」時間がある可能性があります)、通常はFIFOベースで印刷されますが、印刷ジョブの優先順位はこれを無視できます。
オペレータが用紙を交換できるように、印刷スプールとキューを一時停止できます。一部のページが破損していても再起動できます。