cancel
Showing results for 
Search instead for 
Did you mean: 

CIFS troubleshooting

paulhh
Champ in-the-making
Champ in-the-making
If you cannot map a drive to the Alfresco CIFS server then it's likely a name lookup problem. Check whether you are using WINS or broadcast lookups on your LAN. If you're using broadcasts, is your network split into more than one subnet?  Did you change the broadcast mask setting in the file-servers.xml configuration file?  Do you use NetBIOS name scopes on your LAN? (nbtstat -n should show if a scope id is set).

If a PC cannot access the Alfresco CIFS server you could try adding an entry to the lmhosts file (in windows\system32\drivers\etc), there's usually a sample file in that folder, you may need to create the file. Then try and access the CIFS server using Start->Run and enter \\<Alfresco servername>.

You could also try doing some name lookups using nbtstat, again from any of the PCs that are having trouble accessing the server. If you try the following commands to see which are successful :-

  nbtstat -a <Alfresco server name>
  nbtstat -A <server ip address>
  nbtstat -a <Windows server name>
73 REPLIES 73

witho
Champ on-the-rise
Champ on-the-rise
Hi everybody,

I found the solution. The problem is tha I have a Windows domain configured and that is why I can't map the Alfresco Network drive. I have edit my code adding domain="THEINIT" to the parameter host:

file-servers.xml


<alfresco-config area="file-servers">

   <config evaluator="string-compare" condition="CIFS Server">
     <serverEnable enabled="true"/>
      <host name="${localname}_a" domain="THEINIT"/>
      <comment>Alfresco CIFS Server</comment>

      <!– Set to the broadcast mask for the subnet –>
      <broadcast>255.255.255.255</broadcast>

      <!– Use Java socket based NetBIOS over TCP/IP and native SMB on linux –>
      <tcpipSMB platforms="linux,solaris,macosx"/>
      <netBIOSSMB platforms="linux,solaris,macosx"/>

      <!– Can be mapped to non-privileged ports, then use firewall rules to forward
          requests from the standard ports –>
     <!–      
      <tcpipSMB port="1445" platforms="linux,solaris,macosx"/>
      <netBIOSSMB sessionPort="1139" namePort="1137" datagramPort="1138" platforms="linux,solaris,macosx"/>
     –>
     
      <hostAnnounce interval="5"/>

      <!– Use Win32 NetBIOS interface on Windows –>
      <Win32NetBIOS/>
      <Win32Announce interval="5"/>

<!–
      <WINS>
         <primary>1.2.3.4</primary>
         <secondary>5.6.7.8</secondary>
      </WINS>
–>
      <sessionDebug flags="Negotiate,Socket"/>
   </config>

Thanks!!!, Bye.

rogier_oudshoor
Champ in-the-making
Champ in-the-making
Hello,

This is a great thread! I have another interesting issue for you guys.

I am running Alfresco 3Stable on a SuSe 11 server with Windows XP clients. It's configured to use Kerberos for everything, and has a custom AD integration where users are synchronized as they login (rather then importing the entire AD every night). It's setup as per the Wiki, including the firewall spec.

Basically, CIFS is functioning at 95%. There are 2 aspects that are broken:
1. The Server load on any action on CIFS is huge. It spikes for several seconds, even for small files … and it is a big server.
2. Even though the SMB Share is always available (I.E., \\myShare\), the Alfresco folder in there (I.E., \\myShare\Alfresco) fails roughly 5% of the time. This 5% comes in chunks of about 5 minutes, seemingly randomly distributed over the day. When it fails, it produces a windows login box. However, it gets better. The server logs tell me that there was a succesfull Kerberos login ….

Has anyone ever seen anything like this?

Regards,

Rogier

vipo
Champ in-the-making
Champ in-the-making
I'm too having serious CIFS stability and performance problems (Ubuntu 8.04, 8GB RAM, tomcat and versions 3b and 3c Community Ed.).
We can't reliably create directories and copy files (a lot of attempts fail, yielding various error-messages: permission denied, directory does not exist).

Sometimes deletion of the just created directories fails with:
>>net.sf.acegisecurity.AccessDeniedException: Access is denied
>> org.alfresco.repo.security.permissions.AccessDeniedException: Access Denied.  You do not have the appropriate permissions to perform this operation
>>         at $Proxy3.deleteNode(Unknown Source)
>>        at org.alfresco.filesys.repo.ContentDiskDriver.deleteDirectory(ContentDiskDriver.java:1738)
>>        at org.alfresco.filesys.repo.ContentDiskDriver.deleteDirectory(ContentDiskDriver.java:1738)
>>        at org.alfresco.jlan.smb.server.NTProtocolHandler.procDeleteDirectory(NTProtocolHandler.java:3001)
>>        at org.alfresco.jlan.smb.server.NTProtocolHandler.runProtocol(NTProtocolHandler.java:281)
>>        at org.alfresco.jlan.smb.server.SMBSrvSession.runHandler(SMBSrvSession.java:1340)
But also deleting fails, but without an errorlog entry.

If the exact same command is retried, it may work (randomly). They user doing the access has Contributor rights.
We have created a simple testscript (after we have seen, that not all files are copied over and directories are  missing from a recursive local copy):
Create a directory, then 10 subdirectories below that. Count directories which aren't created. Delete the whole directory tree (rm -rf) and start over again. If we run the script 100x, it may work the first 10 runs, then fail completely afterwards (90%) or consistently can't create the same one directory.

We acces the alfresco share using a mounted smbfs (or type cifs). Even logons from smbclient don't work (error: cli_rpc_pipe_open_noauth: rpc_pipe_bind for pipe \srvsvc failed with error NT_STATUS_BUFFER_TOO_SMALL; but showing results of Listing '-L option') as expected or simple directory listings using the mounted directory (repeated 'ls- l' commands work as expected, then take forever or yield errormessages).
We use alfresco authorization scheme and have tried various configuration settings.
The performance is worse: creating 10 directories takes 25+ seconds, deleting it over a minute!
We have checked using ftp (lftp client), getting roughly the same "write-performance" (though thanks to lftp using retry-attempts get better success-rates).

As SMB/CIFS is vital (and WebDAV doesn't allow file uploads - only showing readonly content?) we probably have to using Samba and Apache WebDAV to get the desired performance and stability (without a dms).

Using the webclient, using the same operations as the same user, we don't have any problems.

UPDATE: the reliability problems stem from using 'mount -t smbfs' on the Ubuntu client system, if we use 'mount -t cifs' there seems to be no more errors regarding creating and removing directories.
But the performance issues still exist (there is no difference).

gerrit
Champ in-the-making
Champ in-the-making
Hi all

I have recently updated from alfresco 2.9 to 3.0 labs. While running 2.9 i had no problem with cifs, however after upgrading, i cannot map to the server at all, when i try then all that happens is a pop up screen with the error 'the network path was not found' appears. No other error message is generated at any point and all other functionality works perfectly. I worked through all the above posts and still no luck. This is however a vital point in my system so need it working desperately.

Any advice would be greatly appreciated

Regards
Gerrit

alexey
Champ in-the-making
Champ in-the-making
Hello.
I need help for setup CIFS server.
OS: Open Suse Linux 11, Alfresco Labs 3C.

file-server-custom.xml
      
<config evaluator="string-compare" condition="CIFS Server">
            <serverEnable enabled="true"/>
            <host name="${localname}A" domain="ASU"/>
            <comment>Alfresco Server</comment>
            <broadcast>10.16.13.255</broadcast>
            <tcpipSMB platforms="linux,solaris,macosx"/>
            <netBIOSSMB platforms="linux,solaris,macosx"/>
            <tcpipSMB port="1445" platforms="linux,solaris,macosx"/>
            <netBIOSSMB sessionPort="1139" namePort="1137" datagramPort="1138" platforms="linux,solaris,macosx"/>
            <hostAnnounce interval="5"/>
            <sessionDebug flags="Negotiate,Socket"/>
            <WINS>
                <primary>10.1.32.1</primary>
            </WINS>
        </config>
Suse Firewall Config
FW_FORWARD_MASQ="0/0,10.16.13.51,udp,138,1138 0/0,10.16.13.51,udp,137,1137 0/0,10.16.13.51,tcp,139,1139 0/0,10.16.13.15,tcp,445,1445"
When i'm trying to connect to Alfresco server i see error.
smbclient -L 10.16.13.51
Connection to 10.16.13.51 failed (Error NT_STATUS_CONNECTION_REFUSED)
But if i change port on 1139, i'll connect to server.

smbclient -L 10.16.13.51 -p 1139
Enter alfresco's password:
Anonymous login successful
Domain=[ASU] OS=[Java] Server=[Alfresco CIFS Server 5.0.0 [beta]]

        Sharename       Type      Comment
        ———       —-      ——-
cli_rpc_pipe_open_noauth: rpc_pipe_bind for pipe \srvsvc failed with error NT_STATUS_BUFFER_TOO_SMALL
        Alfresco        Disk
        IPC$            IPC
        AVM             Disk
Connection to 10.16.13.51 failed (Error NT_STATUS_CONNECTION_REFUSED)
NetBIOS over TCP disabled – no workgroup available
What am i doing wrong?

Thank you.

fbehfar
Champ on-the-rise
Champ on-the-rise
Hi,
I have the same problem as witho. and I have done what he said!
but doesn't work, plz help me in this matter!

FSB

witho
Champ on-the-rise
Champ on-the-rise
Hi,

Could you post your configuration file? Myabe I can help you.

fbehfar
Champ on-the-rise
Champ on-the-rise
Hi witho,
here is my configuration files,

file-servers.xml
<alfresco-config area="file-servers">

   <config evaluator="string-compare" condition="CIFS Server">
     <serverEnable enabled="true"/>
      <host name="${localname}A" domain="THEINIT"/>
      <comment>Alfresco CIFS Server</comment>

      <!– Set to the broadcast mask for the subnet –>
      <broadcast>255.255.255.255</broadcast>

      <!– Use Java socket based NetBIOS over TCP/IP and native SMB on linux –>
      <tcpipSMB platforms="linux,solaris,macosx"/>
      <netBIOSSMB platforms="linux,solaris,macosx"/>

      <!– Can be mapped to non-privileged ports, then use firewall rules to forward
          requests from the standard ports –>
     <!–      
      <tcpipSMB port="1445" platforms="linux,solaris,macosx"/>
      <netBIOSSMB sessionPort="1139" namePort="1137" datagramPort="1138" platforms="linux,solaris,macosx"/>
     –>
      
      <hostAnnounce interval="5"/>

      <!– Use Win32 NetBIOS interface on Windows –>
      <Win32NetBIOS/>
      <Win32Announce interval="5"/>

<!–
      <WINS>
         <primary>1.2.3.4</primary>
         <secondary>5.6.7.8</secondary>
      </WINS>
–>
      <sessionDebug flags="Negotiate,Socket"/>
   </config>

   <config evaluator="string-compare" condition="FTP Server">
     <serverEnable enabled="true"/>
<!–      <debug flags="File,Search,Error,Directory,Info,DataPort"/> –>
   </config>
  
   <config evaluator="string-compare" condition="NFS Server">
     <serverEnable enabled="false"/>
   </config>
   
   <config evaluator="string-compare" condition="Filesystems">
     <filesystems>
       
       <!– Alfresco repository access shared filesystem –>
         <filesystem name="Alfresco">
            <store>workspace://SpacesStore</store>
            <rootPath>/app:company_home</rootPath>

         <!– Add a URL file to each folder that links back to the web client –>
         <urlFile>
               <filename>__AlfrescoClient.url</filename>
               <webpath>http://${localname}:8080/alfresco/</webpath>
            </urlFile>

         <!– Mark locked files as offline –>
          <offlineFiles/>

         <!– Desktop actions –>
         <!– Uses a client-side application to trigger a server-side action                         –>
         <!–   Echo - displays a message echoed from the server                                     –>
         <!–   URL  - launches a URL via the Windows shell                                          –>
         <!–   CmdLine - launches the Notepad application                                           –>
         <!–   CheckInOut - checks files in/out, drag and drop files onto the application           –>
         <!–   JavaScript - run a server-side script                                                –>
         <!–   JavaScriptURL - server-side script that generates a URL to the folder using a ticket –>
         <!–                   to avoid having to logon                                             –>

         <desktopActions>
            <global>
                    <path>alfresco/desktop/Alfresco.exe</path>
               <webpath>http://${localname}:8080/alfresco/</webpath>
            </global>
            <action>
               <class>org.alfresco.filesys.smb.server.repo.desk.EchoDesktopAction</class>
               <name>Echo</name>
                 <filename>__AlfrescoEcho.exe</filename>
            </action>
            <action>
               <class>org.alfresco.filesys.smb.server.repo.desk.URLDesktopAction</class>
               <name>URL</name>
                 <filename>__AlfrescoURL.exe</filename>
            </action>
            <action>
               <class>org.alfresco.filesys.smb.server.repo.desk.CmdLineDesktopAction</class>
               <name>CmdLine</name>
                 <filename>__AlfrescoCmd.exe</filename>
            </action>
            <action>
               <class>org.alfresco.filesys.smb.server.repo.desk.CheckInOutDesktopAction</class>
               <name>CheckInOut</name>
                 <filename>__AlfrescoCheckInOut.exe</filename>
            </action>
            <action>
               <class>org.alfresco.filesys.smb.server.repo.desk.JavaScriptDesktopAction</class>
               <name>JavaScript</name>
               <filename>__AlfrescoScript.exe</filename>
               <script>alfresco/desktop/dumpRequest.js</script>
               <attributes>anyFiles, multiplePaths , allowNoParams</attributes>
               <preprocess>confirm, copyToTarget</preprocess>
            </action>
            <action>
               <class>org.alfresco.filesys.smb.server.repo.desk.JavaScriptDesktopAction</class>
               <name>JavaScriptURL</name>
               <filename>__AlfrescoDetails.exe</filename>
               <script>alfresco/desktop/showDetails.js</script>
               <attributes>anyFiles</attributes>
               <preprocess>copyToTarget</preprocess>
            </action>

         </desktopActions>
         
                   
<!–
            <accessControl default="Write">
               <user name="admin" access="Write"/>
               <address subnet="90.1.0.0" mask="255.255.0.0" access="Write"/>
            </accessControl>
–>
         </filesystem>
       
       <!– AVM virtualization view of all stores/versions for WCM –>
         <avmfilesystem name="AVM">
            <virtualView/>
         </avmfilesystem>
       
      </filesystems>
   </config>

   <config evaluator="string-compare" condition="Filesystem Security">
      <authenticator type="enterprise">
      </authenticator>

<!–
      <globalAccessControl default="None">
         <user name="admin" access="Write"/>
         <address ip="90.1.0.90" access="Write"/>
      </globalAccessControl>

      <users>
         <localuser name="user">
            <password>user</password>
            <comment>Normal user account</comment>
         </localuser>
   
         <localuser name="administrator">
            <password>admin</password>
            <administrator/>
            <comment>Administrator account</comment>
         </localuser>
      </users>
–>
   </config>


</alfresco-config>


file-servers-custom.xml
<alfresco-config area="file-servers">

   <!– To override the default Alfresco filesystem use replace="true", to –>
   <!– add additional filesystems remove the replace="true" attribute     –>
  
   <config evaluator="string-compare" condition="Filesystems" replace="true">
      <filesystems>

         <filesystem name="Alfresco">
            <store>workspace://SpacesStore</store>
            <rootPath>/app:company_home</rootPath>

            <!– Add a URL file to each folder that links back to the web client –>
            <urlFile>
               <filename>__Alfresco.url</filename>
               <webpath>http://${localname}:8080/alfresco/</webpath>
            </urlFile>

            <!– Mark locked files as offline –>
            <offlineFiles/>

            <!– Desktop actions –>

            <desktopActions>
               <global>
                  <path>alfresco/desktop/Alfresco.exe</path>
                  <webpath>http://${localname}:8080/alfresco/</webpath>
               </global>
               <action>
                  <class>org.alfresco.filesys.smb.server.repo.desk.CheckInOutDesktopAction</class>
                  <name>CheckInOut</name>
                  <filename>__CheckInOut.exe</filename>
               </action>
               <action>
                  <class>org.alfresco.filesys.smb.server.repo.desk.JavaScriptDesktopAction</class>
                  <name>JavaScriptURL</name>
                  <filename>__ShowDetails.exe</filename>
                  <script>alfresco/desktop/showDetails.js</script>
                  <attributes>anyFiles</attributes>
                  <preprocess>copyToTarget</preprocess>
               </action>

            </desktopActions>

<!–
            <accessControl default="Write">
               <user name="admin" access="Write"/>
               <address subnet="90.1.0.0" mask="255.255.0.0" access="Write"/>
            </accessControl>
–>
         </filesystem>
       
       <!– AVM virtualization view of all stores/versions for WCM –>
         <avmfilesystem name="AVM">
            <virtualView/>
         </avmfilesystem>
       
      </filesystems>
   </config>

</alfresco-config>

I have done all the steps in forums, I have uncommented <desktopActions> in file-server.xml, I have added domain="THEINIT" properties for <host> in file-server.xml. I have changes the .dll file as mentioned in http://forums.alfresco.com/en/viewtopic.php?f=8&t=10523&p=61710#p61710. I have tried with both <host name="${localname}_A"/>  and <host name="${localname}A"/> . I have also created
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetBT\Parameters]
"SMBDeviceEnabled"=dword:00000000
as said in http://wiki.alfresco.com/wiki/File_Server_Configuration#SMB.2FCIFS_Server_Configuration.
my system info is:
AlfrescoCommunity-2.9.0B/jdk-1_5_0_01-windows-i586/mysql-essential-5.0.16-win32/windows server2003/ and the clients are all xp!

please help me out Smiley Sad
thanks
FSB

witho
Champ on-the-rise
Champ on-the-rise
Hi fbehfar,

In the parameter domain of your file-servers.xml you have to add your domain name. In my project I added domain="THEINIT" because this is my domain name. If you have a domain or workgroup configured in your LAN you'll have to put it in the configuration file.

I hope this helps you.

fbehfar
Champ on-the-rise
Champ on-the-rise
Hi witho,
thanks for your quick reply!
I have change it to my domain name, but it doesn't still work Smiley Sad

<config evaluator="string-compare" condition="CIFS Server">
     <serverEnable enabled="true"/>
      <host name="${localname}A" domain="APSG"/>
      <comment>Alfresco CIFS Server</comment>

that's making me crazy!
I guess there should be something wrong with windows xp, and I have to config something in XP! because I have none of the above problem with a client, which has a windows server 2003 on it! what is it?

FSB