2.2 Configurando Samba.

La distribución de fuentes de Samba 2.0 y anteriores no tenían inicialmente un makefile. En su lugar, se generaba uno a través de un script GNU configure, el cual se localizaba en el directorio samba-2.0.x /source/. El script configure, que debería ser ejecutado como root, se encarga de las configuraciones específicas a la máquina destino donde se iba a instalar Samba. Sin embargo, todavía puedes decidir sobre algunas opciones globales. Las opciones globales pueden ser establecidas pasando opciones a través de la línea de comandos:

# ./configure --with-ssl

Por ejemplo, esto configurará el fichero makefile para Samba con soporte para el protocolo de encriptación Secure Sockets Layer (SSL). Si quieres ver la lista completa de opciones, teclea lo siguiente:

#./configure --help

Cada una de estas opciones activa/desactiva varias características. Normalmente activarás una característica especificando la opción -con-opcion, la cual causará que la característica sea compilada e instalada. Del mismo modo, si especificas una opción -sin-opcion, la característica será desactivada. Desde Samba 2.0.5, cada una de las siguientes características están desactivadas por defecto:

-with-smbwrapper
Incluye soporte SMB wrapper, lo cual permite a los ejecutables de la parte Unix acceder a sistemas de ficheros SMB/CIFS como si fueran sistemas de ficheros de Unix. Recomendamos usar esta opción. Sin embargo, al tiempo de la escritura de este libro, nos topamos con diversas incompatibilidades entre el paquete smbwrapper y la librería GNU libc versión 2.1, y no se pudo compilar en Red Hat 6.0. Busca más información sobre estas incompatibilidades en la página web de Samba.
-with-afs
Incluye soporte para el sistema de ficheros de Andrew de la Universidad Carnegie Mellon. Si vas a servir ficheros AFS vía Samba, te recomendamos compilar Samba una vez primero sin activar esta característica, para asegurarte de que todo funciona bien. Una vez la versión funcione correctamente, recompila Samba con esta característica activada.
-with-dfs
Incluye soporte para DFS, una versión posterior de AFS, usado por OSF/1 (Digital Unix). Nota que esto NO ES LO MISMO que el DFS de Microsoft, el cual es un sistema de ficheros completamente distinto. De nuevo, recomendamos compilar Samba primero sin ésta característica, y si todo funciona bien, recompila con ella activada.
-with-krb4=directorio-base
 
Incluye soporte para Kerberos version 4.0, especificando explícitamente el directorio base de la distribución. Kerberos es un protocolo de seguridad de red de MIT que usa cripografía para proporcionar seguridad entre nodos. Microsoft ha anunciado que Kerberos 5.0 será el mecanismo estandar de autentificación para Microsoft Windows 2000 (NT 5.0). Sin embargo, los mecanismo de autentificación de Kerberos 5.0 son bastante diferentes a los mecanismos de seguridad de Kerberos 4.0. Si tienes Kerberos version 4 en tu sistema, el equipo de Samba recomienda que actualices y uses la opción -with-krb5 (mira el siguiente elemento). Puedes encontrar más información sobre Kerberos en http://web.mit.edu/kerberos/www.

-with-krb5=directorio-base
Incluye soporte para Kerberos version 5.0, especificando explícitamente el directorio base de la distribución. Microsoft ha anunciado que Kerberos 5.0 será el mecanismo estandar de autentificación para Microsoft Windows 2000 (NT 5.0). Sin embargo, no hay garantías de que Microsoft no amplíe Kerberos para sus propias necesidades en el futuro. Actualmente, el soporte de Kerberos en Samba sólo usa un interfaz de claves de texto plano, no encriptadas. Puedes encontrar más información sobre Kerberos en http://web.mit.edu/kerberos/www.
-with-automount
Incluye soporte para automounter, una característica frecuentemente usada en sitios que ofrecen NFS.
-with-smbmount
Incluye soporte smbmount, lo cual es sólo para Linux. Esta característica no estaba mantenida al tiempo de la escritura de este libro, así que el equipo de Samba creó una característica adicional y proporcionó smbwrapper en su lugar. La característica smbwrapper funciona en mayor número de plataformas Unix que smbmount, así que normalmente querrás usar -with-smbwrapper en lugar de esta opción.
-with-pam
Incluye soporte para para Pluggable Authentication Modules (PAM), una característica común de autentificación en el s.o. Linux.
-with-ldap
Incluye soporte para el Lightweight Directory Access Protocol (LDAP). Una versión futura de LDAP será usada en el s.o. Windows 2000 (NT 5.0); este soporte de Samba es experimental. LDAP es un flexible protocolo de directorios cliente-servidor que proporciona información tal como certificados y miembros de grupos2.3.
-with-nis
Incluye soporte para obtener información password-fichero desde NIS (las páginas amarillas de la red).
-with-nisplus
Incluye soporte para obtener información password-fichero desde NIS+, el sucesor de NIS.
-with-ssl
Incluye soporte para Secure Sockets Layer (SSL), el cual es usado para proporcionar conexiones encriptadas desde cliente al servidor. El Apéndice A, Configurando Samba con SSL, describe la configuración de Samba con soporte SSL.
-with-nisplus-home
Incluye soporte para localizar qué servidores contienen un determinado directorio home de usuario y pedirle que conecte a él. Requiere -with-nis y, usualmente, -with-automounter.
-with-mmap
Incluye experimental memory mapping code. Esto no es necesario para bloqueo rápido, el cual ya usa mmap o System V shared memory.
-with-syslog
Incluye soporte para usar la utilidad SYSLOG para información de registro generada por el servidor Samba. Hay un par de opciones de configuración de Samba que puedes usar para activar el soporte SYSLOG; El Capítulo 4, Discos Compartidos, las discute.
-with-netatalk
Incluye soporte experimental para interoperar con el servidor de ficheros Netatalk (Macintosh).
-with-quotas
Incluye soporte de cuotas de disco.
Como cada una de estas opciones están desactivadas por defecto, ninguna de ellas es esencial para Samba.

En adición, la Tabla 2.1 muestra algunos de los otros parámetros que puedes usar con el script configure si quieres ubicar partes de la distribución de Samba en diferentes lugares, quizás para hacer uso de múltiples discos o particiones. Nota que los valores por defecto de la tabla muchas veces se refieren a un prefijo especificado previamente.


Table: Opciones de Configuración Adicionales.
Opción Significado V. por Defecto
-prefix=directorio Instala los archivos independientes de la arquitectura en el directorio base especificado. /usr/local/samba
-eprefix=directorio Instala los archivos dependientes de la arquitectura en el directorio base especificado. /usr/local/samba
-bindir=directorio Instala ejecutables de usuario en el directorio especificado. eprefix /bin
-sbindir=directorio Instala ejecutables de administrador en el directorio especificado. eprefix /bin
-libexecdir=directorio Instala programas ejecutables en el directorio especificado. eprefix /libexec
-datadir=directorio Instala los datos de sólo lectura independientes de la arquitectura en el directorio especificado. prefix /share
-libdir=directorio Instala librerías de programas en el directorio especificado. eprefix /lib
-includedir=directorio Instala los paquetes de ficheros include en el directorio especificado. prefix /include
-infodir=directorio Instala los ficheros de información adicional en el directorio especificado. prefix /info
-mandir=directorio Instala las páginas de manual en el directorio especificado. prefix /man


De nuevo, antes de ejecutar el script configure, es importante que seas el usuario root del sistema. De lo contrario, podrías obtener un warning como este:

configure: warning: running as non-root will disable some tests

No querrás que ningún test sea desactivado cuando se cree el makefile de Samba; esto amplía el potencial de errores al tiempo de compilación o ejecución de Samba en tu sistema.

Aquí tienes una simple ejecución del script configure, el cual crea un makefile para Samba 2.0.4 para la plataforma Linux. Nota que debes ejecutar el script en el directorio source, y que varias líneas de la mitad de la salida han sido omitidas:

# cd samba-2.0.4b/source/ 
# ./configure | tee mylog
loading cache ./config.cache 
checking for gcc... (cached) gcc 
checking whether the C compiler (gcc -O ) works... yes 
checking whether the C compiler (gcc -O ) is a cross-compiler... no 
checking whether we are using GNU C... (cached) yes 
checking whether gcc accepts -g... (cached) yes 
checking for a BSD compatible install... (cached) /usr/bin/install -c


...(contenido omitido)...


checking configure summary
configure OK
creating ./config.status 
creating include/stamp-h
creating Makefile 
creating include/config.h

En general, cualquier mensaje desde configure que no sea antecedido por las palabras checking o creating es un error; frecuentemente te ayudará redirigir la salida del script a un fichero para localizar errores, como hicimos con el comando tee anteriormente. Si se produce un error durante la compilación, información más detallada sobre él se puede encontrar en el fichero config.log, el cual se genera en el directorio local mediante el script configure.

Si todo va bien, obtendrás un mensaje checking configure summary seguido de un mensaje configure OK y 4 ó 5 mensajes de creación de ficheros. Así que, si ha ido bien ... El Siguiente Paso: compilar.



Footnotes

... grupos2.3
Por directorio, no queremos indicar un directorio en un sistema de ficheros, sino un directorio indexado (tal como una guía de teléfonos). La información es almacenada y puede ser fácilmente retornada en un sistema público LDAP.
TLDP-ES 03/11/2002