Enviar Respuesta  Enviar Tema 
1 Votos - 5 en Promedio   [HOWTO] Cups en Solaris 10
Autor Mensaje
dragonauta
Linux Registered User #436806
******
Super Moderador

Mensajes: 523
Grupo: Super Moderador
Registro en: Nov 2006
Estado: Sin Conexión
Reputación: 7
Mensaje: #1
[HOWTO] Cups en Solaris 10

Es un hecho que el antiquísimo sistema de impresión de unix ya está obsoleto y cada vez más la gente piensa en CUPS como sistema administrador de impresión.
Los viejos lp, lpadmin y compañía ya pueden tener un eterno descanso.

[info]Si bien este howto abarca la instalación de CUPS en Solaris 10 11/06 y 8/07, no dudo que se adaptará excelentemente bien a OpenSolaris.

Para realizar las siguientes tareas necesitaremos el DVD Software Companion de Solaris o bien descargar los paquetes individuales desde:
Solaris 10: http://www.sun.com/software/solaris/free...wnload.xml

Adjunto para otras versiones por si es necesario:
Solaris 9: http://www.sun.com/software/solaris/free...wnload.xml
Solaris 8 2/02: http://www.sun.com/software/solaris/free...wnload.xml

[info]Nótese que hace falta una cuenta MySun, el registro es gratuito.

Es recomendable descargar el paquete Depend-i386.pkgs.tar.bz2 e instalarlo (respetar las dependencias):

Código:
# bunzip2 Depend-i386.pkgs.tar.bz2
# tar xvf Depend-i386.pkgs.tar
# pkgadd -d SFWgcmn
# pkgadd -d SFWungif
# pkgadd -d SFWimlib

luego instalar el resto de los paquetes

Debe instalarse el paquete Printing-i386.pkgs.tar.bz2, en este orden:

Código:
# bunzip2 Printing-i386.pkgs.tar.bz2
# tar xvf Printing-i386.pkgs.tar
# pkgadd -d SFWfltk
# pkgadd -d SFWoslp
# pkgadd -d SFWcups
# pkgadd -d SFWpnm2p
# pkgadd -d SFWxpp


Nótese que EPS Ghostscript ya esta incluido en la instalación de Solaris (vea que existe el binario 'gs' en /usr/sfw/bin)
En este punto, CUPS esta instalado y se encuentra en /opt/sfw/cups.


Vamos a deshabilitar los servicios lp de Solaris, para ello es mejor deshabilitar los servicios, renombrar los binarios y crear links simbólicos a los que provee cups. Aquí hay un script de ejemplo:

Código:
#!/bin/bash
svcadm disable application/print/ipp-listener
svcadm disable application/print/server
svcadm disable application/print/rfc1179
cd /usr/bin
for i in lp lpstat cancel enable ; do
    mv $i $i.old
    ln -s /opt/sfw/cups/bin/$i .
done
cd /usr/sbin
for i in lpadmin lpmove accept ; do
    mv $i $i.old
    ln -s /opt/sfw/cups/sbin/$i .
done
ln -s /usr/sfw/bin/smbspool /opt/sfw/cups/lib/cups/backend/smb


Ahora crearemos el servicio para poder manipularlo mediante SMF.
Primero crearemos el archivo xml necesario, el cual guardaremos en /var/svc/manifest/site/cups.xml:

Código:
<?xml version="1.0"?>
<!DOCTYPE service_bundle SYSTEM "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
<service_bundle type='manifest' name='site:cups'>

<service name='site/cups' type='service' version='0'>
  <create_default_instance enabled='true' />
  <single_instance />
  <dependency name='paths'
      grouping='require_all'
      restart_on='error'
      type='path'>
    <service_fmri value='file://localhost/opt/sfw/cups/sbin/cupsd' />
    <service_fmri value='file://localhost/opt/sfw/cups/etc/init.d/cups' />
  </dependency>

  <dependency name='network'
      grouping='require_any'
      restart_on='error'
      type='service'>
    <service_fmri value='svc:/network/service' />
  </dependency>

  <dependency
      name='fs-local'
      type='service'
      grouping='require_all'
      restart_on='none'>
    <service_fmri value='svc:/system/filesystem/local' />
  </dependency>

  <property_group name='start' type='method'>
    <propval name='exec' type='astring' value='/opt/sfw/cups/etc/init.d/cups start'/>
  </property_group>
  <property_group name='stop' type='method'>
    <propval name='exec' type='astring' value='/opt/sfw/cups/etc/init.d/cups stop'/>
  </property_group>

</service>

</service_bundle>


Ahora por linea de comandos configuramos el servicio:

Código:
# svccfg
svc:> add site/cups
svc:> select site/cups
svc:/site/cups> addpg start method
svc:/site/cups> addpg stop method
svc:/site/cups> setprop start/exec = astring:"/opt/sfw/cups/etc/init.d/cups start"
svc:/site/cups> setprop stop/exec = astring:"/opt/sfw/cups/etc/init.d/cups stop"
svc:/site/cups> add default
svc:/site/cups> quit


Lo habilitamos:

Código:
# svcadm -v enable svc:/site/cups:default


y le indicamos que utilice el archivo xml que hemos creado:

Código:
#svccfg -v import /var/svc/manifest/site/cups.xml


Verificamos que cups esta funcionando (si no es así, lanzarlo):

Código:
# svcs -a | grep cups


Configuramos la contraseña de root para cups (puede ser distinta del usuario root):

Código:
# /opt/sfw/cups/bin/lppasswd -g sys -a root

esta contraseña se almacena en /opt/sfw/cups/etc/cups/passwd.md5

Vamos a ver en /usr/lib/lp/model/ppd/system/foomatic si existe algún archivo ppd que corresponda a nuestra impresora.
Si existe, lo copiamos:

Código:
# cp /usr/lib/lp/model/ppd/system/foomatic/ejemplo.ppd /opt/sfw/cups/share/cups/model

En algunos casos puede que los archivos ppd estén comprimidos con gzip.

De no existir el driver, se puede utilizar alguno alterno (por lo general los de modelos anteriores funcionan correctamente) o podemos dirigirnos a OpenPrinting.org y elegir el driver que más nos convenga.


También debemos bajar dos scripts de PERL:

Código:
# wget http://www.linuxprinting.org/foomatic-rip
# wget http://www.linuxprinting.org/foomatic-gswrapper


hacer una pequeña modificación en foomatic-rip para agregar el interprete gs de Ghostscript.

Código:
# vi foomatic-rip

buscamos la línea que sigue a continuación y agregamos al final "/usr/sfw/bin":
my $exepath = “NONE/bin:/usr/local/bin:/usr/bin:/bin:/usr/sfw/bin";


guardamos el cambio y movemos ambos archivos al directorio de filtros.

Código:
# chmod 755 foomatic*
# mv foomatic* /opt/sfw/cups/lib/cups/filter/


Abrimos un navegador y escribimos la dirección: http://localhost:631/admin
colocamos root y la contraseña que hemos definido anteriormente.
Agregamos la impresora, configuramos y lanzamos una impresión de prueba.
Se pueden agregar impresoras conectadas al LPT, al USB, de red o compartidas por windows montándolas por samba.

Solo resta agregar las impresoras necesarias, definir la impresora por default y listo.
Disfruta tu coctel Solaris/cups.


Fuentes:
http://www.cups.org
http://blogs.sun.com/DanX/entry/using_cu...server_for
http://www.sun.com/bigadmin/content/subm..._sol10.jsp


01-25-2008 02:40 PM
Encuentra todos los mensajes de este usuario Cita este mensaje en tu respuesta
p_eter
Chaos Manager
*******
Administrador

Mensajes: 4,163
Grupo: Administrador
Registro en: Jun 2005
Estado: En Línea
Reputación: 11
Mensaje: #2
RE: [HOWTO] Cups en Solaris 10

Excelente Howto, dragonauta!
A eso le llamo empezar el año con pilas renovadas. 023

Grax


01-25-2008 04:00 PM
Visita el website del usuario Encuentra todos los mensajes de este usuario Cita este mensaje en tu respuesta
dragonauta
Linux Registered User #436806
******
Super Moderador

Mensajes: 523
Grupo: Super Moderador
Registro en: Nov 2006
Estado: Sin Conexión
Reputación: 7
Mensaje: #3
RE: [HOWTO] Cups en Solaris 10

Olvidé agregar la opción para dar marcha atrás a los cambios realizados. Aquí va.

Damos de baja el servicio de cups

Código:
# svcadm disable cups


y luego correr otro script para restaurar los binarios y servicios originales de Solaris:

Código:
#!/bin/bash
cd /usr/bin
for i in lp lpstat cancel enable ; do
    mv $i $i.cups
    mv $i.old $i
done
cd /usr/sbin
for i in lpadmin lpmove accept ; do
    mv $i $i.cups
    mv $i.old $i
done
svcadm enable application/print/ipp-listener
svcadm enable application/print/server
svcadm enable application/print/rfc1179


01-26-2008 10:33 AM
Encuentra todos los mensajes de este usuario Cita este mensaje en tu respuesta
Enviar Respuesta  Enviar Tema 

Posibles Temas Similares...
Tema: Autor Respuestas: Vistas: Ultimo Mensaje
  Filesystem en solaris 10... zam199 1 57 08-15-2008 08:16 AM
Ultimo Mensaje: dragonauta
  lshw en solaris maripen67 1 43 08-08-2008 11:52 AM
Ultimo Mensaje: p_eter
  Red en Solaris 9 zam199 1 99 07-17-2008 12:27 AM
Ultimo Mensaje: dragonauta
  como instalar solaris 10 desde dvd (solucionado) kornis 10 174 07-06-2008 03:50 PM
Ultimo Mensaje: dragonauta

Ver la Versión para Impresión
Mandar este Tema a algún Amigo
Subscríbete a este Tema | Agrega este Tema a Tus Favoritos

Salto de Foro: