slow print via Samba and Cups

Hello,

sorry my english. We installed a new Server with Opensuse 11.0. We use the server as fileserver with Samba, cups (cyrus-imap,…). The old server used Suse 9.3Prof. The user and groups on the new server get the same uid and gid as on the old server. We tranfer all directories and files, published by Samba, to the new server. Erverything works well, but only the printing from WinXP-SP2-clients is slow. It theems that the beginnig need extremly long time befor the printig data spool to the server starts. The result on the Client is
a) priniting via MS Office goes quickly (File–>print–>choose printer–>ok needs 2-3 seconds) and ~90s later(!) the printjob ist finished
b) printing via Acrobat Reader or Notepad++ needs ~90s. In this time the programm-window ist frozen. After this time the indicator goes quickly to 100% an the printjob is finished 2-3s later.
We try several changes, for instance

  • set lower access rights in /etc/cups/cupsd.conf
  • delete “#” befor “application/octet-stream” in /etc/cups/mime.*
  • change serveral options in smb.conf
  • cups completly deinstall and reinstall and new create all printers
  • control Registry-values in WinXP-clients
  • online-update in Opensuse 11.0 (at least on 2008-07-24)
  • install samba version 3.2.0-33.1 (standard is 3.2.0rc1-22.1)
  • install cups version 1.3.7-29.2 (standard is 1.3.7-25.1)
  • all samba- and linux-password for clients new
    but the problem is the same.
    That problem not occured on the server with SuSE9.3prof.
    With log level = 2 the samba.log shows

[2008/07/17 17:32:49,  1] smbd/service.c:make_connection_snum(1188)
  ClientPC01 (192.168.0.11) signed connect to service Drucker01 initially as user ClientUser (uid=1005, gid=100) (pid 30416)
...
[2008/07/17 17:34:17,  1] smbd/service.c:close_cnum(1399)
  ClientPC01 (192.168.0.11) closed connection to service Drucker01
[2008/07/17 17:34:17,  2] smbd/sesssetup.c:setup_new_vc_session(1363)
  setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
[2008/07/17 17:34:17,  2] smbd/sesssetup.c:setup_new_vc_session(1363)
  setup_new_vc_session: New VC == 0, if NT4.x compatible we would close all old resources.
[2008/07/17 17:34:17,  2] auth/auth.c:check_ntlm_password(308)
  check_ntlm_password:  authentication for user [ClientUser] -> [ClientUser] -> [ClientUser] succeeded
[2008/07/17 17:34:17,  1] smbd/service.c:make_connection_snum(1188)
  ClientPC01 (192.168.0.11) signed connect to service Drucker01 initially as user ClientUser (uid=1005, gid=100) (pid 30784)

So it seems that the client connect 2 times to the printer share - once without transfering any data and once with authentification (ntlm2) and then transfering printdata. The time between open and close the first connection ist ~90s.
Here the beginning of the /etc/samba/smb.conf


[global]
   include = /etc/samba/dhcp.conf
   netbios name = SUSE-FS
   workgroup = "OURDOMAIN"
# Sambaversion 3.2.0-33.1-SUSE
   server string = Samba3
   domain master = Yes
   domain logons = Yes
   local master = Yes
   preferred master = Yes   
   os level = 65
   wins support = Yes
   name resolve order = wins hosts lmhosts bcast
   dns proxy = yes
   security = user
   auth methods =
   passdb backend = smbpasswd
#   update encrypted = yes
#   password level = 4
#   guest account = nobody
   username map = /etc/samba/smbusers
   smb passwd file = /etc/samba/smbpasswd
   ntlm auth = yes
   lanman auth = yes
       server signing = auto
       server schannel = auto
       client signing = auto
       client schannel = auto
   case sensitive = No
   nt acl support = No
   machine password timeout = 604800
#   obey pam restrictions = No
   map to guest = Bad User
#   printer admin = @ntadmin, root, administrator
   printing = cups
   printcap cache time = 750
   printcap name = cups
   cups options = raw
#lpq cache time = 20
   add machine script = /usr/sbin/useradd -c Machine -G Rechner -d /var/lib/nobody -s /bin/false %m$
   logon script = logon.bat
#logon path = \\%L\profiles\.msprofile
   logon home = \\%L\%U\.9xprofile
   logon drive = F:
   log file = /var/log/samba/samba.log
   syslog = 0
   log level = 2
   max log size = 4096
   socket options = TCP_NODELAY IPTOS_LOWDELAY SO_KEEPALIVE SO_RCVBUF=8192 SO_SNDBUF=8192
#   socket options = TCP_NODELAY IPTOS_LOWDELAY
   dead time = 15
   oplocks = yes
   kernel oplocks = Yes
   level2 oplocks = no
   veto files = /*:Zone.Identifier/
[homes]
   comment = Home Directories
   valid users = %S
   available = Yes
   browseable = no
   read only = No
   inherit acls = Yes
   vfs objects = recycle
   recycle:repository = ../../papierkorb/home/%S
   recycle:keeptree = true
   recycle:versions = true
   recycle:exclude = *.tmp
   recycle:touch_mtime = true
[users]
   comment = Alle Benutzer
   path = /home
   read only = No
   inherit acls = Yes
   veto files = /aquota.user/groups/shares/
   browseable = no
[printers]
   comment = Alle Drucker
   path = /var/tmp
   printable = Yes
   create mask = 0600
   browseable = No
[print$]
   comment = Printer Drivers
   path = /var/lib/samba/drivers
   write list = @ntadmin root
   force group = ntadmin
   create mask = 0664
   directory mask = 0775
...

This is what /etc/cups/cupsd.conf shows


Classification none
DefaultCharset UTF-8
DefaultLanguage de
Printcap /etc/printcap
PrintcapFormat BSD
RemoteRoot remroot
SystemGroup sys root
ServerCertificate /etc/cups/ssl/server.crt
ServerKey /etc/cups/ssl/server.key
<Location />
#Encryption IfRequested
#Satisfy All
Order deny,allow
Deny From All
Allow From 127.0.0.1
Allow From 127.0.0.2
Allow From 192.168.0.*
</Location>
<Location /admin>
Encryption Required
Satisfy All
AuthType Basic
AuthClass System
Allow From 192.168.0.*
Order allow,deny
Deny From All
</Location>
<Location /admin/conf>
Require user @SYSTEM
Encryption IfRequested
Satisfy All
Order allow,deny
</Location>
<Location /printers>
Encryption IfRequested
Satisfy All
Order allow,deny
Allow From 192.168.0.*
</Location>
HostnameLookups Off
KeepAlive On
KeepAliveTimeout 60
MaxClients 100
MaxRequestSize 0m
Timeout 300
Listen localhost:631
Listen /var/run/cups/cups.sock
AccessLog /var/log/cups/access_log
ErrorLog /var/log/cups/error_log
PageLog /var/log/cups/page_log
MaxLogSize 1m
LogLevel warn
PreserveJobHistory Off
MaxJobs 0
MaxJobsPerPrinter 0
MaxJobsPerUser 0
User lp
Group sys
RIPCache 8m
FilterLimit 0
DataDir /usr/share/cups
DocumentRoot /usr/share/cups/doc
RequestRoot /var/spool/cups
ServerBin /usr/lib/cups
ServerRoot /etc/cups
TempDir /var/spool/cups/tmp
Browsing Off
BrowseProtocols CUPS
BrowsePort 631
BrowseInterval 30
BrowseTimeout 300
BrowseAllow all
BrowseOrder allow,deny
ImplicitClasses On
ImplicitAnyClasses Off
HideImplicitMembers Yes
BrowseShortNames Yes
RootCertDuration 0
# 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 CUPS-Add-Modify-Printer CUPS-Delete-Printer CUPS-Add-Modify-Class CUPS-Delete-Class CUPS-Set-Default>
authtype Default
require user @SYSTEM
order deny,allow
</limit>
<limit Pause-Printer Resume-Printer 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-Accept-Jobs CUPS-Reject-Jobs>
authtype Default
require user @SYSTEM
order deny,allow
</limit>
<limit Cancel-Job CUPS-Authenticate-Job>
require user @OWNER @SYSTEM
order deny,allow
</limit>
<limit All>
order deny,allow
</limit>
</policy>

Here some registry-keys from the WinXP-client
requiresignorseal=0
requirestrongkey=0
sealsecurechannel=1
signsecurechannel=1

How can we solve the problem?

Hi
I have the same problem and I think this is problem with samba 3.2.0 because when I downgrade samba to 3.0.28 everything work well
I posted here: samba problem after upgrade to opensuse 11 - openSUSE Forums
On samba 3.2.0 same files are quick printing and same like pdf very slow. An exploring folder inside is quick but when you go back up all is slow and winxp frozen. On vista works all well. This is only problem with winxp.

Piotr

Hello,

thanks Piotr for your information. After we install the new OpenSuSE-Samba-Version 3.2.0-37.1 without success we decide to make a downgrade to version 3.0.28-1.1 - with success. The steps:

  • stop Samba (rcnmb stop, rcsmb stop)
  • make a copy of directory /etc/samba (backup, especially smb.conf, smbpasswd, smbuser)
  • copy the following pakets in a directoy to the server and make a entry in Yast that these directory is a installsource:
  • dmapi-2.2.8-22.i586.rpm (libdm.so.0 needed)
  • cifs-mount-3.0.28-1.1.i586.rpm
  • libsmbclient0-3.0.28-1.1.i586.rpm
  • libsmbsharemodes-3.0.28-1.1.i586.rpm (may be unsused)
  • samba-krb-printing-3.0.28-1.1.i586.rpm
  • samba-client-3.0.28-1.1.i586.rpm
  • samba-3.0.28-1.1.i586.rpm
  • samba-vscan-0.3.6b-1.1.i586.rpm (if vscan used in Samba)
  • install these packages
    → attention: look in Yast, that really version 3.0.28 installed and not the standardversion 3.2.0-22.1.
    If not, then mark in Yast–>softwareinstall–>Samba–>versions–> 3.0.28 instead of 3.2.0
  • copy /etc/samba (backup of the originals from 3.0.28)
  • copy back the old files /etc/samba/ version 3.2.0 in /etc/samba (especially smb.conf, smbpasswd, smbuser)
  • start Samba (rcsmb start, rcnmb start)
    It works immediatety without any changes on smb.conf or cups.
    I think its a bug in the Samba-version 3.2.0 (new function “Encrypted network transport” see Samba Team Releases Samba 3.2) or WinXP works annother way then it should be.

Jörn

Hello,

there is a new Samba-release 3.2.3. Since 3.2.2 the problem of timeouts during access from WinXP to Samba-shares is solved (read release-notes 3.2.2). Since we install 3.2.3-1.128 everything works fine. Printing from Win98/WinXP is fast without timeouts <:). I recommend everybody to install version 3.2.3 and not make a downgrade to 3.0.28.

Jörn

sluser wrote:

>
> Hello,
>
> there is a new Samba-release 3.2.3. Since 3.2.2 the problem of timeouts
> during access from WinXP to Samba-shares is solved (read release-notes
> 3.2.2). Since we install 3.2.3-1.128 everything works fine. Printing
> from Win98/WinXP is fast without timeouts <:). I recommend everybody to
> install version 3.2.3 and not make a downgrade to 3.0.28.
<snip>
>
Thanks for the heads up; I had not expected 3.2.3 for a few more weeks.

P. V.
Cogito cogito ergo cogito sum.