操作系統:centos6.0
主要軟體:cups,samba,ghostpostscript
印表機:richo 3025
主要功能:通過samba將印表機共享給區域網用戶,並實現對列印內容的監控
主要有三大步:本機安裝印表機,通過samba共享,監控列印
步驟:1、安裝cups,本文使用的是centos系統自帶的cusp1.4.2的版本(主要包含cups,cups-libs)
yum install cups*;
2、nmap 印表機IP地址,查看印表機支持的協議埠(本文印表機支持的協議比較多,其中有一個Appsocket/HP JetDirect:9100),在添加印表機的時候,就知道此處的用處了.
3、瀏覽器輸入http://localhost:631登錄cups管理界面,選擇administration->addprinter->appsocket/HPJetDirect->socket://hostname:9100
4、選擇相應的印表機型號,確定即可
5、回到首頁,printers->單擊要選擇的印表機->(有兩個下拉列表框),其中一個有print test page,看列印是否成功.
至此完成本機安裝印表機.
6、安裝samba,修改配置文件:/etc/samba/smb.conf
注意:此處securty需為user,不然在告知samba,cups提供xp用戶的驅動時,會出錯.
[global]
...(僅列出印表機相關部分)
printcap name=cups
load printers=yes
printing=cups
[printers]共享名必須為printers
comment =All Printers
printable=yes
browsable=yes
public=yes
valid users=@users root可以使用的人員
path=/var/spool/samba列印隊列的地方,暫存數據
printer admin=root印表機管理員
...
這樣samba就可以提供列印服務了,但驅動還需要用戶自己選擇安裝.
列印是通過postscript語言實現的,所以如果區域網內有多種印表機,也只需要提供postscript的驅動程序,用戶就可以使用印表機了.
7、到http://www.cups.org/windows/software.php下載cups-windows-6.0-1.i386.rpm,並安裝
8、到xp系統c:\windows\system32\spool\drivers\w32x86下把4個ps開頭的文件,拷貝到伺服器的/usr/share/cups/drivers/下,並全部改成小寫
這裡的驅動僅對xp用戶有用
9、再次修改samba配置文件:vim /etc/samba/smb.conf
...
[print$]共享名必須是這個
comment=printer drivers
path=/etc/samba/drivers驅動存放路徑
browable=yes
read only=yes
write list=root
...
10、重啟samba服務:service smbd restart
11、告知samba,cups提供xp用戶的驅動:cupsaddsmb -H samba主機名 -U root -a -v
閃過很多信息,如果沒有錯誤信息,在/etc/samba/drivers/下多出32x86目錄,表示安裝成功
到此為止,xp用戶即可,自行下載印表機驅動,而無需手動安裝驅動.如果要監控用戶列印的內容,保證數據的安全,進行下面的配置.
12、在centos桌面,系統->管理->列印->伺服器->高級->保留任務文件(允許重新列印)
13、文件保存在/var/spool/cups/,有以列印隊列id命名的postscript,此文件一般比較大,列印幾K的文件,此文件可達到10 M,由於此文件是postscript格式,裡面的內容看不懂,文件相當大,不便於保存,因此想辦法轉換成其他格式
14、安裝ghostscript
15、ps2pdf ps文件 out文件名,這樣就會保存成pdf文檔(用vim打開還是亂碼,因此不便於自動化腳本讀取處理,但臨時沒有進行其他的處理)
列印信息的log文件存放在:/var/log/cups/,page_log記錄了,列印時間,用戶(samba),文件名等信息,這些信息也可以在管理頁面查看.
參考:鳥哥私房菜
[火星人 ] linux下印表機共享及監控已經有713次圍觀