摘要
到目前為止,Unix/Linux下的打印有太多的限制。但是通過安裝CUPS系統,你就擁有了一個通用的打印解決方案。(1,100字)
歡迎訪問Ask the Geek的最新版本。正如在上一個欄目中提到的一樣,本周我們要介紹使用通用Unix打印系統(Common Unix Printing System,CUPS)的一些問題,它可以向你介紹一些網絡上的通用解決方案。
Unix/Linux中的打印領域已經很久都沒有多少變化了。我們仍在使用原來的lpd(行打印機守護進程),我們並沒有為IPP(Internet Printing Protocol,Internet打印協議)提供支持,我們也不能使用多種打印機。但是這種情況正在轉變,而且是在迅速轉變。一個新產品正在轟炸打印的舞台。
CUPS軟件為Unix/Linux用戶提供了一種高效可靠地管理打印的方法。它天生就能夠支持IPP,具有和LPD、SMB(服務器信息塊,也就是連接到Microsoft Windows的打印機)和JetDirect的接口。CUPS可以提供網絡打印機浏覽,可以使用PostScript打印機描述(PPD)文件。簡而言之,使用CUPS你在Linux機器上就可以象在Windows的機器上一樣簡單地使用打印機,但是具有了Linux的優點。
CUPS使用過程介紹
讓我們親自操刀來演練一下吧。首先,我們需要獲得CUPS。如果你現在正在使用Mandrake 7.2,那麼你就已經有CUPS了。(舉賢不避親;在我家的機器上就是使用的Mandrake 7.2。)如果你使用的是其它發行版本,那麼就就需要下載它了(訪問發行版本的站點來尋找資源吧--見本文末尾Resources,譯者著)。
下載CUPS之後,你就得把自己原來的打印軟件刪除了。我將以運行Red Hat 6.2的機器為例說明整個過程。在這種機器上,在安裝CUPS之前,你必需刪除lpr、printtool和rhs-printfilters。如果你的CUPS不能正常工作,那麼你就會希望這些包還可以方便使用。如果CUPS並不如你所願,你可以重新安裝這些包繼續工作。
要刪除這些包,輸入:
rpm -e lpr printtool rhs-printfilters
然後,通過輸入以下內容安裝CUPS:
rpm -ivh cups-1.1.4-linux-2.2.14-intel.rpm
注意你的文件名可能有點差異。
CUPS現在就安裝好了。你應該看到了如下信息:
cups: scheduler started
這個信息就告訴你CUPS正在運行、等待打印任務。
你可以通過命令行或者基於Web的管理工具對CUPS進行管理。我們從通過命令行接口中增加一個打印機開始介紹。使用root用戶,輸入:
/usr/sbin/lpadmin -p LaserJet -E -v parallel:/dev/lp0 -m laserjet.ppd
上面的lpadmin命令執行了以下任務:
1. 增加一個名為LaserJet的打印機 (-p)
2. 啟用這個打印機可以被用戶訪問 (-E)
3. 設置使用的設備和設備類型 (-v)
4. 使用驅動/PPD文件laserjet.ppd (-m)
既然我們是在命令行中,測試打印機最快的方法是輸入:
/usr/bin/lp -d LaserJet /etc/aliases
上面的lp命令會把/etc/aliases文件打印到LaserJet打印機中(-d)。如果輸出結果是你的文件別名,那麼你就要全部設置了。當然,這是你可以使用CPUS的最簡單設置。
你也可以使用-p選項來設置打印任務的優先級。例如:
/usr/bin/lp -d LaserJet -p 90 /etc/aliases
通過增加-p 90選項,你就聲明了自己的打印任務的優先級是90,該值的范圍是100。這個打印任務會在其它優先級小於90的打印任務之前打印 -- 包括那些沒有設置優先級的任務,因為缺省的優先級是50。
lp命令的完全選項列表在man page中可以找到。這些選項包括上面說明的內容,又增加了一些諸如指定打印多少份拷貝之類有用特性的選項。
禁用打印機
我們已經成功添加了一個打印機並對其進行了測試。如果我們希望禁用打印機應該怎樣處理呢?要實現這個功能,我們就要使用disable命令:
/usr/bin/disable -r "Changing Paper" LaserJet
上面的disable命令將禁止使用打印機LaserJet並聲明不能使用的原因(-r)是"Changing Paper"。選項-r是讓用戶了解打印機狀態的一個好法子。
在換完紙之後,你就可以使用enable命令重新啟用這個打印機了,例如:
/usr/bin/enable LaserJet
接下來是一個邏輯問題:如果你沒有LaserJet怎麼辦?CUPS缺省的安裝是使用HP和Epson打印機的驅動程序。它幾乎覆蓋了個人打印機的大部分范圍(對Cannon迷們只能說抱歉了)。如果你使用的打印機不是這兩種品牌,也不要失望。你還有其它選擇。如果你是一個自由軟件的狂熱分子,那麼你就可以打開Web浏覽器,訪問LinXPrinting.org的Web站點。或者,如果你並不這麼狂熱,那麼你也可以購買ESP Print Pro(見Resources)。
LinuxPrinting.org的Web站點有很多打印機的驅動程序。其中包括一個CUPS PPD文件生成器。很多打印機都需要一個PPD文件。我就是如此幸運,剛好用的是不能支持的打印機,我正考慮把它當壓紙器用了 -- 是的,就是HP LaserJet 3150。
ESP Print Pro是由Easy Software ProdUCts開發的,這個公司最初開發了CUPS。我個人認為支持提供好產品的公司是相當重要的。ESP Print Pro是一個接口良好的CUPS,可以支持2,300種打印機。不幸的是,除了Linux獨立許可證之外,它價格十分昂貴。
簡而言之,CUPS的配置並不難,除了基於Web的配置界面之外,還有一個GPLd版本。ESP Print Pro產品的主要優點是它包含的巨大數量的打印機驅動。如果你是一個經銷商,那麼我建議你先浏覽一下LinuxPrinting.org,看一看你的打印機能不能被支持。如果答案是否定的,就將ESP出局,不要用它了。
在下一次的Ask the Geek欄目中,我們會繼續討論CUPS,包括一些免費的圖形管理界面(例如KUPS)、安全基礎和網絡打印。在此之前,小心瘋狗,好好吃飯!
在Linux上你有困惑許久的問題嗎?把你的問題在Ask the Geek討論區(http://forums.itworld.com/webx?230@@.ee6c981)張貼出來吧,或者把你的問題用email(
[email protected])發給我。我們也許會為你指點迷津!兩周後見。
作者簡介
Joshua Drake是一個電子商務和Linux顧問,他有自己的公司Command Prompt。他使用Linux已經有9年的歷史了,同時是Linux文檔項目的Webmaster。他其它的工作包括LinuxPorts.com站點和OpenDocs出版公司。
Resources:
Mandrake Software:
http://www.linux-mandrake.com
Common Unix Printing System (CUPS):
http://www.cups.org
HPs open source printer site:
http://hp.sourceforge.net
LinuxPrinting.org:
http://www.linuxprinting.org
Easy Software Products:
http://www.easysw.com
原文URL:
http://www.linuxworld.com/linuxworld/lw-2000-11/lw-11-geek_1.Html
Joshua Drake是一個電子商務和Linux顧問,他有自己的公司Command Prompt。他使用Linux已經有9年的歷史了,同時是Linux文檔項目的Webmaster。他其它的工作包括LinuxPorts.com站點和OpenDocs出版公司。
Resources:
Mandrake Software:
http://www.linux-mandrake.com
Common Unix Printing System (CUPS):
http://www.cups.org
HPs open source printer site:
http://hp.sourceforge.net
LinuxPrinting.org:
http://www.linuxprinting.org
Easy Software Products:
http://www.easysw.com
原文URL:
http://www.linuxworld.com/linuxworld/lw-2000-11/lw-11-geek_1.html