Utilizar una impresora remota que esté conectada a un ordenador Windows
Si usas el Samba y optaste por una instalación completa de la distribución Linux, has de modificar el fichero /etc/smb.conf, para poder acceder al ordenador (que está ejecutando Linux, por supuesto), desde un sistema Windows.
Para comenzar es necesario dar de alta una nueva impresora. La llamaremos en este caso: Sambaprinter.
Para hacerlo crea un archivo de spool para la cola de impresión:
mkdir /var/spool/lpd/Sambaprinter/
Es importante asegurarse de que los permisos de este directorio son adecuados. En el caso de Debian el permiso bueno era el 775: chmod 775 /var/spool/lpd/Sambaprinter/
Dar de alta la impresora en el fichero /etc/printcap, introduciendo en el mismo las siguientes líneas:
Sambaprinter:\
:sd=/var/spool/lpd/Sambaprinter:\
:sh:\
:if=/usr/local/etc/smbprint:\
:af=/var/spool/lpd/Sambaprinter/acct:\
:lp=/dev/null:\
:mx#0:
Aquí, la primera línea especifica el nombre de la impresora. La segunda, su directorio de spool (sd -> Spool Directory).
En la cuarta línea se encuentra la clave de la cuestión: se está especificando un filtro de entrada (if -> Input Filter), de modo que el fichero que se pretende imprimir es enviado a dicho filtro.
A continuación se explica cómo obtenerlo:
El filtro de entrada, smbprint, debe encontrarse entre los ficheros que se copiaron al disco duro al instalar el paquete Samba. Normalmente se halla en algún subdirectorio de /usr/doc/
Una vez localizado el fichero hemos de copiarlo al directorio señalado en la línea if=... que introdujimos anteriormente en /etc/printcap (en nuestro ejemplo a /usr/local/etc/) de modo que esta línea señale a smbprint.
Darle permiso de ejecución:
chmod a+x smbprint
El filtro smbprint básicamente contiene una llamada al programa smbclient (otro de los ficheros que vienen en el paquete Samba) con los parámetros adecuados. Esta llamada se efectúa en las últimas líneas de smbprint. Hemos de asegurarnos de que la ruta de directorios especificada para smbclient (Del tipo /usr/local/samba/smbclient) es correcta, modificándola si es necesario.
Por último hay que especificar la impresora remota en la que deseamos imprimir.
Supongamos que esta impresora se encuentra en el ordenador denominado Computer, que se llama POSTSCRIPTPRINTER (para saber cuáles son los recursos que ofrece la máquina COMPUTER, podemos teclear el comando smbclient -L COMPUTER) y que no requiere de ningún password para su acceso. Se trata entonces de editar un fichero llamado .config, situado en el directorio de spool de la impresora (en nuestro ejemplo, /var/spool/lpd/impreSamba/), e introducir las siguientes líneas:
server=Computer
service=POSTSCRIPTPRINTER
password=""
Este fichero será empleado por smbprint para efectuar la llamada adecuada a smbclient.
No olvidar que hay que volver a iniciar el demonio de impresión para que reconozca a la nueva impresora: lpd
Ya podremos enviar un fichero a la impresora remota, por ejemplo:
lpr -P Sambaprinter prueba.ps
Nota: Para hacer que Sambaprinter sea la impresora utilizada por defecto, sustituir en /etc/printcap
impreSamba:\
por
lp|impreSamba:\