20.5 網路印表機

網路印表機可支援各種通訊協定,有些甚至可同時支援。 雖然大部分支援的通訊協定為標準的,部分製造商會因為測試系統無法正確地執行標準,或因為想要提供標準無法提供的特定功能,而擴充 (修改) 標準。 然後製造商僅對少數作業系統提供驅動程式,以減少那些系統的困難。 不幸地,他們很少提供 Linux 驅動程式。 目前的情況是,您無法以每一個通訊協定均能在 Linux 中順暢執行的假設來行事。 因此,您必須試驗各種選項以達到功能性組態。

CUPS 支援 socketLPDIPPsmb 通訊協定。

插槽

Socket 指不須先執行資料信號交換,而將資料傳送到網際網路插槽的連線。 經常使用的插槽連接埠號碼為 910035。 設備 URI (資源識別字串) 的語法為 socket://IP.of.the.printer:port,例如 socket://192.168.0.202:9100/

LPD (行列式印表機精靈,Line Printer Daemon)

經過實驗的 LPD 通訊協定描述於 RFC 1179 中。在此通訊協定之下,部分工作相關資料 (如印表機佇列的 ID) 會在傳送實際列印資料之前傳送。 因此,在設定資料傳輸的 LPD 通訊協定時,必須指定印表機佇列。 不同印表機製造商的執行具有足夠彈性接受任何名稱做為印表機佇列。 如有需要,印表機手冊應該會指出要使用的名稱。 通常使用 LPT、LPT1、LP1或相似名稱。 LPD 佇列也可以在 CUPS 系統中不同 Linux 或 Unix 主機上設定。 LPD 服務的連接埠號碼為 515。 設備 URI 的範例為 lpd://192.168.0.202/LPT1

IPP (網際網路列印通訊協定,Internet Printing Protocol)

IPP 是相對較新的 (1999) 通訊協定,以 HTTP 通訊協定為基礎。 有了 IPP,可比使用其他通訊協定傳輸更多工作相關資料。 CUPS 使用 IPP 進行內部資料傳輸。 這是在兩個 CUPS 伺服器之間轉送佇列偏好的通訊協定。 正確設定 IPP 必須要有列印佇列的名稱。 IPP 的連接埠號碼為 631。 設備 URI 的範例為 ipp://192.168.0.202/psipp://192.168.0.202/printers/ps

SMB (Windows 共用)

CUPS 也支援在連接到 Windows 共用的印表機上列印。 此用途使用的通訊協定為 SMB。 SMB 使用連接埠號碼 137138139。 設備 URI 的範例為 smb://user:password@workgroup/server/printersmb://user:password@host/printersmb://server/printer

必須在設定組態之前決定印表機支援的通訊協定。 如果製造商未提供所需資訊,可使用 nmap 指令 (nmap 套件) 來猜測通訊協定。nmap 會檢查主機上開啟的通訊埠。 例如:

nmap -p 35,137-139,515,631,9100-10000 printerIP

20.5.1 以 YaST 設定網路印表機

網路印表機為自動獲得偵測,必須使用 YaST 印表機模組手動設定。視網路設定而定,您可以列印至印表機伺服器 (CUPS、LPD、SMB 或 IPX) 或直接至網路印表機 (最好透過 TCP)。如需在您的環境中設定網路印表機,請洽詢網路管理員。

使用 YaST 設定網路印表機

  1. 啟動 YaST 並選擇硬體 > 印表機來開啟印表機組態對話方塊。

  2. 請按一下新增開啟印表機類型視窗。

  3. 請選擇網路印表機開啟對話方塊,在其中指定網路管理員提供給您的詳細資訊。

20.5.2 以指令行工具設定網路印表機

除了使用 YaST 設定 CUPS 選項之外,設定網路印表機時,CUPS 可以由 lpadminlpoptions 之類的指令行工具進行設定。您需要包含後端 (如 USB 和參數 /dev/usb/lp0) 的設備 URI。例如,完整的 URI 可為 parallel:/dev/lp0 (連線到第一並列埠的印表機) 或 usb:/dev/usb/lp0 (第一個偵測到連線到 USB 埠的印表機)。

使用 lpadmin,CUPS 伺服器管理員可新增、移除或管理類別何列印佇列。 若要新增印表機佇列,請使用下列語法:

lpadmin -p queue -v device-URI -P PPD-file -E

然後設備 (-v) 會變為可用 queue (-P),使用指定的 PPD 檔案 (-P)。這表示如果要手動設定印表機,您必須知道 PPD 檔案以及設備名稱。

請勿使用 -E 做為第一選項。 對於所有 CUPS 指令,第一個引數 -E 設定使用加密連線。 若要啟用印表機,必須依照下列範例所示使用 -E

lpadmin -p ps -v parallel:/dev/lp0 -P \
/usr/share/cups/model/Postscript.ppd.gz -E

下列範例是設定網路印表機:

lpadmin -p ps -v socket://192.168.1.0:9100/ -P \
/usr/share/cups/model/Postscript-level1.ppd.gz -E

如需 lpadmin 的更多選項,請參閱 lpadmin(1) 的線上文件。

在印表機設定期間,某些選項會設成預設。 可針對每一個列印工作修改這些選項 (視所使用的列印工具而定)。 也可以使用 YaST 變更這些預設選項。 使用指令行工具,可依下列方式設定預設選項:

  1. 首先,列出所有選項:

    lpoptions -p queue -l
    

    範例:

    Resolution/Output Resolution: 150dpi *300dpi 600dpi
    

    啟用的預設選項會在前面加上星號 (*) 來表示。

  2. lpadmin 變更選項:

    lpadmin -p queue -o Resolution=600dpi
    
  3. 檢查新設定:

    lpoptions -p queue -l
    
    Resolution/Output Resolution: 150dpi 300dpi *600dpi
    

當一般使用者執行 lpoptions 時,設定會寫至 ~/.lpoptions。然而,根部設定會會寫至 /etc/cups/lpoptions