• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • Linux操作系統打印機配置全攻略

    發表于:2007-06-08來源:作者:點擊數: 標簽:
    一、Linux打印系統發展路線圖 在 Unix 世界里,PostScript語言是主要用于打印的接口。所有主要的應用程序都會輸出通用的PostScript頁面,而這些PostScript經過打印系統處理后再被打印出來。打印在Unix世界的演化中總是圍繞著PostScript頁面描述語言展開的。

      一、Linux打印系統發展路線圖

      在Unix世界里,PostScript語言是主要用于打印的接口。所有主要的應用程序都會輸出通用的PostScript頁面,而這些PostScript經過打印系統處理后再被打印出來。打印在Unix世界的演化中總是圍繞著PostScript頁面描述語言展開的。該語言是由Adobe公司開發的,它是一個成熟的、用于描述一個文檔每一頁面內容的程序語言。如今很多打印機中都有一個嵌入式的PostScript解釋器,它負責使用PostScript將頁面在打印紙上再現出來?,F在,所有桌面Linux應用程序都有一個打印選項,可以生成PostScript數據來打印整頁的文檔。這種方法和其它面向桌面的操作系統有很大的不同,大部分Unix系統是提交任務至隊列中,并且希望它能夠正確地打印出來。但是并沒有一種統一的收集打印機信息或工作狀態的方法,這嚴重影響了那些需要提供打印能力的Linux應用程序。在Linux中,雖然PostScript是產生打印文檔的事實上的標準,但打印機本身卻并不需要知道PostScript,因為這需要使用到相對比較昂貴的技術。

      在一般情況下,尤其是在低端打印機中,PostScript數據要被翻譯成打印機本地的頁面描述語言。這是通過使用一個特殊的轉換過濾器來完成的。一般而言,一個過濾器實際上就是一個特殊的程序,它可以處理輸入的數據,并且輸出經過加工的數據?,F在,Linux打印系統中使用著各種不同的過濾器:轉換過濾器、I/O過程器(負責將數據傳送至設備)、處理過濾器(轉換文檔數據)。打印系統的基礎是一個假脫機程序(Spooler)。它可以管理打印任務隊列,而一個隊列通常和一個打印機相關聯,并且用戶提交的任務都是按照先進先出的原則來處理的。當一個打印任務被處理時,任務中的數據在送達打印機前一般都要通過一定數量的過濾器。

      使用PostScript頁面描述語言進行打印的優點是極大的簡化的設計,不用像Windows系統一樣安裝各種打印機驅動程序。但是它的缺點是許多打印機(特別是低端打印機)不能解析PostScript輸出,Linux系統對此的解決方法是從打印機隊列調用Ghostscript(http://www.ghostscript.com )軟件包支持你的打印機。要查看Ghostscript在你的Linux發行版本上支持什么打印機列表,可以在命令行下鍵入:

    $gs --help


      gs命令會列出一份它支持的打印機和輸出設備的名單。gs命令使用-r選項設置打印分辨率。調整ghostscript的輸出結果,假如gs 的輸出不能讓人滿意,還有一些辦法::輸出的位置及大小。位置,大小,還有圖像在頁面上的視覺比例是由ghostscript中的打印機驅動程序所控制的. 如果你發現打印出來太短, 太長或是大了兩倍, 你可能會想要看一下驅動程序的原始模組并且調整任何所能想到的參數。

      一代的BSD LPD打印系統,這個打印系統源自于伯克利的Unix發行版,BSD LPD是用于Linux發行版(比如Slackware)的第一個打印系統?,F在仍然有發行版(Debian、Slackware)還會帶有這種假脫機打印程序。BSD打印系統核心的功能僅限于隊列任務。它由一個后臺程序(lpd)及一些位于/etc目錄下的配置文件組成,在這些配置文件中有著隊列和屬性的一些定義。在相應的目錄下,還有一系列基本的用于提交、刪除和處理任務使用的命令(lpd、lprm、lpc)。BSD LPR是BSD打印系統重要一個部分,因為它定義了LPD網絡協議,而該協議是用于提交任務至遠程LPD后臺程序的,并且它允許Unix工作站實現一個打印服務器的功能?,F在,所有的網絡打印機都支持這個協議。由于它使用范圍非常廣泛,所有其它打印系統都要求至少可以和其它的LPD后臺程序進行會話。 下面是如何在printcap文件中定義一個遠程隊列的例子。在這個例子中,任務將會被即時傳送至遠程監控程序的隊列之中,并且不會在本地機進行處理。

    remote:
      :sd=/var/spool/lpd/remote:  :rm=printserver.domain.tld:
      :rp=queue:
      :mx#0:

      LPD協議傳送數據被分成兩個部分。首先會生成一個描述任務的控制文件,并且傳送該文件。該控制文件包含有源用戶、文件名和所有與工作相關的信息。接著就會傳送數據文件,它的格式完全取決于目前正在使用的打印語言。

      第二個使用較廣、較有影響力的基于BSD的打印系統是LPRng(LPR Next Generation),該系統實際上重寫了原來的BSD LPR系統,但原有概念都保留了下來。保留了printcap文件的格式,但是它還引入了一些新的屬性以使配置過程更加靈活。過濾器定義可以被獨立出來,并且還可以定義真正的I/O過濾器。用戶也可以通過在本地機主目錄下編寫printcap文件來定義自己的隊列。LPRng打印系統的優點:1、不需數據庫環境就可以執行lpr lpc lprm命令。2、打印隊列可以自動轉向。3、打印工作可以自動保留。4、多重打印機可以使用同一打印隊列。5、客戶端不需這些SUID root。6、可以大幅度提高安全性檢查。7、可以使用Printconf工具維護配置文件(/etc/printcap)。LPRng還提供了模擬Unix System V風格的打印命令(lp、lpstat等)。隨LPRng發行的還有IFHP過濾器,它可以用在隊列中,用于自動轉換一些數據格式(比如打印ASCⅡ文本或圖像)。

      通用Unix打印系統(CUPS) 是比較新的打印系統。CUPS 軟件為 Unix/Linux 用戶提供了以有效而可靠的方式來管理打印的方法。它生來就支持 IPP(因特網打印協議),IPP協議的四個主要目的是:1、幫助用戶尋找為了上可用的打印機。2、 傳送打印作業。3、傳送打印機狀態信息。4、取消打印作業。并有 LPD、SMB(服務器消息塊,例如與 Microsoft Windows 連接的打印機)和 JetDirect 接口。CUPS采用的另外一個標準是PPD(PostScript Printer Definition)文件格式,這是Adobe另外一個用于PostScript打印機的標準。從以上可以看出CUPS打印系統是目前Linux打印系統中最好的選擇,從Red hat Linux 9.0開始它取代了LPRng成為Linux缺省安裝的Linux打印系統。Linux支持許多種類的打印機,從老式的針式打印機,到最新的激光打印機,都可以使用。了解目前Linux 支持什么打印系統非常重要,下面我們看看幾個主流Linux發行版本使用的打印系統。CUPS還采用了很多過濾器用于傳送數據至打印機的方法。與BSD類的假脫機程序不同的是,這是通過一種更加智能的方式來完成的。下面是在CUPS中可用的部分過濾器:

      1.后端過濾器。它可以提供最終數據進行傳送的端點。這些過濾器可用于并口、TCP/IP套接字連接、LPD和其它端點的連接。

      2.文檔轉換過濾器。該過濾器是作為CUPS一個標準配置一起發行的。它可以轉換圖像、ASCⅡ文本、PDF文件和HP-GL/2矢量文檔至PostScript。

      3.接口過濾器。它可以將文檔從PostScript轉換至其它過渡的文件格式。

      表-1 主流Linux發行版本使用的打印系統

    發行版本和產品序列號

    默認安裝打印系統

    可以兼容打印系統

    RedHat Enterprise Linux 4.0

    CUPS

    LPRng

    CentOS 4.2

    CUPS

    LPRng

    Mandrake Linux LE2005

    CUPS

    LPRng

    Debian GNU/Linux 3.1r0

    BSD LPD

    CUPS, LPRng

    Slackware Linux 10.2

    LPRng

    SuSE Linux 9.3

    CUPS

    Turbo Linux 10F

    CUPS

    Gentoo 2005.0 CUPS 無

      CUPS是跨桌面的,也就是說你可以在GNOME或KDE下安裝你的打印機工作。CUPS主要功能:

      Print 將文件發送到特定的URI的打印機; Validate  設定打印優先級別

      Creat 將文件作為打印作業處理;  Cancal 取消打印作業

      Pause 暫停打印作業;Resume 恢復打印作業

      Purge 清除打印作業

      下面我們看如何為你的Linux系統配置打印系統。以Red Hat Enterprise Linux 4.0。為例。

      二、打印機驅動程序查詢和安裝

      一般來說我們購買的普通打印機附帶的光盤中沒有Linux的驅動,如果我們不知道是否可以在Linux下使用。這時可以查看:http://www.linuxprinting.org/ 站點,這里包含了大量關于在 Linux 上打印的信息。點擊網頁右列的:Printer Listings。進入查詢界面后輸入打印機廠商和型號后,即可進行查詢。通常會得到四個查詢結果:

      1、perfectly(完全支持Linux下打印,并且可以使用打印機所有功能和打印分辨率)。

      2、mostly(大部分功能支持Linux下打印,有一些小缺陷)。

      3、partially(只有一部分功能支持Linux下打印,許多功能不能實現例如彩色打印機只能打印黑白圖像)

      4、paperweight(完全不支持Linux下打?。?。筆者使用的是HP 的designjet430Cannon查詢結果截圖如下:



    圖1 打印機查詢結果

      HP designjet430查詢結果是:perfectly ,有三個企鵝標志。經過測試打印圖像時能達到硬件的最大分辨率:1440*1440 dpi。 http://www.linuxprinting.org/ 網站提供的驅動程序的后綴是.PPR文件,最簡單的安裝方法是使用系統提供的打印機管理工具,雙擊“添加打印機”在選擇驅動程序時指向下載的PPR文件即可。

      三、配置CUPS打印系統

      如果系統是從以前的使用 LPRng打印系統 的 Red Hat Linux版本升級而來的,升級過程不會使用 CUPS 來替代 LPRng;系統仍會繼續使用 LPRng。要使用CUPS首先需要停止原來的打印守護進程,啟動CUPS服務一共分成3個步驟:

      1、停止原來的打印守護進程:

    # chkconfig –level 2345 lpd off

      2、啟動CUPS守護進程:

    # chkconfig –level 2345 cups on

      3、切換打印系統,運行命令:

    # redhat-switch-printer


      切換界面見圖-2(另外如果需要恢復使用LPRng打印系統, 以上過程是可逆的。

    圖-2切換CUPS和LPRng打印系統

      四、管理CUPS打印系統:

      管理CUPS打印系統可以有兩種方法:編輯/etc/cups/cups.conf(CUPS 打印機守護進程配置文件);使用Web管理界面。cups.conf配置文件和Apache 的復雜的 /etc/httpd.conf 相似。一個典型的cups.conf配置文件內容是:

    <Location /printers/Office-Canon s400>  #打印機型號

    Order Deny,Allow

    Deny From All

    Allow From 127.0.0.1

    AuthType None

    </Location>

    <Location />

    Order Deny,Allow

    Deny From All

    Allow From 127.0.0.1#允許從本地配置

    </Location>

    Browsing On

    BrowseProtocols cups

    BrowseOrder Deny,Allow

    BrowseAllow from @LOCAL

    Listen 127.0.0.1:631#打印機監聽端口


      除了主配置文件Cups.conf外,目錄下還有classes.conf — CUPS 類別配置文件,它負責指向不同的打印組。client.conf -客戶端配置文件,指向默認CUPS服務器,可以指定加密要求。mine.cons-列出不同文件格式的過濾器,如圖像和文本。 mine.types-列出CUPS打印機可以處理的文件類型。 print.conf-CUPS Web工具改變的配置文件。 pstoraster.cons -包含Ghostscript文件的過濾器。GUN通過這種方法處理PostScript打印機。如果你感到命令行文件比較復雜,可以使用Web管理CUPS打印系統:

      1.使用命令檢查打印機相關RPM包:

    #rpm –qa |grep cups;rpm -qa|grep foo

    cups-libs-1.1.17-13   #CUPS命令集

    cups-devel-1.1.17-13 #CUPS開發庫

    cups-1.1.17-13?。UPS主程序

    foomatic-2.0.2-15?。*毩⒂诩倜摍C打印的數據庫

    Omni-foomatic-0.7.2-4?。mni數據庫


      2.通過瀏覽器直接連接到CUPS的Web控制界面:http://localhost:631/ ,出于安全此時要輸入賬號名稱和口令,見圖-3.

     

    圖-3 CUPS打印系統Web管理頁面

      3.CUPS打印系統Web管理表

    名稱

    說明

    ESP

    導航到CUPS開發者站點:http://www.easysw.com/ 。

    Administration: Do Administration Task

    管理、增加打印機、類、打印作業。

    Classes :Manage Printer Class

    通過類的方式管理打印機組。

    Help : On-Line Help

    CUPS管理手冊和幫助。

    Jobs : Manage Jobs

    用來管理打印隊列中的打印任務。

    Printer : Manage Printers

    管理、增加打印機

    Software:Download the Current CUPS Software

    下載軟件最新版本

      4、增加一個打印機

      在該頁面中有多個選項。點擊第一個選項"Do Administration Tasks"(管理任務選項),這時程序會提示你登錄,用戶名必須以root身份登錄并且輸入超級用戶密碼。若要增加一個打印機,點擊"Add Printer"按鈕,出現的頁面會提示用戶填寫下列信息:

      Name:打印機的名字。

      Loaction:連接打印機的主機名。

      Description:對打印機的簡短描述。

      填寫完以上信息后,點擊"Continue"鍵。接下來的頁面詢問打印機當前使用什么類型的設備。唯一的選項是:Disk File。所以用戶只要選擇"Continue"就可以了。接著用戶要提供設備的URI。包括: http://hostname:631/ipp/port1 

      ipp://hostname/ipp/port1 

      ipd://hostname/queue 

      當上面的信息都填寫完畢后,系統會發送一條打印機已經正確加入的消息。在打印機正確加入后,點擊"Administration"管理打印機:(見圖-4)。

    圖-4 管理打印機的Web界面

      在該頁面提供的操作包括測試打印機、啟動打印機及其它管理任務。它同時顯示打印任務及打印機的狀態。

      五、使用Redhat Linux自己的配置管理工具

      Redhat Linux 8.0以后的版本都內置自己的配置管理工具既能夠配置 CUPS,也能夠配置 LPRng 打印系統。根據你的系統配置而定,它會配置活躍的打印系統。要使用 打印機配置工具,你必須具備根特權。要啟動這個應用程序,選擇“主選單”-“系統設置”-“打印”,或鍵入 “redhat-config-printer” 命令。該命令會根據它所執行的環境是圖形化 X 窗口系統還是基于文本的控制臺來自動判定它應該以圖形化還是文本形式來運行程序。配置界面見圖-5。

     

    圖-5 使用系統配置工具添加本地打印機

      如果你沒有安裝 圖形界面可以在命令行添加,運行命令:

    #redhat-config-printer-tui --Xadd-local options

      主要選項:

      --device=node :要使用的設備節點。例如:/dev/lp0。

      --make=make  :IEEE 1284 MANUFACTURER 字符串或 foomatic 數據庫中的打印機生產廠商的名稱(若無 manufacturer 字符串)。

      --model=model :IEEE 1284 MODEL 字符串或 foomatic 數據庫中列出的打印機型號(若無 model 字符串)。

      六、配置管理網絡打印機

      如果你的本地打印機不能被Linux支持或者打印效果太差,可以使用配置網絡打印機。RHEL 4.0一共可以配置六種類型的打印隊列:

      1、本地連接 — 直接通過并行或 USB 端口連接到計算機上的打印機。

      2、聯網的 CUPS (IPP) — 連接到能夠通過 TCP/IP 網絡、使用互聯網打印協議進入的打印機,又稱 IPP(例如,連接到網絡上另一個運行 CUPS 的 Red Hat Linux 系統的打印機)。需要輸入打印機所連接的遠程機器的主機名或 IP 地址和到遠程機器上的打印隊列的路徑。

      3、聯網的 UNIX (LPD) — 連接到能夠通過 TCP/IP 網絡進入的其它 UNIX 系統上的打印機(例如,連接到網絡上另一個運行 LPD 的 Red Hat Linux 系統的打印機)。 需要添加打印機所連接的遠程機器的主機名或 IP 地址,遠程打印機隊列。默認打印機隊列通常是 lp。

      4、聯網的 Windows (SMB) — 連接到通過 SMB 網絡來共享打印機的其它系統上的打印機。需要添加共享打印機的 Samba 工作組的名稱,共享打印機的服務器的名稱。你想用來打印的共享打印機的名稱。這個名稱必須和遠程 Windows 機器上定義的 Samba 打印機的名稱相同。在“用戶名”字段中指定的用戶的口令,你要訪問打印機所必須登錄使用的用戶名稱。用戶在 Windows 系統上必須存在,并且必須有訪問打印機的權限。默認的用戶名典型為guest(Windows 服務器)或 nobody(Samba 服務器)。

      5、聯網的 Novell (NCP) — 連接到使用 Novell NetWare 網絡技術的其它系統上的打印機。 需要添加打印機所連接的 NCP 系統的主機名或 IP 地址。NCP 系統上的打印機的遠程隊列。你要使用打印機所必須登錄的用戶名。 為以上用戶字段指定的口令。

      6、聯網的 JetDirect — 通過 HP JetDirect 直接連接到網絡打印機。 JetDirect 打印機的主機名或 IP 地址。 JetDirect 打印機監聽打印作業的端口。默認端口為 9100。

      管理打印作業

      當你給打印機守護進程發送打印作業時(例如從 Emacs 中打印文本文件或從 The GIMP 中打印圖像),這個打印作業被添加到打印假脫機隊列中。打印假脫機隊列是一個被發送給打印機的打印作業以及關于每個打印請求的信息的列表。這些信息包括打印請求的狀態、發送請求的用戶名、發送請求的系統主機名、作業號碼等等。 要改變打印機設置,右擊打印機圖標,然后選擇“屬性”。打印機配置工具就會被啟動。 雙擊一個已配置的打印機來查看打印假脫機,見圖-6。

     

      圖 6 打印作業列表

      要取消在 GNOME 打印管理器中列出的某一作業,從列表中選擇它,然后選擇編輯-取消文檔。如果打印假脫機中有活躍的打印作業,打印機通知圖標可能會出現在桌面面板上的面板通知區域,

      七、打印機管理常用命令

      在Linux中是把硬件設備當作文件來管理。每個與Linux系統相連的實際設備(包括光盤驅動器、顯示器、網卡、顯示卡、掃描儀和打印機等),都可以在文件系統中表示出來。Linux系統把每一個設備都看成一個文件,與普通文件一樣處理,這樣可以使文件與設備的操作盡可能統一。從用戶的角度來看,對設備的使用和一般文件的使用一樣。Linux提供了大量的命令,利用命令可以有效管理設備。所以,在Linux系統上使用打印機,離不開使用系統提供的命令。要想真正理解Linux系統打印,就必須從Linux打印命令學起。不管你是在 GUI 中點擊一個按鈕還是從命令行中鍵入命令,打印都不能算是一項很互動化的進程。下面將會向你介紹印相關命令。

      1.CUPS打印系統命令見表4。

      表4 CUPS打印系統命令

    命令名稱

    功能說明

    lp.cups

    提交打印任務,即開始打印。

    lpr.cups

    打印機請求命令。

    lprm.cups

    從打印隊列刪除任務。

    lpq.cups

    查詢打印隊中的任務。

    lpc.cups

    行打印控制命令。

    lpstat,.cups

    顯示打印機狀態,包括打印隊列長度和打印機數量。

    lpoptions

    顯示或設置打印選項。

    lppasswd

    為用戶修改打印密碼。

    lpinfo

    顯示打印設備。

    lpadmin

    配置打印機。

    cancel

    取消一個打印任務。

    disabe

    禁止一個打印任務。

    enable

    啟動一個打印任務。

    lpmove

    改變打印任務到新隊列。

    aclearcase/" target="_blank" >ccept

    接受打印任務。

    reject

    拒絕打印任務。

      2.LPD打印命令

      Red Hat Linux現在默認打服務器是CUPS。但是許多Linux老用戶仍然傾向使用行打印監控程序(LPD)。LPD包括四個主要命令:行打印機請求(Line Printer Request ,lpr)、行打印機控制(Line Printer Control,lpc)、行打印機查詢(Line Printer Query,lpq)、行打印機刪除(Line Printer Remove,lprm)。LPD打印系統命令見表5。

      表5 LPD打印系統命令

    命令名稱

    功能名稱

    常用選項

    lpr

    打印機請求

    -h file:打印沒有作業控制頁的文件,通常包含用戶賬號和源計算機的主機名。作業控制頁也稱為粹發頁。

    -Pother file:用/etc/printcap文件定義的打印機other打印文件file。注意:P和打印機之間沒有空格。

    -s fike:生產打印文件file的符號鏈接。

    lpq

    提供當前打印隊列

    lpq ;返回默認打印機的當前打印隊列,在/etc/printcap文件中定義。

    lpq -P printer :返回指定打印機的當前打印隊列,使用/etc/printcap文件中定義的名稱。

    lprm

    打印隊列刪除任務

    -P: 刪除默認打印機的當前打印隊列,在/etc/printcap文件中定義。

    Lpc

    可以控制每臺打印機的幾個特征

    lpc [-P] [device][enable| disable|starp|stop|stataus]

    lpc -P device stataus:顯示打印機的狀態。輸出顯示能否將打印作業發送到隊列、隊列中的作業號、打印機是否接收作業以及和打印機的通信狀態。

    lpc disable:禁止對默認打印機將發送(假脫機)到打印隊列。

    lpc enable:啟動對默認打印機將發送(假脫機)到打印隊列。與lpc disable命令相反。

    lpc start:從訂印隊列重新開始傳輸。

    lpc stop:停止打印機與打印隊列之間的通信。

      八、重要聯機資料

      要了解更多關于在 Red Hat Linux 上打印的信息,請參考下列資料。

      man printcap — /etc/printcap 打印機配置文件的說明書頁。

      map lpr — 允許你從命令行打印文件的 lpr 命令的說明書頁。

      man lpd — LPRng 打印機守護進程的說明書頁。

      man lprm — 用來從 LPRng 假脫機隊列中刪除打印作業的命令行工具的說明書頁。

      man mpage — 用來在一張紙上打印多頁的命令行工具的說明書頁。

      man cupsd — CUPS 打印機守護進程的說明書頁。

      man cupsd.conf — CUPS 打印機守護進程配置文件的說明書頁。

      man classes.conf — CUPS 類別配置文件的說明書頁。

      總結:以上介紹了Linux打印機配置的方法,與以前相比,隨著更多、更高級打印系統的出現,情況已有了很大改觀,也得到了HP、IBM等公司的關注,它們也努力致力于推進這個基礎架構發展。FSG(自由標準組織)正在進行著一個名為OpenPrinting的項目。據稱該項目是為Linux定義下一代打印系統的基礎架構,目前其聚集了很多業內的專家。以提升Linux競爭者力。

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>