Una de las fases de mi proyecto es proporcionar un repositorio de documentos para el grupo de investigación. He utilizado DSpace porque, en su momento, fue la herramienta elegida para montar Gredos, el repositorio institucional de la USAL.
Me ha costado bastante lograr que funcionara ya que a mi falta de experiencia con Tomcat se ha unido la necesidad de hacer la instalación en el mismo servidor en el que ya había otro DSpace. Esto último también ha sido una ventaja porque no he tenido que preocuparme de los requisitos de instalación, evitando así tener que instalar Tomcat, Postgres y Java.
Voy a explicar brevemente los pasos que he seguido basándome en este tutorial. He utilizado la versión 1.6.2 de DSpace y la 6.0.20 de Tomcat. [dspace-source] se refiere a /opt/dspace-1.6.2-src-release.
– Crear el usuario ‘dspace’ si no existe ya.
sudo useradd -M dspace sudo passwd dspace
– Crear un directorio por cada instancia de DSpace que vayamos a instalar. En mi caso ya había una así que sólo tuve que crear un directorio. No es necesario que nuestras instancias se encuentren en /opt, vale cualquier otro directorio donde tengamos permisos de escritura.
sudo mkdir /opt/dspace-2 sudo chown dspace /opt/dspace-2 sudo chmod 777 /opt/dspace-2
– Creamos el usuario ‘dspace’ en ‘Postgres’ y una base de datos por cada instancia que vayamos a instalar.
sudo su postgres createuser -U postgres -d -A -P dspace createdb -U dspace -E UNICODE dspace-2
– Para cada instancia debemos definir un fichero de configuración en [dspace-source]/dspace/config. Para ello duplicamos el fichero por defecto dspace.cfg.
sudo cp [dspace-source]/config/dspace.cfg [dspace-source]/config/dspace-2.cfg
– Ahora editamos cada fichero de configuración y cambiamos las siguientes línea. Debe indicarse el puerto en el que esté configurado Tomcat.
dspace.dir = /opt/dspace-2 dspace.hostname = http://your-dspace-url dspace.baseUrl = http://your-dspace-url:443 dspace.url = http://your-dspace-url:443/dspace-2 db.url = jdbc:postgresql://localhost:5432/dspace-2 db.username = dspace db.password = contraseña-usuario-postgres-dspace
– Si se desea configurar el envío de correo hay que editar las siguientes líneas del fichero de configuración. En el ejemplo se muestran los parámetros que deben utilizarse para el envío a través de Gmail.
mail.server=smtp.gmail.com mail.server.username = usuario-de-gmail mail.server.password = contraseña-de-gmail mail.from.address = dirección-de-email feedback.recipient = dirección-de-email mail.admin = dirección-de-email # Descomentar las siguientes líneas mail.extraproperties = mail.smtp.socketFactory.port=465, \ mail.smtp.socketFactory.class=javax.net.ssl.SSLSocketFactory, \ mail.smtp.socketFactory.fallback=false
– Otras opciones interesantes son las siguientes:
# Idioma por defecto default.locale = es # Idiomas que el usuario puede seleccionar webui.supported.locales = es, en # Si se desea evitar que cualquier usuario pueda registrarse authentication.shib.autoregister = false # En mi caso la opción anterior no realizaba bien su cometido así que habilité el siguiente parámetro e indiqué un dominio que no existe # Este parámetro restringe el registro únicamente a aquellos emails que terminan en los dominios indicados. authentication.password.domain.valid = xxx.xxx
– Accedemos al sistema como el usuario ‘dspace’ y generamos los paquetes de la instalación con maven.
cd [dspace-source]/dspace/ sudo su dspace mvn package
-Instalamos cada una de las instancias utilizando los ficheros de configuración definidos anteriormente.
cd [dspace-source]/dspace/target/dspace-[version].dir/ sudo su dspace ant -Dconfig=[dspace-source]/config/dspace-2.cfg fresh_install
– Añadimos una cuenta de administrador.
sudo -u dspace [dspace-instances]/dspace-2/bin/create-administrator
– Configuramos Tomcat.
sudo vim [TOMCAT_HOME]/conf/server.xml <!-- DEFINE A CONTEXT PATH FOR DSpace JSP User Interface --> <Context path="/dspace-2" docBase="[dspace-instances]/dspace-2/webapps/jspui/" debug="0" reloadable="true" cachingAllowed="false" allowLinking="true"/>
– Por último reiniciamos Tomcat y listo.Para comprobar que funciona correctamente basta acceder a la url que se indicó en el fichero de configuración: http://your-dspace-url:443/dspace-2
sudo /etc/init.d/tomcat start
Recomendaría los siguientes comandos para el usuario SQL y la base de datos:
createuser -U postgres -D -A -P dspace
createdb -U postgres -E UNICODE -O dspace dspace
Los proporcionados no funcionan en ubuntu server 10.10 al menos.
@Carlos Gracias! La instalación la realicé en un Unbuntu Server 9.10.
Buenas tardes,
Estoy tratando de cambiar la configuración del correo comercial (gmail) por el de mi institución (microsoft exchange) y no he podido realizarlo con éxito.
Gentilmente le solicito información para agregar el correo xxxxxx@usbcali.edu.co
Quedo atento a sus comentarios
@Carlos Urrea No tengo experiencia en utilizar DSpace con un servidor SMTP distinto a Gmail. En mi caso necesitaba utilizar Gmail y por tanto no investigué como realizar el envío de correo de otra forma.
Siento no poder ayudarte más
buenas tardes alicia
tengo un problema en configurar los archivos de subida, el archivo upload, me sale el mensaje de Processing of multipart/form-data request failed. /opt/dspace-1.8.2-release/dspace/upload/upload__2609e7b1_1396cfed8c7__7ffe_00000012.tmp (Permission denied)
Hola @ruben!
Nunca he tenido ese problema, aunque tiene toda la pinta de que el directorio upload de DSpace no tiene los permisos necesarios para que el servidor web pueda escribir en él.
Gracias alicia, si ese era el problema, le tuve que dar todos los permisos al directorio
Estoy instalando DSpace en Ubuntu 10.04 y estoy en la de parte de crear el usuario ‘dspace’ aplique el comando sudo useradd -m dspace y me aparece lo siguiente:
Uso: useradd [opciones] USUARIO
Opciones:
-b, –base-dir DIR_BASE directorio base para el directorio personal de
la nueva cuenta
-c, –comment COMENT campo GECOS de la nueva cuenta
-d, –home-dir DIREC directorio personal de la nueva cuenta
-D, –defaults muestra o cambia la configuración por omisión de useradd
-e, –expiredate FECHA_EXPIR fecha de expiración de la nueva cuenta
-f, –inactive INACTIVO periodo de inactividad de la contraseña de la nueva cuenta
-g, –gid GRUPO nombre o ID del grupo primerio de la nueva
cuenta
-G, –groups GRUPOS lista de grupos secundarios de la nueva
cuenta
-h, –help muestra esta ayuda y sale
-k, –skel DIR_ESQUEL usa este directorio esqueleto alternativo
-K, –key CLAVE=VALOR sobreescribe los predeterminados de /etc/login.defs
-l, –no-log-init no añadir al usuario a las bases de datos
lastlog y faillog
-m, –create-home crea el directorio personal del usuario
-M, –no-create-home no crea el directorio personal del usuario
-N, –no-user-group no crea un grupo con el mismo nombre que el
del usuario
-o, –non-unique permite crear usuarios con UID duplicados
(no únicos)
-p, –password CONTRASEÑA contraseña cifrada de la nueva cuenta
-r, –system crea una cuenta del sistema
-s, –shell INTÉRP intérprete de inicio de sesión de la nueva cuenta
-u, –uid UID ID de usuario de la nueva cuenta
-U, –user-group crea un grupo con el mismo nombre que el usuario
-Z, –selinux-user SEUSER use aun SEUSER específico para el mapeado de usuario de SELinux
¿QUÉ ES LO QUE ESTOY HACIENDO MAL? o ¿QUÉ DEBO HACER?
Gracias.
Hola @Brenda !
He probado el comando en un Ubuntu server 12.04 y funciona a la perfección. De todas formas he cambiado la opción del comando porque en su día me debí confundir.
sudo useradd -M dspace
La ayuda del comando solo sale si las opciones están mal puestas pero, tanto -m como -M, están dentro del listado de opciones que soporta tu comando en Ubuntu 10.04