SAMBA打印机的安装和调试

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

SAMBA打印机的安装和调试
WINDOWS操作系统的PC机作为打印服务器
一、操作系统要求
必须为windows98或者服务器版的windodws操作系统(windows 2000 server, windows 2000 advance server等)。

二、正确安装好系统后,设置好网络协议(TCP/IP就够了)以及网络服务(win98系统必须添加有“网络文件和打印机共享”服务)。

安装打印机并共享。

假设PC机IP为:192.168.1.10
打印机共享名为:printer
在其它PC机上测试打印。

三、以root登录unix服务器,如无samba先安装好samba。

修改/etc/hosts文件,添加一行,内容为:192.168.1.10prn_server(名字随便起),存盘退出。

测试unix服务器与打印服务器通讯是否正常:ping prn_server。

如无问题,应显示prn_server is alive(SCO UNIX系统,NCR SVR4不同)。

如不通,检查PC机的IP地址。

四、在unix服务器上添加samba打印机
1、建立samba打印机配置文件
cd /usr/local/samba/printer (华联业务系统一般放在/usr/local/samba/printer下)
vi lprint
#!/bin/sh
shift;shift;shift;shift;shift
server=prn_server (此处为打印服务器在unix服务器/etc/hosts里的命名)
service=printer(打印机的实际共享名)
password=""
(
# NOTE You may wish to add the line `echo translate' if you want automatic
# CR/LF translation when printing.
echo translate
echo "print -"
cat $*
) | /usr/local/samba/bin/smbclient "\\\\$server\\$service" $password -N -P > /dev/null exit $?
:x
2、添加打印机
# lpadmin -p lineprint -v /dev/null -i /usr/local/samba/printer/lprint
# accept lineprint
# enable lineprint
linprint :打印机名,任意
lprint :刚才建立的打印机配置文件
3、测试
# echo fdafasdfasf | lp -d lineprint
如果正常打印出来,那就大功告成,^_^
如果不能打印则手工检查打印机配置文件是否正确,
方法:使用/usr/local/samba/bin/smbclient
# cd /usr/local/samba/bin
# ./smbclient \\\\prn_server\\printer -N -P
如设置正确,光标提示符变为:smb :\>
不正确会出错
例1:# ./smbclient \\\\server\\it -N -P
Added interface ip=148.30.31.5 bcast=148.30.31.255 nmask=255.255.255.0
Server time is Mon Oct 23 13:30:29 2006
Timezone is UTC-4.0
Domain=[IT] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager]
connected as guest security=user
smb: \>
说明unix已经可以正确地使用windows 的共享资源(文件或打印机)
例2:# ./smbclient \\\\server\\test -N -P
Added interface ip=148.30.31.5 bcast=148.30.31.255 nmask=255.255.255.0
Server time is Mon Oct 23 13:35:53 2006
Timezone is UTC-4.0
Domain=[IT] OS=[Windows 5.0] Server=[Windows 2000 LAN Manager]
connected as guest security=user
SMBtconX failed. ERRDOS - ERRnosuchshare (You specified an invalid share name) Perhaps you are using the wrong sharename, username or password?
Some servers insist that these be in uppercase
#
说明windows的共享资源server\test不存在,或者连接的密码不正确。

请检查打印机的共享名。

用smbclient测试完之后,修改好打印机配置文件,重新添加打印机就OK了。

现在看看打印机配置文件的倒数第二行,是不是很眼熟?呵呵,就是我们进行测试时运行的命令嘛。

^_^ 。

实际上打印就是调用了smbclient。

假如你windows共享了一个文件夹出来,通过smbclient就可以访问到这个共享文件夹,你可以进行文件操作,访问形式和FTP一样。

命令格式smbclient \\\\计算机名\\共享资源名
这里的计算机名要与/etc/hosts文件里对应,共享资源名是实际PC共享资源名。

按前面所讲例子分别就是prn_server和printer。

其它的参数懶得研究了。

unix里“\\\\”表示“\\”,“\\”是“\”,实际上这跟windows系统里访问网络资源是一样的。

由于unix没有netBIOS协议,因此,是通过/etc/hosts来将计算机名转换成IP地址,找到之后就到相应IP地址的主机去找相应的共享资源。

所以一定要正确配置/etc/hosts文件。

哈哈,现在是不是觉得很简单了呢?
命令行打印服务控制
lpstat命令:检查一个或多个打印机状态,-v选项可列
出每个打印机的设备,-R选项以优先级来排序打印队列
中的打印任务。

Lp命令:将打印任务缓存到打印队列
lpadmin命令:创建和控制打印机(-x选项删除打印机)
eg.lpadmin -p hp1 -T hplaser =l pcl -m stardard
-v /dev/lp0
accept hp1
enable hp1 (创建打印机hp1)
lpadmin -d hp1 (使hp1为缺省打印机)
lpadmin -p localhp -s ustc!hplaser
lpsystem命令:定义用于远程打印服务器的通讯参数,信
息在/etc/lp/Server文件中
lpsystem -t bsd servername
lpsystem -l 列出一个系统信息
enable <打印机名> 激活打印机
disable <打印机名> 关闭打印机
accept <打印机名>
reject <打印机名>
lpsched 启动打印服务
lpshut 停止打印服务
lpstat -t:查看打印调度器的状态。

相关文档
最新文档