過去2回に渡り、プリンタのインストールと共有設定について解説してきた。実のところ、この作業の要領は、Windows XP/Vista/7同士で家庭内LANを構築してプリンタを共有している場合と大して変わらない。

今回は、家庭内LANではあまり遭遇しないと思われる、プリンタドライバ・アクセス権・スプールといった分野の話について取り上げてみよう。

共有プリンタのドライバに関する注意

Windows NTの頃から引き継いでいる使用なので「今更」な話ではあるのだが、念のためにプリンタドライバの入手経路について解説しておこう。

クライアントPCのOSとしてWindows NT系のOS、すなわちWindows 2000/XP/Vista/7のいずれかを使用する場合には、使用するプリンタドライバはプリンタを共有しているコンピュータからダウンロードする仕組みになっている。

ということは、プリンタを共有しているコンピュータの側で、そこに接続するクライアントと異なるアーキテクチャのCPUに対応したプリンタドライバしか持っていないと、ドライバのインストールに失敗して印刷不可能、という事態が発生する。x86・MIPS・Alpha・PowerPCと複数のアーキテクチャに属するCPUが存在する時代ではないが、x86とx64とItaniumという違いは依然として存在する。

プリンタを共有するWindowsサーバ側で、この3種類に対応するプリンタドライバをすべて用意しておくのが、もっとも確実な方法といえる。もしもWindowsがプリンタドライバを持っていない機種のプリンタであれば、メーカーのWebサイトなどから入手する必要があるだろう。

すでにプリンタを組み込んで共有しているWindowsサーバで、さらに異なるアーキテクチャのCPUに対応するプリンタドライバを追加する際の手順は、以下のようになる。

 1. コントロールパネルのプリンタとFAX、あるいはプリンタを実行する。

 2. プリンタ一覧で目的のプリンタを選択して、[操作]-[プロパティ]、あるいは右クリックして[プロパティ]を選択する。

 3. 続いて表示するダイアログで[共有]タブに移動して、下端にある[追加ドライバ]をクリックする。

 4. 続いて表示するダイアログで、クライアント側で使用するOSのチェックボックスをオンにする。選択肢には[x86][x64][Itanium]があるので、その中から必要なものについてチェックボックスをオンにしておいて、[OK]をクリックする。

 5. Windowsがプリンタドライバを持っていれば直ちに組み込みを行えるが、Windowsがプリンタドライバを持っていない場合には、メーカーが提供するドライバディスクを用意する必要がある。

プリンタのプロパティ画面で[共有]タブに移動して、[追加ドライバ]をクリックすると表示するダイアログ。ここで、クライアント側で使用しているWindowsのCPUアーキテクチャ名に対応するチェックをオンにする

共有プリンタのアクセス権設定

あまり意識する機会はないのだが、実は共有フォルダだけでなく共有プリンタにもアクセス権がある。もちろん、対象が異なるわけだから、アクセス権の内容も共有フォルダとは異なる。

プリンタに設定できるアクセス権には、以下のものがある。いうまでもないことだが、フォルダの共有アクセス権設定と同様に、ネットワーク経由で共有プリンタを利用する際に影響する設定だ。

  • 印刷
  • プリンタの管理
  • ドキュメントの管理
  • アクセス許可の読み取り
  • アクセス許可の変更
  • 所有権の取得

ただし、後の3つは通常は表示しておらず、[特殊なアクセス許可]に包含する形になっている。

なお、アクセス権のうち[ドキュメントの管理]は耳慣れない言葉だが、これは出力した印刷指令を取り消す際に関わってくるアクセス権だ。通常はシステムアカウントの[Creater Owner]に対してこの権限を設定しているので、出力を指示した本人であれば印刷の取り消しを指示できる。これを変更して、たとえば管理者でなければ取り消しを行えないように設定することも、理屈の上では可能だ。管理者の仕事が急増して大変なことになりそうだが。

この設定は、プリンタの[プロパティ]ダイアログにある[セキュリティ]タブで行う。手順は以下の通りだ。

 1. コントロール パネル]-[プリンタとFAX、あるいはコントロール パネル]-[プリンタを実行する。

 2. プリンタ一覧で目的のプリンタを選択して、[操作]-[プロパティ]、あるいは右クリックして[プロパティ]を選択する。

 3. 続いて表示するダイアログで[セキュリティ]タブに異動して、アクセス権の設定を行う。設定操作の手順はNTFSアクセス権や共有アクセス権の場合と変わらず、内容が異なるだけだ。

プリンタのアクセス権設定画面

共有プリンタでは共有フォルダと違って、情報保全などの面でセンシティブな問題が発生する可能性が低い。個人的経験からすると、「○○本部長専用のプリンタだから、他の人は印刷できないように指定したい」という要望が出た事例が1件あったぐらいだ。

一般論としては、プリンタに対して既定値と異なるアクセス権を指定する必然性はほとんどないはずだ。もっとも、重要な機密情報を扱っている部署の人間が、他所の部署のところに設置してある共有プリンタに間違って出力しないように設定する、といった需要は考えられるかも知れない。

スプールディレクトリの確認と設定変更

プリンタを共有しているWindowsサーバでは、複数のクライアントPCから送られてきた出力データをいったん自分のハードディスク上に溜め込んでから、それを順番にプリンタに出力する。俗に「スプール」と呼ばれる動作のことだ。

既定値では、スプールする場所はシステム ドライブになっている。そのため、プリンタの共有を行うサーバでは、ハードディスクの空き容量に余裕を持たせる必要があるかもしれない。近年では出力データのサイズが大きくなってきているので、以前と比べると注意を要する。

もしもサーバが印刷を受け付けている最中にディスクがいっぱいになってスプール不可能に陥ると、結果として共有プリンタの利用に支障をきたしてしまう。そのため、多数のプリンタを共有するサーバ、あるいは多数のクライアントPCから印刷を受け付けるサーバでは、システムドライブに十分な空き容量が必要になります。

スプールに使用するフォルダの既定値は、以下の場所になっている。

%SystemRoot%\SYSTEM32\Spool\Printers

スプールに使用するフォルダのパスは以下のレジストリで指定しているので、これを変更すれば、スプールする場所を変更できる。あまり使いたい手ではないが、十分な空き容量を確保できないときの非常手段として、覚えておくとよいかも知れない。

キー : HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Print\Printers\

値 : DefaultSpoolDirectory