Ralph Blach
2009-Dec-27 23:23 UTC
[Samba] slow printing from windows xp to a samba print share
I have a windows xp maching which have very slow printing to a linux samba server I am running fedora core 10 x86_64 as the serverr and here is my smb.conf file> 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 (perhaps too > # MAny!) most of which are not shown in this example > # > # For a step to step guide on installing, configuring and using samba, > # read the Samba-HOWTO-Collection. This may be obtained from: > # http://www.samba.org/samba/docs/Samba-HOWTO-Collection.pdf > # > # Many working examples of smb.conf files can be found in the > # Samba-Guide which is generated daily and can be downloaded from: > # http://www.samba.org/samba/docs/Samba-Guide.pdf > # > # 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 commentry 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. > # > #--------------- > # SELINUX NOTES: > # > # If you want to use the useradd/groupadd family of binaries please run: > # setsebool -P samba_domain_controller on > # > # If you want to share home directories via samba please run: > # setsebool -P samba_enable_home_dirs on > # > # If you create a new directory you want to share you should mark it as > # "samba-share_t" so that selinux will let you write into it. > # Make sure not to do that on system directories as they may already have > # been marked with othe SELinux labels. > # > # Use ls -ldZ /path to see which context a directory has > # > # Set labels only on directories you created! > # To set a label use the following: chcon -t samba_share_t /path > # > # If you need to share a system created directory you can use one of the > # following (read-only/read-write): > # setsebool -P samba_export_all_ro on > # or > # setsebool -P samba_export_all_rw on > # > # If you want to run scripts (preexec/root prexec/print command/...) > please > # put them into the /var/lib/samba/scripts directory so that smbd will be > # allowed to run them. > # Make sure you COPY them and not MOVE them so that the right SELinux > context > # is applied, to check all is ok use restorecon -R -v > /var/lib/samba/scripts > # > #-------------- > # > #======================= Global Settings > ====================================> > [global] > > # ----------------------- Netwrok Related Options > ------------------------- > # > # workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH > # > # server string is the equivalent of the NT Description field > # > # netbios name can be used to specify a server name not tied to the > hostname > # > # Interfaces lets you configure Samba to use multiple interfaces > # If you have multiple network interfaces then you can list the ones > # you want to listen on (never omit localhost) > # > # Hosts Allow/Hosts Deny lets you restrict who can connect, and you can > # specifiy it as a per share option as well > # > workgroup = chipsdomain > server string = Samba Server Version %v > > ; netbios name = MYSERVER > > interfaces = lo wlan0 eth0 > hosts allow = 127.0.0.1 10.0.0.0/24 > ; null passwords = yes > # --------------------------- Logging Options > ----------------------------- > # > # Log File let you specify where to put logs and how to split them up. > # > # Max Log Size let you specify the max size log files should reach > > # logs split per machine > log file = /var/log/samba/log.%m > # max 50KB per log file, then rotate > max log size = 50 > log level = 5 > > # ----------------------- Standalone Server Options > ------------------------ > # > # Scurity can be set to user, share(deprecated) or server(deprecated) > # > # Backend to store user information in. New installations should > # use either tdbsam or ldapsam. smbpasswd is available for backwards > # compatibility. tdbsam requires no further configuration. > > security = user > passdb backend = tdbsam > > # ----------------------- Domain Members Options ------------------------ > # > # Security must be set to domain or ads > # > # Use the realm option only with security = ads > # Specifies the Active Directory realm the host is part of > # > # Backend to store user information in. New installations should > # use either tdbsam or ldapsam. smbpasswd is available for backwards > # compatibility. tdbsam requires no further configuration. > # > # Use password server option only with security = server or if you can't > # use the DNS to locate Domain Controllers > # The argument list may include: > # password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name] > # or to auto-locate the domain controller/s > # password server = * > > > ; realm = MY_REALM > > ; password server = <NT-Server-Name> > > # ----------------------- Domain Controller Options > ------------------------ > # > # Security must be set to user for domain controllers > # > # Backend to store user information in. New installations should > # use either tdbsam or ldapsam. smbpasswd is available for backwards > # compatibility. tdbsam requires no further configuration. > # > # Domain Master specifies Samba to be the Domain Master Browser. This > # allows Samba to collate browse lists between subnets. Don't use this > # if you already have a Windows NT domain controller doing this job > # > # Domain Logons let Samba be a domain logon server for Windows > workstations. > # > # Logon Scrpit let yuou specify a script to be run at login time on > the client > # You need to provide it in a share called NETLOGON > # > # Logon Path let you specify where user profiles are stored (UNC path) > # > # Various scripts can be used on a domain controller or stand-alone > # machine to add or delete corresponding unix accounts > # > > domain master = yes > ; domain logons = yes > > # the login script name depends on the machine name > ; logon script = %m.bat > # the login script name depends on the unix user used > ; logon script = %u.bat > ; logon path = \\%L\Profiles\%u > # disables profiles support by specifing an empty path > ; logon path = > > ; add user script = /usr/sbin/useradd "%u" -n -g users > ; add group script = /usr/sbin/groupadd "%g" > ; add machine script = /usr/sbin/useradd -n -c "Workstation (%u)" > -M -d /nohome -s /bin/false "%u" > ; delete user script = /usr/sbin/userdel "%u" > ; delete user from group script = /usr/sbin/userdel "%u" "%g" > ; delete group script = /usr/sbin/groupdel "%g" > > > # ----------------------- Browser Control Options > ---------------------------- > # > # set local master to no if you don't want Samba to become a master > # browser on your network. Otherwise the normal election rules apply > # > # OS Level determines the precedence of this server in master browser > # elections. The default value should be reasonable > # > # Preferred Master causes Samba to force a local browser election on > startup > # and gives it a slightly higher chance of winning the election > local master = yes > os level = 44 > preferred master = yes > > #----------------------------- Name Resolution > ------------------------------- > # Windows Internet Name Serving Support Section: > # Note: Samba can be either a WINS Server, or a WINS Client, but NOT both > # > # - WINS Support: Tells the NMBD component of Samba to enable it's > WINS Server > # > # - WINS Server: Tells the NMBD components of Samba to be a WINS Client > # > # - WINS Proxy: Tells Samba to answer name resolution queries on > # behalf of a non WINS capable client, for this to work there must be > # at least one WINS Server on the network. The default is NO. > # > # DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names > # via DNS nslookups. > > ; wins support = yes > ; wins server = w.x.y.z > ; wins proxy = yes > > ; dns proxy = yes > > # --------------------------- Printing Options > ----------------------------- > # > # Load Printers let you load automatically the list of printers rather > # than setting them up individually > # > # Cups Options let you pass the cups libs custom options, setting it > to raw > # for example will let you use drivers on your Windows clients > # > # Printcap Name let you specify an alternative printcap file > # > # You can choose a non default printing system using the Printing option > > ; load printers = yes > cups options = raw > > printcap name = cups > # printcap name = /etc/printcap > #obtain list of printers automatically on SystemV > printing = cups > > # --------------------------- Filesystem Options > --------------------------- > # > # The following options can be uncommented if the filesystem supports > # Extended Attributes and they are enabled (usually by the mount option > # user_xattr). Thess options will let the admin store the DOS attributes > # in an EA and make samba not mess with the permission bits. > # > # Note: these options can also be set just per share, setting them in > global > # makes them the default for all shares > > ; map archive = no > ; map hidden = no > ; map read only = no > ; map system = no > username map = /etc/samba/smbusers > ; encrypt passwords = yes > guest ok = yes > guest account = pcguest > ; store dos attributes = yes > > > #============================ Share Definitions > =============================> > [homes] > comment = Home Directories > ; browseable = yes > writable = yes > valid users = rcblach benb colette > invalid users = mysql jetty root > path = /home/%S > [printers] > comment = All Printers > path = /var/spool/samba > browseable = no > # to allow user 'guest account' to print. > guest ok = yes > writable = no > printable = yes > create mode = 0700 > print command = lpr-cups -P %p -o raw %s -r > > > # comment = All Printers > # path = /var/spool/samba > # browseable = yes > # guest ok = yes > # printable = yes > # public = yes > # use client driver = yes > #[officejet] > # path = /var/spool/samba > # printer name = Officejet-J4500-series > # browseable = yes > # guest ok = yes > # writable = yes > # printable = yes > # use client driver = yes > > # Un-comment the following and create the netlogon directory for > Domain Logons > ; [netlogon] > ; comment = Network Logon Service > ; path = /var/lib/samba/netlogon > ; guest ok = yes > ; writable = no > ; share modes = no > > > # Un-comment the following to provide a specific roving profile share > # the default is to use the user's home directory > ; [Profiles] > ; path = /var/lib/samba/profiles > ; browseable = no > ; guest ok = yes > > > # A publicly accessible directory, but read only, except for people in > # the "staff" group > ; [public] > ; comment = Public Stuff > ; path = /home/samba > ; public = yes > ; writable = yes > ; printable = no > ; write list = +staff > >I have installed the hp device driver on my XP system, but when I bring up the properties, it is extremely slow. I know this should be faster, but I can seem to find the magic soup This is a very simple network just one server and one Xp client. No ldap, or fancy setup, Thanks Chip
Ryan Suarez
2009-Dec-28 02:10 UTC
[Samba] slow printing from windows xp to a samba print share
uh oh, could this be the dreaded xp client bug? Follow this thread and it's related suggestions to see if it fixes your problem: http://lists.samba.org/archive/samba/2005-September/110571.html Ralph Blach wrote:> I have a windows xp maching which have very slow printing to a > linux samba server > > > > I am running fedora core 10 x86_64 as the serverr and here is my > smb.conf file > >> 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 (perhaps too >> # MAny!) most of which are not shown in this example >> # >> # For a step to step guide on installing, configuring and using samba, >> # read the Samba-HOWTO-Collection. This may be obtained from: >> # http://www.samba.org/samba/docs/Samba-HOWTO-Collection.pdf >> # >> # Many working examples of smb.conf files can be found in the >> # Samba-Guide which is generated daily and can be downloaded from: >> # http://www.samba.org/samba/docs/Samba-Guide.pdf >> # >> # 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 commentry 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. >> # >> #--------------- >> # SELINUX NOTES: >> # >> # If you want to use the useradd/groupadd family of binaries please run: >> # setsebool -P samba_domain_controller on >> # >> # If you want to share home directories via samba please run: >> # setsebool -P samba_enable_home_dirs on >> # >> # If you create a new directory you want to share you should mark it as >> # "samba-share_t" so that selinux will let you write into it. >> # Make sure not to do that on system directories as they may already >> have >> # been marked with othe SELinux labels. >> # >> # Use ls -ldZ /path to see which context a directory has >> # >> # Set labels only on directories you created! >> # To set a label use the following: chcon -t samba_share_t /path >> # >> # If you need to share a system created directory you can use one of the >> # following (read-only/read-write): >> # setsebool -P samba_export_all_ro on >> # or >> # setsebool -P samba_export_all_rw on >> # >> # If you want to run scripts (preexec/root prexec/print command/...) >> please >> # put them into the /var/lib/samba/scripts directory so that smbd >> will be >> # allowed to run them. >> # Make sure you COPY them and not MOVE them so that the right SELinux >> context >> # is applied, to check all is ok use restorecon -R -v >> /var/lib/samba/scripts >> # >> #-------------- >> # >> #======================= Global Settings >> ====================================>> >> [global] >> >> # ----------------------- Netwrok Related Options >> ------------------------- >> # >> # workgroup = NT-Domain-Name or Workgroup-Name, eg: MIDEARTH >> # >> # server string is the equivalent of the NT Description field >> # >> # netbios name can be used to specify a server name not tied to the >> hostname >> # >> # Interfaces lets you configure Samba to use multiple interfaces >> # If you have multiple network interfaces then you can list the ones >> # you want to listen on (never omit localhost) >> # >> # Hosts Allow/Hosts Deny lets you restrict who can connect, and you can >> # specifiy it as a per share option as well >> # >> workgroup = chipsdomain >> server string = Samba Server Version %v >> >> ; netbios name = MYSERVER >> >> interfaces = lo wlan0 eth0 >> hosts allow = 127.0.0.1 10.0.0.0/24 >> ; null passwords = yes >> # --------------------------- Logging Options >> ----------------------------- >> # >> # Log File let you specify where to put logs and how to split them up. >> # >> # Max Log Size let you specify the max size log files should reach >> >> # logs split per machine >> log file = /var/log/samba/log.%m >> # max 50KB per log file, then rotate >> max log size = 50 >> log level = 5 >> >> # ----------------------- Standalone Server Options >> ------------------------ >> # >> # Scurity can be set to user, share(deprecated) or server(deprecated) >> # >> # Backend to store user information in. New installations should >> # use either tdbsam or ldapsam. smbpasswd is available for backwards >> # compatibility. tdbsam requires no further configuration. >> >> security = user >> passdb backend = tdbsam >> >> # ----------------------- Domain Members Options >> ------------------------ >> # >> # Security must be set to domain or ads >> # >> # Use the realm option only with security = ads >> # Specifies the Active Directory realm the host is part of >> # >> # Backend to store user information in. New installations should >> # use either tdbsam or ldapsam. smbpasswd is available for backwards >> # compatibility. tdbsam requires no further configuration. >> # >> # Use password server option only with security = server or if you can't >> # use the DNS to locate Domain Controllers >> # The argument list may include: >> # password server = My_PDC_Name [My_BDC_Name] [My_Next_BDC_Name] >> # or to auto-locate the domain controller/s >> # password server = * >> >> >> ; realm = MY_REALM >> >> ; password server = <NT-Server-Name> >> >> # ----------------------- Domain Controller Options >> ------------------------ >> # >> # Security must be set to user for domain controllers >> # >> # Backend to store user information in. New installations should >> # use either tdbsam or ldapsam. smbpasswd is available for backwards >> # compatibility. tdbsam requires no further configuration. >> # >> # Domain Master specifies Samba to be the Domain Master Browser. This >> # allows Samba to collate browse lists between subnets. Don't use this >> # if you already have a Windows NT domain controller doing this job >> # >> # Domain Logons let Samba be a domain logon server for Windows >> workstations. >> # >> # Logon Scrpit let yuou specify a script to be run at login time on >> the client >> # You need to provide it in a share called NETLOGON >> # >> # Logon Path let you specify where user profiles are stored (UNC path) >> # >> # Various scripts can be used on a domain controller or stand-alone >> # machine to add or delete corresponding unix accounts >> # >> >> domain master = yes >> ; domain logons = yes >> >> # the login script name depends on the machine name >> ; logon script = %m.bat >> # the login script name depends on the unix user used >> ; logon script = %u.bat >> ; logon path = \\%L\Profiles\%u >> # disables profiles support by specifing an empty path >> ; logon path = >> ; add user script = /usr/sbin/useradd "%u" -n -g users >> ; add group script = /usr/sbin/groupadd "%g" >> ; add machine script = /usr/sbin/useradd -n -c "Workstation (%u)" >> -M -d /nohome -s /bin/false "%u" >> ; delete user script = /usr/sbin/userdel "%u" >> ; delete user from group script = /usr/sbin/userdel "%u" "%g" >> ; delete group script = /usr/sbin/groupdel "%g" >> >> >> # ----------------------- Browser Control Options >> ---------------------------- >> # >> # set local master to no if you don't want Samba to become a master >> # browser on your network. Otherwise the normal election rules apply >> # >> # OS Level determines the precedence of this server in master browser >> # elections. The default value should be reasonable >> # >> # Preferred Master causes Samba to force a local browser election on >> startup >> # and gives it a slightly higher chance of winning the election >> local master = yes >> os level = 44 >> preferred master = yes >> >> #----------------------------- Name Resolution >> ------------------------------- >> # Windows Internet Name Serving Support Section: >> # Note: Samba can be either a WINS Server, or a WINS Client, but NOT >> both >> # >> # - WINS Support: Tells the NMBD component of Samba to enable it's >> WINS Server >> # >> # - WINS Server: Tells the NMBD components of Samba to be a WINS Client >> # >> # - WINS Proxy: Tells Samba to answer name resolution queries on >> # behalf of a non WINS capable client, for this to work there must be >> # at least one WINS Server on the network. The default is NO. >> # >> # DNS Proxy - tells Samba whether or not to try to resolve NetBIOS names >> # via DNS nslookups. >> >> ; wins support = yes >> ; wins server = w.x.y.z >> ; wins proxy = yes >> >> ; dns proxy = yes >> >> # --------------------------- Printing Options >> ----------------------------- >> # >> # Load Printers let you load automatically the list of printers rather >> # than setting them up individually >> # >> # Cups Options let you pass the cups libs custom options, setting it >> to raw >> # for example will let you use drivers on your Windows clients >> # >> # Printcap Name let you specify an alternative printcap file >> # >> # You can choose a non default printing system using the Printing option >> >> ; load printers = yes >> cups options = raw >> >> printcap name = cups >> # printcap name = /etc/printcap >> #obtain list of printers automatically on SystemV >> printing = cups >> >> # --------------------------- Filesystem Options >> --------------------------- >> # >> # The following options can be uncommented if the filesystem supports >> # Extended Attributes and they are enabled (usually by the mount option >> # user_xattr). Thess options will let the admin store the DOS attributes >> # in an EA and make samba not mess with the permission bits. >> # >> # Note: these options can also be set just per share, setting them in >> global >> # makes them the default for all shares >> >> ; map archive = no >> ; map hidden = no >> ; map read only = no >> ; map system = no >> username map = /etc/samba/smbusers >> ; encrypt passwords = yes >> guest ok = yes >> guest account = pcguest >> ; store dos attributes = yes >> >> >> #============================ Share Definitions >> =============================>> >> [homes] >> comment = Home Directories >> ; browseable = yes >> writable = yes >> valid users = rcblach benb colette >> invalid users = mysql jetty root >> path = /home/%S >> [printers] >> comment = All Printers >> path = /var/spool/samba >> browseable = no >> # to allow user 'guest account' to print. >> guest ok = yes >> writable = no >> printable = yes >> create mode = 0700 >> print command = lpr-cups -P %p -o raw %s -r >> >> >> # comment = All Printers >> # path = /var/spool/samba >> # browseable = yes >> # guest ok = yes >> # printable = yes >> # public = yes >> # use client driver = yes >> #[officejet] >> # path = /var/spool/samba >> # printer name = Officejet-J4500-series >> # browseable = yes >> # guest ok = yes >> # writable = yes >> # printable = yes >> # use client driver = yes >> >> # Un-comment the following and create the netlogon directory for >> Domain Logons >> ; [netlogon] >> ; comment = Network Logon Service >> ; path = /var/lib/samba/netlogon >> ; guest ok = yes >> ; writable = no >> ; share modes = no >> >> >> # Un-comment the following to provide a specific roving profile share >> # the default is to use the user's home directory >> ; [Profiles] >> ; path = /var/lib/samba/profiles >> ; browseable = no >> ; guest ok = yes >> >> >> # A publicly accessible directory, but read only, except for people in >> # the "staff" group >> ; [public] >> ; comment = Public Stuff >> ; path = /home/samba >> ; public = yes >> ; writable = yes >> ; printable = no >> ; write list = +staff >> >> > I have installed the hp device driver on my XP system, but when I > bring up the properties, it is extremely slow. > > I know this should be faster, but I can seem to find the magic soup > > This is a very simple network just one server and one Xp client. > > No ldap, or fancy setup, > Thanks > > Chip