Announcement

Collapse
No announcement yet.

Samba Won't Share Printer

Collapse
This topic is closed.
X
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Samba Won't Share Printer

    I have a USB printer attached to my Kubuntu box. On my home network, there are 2 WinXP clients that need to access the printer.

    Samba has been set up through the GUI and I successfully shared out a folder. However, when I try to add the printer in WinXP, it does not show up.

    Here is my smb.conf file. What is missing?
    Code:
    #
    # Sample configuration file for the Samba suite for Debian GNU/Linux.
    #
    #
    # This is the main Samba configuration file. You should read the
    # smb.conf(5) manual page in order to understand the options listed
    # here. Samba has a huge number of configurable options most of which
    # are not shown in this example
    #
    # Any line which starts with a ; (semi-colon) or a # (hash)
    # is a comment and is ignored. In this example we will use a #
    # for commentary and a ; for parts of the config file that you
    # may wish to enable
    #
    # NOTE: Whenever you modify this file you should run the command
    # "testparm" to check that you have not made any basic syntactic
    # errors.
    #
    
    #======================= Global Settings =======================
    
    [global]
    
    ## Browsing/Identification ###
    
    # Change this to the workgroup/NT-domain name your Samba server will part of
    workgroup = MYWRKGRP
    
    # server string is the equivalent of the NT Description field
    server string = (Samba, Ubuntu)
    
    # Windows Internet Name Serving Support Section:
    # WINS Support - Tells the NMBD component of Samba to enable its WINS Server
    ;  wins support = no
    
    # WINS Server - Tells the NMBD components of Samba to be a WINS Client
    # Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
    ;  wins server = w.x.y.z
    
    # This will prevent nmbd to search for NetBIOS names through DNS.
    dns proxy = no
    
    # What naming service and in what order should we use to resolve host names
    # to IP addresses
    ;  name resolve order = lmhosts host wins bcast
    
    #### Networking ####
    
    # The specific set of interfaces / networks to bind to
    # This can be either the interface name or an IP address/netmask;
    # interface names are normally preferred
    ;  interfaces = 127.0.0.0/8 eth0
    
    # Only bind to the named interfaces and/or networks; you must use the
    # 'interfaces' option above to use this.
    # It is recommended that you enable this feature if your Samba machine is
    # not protected by a firewall or is a firewall itself. However, this
    # option cannot handle dynamic or non-broadcast interfaces correctly.
    ;  bind interfaces only = true
    
    
    
    #### Debugging/Accounting ####
    
    # This tells Samba to use a separate log file for each machine
    # that connects
    log file = /var/log/samba/log.%m
    
    # Put a capping on the size of the log files (in Kb).
    max log size = 1000
    
    # If you want Samba to only log through syslog then set the following
    # parameter to 'yes'.
    ;  syslog only = no
    
    # We want Samba to log a minimum amount of information to syslog. Everything
    # should go to /var/log/samba/log.{smbd,nmbd} instead. If you want to log
    # through syslog you should set the following parameter to something higher.
    syslog = 0
    
    # Do something sensible when Samba crashes: mail the admin a backtrace
    panic action = /usr/share/samba/panic-action %d
    
    
    ####### Authentication #######
    
    # "security = user" is always a good idea. This will require a Unix account
    # in this server for every user accessing the server. See
    # /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
    # in the samba-doc package for details.
    ;  security = user
    
    # You may wish to use password encryption. See the section on
    # 'encrypt passwords' in the smb.conf(5) manpage before enabling.
    encrypt passwords = yes
    
    # If you are using encrypted passwords, Samba will need to know what
    # password database type you are using.
    passdb backend = tdbsam
    
    obey pam restrictions = yes
    
    ;  guest account = nobody
    invalid users = root
    
    # This boolean parameter controls whether Samba attempts to sync the Unix
    # password with the SMB password when the encrypted SMB password in the
    # passdb is changed.
    ;  unix password sync = no
    
    # For Unix password sync to work on a Debian GNU/Linux system, the following
    # parameters must be set (thanks to Ian Kahan <<kahan@informatik.tu-muenchen.de> for
    # sending the correct chat script for the passwd program in Debian Sarge).
    passwd program = /usr/bin/passwd %u
    passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
    
    # This boolean controls whether PAM will be used for password changes
    # when requested by an SMB client instead of the program listed in
    # 'passwd program'. The default is 'no'.
    ;  pam password change = no
    
    ########## Domains ###########
    
    # Is this machine able to authenticate users. Both PDC and BDC
    # must have this setting enabled. If you are the BDC you must
    # change the 'domain master' setting to no
    #
    ;  domain logons = yes
    #
    # The following setting only takes effect if 'domain logons' is set
    # It specifies the location of the user's profile directory
    # from the client point of view)
    # The following required a [profiles] share to be setup on the
    # samba server (see below)
    ;  logon path = \\%N\profiles\%U
    # Another common choice is storing the profile in the user's home directory
    ;  logon path = \\%N\%U\profile
    
    # The following setting only takes effect if 'domain logons' is set
    # It specifies the location of a user's home directory (from the client
    # point of view)
    ;  logon drive = H:
    ;  logon home = \\%N\%U
    
    # The following setting only takes effect if 'domain logons' is set
    # It specifies the script to run during logon. The script must be stored
    # in the [netlogon] share
    # NOTE: Must be store in 'DOS' file format convention
    ;  logon script = logon.cmd
    
    # This allows Unix users to be created on the domain controller via the SAMR
    # RPC pipe. The example command creates a user account with a disabled Unix
    # password; please adapt to your needs
    ; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
    
    ########## Printing ##########
    
    # If you want to automatically load your printer list rather
    # than setting them up individually then you'll need this
    load printers = yes
    
    # lpr(ng) printing. You may wish to override the location of the
    # printcap file
    ;  printing = bsd
    ;  printcap name = /etc/printcap
    
    # CUPS printing. See also the cupsaddsmb(8) manpage in the
    # cupsys-client package.
    ;  printing = cups
    ;  printcap name = cups
    
    # When using [print$], root is implicitly a 'printer admin', but you can
    # also give this right to other users to add drivers and set printer
    # properties
    ;  printer admin = @lpadmin
    
    
    ############ Misc ############
    
    # Using the following line enables you to customise your configuration
    # on a per machine basis. The %m gets replaced with the netbios name
    # of the machine that is connecting
    ;  include = /home/samba/etc/smb.conf.%m
    
    # Most people will find that this option gives better performance.
    # See smb.conf(5) and /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.html
    # for details
    # You may want to add the following on a Linux system:
    #     SO_RCVBUF=8192 SO_SNDBUF=8192
    socket options = TCP_NODELAY
    security = share
    restrict anonymous = no
    domain master = no
    preferred master = no
    max protocol = NT
    acl compatibility = winnt
    ldap ssl = No
    server signing = Auto
    
    # The following parameter is useful only if you have the linpopup package
    # installed. The samba maintainer and the linpopup maintainer are
    # working to ease installation and configuration of linpopup and samba.
    ;  message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &
    
    # Domain Master specifies Samba to be the Domain Master Browser. If this
    # machine will be configured as a BDC (a secondary logon server), you
    # must set this to 'no'; otherwise, the default behavior is recommended.
    ;  domain master = auto
    
    # Some defaults for winbind (make sure you're not using the ranges
    # for something else.)
    ;  idmap uid = 10000-20000
    ;  idmap gid = 10000-20000
    ;  template shell = /bin/bash
    
    #======================= Share Definitions =======================
    
    # Un-comment the following (and tweak the other settings below to suit)
    # to enable the default home directory shares. This will share each
    # user's home directory as \\server\username
    ;[homes]
    ;  comment = Home Directories
    ;  browseable = no
    
    # By default, \\server\username shares can be connected to by anyone
    # with access to the samba server. Un-comment the following parameter
    # to make sure that only "username" can connect to \\server\username
    ;  valid users = %S
    
    # By default, the home directories are exported read-only. Change next
    # parameter to 'yes' if you want to be able to write to them.
    ;  writable = no
    
    # File creation mask is set to 0600 for security reasons. If you want to
    # create files with group=rw permissions, set next parameter to 0664.
    ;  create mask = 0600
    
    # Directory creation mask is set to 0700 for security reasons. If you want to
    # create dirs. with group=rw permissions, set next parameter to 0775.
    ;  directory mask = 0700
    
    # Un-comment the following and create the netlogon directory for Domain Logons
    # (you need to configure Samba to act as a domain controller too.)
    ;[netlogon]
    ;  comment = Network Logon Service
    ;  path = /home/samba/netlogon
    ;  guest ok = yes
    ;  writable = no
    ;  share modes = no
    
    # Un-comment the following and create the profiles directory to store
    # users profiles (see the "logon path" option above)
    # (you need to configure Samba to act as a domain controller too.)
    # The path below should be writable by all users so that their
    # profile directory may be created the first time they log on
    ;[profiles]
    ;  comment = Users profiles
    ;  path = /home/samba/profiles
    ;  guest ok = no
    ;  browseable = no
    ;  create mask = 0600
    ;  directory mask = 0700
    
    [printers]
    comment = All Printers
    browseable = yes
    path = /var/spool/samba
    printable = yes
    create mask = 0700
    
    # Windows clients look for this share name as a source of downloadable
    # printer drivers
    [print$]
    comment = Printer Drivers
    path = /var/lib/samba/printers/
    guest ok = yes
    case sensitive = no
    strict locking = no
    msdfs proxy = no
    
    [APPS]
    path = /home/ernie/apps/
    guest ok = yes
    Thanks in advance!
    Ernie Grossmann<br />Opening doors, closing Windows.......<br />AMD Athlon X2<br />Asus K8, 2 GB PC 3200 RAM<br />Using Kubutu 10.10

    #2
    Re: Samba Won't Share Printer

    I've been having issues with this for a while. I finally got things working (more or less). I still need to refine things yet. But I'll try to sum things up.

    I really hope this helps someone, because I've had a ton of SAMBA issues on UBUNTU/KUBUNTU. Mandrake just worked for me a few years ago. This was much tougher to get everything going. (Noob distro? Not yet.)

    Anyway, first off I had trouble with the smbpasswd file actually getting written to. I wish I could remember the program other than smbpasswd that I used to transfer all user accounts to samba accounts. I don't know anymore. But I had to do that. File sharing through K just didn't do anything so I had to make manual entries (other than the home directory sharing).

    With printer sharing I'm not sure if my problem was with smb.conf or my cups configuration, so I'll include both tweaked files. I'm not saying this is the best way to get this stuff to work. (I'm using simple user auth.) I'd love to hear some comments from the pros on this.

    First the samba file: (Use testparm to check your samba.conf for errors.)
    Code:
    #
    # Sample configuration file for the Samba suite for Debian GNU/Linux.
    #
    #
    # This is the main Samba configuration file. You should read the
    # smb.conf(5) manual page in order to understand the options listed
    # here. Samba has a huge number of configurable options most of which
    # are not shown in this example
    #
    # Any line which starts with a ; (semi-colon) or a # (hash)
    # is a comment and is ignored. In this example we will use a #
    # for commentary and a ; for parts of the config file that you
    # may wish to enable
    #
    # NOTE: Whenever you modify this file you should run the command
    # "testparm" to check that you have not made any basic syntactic
    # errors.
    #
    
    #======================= Global Settings =======================
    
    [global]
    
    ## Browsing/Identification ###
    
    # Change this to the workgroup/NT-domain name your Samba server will part of
    workgroup = MyWorkgroup
    
    # server string is the equivalent of the NT Description field
    server string = %h server (The Black Box)
    
    # Windows Internet Name Serving Support Section:
    # WINS Support - Tells the NMBD component of Samba to enable its WINS Server
    ;  wins support = no
    
    # WINS Server - Tells the NMBD components of Samba to be a WINS Client
    # Note: Samba can be either a WINS Server, or a WINS Client, but NOT both
    ;  wins server = w.x.y.z
    
    # This will prevent nmbd to search for NetBIOS names through DNS.
    dns proxy = no
    
    # What naming service and in what order should we use to resolve host names
    # to IP addresses
    ;  name resolve order = lmhosts host wins bcast
    
    #### Networking ####
    
    # The specific set of interfaces / networks to bind to
    # This can be either the interface name or an IP address/netmask;
    # interface names are normally preferred
    ;  interfaces = 127.0.0.0/8 eth0
    
    # Only bind to the named interfaces and/or networks; you must use the
    # 'interfaces' option above to use this.
    # It is recommended that you enable this feature if your Samba machine is
    # not protected by a firewall or is a firewall itself. However, this
    # option cannot handle dynamic or non-broadcast interfaces correctly.
    ;  bind interfaces only = true
    
    
    
    #### Debugging/Accounting ####
    
    # This tells Samba to use a separate log file for each machine
    # that connects
    log file = /var/log/samba/log.%m
    
    # Put a capping on the size of the log files (in Kb).
    max log size = 1000
    
    # If you want Samba to only log through syslog then set the following
    # parameter to 'yes'.
    ;  syslog only = no
    
    # We want Samba to log a minimum amount of information to syslog. Everything
    # should go to /var/log/samba/log.{smbd,nmbd} instead. If you want to log
    # through syslog you should set the following parameter to something higher.
    syslog = 0
    
    # Do something sensible when Samba crashes: mail the admin a backtrace
    panic action = /usr/share/samba/panic-action %d
    
    
    ####### Authentication #######
    
    # "security = user" is always a good idea. This will require a Unix account
    # in this server for every user accessing the server. See
    # /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/ServerType.html
    # in the samba-doc package for details.
    security = user
    
    # You may wish to use password encryption. See the section on
    # 'encrypt passwords' in the smb.conf(5) manpage before enabling.
    encrypt passwords = true
    
    # If you are using encrypted passwords, Samba will need to know what
    # password database type you are using.
    passdb backend = tdbsam
    
    obey pam restrictions = yes
    
    ;  guest account = nobody
    invalid users = root
    
    # This boolean parameter controls whether Samba attempts to sync the Unix
    # password with the SMB password when the encrypted SMB password in the
    # passdb is changed.
    ;  unix password sync = no
    
    # For Unix password sync to work on a Debian GNU/Linux system, the following
    # parameters must be set (thanks to Ian Kahan <<kahan@informatik.tu-muenchen.de> for
    # sending the correct chat script for the passwd program in Debian Sarge).
    passwd program = /usr/bin/passwd %u
    passwd chat = *Enter\snew\sUNIX\spassword:* %n\n *Retype\snew\sUNIX\spassword:* %n\n *password\supdated\ssuccessfully* .
    
    # This boolean controls whether PAM will be used for password changes
    # when requested by an SMB client instead of the program listed in
    # 'passwd program'. The default is 'no'.
    ;  pam password change = no
    
    ########## Domains ###########
    
    # Is this machine able to authenticate users. Both PDC and BDC
    # must have this setting enabled. If you are the BDC you must
    # change the 'domain master' setting to no
    #
    ;  domain logons = yes
    #
    # The following setting only takes effect if 'domain logons' is set
    # It specifies the location of the user's profile directory
    # from the client point of view)
    # The following required a [profiles] share to be setup on the
    # samba server (see below)
    ;  logon path = \\%N\profiles\%U
    # Another common choice is storing the profile in the user's home directory
    ;  logon path = \\%N\%U\profile
    
    # The following setting only takes effect if 'domain logons' is set
    # It specifies the location of a user's home directory (from the client
    # point of view)
    ;  logon drive = H:
    ;  logon home = \\%N\%U
    
    # The following setting only takes effect if 'domain logons' is set
    # It specifies the script to run during logon. The script must be stored
    # in the [netlogon] share
    # NOTE: Must be store in 'DOS' file format convention
    ;  logon script = logon.cmd
    
    # This allows Unix users to be created on the domain controller via the SAMR
    # RPC pipe. The example command creates a user account with a disabled Unix
    # password; please adapt to your needs
    ; add user script = /usr/sbin/adduser --quiet --disabled-password --gecos "" %u
    
    ########## Printing ##########
    
    # If you want to automatically load your printer list rather
    # than setting them up individually then you'll need this
    load printers = yes
    
    # lpr(ng) printing. You may wish to override the location of the
    # printcap file
    ;  printing = bsd
    ;  printcap name = /etc/printcap
    
    # CUPS printing. See also the cupsaddsmb(8) manpage in the
    # cupsys-client package.
      printing = cups
      printcap name = cups
    
    # When using [print$], root is implicitly a 'printer admin', but you can
    # also give this right to other users to add drivers and set printer
    # properties
    #  printer admin = @lpadmin
    
    
    ############ Misc ############
    
    # Using the following line enables you to customise your configuration
    # on a per machine basis. The %m gets replaced with the netbios name
    # of the machine that is connecting
    ;  include = /home/samba/etc/smb.conf.%m
    
    # Most people will find that this option gives better performance.
    # See smb.conf(5) and /usr/share/doc/samba-doc/htmldocs/Samba3-HOWTO/speed.html
    # for details
    # You may want to add the following on a Linux system:
    #     SO_RCVBUF=8192 SO_SNDBUF=8192
    socket options = TCP_NODELAY
    
    # The following parameter is useful only if you have the linpopup package
    # installed. The samba maintainer and the linpopup maintainer are
    # working to ease installation and configuration of linpopup and samba.
    ;  message command = /bin/sh -c '/usr/bin/linpopup "%f" "%m" %s; rm %s' &
    
    # Domain Master specifies Samba to be the Domain Master Browser. If this
    # machine will be configured as a BDC (a secondary logon server), you
    # must set this to 'no'; otherwise, the default behavior is recommended.
    ;  domain master = auto
    
    # Some defaults for winbind (make sure you're not using the ranges
    # for something else.)
    ;  idmap uid = 10000-20000
    ;  idmap gid = 10000-20000
    ;  template shell = /bin/bash
    
    #======================= Share Definitions =======================
    
    # Un-comment the following (and tweak the other settings below to suit)
    # to enable the default home directory shares. This will share each
    # user's home directory as \\server\username
    [homes]
    comment = Home Directories
    browseable = no
    
    # By default, \\server\username shares can be connected to by anyone
    # with access to the samba server. Un-comment the following parameter
    # to make sure that only "username" can connect to \\server\username
    valid users = %S
    read only = no
    
    # File creation mask is set to 0600 for security reasons. If you want to
    # create files with group=rw permissions, set next parameter to 0664.
    ;  create mask = 0600
    
    # Directory creation mask is set to 0700 for security reasons. If you want to
    # create dirs. with group=rw permissions, set next parameter to 0775.
    ;  directory mask = 0700
    
    # Un-comment the following and create the netlogon directory for Domain Logons
    # (you need to configure Samba to act as a domain controller too.)
    ;[netlogon]
    ;  comment = Network Logon Service
    ;  path = /home/samba/netlogon
    ;  guest ok = yes
    ;  writable = no
    ;  share modes = no
    
    # Un-comment the following and create the profiles directory to store
    # users profiles (see the "logon path" option above)
    # (you need to configure Samba to act as a domain controller too.)
    # The path below should be writable by all users so that their
    # profile directory may be created the first time they log on
    ;[profiles]
    ;  comment = Users profiles
    ;  path = /home/samba/profiles
    ;  guest ok = no
    ;  browseable = no
    ;  create mask = 0600
    ;  directory mask = 0700
    
    [printers]
    comment = All Printers
    path = /var/spool/samba/
    printable = yes
    guest ok = yes
    case sensitive = no
    strict locking = no
    msdfs proxy = no
    read only = no
    force user = root
    #force group = lpadmin (It said this is depricated, so it is commented out.)
    
    # Windows clients look for this share name as a source of downloadable
    # drivers
    [print$]
    comment = Printer Drivers
    path = /var/lib/samba/printers
    
    [PubMusic]
    comment = Read Only Version!!
    path = /home/something/
    guest ok = yes
    case sensitive = no
    strict locking = no
    
    
    [SCANS]
    comment = (Writeable)
    
    path = /home/something/else/
    guest ok = yes
    read only = no
    write list = user1,user2
    case sensitive = no
    strict locking = no
    #msdfs proxy = no
    create mask = 0760
    directory mask = 0775
    Cups coming next (hopefully) message size exceeded.

    Comment


      #3
      Re: Samba Won't Share Printer

      OK cups.conf
      Code:
      ----------------------------------------------------------------------------------------------------------
      
      
      # CUPS configuration file, generated by CUPS configuration tool.
      # This tool is part of KDEPrint, the printing framework for KDE
      # since version 2.2.2 and is used by the CUPS supporting module
      # in KDEPrint. The predecessors to KDEPrint in former KDE releases
      # were KUPS and QtCUPS; they are deprecated and no longer maintained.
      #
      # Author: Michael Goffioul 
      #
      # Web site: [url]http://printing.kde.org/[/url]
      #
      ########################################################################
      #                                   #
      # This is the CUPS configuration file. If you are familiar with    #
      # Apache or any of the other popular web servers, we've followed the  #
      # same format. Any configuration variable used here has the same   #
      # semantics as the corresponding variable in Apache. If we need    #
      # different functionality then a different name is used to avoid    #
      # confusion...                             #
      #                                   #
      ########################################################################
      #
      
      # Server
      
      # Server name (ServerName)
      # 
      # The hostname of your server, as advertised to the world.
      # By default CUPS will use the hostname of the system.
      # 
      # To set the default server used by clients, see the client.conf file.
      # 
      # ex: myhost.domain.com
      #
      #ServerName myhost.domain.com
      
      
      # Server administrator (ServerAdmin)
      # 
      # The email address to send all complaints or problems to.
      # By default CUPS will use "root@hostname".
      # 
      # ex: [email]root@myhost.com[/email]
      #
      #ServerAdmin [email]root@your.domain.com[/email]
      
      
      # Classification (Classification)
      # 
      # The classification level of the server. If set, this
      # classification is displayed on all pages, and raw printing is disabled.
      # The default is the empty string.
      # 
      # ex: confidential
      #
      #Classification classified
      
      Classification none
      
      # Allow overrides (ClassifyOverride)
      # 
      # Whether to allow users to override the classification
      # on printouts. If enabled, users can limit banner pages to before or
      # after the job, and can change the classification of a job, but cannot
      # completely eliminate the classification or banners.
      # 
      # The default is off.
      #
      #ClassifyOverride off
      
      
      # Default character set (DefaultCharset)
      # 
      # The default character set to use. If not specified,
      # defaults to utf-8. Note that this can also be overridden in
      # HTML documents...
      # 
      # ex: utf-8
      #
      #DefaultCharset utf-8
      
      DefaultCharset UTF-8
      
      # Default language (DefaultLanguage)
      # 
      # The default language if not specified by the browser.
      # If not specified, the current locale is used.
      # 
      # ex: en
      #
      #DefaultLanguage en
      
      DefaultLanguage en
      
      # Printcap file (Printcap)
      # 
      # The name of the printcap file. Default is no filename.
      # Leave blank to disable printcap file generation.
      # 
      # ex: /etc/printcap
      #
      #Printcap /etc/printcap
      
      Printcap /var/run/cups/printcap
      
      
      PrintcapFormat BSD
      
      # Security
      
      # Remote root user (RemoteRoot)
      # 
      # The name of the user assigned to unauthenticated accesses
      # from remote systems. By default "remroot".
      # 
      # ex: remroot
      #
      #RemoteRoot remroot
      
      RemoteRoot remroot
      
      # System group (SystemGroup)
      # 
      # The group name for "System" (printer administration)
      # access. The default varies depending on the operating system, but
      # will be sys, system, or root (checked for in that order).
      # 
      # ex: lpadmin
      #
      #SystemGroup lpadmin
      
      SystemGroup lpadmin
      
      # Encryption certificate (ServerCertificate)
      # 
      # The file to read containing the server's certificate.
      # Defaults to "/etc/cups/ssl/server.crt".
      # 
      # ex: /etc/cups/ssl/server.crt
      #
      #ServerCertificate /etc/cups/ssl/server.crt
      
      ServerCertificate /etc/cups/ssl/server.crt
      
      # Encryption key (ServerKey)
      # 
      # The file to read containing the server's key.
      # Defaults to "/etc/cups/ssl/server.key".
      # 
      # ex: /etc/cups/ssl/server.key
      #
      #ServerKey /etc/cups/ssl/server.key
      
      ServerKey /etc/cups/ssl/server.key
      
      # Access permissions
      #
      # Access permissions for each directory served by the scheduler.
      # Locations are relative to DocumentRoot...
      #
      # AuthType: the authorization to use:
      #
      #  None  - Perform no authentication
      #  Basic - Perform authentication using the HTTP Basic method.
      #  Digest - Perform authentication using the HTTP Digest method.
      #
      #  (Note: local certificate authentication can be substituted by
      #      the client for Basic or Digest when connecting to the
      #      localhost interface)
      #
      # AuthClass: the authorization class; currently only Anonymous, User,
      # System (valid user belonging to group SystemGroup), and Group
      # (valid user belonging to the specified group) are supported.
      #
      # AuthGroupName: the group name for "Group" authorization.
      #
      # Order: the order of Allow/Deny processing.
      #
      # Allow: allows access from the specified hostname, domain, IP address, or
      # network.
      #
      # Deny: denies access from the specified hostname, domain, IP address, or
      # network.
      #
      # Both "Allow" and "Deny" accept the following notations for addresses:
      #
      #   All
      #   None
      #   *.domain.com
      #   .domain.com
      #   host.domain.com
      #   nnn.*
      #   nnn.nnn.*
      #   nnn.nnn.nnn.*
      #   nnn.nnn.nnn.nnn
      #   nnn.nnn.nnn.nnn/mm
      #   nnn.nnn.nnn.nnn/mmm.mmm.mmm.mmm
      #
      # The host and domain address require that you enable hostname lookups
      # with "HostNameLookups On" above.
      #
      # Encryption: whether or not to use encryption; this depends on having
      # the OpenSSL library linked into the CUPS library and scheduler.
      #
      # Possible values:
      #
      #   Always    - Always use encryption (SSL)
      #   Never    - Never use encryption
      #   Required   - Use TLS encryption upgrade
      #   IfRequested - Use encryption if the server requests it
      #
      # The default value is "IfRequested".
      #
      #<Location [resource_name]>
      #
      # You may wish to limit access to printers and classes, either with Allow
      # and Deny lines, or by requiring a username and password.
      #
      #
      ## Anonymous access (default)
      #AuthType None
      #
      ## Require a username and password (Basic authentication)
      #AuthType Basic
      #AuthClass User
      #
      ## Require a username and password (Digest/MD5 authentication)
      #AuthType Digest
      #AuthClass User
      #
      ## Restrict access to local domain
      #Order Deny,Allow
      #Deny From All
      #Allow From .mydomain.com
      #
      ## Use encryption if requested
      #Encryption IfRequested
      #</Location>
      
      <Location />
      Encryption IfRequested
      Satisfy All
      Order allow,deny
      Allow localhost
      Allow @LOCAL
      </Location>
      <Location /admin>
      Encryption IfRequested
      Satisfy All
      Order allow,deny
      Allow localhost
      </Location>
      <Location /admin/conf>
      AuthType Basic
      Require user @SYSTEM
      Encryption IfRequested
      Satisfy All
      Order allow,deny
      Allow localhost
      </Location>
      
      # Network
      
      # Hostname lookups (HostNameLookups)
      # 
      # Whether or not to do lookups on IP addresses to get a
      # fully-qualified hostname. This defaults to Off for performance reasons...
      # 
      # ex: On
      #
      #HostNameLookups On
      
      HostnameLookups Off
      
      # Keep alive (KeepAlive)
      # 
      # Whether or not to support the Keep-Alive connection
      # option. Default is on.
      # 
      # ex: On
      #
      #KeepAlive On
      
      KeepAlive On
      
      # Keep-alive timeout (KeepAliveTimeout)
      # 
      # The timeout (in seconds) before Keep-Alive connections are
      # automatically closed. Default is 60 seconds.
      # 
      # ex: 60
      #
      #KeepAliveTimeout 60
      
      KeepAliveTimeout 60
      
      # Max clients (MaxClients)
      # 
      # Controls the maximum number of simultaneous clients that
      # will be handled. Defaults to 100.
      # 
      # ex: 100
      #
      #MaxClients 100
      
      MaxClients 100
      
      # Max request size (MaxRequestSize)
      # 
      # Controls the maximum size of HTTP requests and print files.
      # Set to 0 to disable this feature (defaults to 0).
      # 
      # ex: 0
      #
      #MaxRequestSize 0
      
      MaxRequestSize 0m
      
      # Client timeout (Timeout)
      # 
      # The timeout (in seconds) before requests time out. Default is 300 seconds.
      # 
      # ex: 300
      #
      #Timeout 300
      
      Timeout 300
      
      # Listen to (Port/Listen)
      # 
      # Ports/addresses that are listened to. The default port 631 is reserved
      # for the Internet Printing Protocol (IPP) and is what is used here.
      # 
      # You can have multiple Port/Listen lines to listen to more than one
      # port or address, or to restrict access.
      # 
      # Note: Unfortunately, most web browsers don't support TLS or HTTP Upgrades
      # for encryption. If you want to support web-based encryption you will
      # probably need to listen on port 443 (the "HTTPS" port...).
      # 
      # ex: 631, myhost:80, 1.2.3.4:631
      #
      #  Port 80
      #  Port 631
      #  Listen hostname
      #  Listen hostname:80
      #  Listen hostname:631
      #  Listen 1.2.3.4
      #  Listen 1.2.3.4:631
      #
      #Port 631
      
      Listen 631
      Listen /var/run/cups/cups.sock
      
      # Log
      
      # Access log (AccessLog)
      # 
      # The access log file; if this does not start with a leading /
      # then it is assumed to be relative to ServerRoot. By default set to
      # "/var/log/cups/access_log".
      # 
      # You can also use the special name syslog to send the output to the
      # syslog file or daemon.
      # 
      # ex: /var/log/cups/access_log
      #
      #AccessLog /var/log/cups/access_log
      
      AccessLog /var/log/cups/access_log
      
      # Error log (ErrorLog)
      # 
      # The error log file; if this does not start with a leading /
      # then it is assumed to be relative to ServerRoot. By default set to
      # "/var/log/cups/error_log".
      # 
      # You can also use the special name syslog to send the output to the
      # syslog file or daemon.
      # 
      # ex: /var/log/cups/error_log
      #
      #ErrorLog /var/log/cups/error_log
      
      ErrorLog /var/log/cups/error_log
      
      # Page log (PageLog)
      # 
      # The page log file; if this does not start with a leading /
      # then it is assumed to be relative to ServerRoot. By default set to
      # "/var/log/cups/page_log".
      # 
      # You can also use the special name syslog to send the output to the
      # syslog file or daemon.
      # 
      # ex: /var/log/cups/page_log
      #
      #PageLog /var/log/cups/page_log
      
      PageLog /var/log/cups/page_log
      
      # Max log size (MaxLogSize)
      # 
      # Controls the maximum size of each log file before they are
      # rotated. Defaults to 1048576 (1MB). Set to 0 to disable log rotating.
      # 
      # ex: 1048576
      #
      #MaxLogSize 0
      
      MaxLogSize 1m
      
      # Log level (LogLevel)
      # 
      # Controls the number of messages logged to the ErrorLog
      # file and can be one of the following:
      # 
      #   debug2:   Log everything.
      #   debug:   Log almost everything.
      #   info:   Log all requests and state changes.
      #   warn:   Log errors and warnings.
      #   error:   Log only errors.
      #   none:   Log nothing.
      # 
      # ex: info
      #
      #LogLevel info
      
      LogLevel info
      
      # Jobs
      
      # Preserve job history (PreserveJobHistory)
      # 
      # Whether or not to preserve the job history after a
      # job is completed, canceled, or stopped. Default is Yes.
      # 
      # ex: Yes
      #
      #PreserveJobHistory Yes
      
      PreserveJobHistory On
      
      # Preserve job files (PreserveJobFiles)
      # 
      # Whether or not to preserve the job files after a
      # job is completed, canceled, or stopped. Default is No.
      # 
      # ex: No
      #
      #PreserveJobFiles No
      
      PreserveJobFiles Off
      
      # Auto purge jobs (AutoPurgeJobs)
      # 
      # Automatically purge jobs when not needed for quotas.
      # Default is No.
      #
      #AutoPurgeJobs No

      Comment


        #4
        Re: Samba Won't Share Printer

        cups.conf continued (arrgh)

        Code:
        AutoPurgeJobs No
        
        # Max jobs (MaxJobs)
        # 
        # Maximum number of jobs to keep in memory (active and completed).
        # Default is 0 (no limit).
        #
        #MaxJobs 0
        
        MaxJobs 0
        
        # Max jobs per printer (MaxJobsPerPrinter)
        # 
        # The MaxJobsPerPrinter directive controls the maximum number of active
        # jobs that are allowed for each printer or class. Once a printer or class
        # reaches the limit, new jobs will be rejected until one of the active jobs
        # is completed, stopped, aborted, or canceled.
        # 
        # Setting the maximum to 0 disables this functionality.
        # Default is 0 (no limit).
        # 
        #
        #MaxJobsPerPrinter 0
        
        MaxJobsPerPrinter 0
        
        # Max jobs per user (MaxJobsPerUser)
        # 
        # The MaxJobsPerUser directive controls the maximum number of active
        # jobs that are allowed for each user. Once a user reaches the limit, new
        # jobs will be rejected until one of the active jobs is completed, stopped,
        # aborted, or canceled.
        # 
        # Setting the maximum to 0 disables this functionality.
        # Default is 0 (no limit).
        # 
        #
        #MaxJobsPerUser 0
        
        MaxJobsPerUser 0
        
        # Filter
        
        # User (User)
        # 
        # The user the server runs under. Normally this
        # must be lp, however you can configure things for another user
        # as needed.
        # 
        # Note: the server must be run initially as root to support the
        # default IPP port of 631. It changes users whenever an external
        # program is run...
        # 
        # ex: lp
        #
        #User lp
        
        User lp
        
        # Group (Group)
        # 
        # The group the server runs under. Normally this
        # must be lpadmin, however you can configure things for another
        # group as needed.
        # 
        # ex: lpadmin
        #
        #Group lpadmin
        
        Group lpadmin
        
        # RIP cache (RIPCache)
        # 
        # The amount of memory that each RIP should use to cache
        # bitmaps. The value can be any real number followed by "k" for
        # kilobytes, "m" for megabytes, "g" for gigabytes, or "t" for tiles
        # (1 tile = 256x256 pixels). Defaults to "8m" (8 megabytes).
        # 
        # ex: 8m
        #
        #RIPCache 8m
        
        RIPCache 8m
        
        # Filter limit (FilterLimit)
        # 
        # Sets the maximum cost of all job filters that can be run
        # at the same time. A limit of 0 means no limit. A typical job may need
        # a filter limit of at least 200; limits less than the minimum required
        # by a job force a single job to be printed at any time.
        # 
        # The default limit is 0 (unlimited).
        # 
        # ex: 200
        #
        #FilterLimit 0
        
        FilterLimit 0
        
        # Directories
        
        # Data directory (DataDir)
        # 
        # The root directory for the CUPS data files.
        # By default /usr/share/cups.
        # 
        # ex: /usr/share/cups
        #
        #DataDir /usr/share/cups
        
        DataDir /usr/share/cups
        
        # Document directory (DocumentRoot)
        # 
        # The root directory for HTTP documents that are served.
        # By default the compiled-in directory.
        # 
        # ex: /usr/share/cups/doc-root
        #
        #DocumentRoot /usr/share/cups/doc-root
        
        DocumentRoot /usr/share/cups/doc-root
        
        # Font path (FontPath)
        # 
        # The path to locate all font files (currently only for pstoraster).
        # By default /usr/share/cups/fonts.
        # 
        # ex: /usr/share/cups/fonts
        #
        #FontPath /usr/share/cups/fonts
        
        
        # Request directory (RequestRoot)
        # 
        # The directory where request files are stored.
        # By default /var/spool/cups.
        # 
        # ex: /var/spool/cups
        #
        #RequestRoot /var/spool/cups
        
        RequestRoot /var/spool/cups
        
        # Server binaries (ServerBin)
        # 
        # The root directory for the scheduler executables.
        # By default /usr/lib/cups or /usr/lib32/cups (IRIX 6.5).
        # 
        # ex: /usr/lib/cups
        #
        #ServerBin /usr/lib/cups
        
        ServerBin /usr/lib/cups
        
        # Server files (ServerRoot)
        # 
        # The root directory for the scheduler.
        # By default /etc/cups.
        # 
        # ex: /etc/cups
        #
        #ServerRoot /etc/cups
        
        ServerRoot /etc/cups
        
        # Temporary files (TempDir)
        # 
        # The directory to put temporary files in. This directory must be
        # writable by the user defined above! Defaults to "/var/spool/cups/tmp" or
        # the value of the TMPDIR environment variable.
        # 
        # ex: /var/spool/cups/tmp
        #
        #TempDir /var/spool/cups/tmp
        
        TempDir /var/spool/cups/tmp
        
        # Browsing
        
        # Use browsing (Browsing)
        # 
        # Whether or not to listen to printer 
        # information from other CUPS servers. 
        # 
        # 
        # Enabled by default.
        # 
        # 
        # Note: to enable the sending of browsing
        # information from this CUPS server to the LAN,
        # specify a valid BrowseAddress.
        # 
        # 
        # ex: On
        #
        #Browsing On
        
        Browsing On
        
        # Browse protocols (BrowseProtocols)
        # 
        # Which protocols to use for browsing. Can be
        # any of the following separated by whitespace and/or commas:
        # 
        #   all - Use all supported protocols.
        #   cups - Use the CUPS browse protocol.
        #   slp - Use the SLPv2 protocol.
        # 
        # The default is cups.
        # 
        # Note: If you choose to use SLPv2, it is strongly recommended that
        #    you have at least one SLP Directory Agent (DA) on your
        #    network. Otherwise, browse updates can take several seconds,
        #    during which the scheduler will not response to client
        #    requests.
        #
        #BrowseProtocols cups
        
        BrowseProtocols CUPS 
        
        # Browse port (BrowsePort)
        # 
        # The port used for UDP broadcasts. By default this is
        # the IPP port; if you change this you need to do it on all servers.
        # Only one BrowsePort is recognized.
        # 
        # ex: 631
        #
        #BrowsePort 631
        
        BrowsePort 631
        
        # Browse interval (BrowseInterval)
        # 
        # The time between browsing updates in seconds. Default
        # is 30 seconds.
        # 
        # Note that browsing information is sent whenever a printer's state changes
        # as well, so this represents the maximum time between updates.
        # 
        # Set this to 0 to disable outgoing broadcasts so your local printers are
        # not advertised but you can still see printers on other hosts.
        # 
        # ex: 30
        #
        #BrowseInterval 30
        
        BrowseInterval 30
        
        # Browse timeout (BrowseTimeout)
        # 
        # The timeout (in seconds) for network printers - if we don't
        # get an update within this time the printer will be removed
        # from the printer list. This number definitely should not be
        # less the BrowseInterval value for obvious reasons. Defaults
        # to 300 seconds.
        # 
        # ex: 300
        #
        #BrowseTimeout 300
        
        BrowseTimeout 300
        
        # Browse addresses (BrowseAddress)
        # 
        # Specifies a broadcast address to be used. By
        # default browsing information is broadcast to all active interfaces.
        # 
        # Note: HP-UX 10.20 and earlier do not properly handle broadcast unless
        # you have a Class A, B, C, or D netmask (i.e. no CIDR support).
        # 
        # ex: x.y.z.255, x.y.255.255
        #
        #BrowseAddress x.y.z.255
        #BrowseAddress x.y.255.255
        #BrowseAddress x.255.255.255
        
        BrowseAllow @LOCAL
        BrowseAddress @LOCAL
        
        # Browse order (BrowseOrder)
        # 
        # Specifies the order of BrowseAllow/BrowseDeny comparisons.
        # 
        # ex: allow,deny
        #
        #BrowseOrder allow,deny
        #BrowseOrder deny,allow
        
        BrowseOrder allow,deny
        
        # Implicit classes (ImplicitClasses)
        # 
        # Whether or not to use implicit classes.
        # 
        # Printer classes can be specified explicitly in the classes.conf
        # file, implicitly based upon the printers available on the LAN, or
        # both.
        # 
        # When ImplicitClasses is On, printers on the LAN with the same name
        # (e.g. Acme-LaserPrint-1000) will be put into a class with the same
        # name. This allows you to setup multiple redundant queues on a LAN
        # without a lot of administrative difficulties. If a user sends a
        # job to Acme-LaserPrint-1000, the job will go to the first available
        # queue.
        # 
        # Enabled by default.
        #
        #ImplicitClasses Off
        
        ImplicitClasses On
        
        # Use &quot;any&quot; classes (ImplicitAnyClasses)
        # 
        # Whether or not to create AnyPrinter implicit
        # classes.
        # 
        # When ImplicitAnyClasses is On and a local queue of the same name
        # exists, e.g. "printer", "printer@server1", "printer@server1", then
        # an implicit class called "Anyprinter" is created instead.
        # 
        # When ImplicitAnyClasses is Off, implicit classes are not created
        # when there is a local queue of the same name.
        # 
        # Disabled by default.
        #
        #ImplicitAnyCLasses Off
        
        ImplicitAnyClasses Off
        
        # Hide implicit members (HideImplicitMembers)
        # 
        # Whether or not to show the members of an
        # implicit class.
        # 
        # When HideImplicitMembers is On, any remote printers that are
        # part of an implicit class are hidden from the user, who will
        # then only see a single queue even though many queues will be
        # supporting the implicit class.
        # 
        # Enabled by default.
        #
        #HideImplicitMembers On
        
        HideImplicitMembers Yes
        
        # Use short names (BrowseShortNames)
        # 
        # Whether or not to use "short" names for remote printers
        # when possible (e.g. "printer" instead of "printer@host"). Enabled by
        # default.
        # 
        # ex: Yes
        #
        #BrowseShortNames Yes
        
        BrowseShortNames Yes
        
        # Unknown
        defaultauthtype Basic
        <policy default>
        <limit Send-Document Send-URI Hold-Job Release-Job Restart-Job Purge-Jobs Set-Job-Attributes Create-Job-Subscription Renew-Subscription Cancel-Subscription Get-Notifications Reprocess-Job Cancel-Current-Job Suspend-Current-Job Resume-Job CUPS-Move-Job>
        require user @OWNER @SYSTEM
        order deny,allow
        </limit> 
        <limit Pause-Printer Resume-Printer Set-Printer-Attributes Enable-Printer Disable-Printer Pause-Printer-After-Current-Job Hold-New-Jobs Release-Held-New-Jobs Deactivate-Printer Activate-Printer Restart-Printer Shutdown-Printer Startup-Printer Promote-Job Schedule-Job-After CUPS-Add-Printer CUPS-Delete-Printer CUPS-Add-Class CUPS-Delete-Class CUPS-Accept-Jobs CUPS-Reject-Jobs CUPS-Set-Default>
        authtype Basic
        require user @SYSTEM
        order deny,allow
        </limit> 
        <limit CUPS-Authenticate-Job>
        require user @OWNER @SYSTEM
        order deny,allow
        </limit> 
        <limit All>
        order deny,allow
        </limit> 
        </policy>

        Comment


          #5
          Re: Samba Won't Share Printer

          One last thing!!!

          If you want your file changes to show up on your samba shares without having to hit refresh (F5), you need to install fam (File Alteration Manager) in adpet or aptitute or apt-get or whatever. This is something else Mandrake had working out of the box. Not a big deal if you know to do that. Annoying if you don't.

          Comment


            #6
            Re: Samba Won't Share Printer

            ernieg92,

            I don't have the same setup, my printers are connected to my XP box and I print to them from Kubuntu without problem. But I did notice that you've ben bitten by the "mdfs proxy=no" bug. The KDE Samba setup utitlity hads this line to your smb.cong file for some reason and it screws everything up. Find that line in your smb.conf file and delete it or comment it out. Every time you use the KDE setup utility from System Settings, or kcontrol, or by clcking on "share" in konqueror it may reenter that entry.

            Comment


              #7
              Re: Samba Won't Share Printer

              Originally posted by Detonate
              ernieg92,

              I don't have the same setup, my printers are connected to my XP box and I print to them from Kubuntu without problem. But I did notice that you've ben bitten by the "mdfs proxy=no" bug. The KDE Samba setup utitlity hads this line to your smb.cong file for some reason and it screws everything up. Find that line in your smb.conf file and delete it or comment it out. Every time you use the KDE setup utility from System Settings, or kcontrol, or by clcking on "share" in konqueror it may reenter that entry.
              I deleted that line; didn't help. I've read other places that (K)ubuntu has some problems with Samba, so I'm going to leave it alone for now. Hopefully the next release will fix it.

              Ernie Grossmann<br />Opening doors, closing Windows.......<br />AMD Athlon X2<br />Asus K8, 2 GB PC 3200 RAM<br />Using Kubutu 10.10

              Comment

              Working...
              X