最近实验室新进来一台服务器还有打印机,老大意思让服务器连接打印机并进行网络共享,其他的人可以通过自己的PC连接到共享打印机,打印各自电脑的文件。这样的需求可能很多人都有遇到,我也是遇到这件事,在网上搜了很多才发现大家写的都比较乱,毕竟不是什么核心技术,不过配置过程中也做了很多尝试,现在把过程以教程的形式记录下来,方便自己以后忘掉的时候查找,也方便我的同事按照相同的方法进行配置。

整个共享过成分为两部分配置,服务器端使用Linux(Ubuntu 16.04)和PC端(win10):

服务器端(Ubuntu16.04)

  1. 本地安装打印机驱动

实验室采购的打印机是Brother的DCP-B7500D型号,在brother的官网上可以下载到最新的驱动linux-brprinter-installer-2.2.0-1.gz

安装步骤在下载的时候就已经说的很清楚了按照步骤就可以。

A)mkdir /usr/brother_dcp_b7500d

B)mv /home/exa/Downloads/linux-brprinter-installer-2.2.0-1.gz /usr/ brother_dcp_b7500d

C)cd /usr/brother_dcp_b7500d

D)gunzip linux-brprinter-installer-2.2.0-1.gz

E)bash linux-brprinter-installer-2.2.0-1 DCP-B7500D

之后安装按照步骤输入y或者n

Tips:这里需要说明的是当问到:Will you specify the DeviceURI ?时,需要注意

对于USB用户,选择:N(No)

对于Network用户,选择:Y(Yes)或者DeviceURI number

安装完成后,创建一个word文件,试着Ctrl+P打印下,如果可以打印出来word的内容,则说明驱动安装完成

  1. 安装CUPS服务

A)使用apt-get

apt-get install cups

B)cups配置

Vim /etc/cups/cupsd.conf

找到一行

在后面增加内容:

Listen 0.0.0.0:631

保存退出后,查看是否添加ok:

netstat -tunlp | grep ‘631’

C)重启服务

/etc/init.d/cups restart

D)网页配置

打开浏览器,打开网页localhost:631

选择CUPS for Administrators->Adding Printers and Classes

选择Printers->Add Printer

将会出现如下所示画面:

其中Local Printers中选择Brother DCP-B7500D series (Brother DCP-B7500D series),根据之前安装的驱动的不同,这里也会出现不同。

Discovered Network Printers和Other Network Printers两项不做选择,直接continue。

然后会出现如下界面

这里的Name等选项已经默认灰色填写了,我们直接勾选Share This Printer即可。

下面的页面如下:

选择Model中符合当前打印机的型号即可点击“Add Printer”

下面进入如下页面:

点击“Set Default Options”,进入如下页面:

然后将Maintain选项卡下拉,选择Print Test Page

如果这时候打印机输出打印任务,那就说明,到此CUPS的安装没问题。

  1. 安装samba服务

A) 安装samba

apt-get install samba

之后在/etc/目录下可以看到一个新的文件夹samba

B) 创建一个文件夹

mkdir /etc/samba/drivers

mkdir -m 777 /var/spool/samba

C) 修改配置文件

vim /etc/samba/smb.conf

修改如下对应组的信息如下:

[global]

server string = exa server

printcap name = cups

load printers = yes

printing = cups

[printers]

comment = All Printers

browseable = yes

path = /var/spool/samba

printable = yes

guest ok = yes

public = yes

writable = yes

printable = yes

read only = yes

create mask = 0700

load printers = yes

printing = cups

[print$]

comment = Printer Drivers

path = /var/lib/samba/drivers

browseable = yes

read only = yes

guest ok = yes

write list = root

D)重启samba服务

/etc/init.d/samba restart

显示ok,则说明成功

本地PC端(win10)

  1. 本地打印机驱动安装

按道理说这一步可以省略,但是在后面安装打印机驱动的,默认无法从服务器上获取该驱动,所以在后面的列表中找不到型号列表。打印机驱动下载符合win10的版本。

运行exe文件:

选择“下一步”:

勾选“我接受以上许可协议”,并“下一步”:

之后进行搜索,稍等一会儿,会出现:

点击“下一步”

这时候会出现未找到设备,不过没有关系,这个安装包的作用到这里就已经完成了,之后的配置会出现列表信息,我们需要这个就足够了。

  1. 进入打印机设置

设置->设备->打印机和扫描仪

  1. 点击“添加打印机或扫描仪”

搜索一会儿,会出现“我需要的打印机不在列表中”,单击这里,会出现“添加打印机”的配置页面,如下所示:

  1. 配置打印机

选择“按名称选择共享打印机”,这时候点击“浏览”

这里会自动搜索主机,在这里选择服务器的名称

我的是“USER…”的那一项,点击选择

这时候会出现之前在cups中设置的打印机的名称,如下图所示:

当然,选择Brother那一项,之后就回到最初的添加打印机的页面

点击“下一步”,之后会出现“找不到驱动程序”:

没有关系,不要担心,点击“确定”,之后会出现“添加打印机向导”页面:

这时候就可以在Brother->DCP-B7500D,这时候因为第1步的缘故,就可以看到这个选项了,否则看不到这一条,需要注意。

然后点击“确定”,等待,按照操作同意,然后就会出现成功的页面:

  1. 测试打印机

点击下一步,然后出现如下:

点击“打印测试页”,看打印机是否可以进行打印操作。

如果正常打印,则说明配置完成,

然后新建一个word,Ctrl+P,打印下当前word文档,在打印机选项中应该就已经有原先设置好的服务器打印机,进行打印即可。

linux服务器共享给windows的client打印机配置的更多相关文章

  1. puppet(一种Linux、Unix、windows平台的集中配置管理系统)

    puppet是一种Linux.Unix.windows平台的集中配置管理系统,使用自有的puppet描述语言,可管理配置文件.用户.cron任务.软件包.系统服务等.puppet把这些系统实体称之为资 ...

  2. 为Linux服务器伪装上Windows系统假象

    网络上的计算机很容易被黑客利用工具或其它手段进行扫描,以寻找系统中的漏洞,然后再针对漏洞进行攻击. 通过伪装Linux系统,给黑客设置系统假象,可以加大黑客对系统的分析难度,引诱他们步入歧途,从而进一 ...

  3. Linux服务器部署javaweb项目,从环境配置,到最终系统运行

    部署准备:javaJDK1.7,Tomcat7.0,MySQL5.8,可运行的javaWeb项目,linux环境的服务器(可以是安装在windows电脑上的linux虚拟机,安装了linux系统的电脑 ...

  4. Linux服务器文件和windows本机文件互传方法(本地文件上传Linux,Linux文件下载到本机)

    1.windows系统中下载XShell安装文件.下载地址:https://www.newasp.net/soft/384562.html 2.安装之后,新建会话输入远程linux的账号和密码. 3. ...

  5. Linux服务器安全之 fail2ban的安装与配置

    近日在查看Nginx的访问日志中,发现了大量404请求,仔细研究一番发现有人正在试图爆破网站. 我刚上线你就企图攻击我?????? 这怎么能忍.. 于是乎 --- 查资料后得知有一个神奇的工具 fai ...

  6. 在windows上通过ssh远程链接linux服务器[转]

    本文分别转自 [http://jingyan.baidu.com/article/6d704a130de40e28db51cab5.html] [http://www.cnblogs.com/mliu ...

  7. Windows连接Linux服务器中MySQL数据库-权限配置

    问题描述 在Windows系统中安装了监控MySQL数据库服务器性能的工具Spotlight on MySQL,利用Spotlight连接Linux服务器中的MySQL,进行相关配置如下:   点击& ...

  8. JeeSite 部署到linux服务器

    1.打包 改数据库连接 打包war包https://www.cnblogs.com/wdw31210/p/9878422.html 2.上传到linux 服务器的tomcat/webapps/ 下 安 ...

  9. 大数据之Linux服务器集群搭建

    之前写过一篇关于Linux服务器系统的安装与网关的配置,那么现在我们要进一步的搭建多台Linux服务器集群. 关于单台服务器的系统搭建配置就不在赘述了,详情见https://www.cnblogs.c ...

随机推荐

  1. 关于leal和mov

    最近在学习leal的时候遇到了一点非常迷惑的地方,就是leal是用来取有效地址的,但是为什么它也可以实现赋值呢?偶然发现一个博客讲的不错,遂自己记录一下 一个这样的例子 leal 7(%edx,%ed ...

  2. element-- 修改MessageBox 弹框 中确定和取消按钮顺序

    需求:修改弹框中的 取消/确定按钮顺序,及头部和底部背景颜色; 原ui效果图 需求ui效果图 方法:对取消及确定按钮自定义类名,样式重写

  3. JeasyUI,导出Excel

    这个是客户端表格导出伪Excel文档. 不知道为啥,超过200条,不能导出,显示网络错误 $.extend($.fn.datagrid.methods, { //超过200条,不能导出,显示网络错误? ...

  4. react中的传参方式

    react是一个SPA模式,即组件嵌套租,在一个单页面的应用中组件间的数值传递是必不可少的,主要的传参方式大致有一下几种: 1,在挂载的地方给组件传参 ReactDOM.rander(<a na ...

  5. Hugo + github 搭建个人博客

    前言 很早以前就有想法,搭建一个个人的博客.没有实现的原因:一方面个人的服务器不太安全掉线,欠费,维护起来麻烦,另一方面,文章编辑发布起来也不方便. 后来了解到 github 提供了博客的功能,也一直 ...

  6. unity中EventTrigger组件的应用

    using System; using System.Collections; using System.Collections.Generic; using UnityEngine; using D ...

  7. redis学习——redis应用场景

    毫无疑问,Redis开创了一种新的数据存储思路,使用Redis,我们不用在面对功能单调的数据库时,把精力放在如何把大象放进冰箱这样的问题上,而是利用Redis灵活多变的数据结构和数据操作,为不同的大象 ...

  8. const修饰指针+volatile +restrict

    const这块的难点 const修饰指针有以下的几种形式 ,不同的形式 它的意义不一样. 形式1: int a=23: const int *p=&a: a是int型,&a是int * ...

  9. 开通blog,记录学习历程

    2017.12.15日,开通blog,用于回忆知识点的记录和整理. 开通本blog主要做以下几点事情: 1.巩固知识点,基础打牢: 2.在基础牢固的基础上,学习流行的框架: 3.在框架牢固的基础上学习 ...

  10. Python——字符串、文件操作,英文词频统计预处理

    一.字符串操作: 解析身份证号:生日.性别.出生地等. 凯撒密码编码与解码 网址观察与批量生成 2.凯撒密码编码与解码 凯撒加密法的替换方法是通过排列明文和密文字母表,密文字母表示通过将明文字母表向左 ...