31.2. Configure Samba

Move into the new Samba directory, and move into its source subdirectory.

  1. Edit the smbsh.in file, vi smbwrapper/smbsh.in and change the line:
    
          SMBW_LIBDIR=${SMBW_LIBDIR-@builddir@/smbwrapper}
            
    To read:
    
          SMBW_LIBDIR=${SMBW_LIBDIR-/usr/bin}
            
    This change will relocate the lib directory of Samba to be under the /usr/bin directory.

  2. Edit the Makefile.in file, vi Makefile.in and change the line:

    1. 
            SBINDIR  =  @bindir@
                
      To read:
      
            SBINDIR  =  @sbindir@
                

    2. 
            VARDIR  =  @localstadir@
                
      To read:
      
            VARDIR  =  /var/log/samba
                
      This will specify that our sbin directory for the Samba binaries files will be located in the /usr/sbin directory, and that the /var directory for Samba log files will be under the /var/log/samba subdirectory.

  3. Edit the convert_smbpasswd file, vi script/convert_smbpasswd and change the line:
    
          nawk 'BEGIN {FS=":"}
            
    To:
    
          gawk 'BEGIN {FS=":"}
            
    This will specify to use the GNU Linux version of the awk text processing utility instated of the Bell Labs research version of awk program for the smbpasswd file.

  4. Edit the smbmount.c file, vi client/smbmount.c and change the lines:
    
          static void close_our_files(int client_fd)
              {
              int i;
              for (i = 0; i < 256; i++) {
              if (i == client_fd) continue;
              close(i);
              }
            
    To read:
    
          static void close_our_files(int client_fd)
              {
              struct rlimit limits;
              int i;
    
              getrlimit(RLIMIT_NOFILE,&limits);
              for (i = 0; i < limits.rlim_max; i++) {
              if (i == client_fd) continue;
              close(i);
              }
            
    This step will make the smbmount.c file compatible with Red Hat's glibc 2.1 library.