Solaris のシステム管理 (第 2 巻)

プリンタ構成情報を変換する作業マップ

表 4-2 に、プリンタ構成情報を変換する作業の概要を示します。

表 4-2 作業マップ: プリンタ構成情報を変化する

作業 

説明 

手順の説明 

既存のプリンタ構成情報を変換する 

unOS 5.5.1 または互換バージョンのシステムのプリンタ構成情報を変換する

SunOS 5.5.1 リリースを使用しているサイトでは、/etc/lp/printers ディレクトリ内のプリンタ構成情報を、/etc/printers.conf 構成ファイルに変換する。通常、この作業は 1 回行うだけでよい

「SunOS 5.5.1 リリースのシステムの印刷情報を変換する方法」を参照

 

SunOS 4.1 を稼動するシステムのプリンタ構成情報を変換する 

SunOS 4.1 ソフトウェアを使用しているサイトでは、4.1 システムの /etc/printcap ファイル内のプリンタ構成情報を、/etc/printers.conf 構成ファイルに変換する。通常、この作業は 1 回行うだけでよい

「SunOS 4.1 リリースのシステムの印刷情報を変換する方法」を参照

NIS+ (+xfn) のプリンタ構成情報を NIS+ 形式に変換する 

下層の xfn アプリケーション層を持たない NIS+ ネームサービスでプリンタ構成情報を管理するとアクセス性能が向上する 

「NIS+ (+xfn) のプリンタ構成情報を NIS+ 形式に変換する方法」を参照

既存のプリンタ構成情報の変換

既存のプリンタ構成情報は、Solaris 8 またはその互換バージョンをインストールあるいはアップグレードするときに自動的に変換されます。この節では、SunOS 5.5.1 リリースあるいは SunOS 4.1 のシステムのプリンタ構成情報を、/etc/printers.conf プリンタ構成ファイルに変換する方法を説明します。変換作業を自動化するために、2 つの新しい印刷管理コマンドのいずれかを使用します。

ネームサービスを使用していない場合、サイトにある既存のプリンタを含む、/etc/printers.conf のマスターファイルを作成します。次に、このマスターファイルをすべての印刷クライアントにコピーするか、(ネームサービスを使用している場合は)、NIS または NIS+ にロードします。新しい印刷クライアントは、最初から、サイトにある既存のプリンタにアクセスできるようにしておくことを推奨します。


注意 - 注意 -

NIS または NIS+ ネームサービスを使用してプリンタ情報を構成している場合、印刷クライアント上の /etc/printers.conf ファイルは使用しないでください。印刷クライアントは、最初に /etc/printers.conf ファイルを使用してプリンタを検出します。そのときに、/etc/printers.conf ファイル内の情報と、NIS マップまたは NIS+ マップ内のプリンタ情報に矛盾がある場合は、予期せぬ結果が生じることがあります。この問題を回避するために、印刷クライアントが NIS ネームサービスまたは NIS+ を使用してプリンタ情報を構成するときは、印刷クライアント上の /etc/printers.conf ファイルを削除してください。


SunOS 5.5.1 リリースのシステムの印刷情報を変換する方法

  1. SunOS 5.8 を実行しているシステムに、スーパーユーザーとしてログインします。

  2. そのシステムの /etc/lp/printers ディレクトリ内のプリンタ構成情報を /etc/printers.conf ファイルに変換します。


    # /usr/lib/print/conv_lp
    

SunOS 4.1 リリースのシステムの印刷情報を変換する方法

  1. SunOS 4.1 システムの /etc/printcap ファイルを、SunOS 5.8 で実行しているシステムにコピーします。

  2. /etc/printcap ファイルをコピーした、SunOS 5.8 を実行しているシステムに、スーパーユーザーとしてログインします。

  3. /etc/printcap ファイル内のプリンタ構成情報を /etc/printers.conf ファイルに変換します。


    # /usr/lib/print/conv_lpd
    

NIS+ (+xfn) のプリンタ構成情報を NIS+ 形式に変換する方法

次の変換スクリプトは、Solaris 8 リリースが動作するシステムでだけ実行できます。

  1. NIS+ マスターにスーパーユーザーとしてログインします。

  2. たとえば /tmp/convert という名前で次の変換スクリプトをシステムにコピーします。


    #!/bin/sh
    #
    #	Copyright (C) 1999 by Sun Microsystems, Inc.
    #	All Rights Reserved
    #
    PRINTER=""
    
    for LINE in `lpget -n xfn list | tr "¥t " "^A^B"` ; do
    	LINE=`echo ${LINE} | tr "^A^B" "¥t " | sed -e 's/^	 ¥t//g'`
    	case "${LINE}" in
    		*:)
    			PRINTER=`echo ${LINE} | sed -e 's/://g'`
    			;;
    		*=*)
    			lpset -n nisplus -a "${LINE}" ${PRINTER}
    			;;
    	esac
    done

    注 -

    カット&ペーストを使用してこのスクリプトのテキストファイルを作成する場合は、2 つある ^A^B (caratAcaratB) シーケンスを Control A Control B に変更してください。


  3. スクリプトを実行可能ファイルにします。


    # chmod 755 /tmp/convert
    
  4. 変換スクリプトを実行します。


    # /tmp/convert