Archivo de la etiqueta: squeeze

Instalación de versiones de PostgreSQL en Debian que no son las del repositorio oficial via APT

Cuantas veces pasa que no están en el repositorio oficial justo la versión de PostgreSQL que necesitamos, que tenemos un Lenny, y necesitamos un PostgreSQL 8.4… que tenemos Squeeze y necesitamos 8.2 …. ¿como lo solucionamos casi siempre?… a lo macho!… compilando!!!… pero… la comunidad de PostgresSQL nos da una alternativa, un repositorio de paquetes para APT con las ultimas versiones de cada rama.

Como se hace?… así:

  • Importamos la signing key del repositorio

  • Editamos el archivo /etc/apt/sources.list.d/pgdg.list, y agregamos una linea para el repositorio, sustituyendo el  “codename” de la release según corresponda.

  • Configuraciones especificas para que le preste atencion a los paquetes del nuevo repositorio recien cargado en lugar a los que viene en los repositorios de Debian. En squeeze se debe editar el archivo /etc/apt/preferences.d/pgdg.pref (probablemente no exista), y en lenny el archivo /etc/apt/preferences (que tampoco probablemente exista), y agregar el siguiente contenido (lo mismo para cualquier versión de Debian).

  • Actualizar el listado de paquetes, y instalar el paquete pgdg-keyring para tener automáticamente actualizaciones de las key de los paquetes

Una vez que terminamos de configurar, ya podemos hacer nuestro querido apt-get del paquete específicamente, en mi caso necesitaba el PostgreSQL 8.4.

 

Pero claramente ustedes pueden instalar el que necesiten, pueden fijarse los paquetes disponibles con el comando:

Nota: La instalación de postgresql probablemente solicite algunas librerías que deben estar en los repositorios oficiales de Debian, en el caso de los Debian Lenny, los repositorios están deprecados, para salvar el problema pueden cargar en su /etc/apt/sources.list el repostorio “archive” de Debian:

Fuente: http://www.postgresql.org/download/linux/debian/

Compilación de PostgreSQL 8.3.* en Debian 6 (Squeeze)

Volvi… volvi a tener un escritorio Debian… Debian puro… y tengo que reinstalar el servidor PostgreSQL 8.3 para los sistemas SIU (esta es la versión recomendada para la mayoria de los sistemas).

Claramente no estoy inventando la rueda, solo es lo que dice la documentación oficial de postgres, sumado a la instalación de algunas cosas para Debian… pero bue… vi que mis posts fueron utiles para otros… ademas siempre me sirve de ayudamemoria.

Primero que nada me bajo los fuentes del postgres y lo descomprimo

(Al dia de la fecha la versión 8.3.20 es la ultima versión estable de esta rama)

Una vez ahi, necesito compilarlos… pero tengo que bajarme las herramientas…

Y tambien es necesario instalar unas librerias/dependencias para compilar el postgres.

Y empezamos el proceso de compilación, configurandolo… pasamos el parametro –prefix con la ruta donde queremos tener el postgres compilado, yo por costumbre lo dejo en /usr/local/postgres-{version}

Corremos un make y un make install

Luego de haber compilado, y tener el postgres instalado, debemos realizar alguntas tareas mas antes de arrancar el servicio

Una buena costumbre, es hacer un link simbolico con el nombre de la aplicación sin la versión y despues desde otros lugares llamar a la aplicación con este link simbolico… (ya van a ver ejemplos mas adelante) para que al hacer cambios de versión, el cambio sea menos traumaticos y no se tenga que ir cambiando rutas por todo el servidor.

Crear usuario para postgres

Crear carpeta para la base de datos

Crear una instancia de la base de datos (cluster)

Link a los binarios

y agregar la siguiente linea antes de EXPORT_PATH

Configurar el inicio automatico

Y suplantar las siguientes lineas:

prefix=/usr/local/pgsql por prefix=/usr/local/postgresql

PGDATA=»/usr/local/pgsql/data» por «PGDATA=/usr/local/postgresql/data»

Arrancar el PostgreSQL

FIN… Ser feliz!

PHP 5.2 en Debian Squeeze! (Actualizado)

Acabo de encontrar la salvación!!! (y que alguien le preste atención a la hora de publicación) … y no solo me salva hoy… sino que encuentro la solución de un problema que me tiene un poco cansado…

Antes que nada debemos agregar una nuevo repositorio, el repositorio de la versión anterior de Debian.

[bash]nano /etc/apt/sources.list[/bash]

Se debe agregar una entrada para la version anterior, «oldstable», o el nombre clave actual de la versión anterior (que juego de palabras no?) , en este caso «lenny».

Ej: deb http://archive.debian.org/debian-archive/debian/ lenny main contrib non-free

No se olviden de actualizar! con un:

[bash]apt-get update[/bash]

Configuramos en el archivo /etc/apt/preferences para setearle que nuestra «prioridad» es la versión vieja. Según entendí, lo que vamos a lograr, es que cuando actualicemos con apt-get upgrade no se rompa.

[bash]nano /etc/apt/preferences[/bash]

En el caso de que el archivo exista, lo modificamos y le agregamos las siguientes lineas, sino lo creamos …

Package: php5*
Pin: release a=oldstable
Pin-Priority: 700

Package: *
Pin: release a=stable
Pin-Priority: 600

Después debemos chequear que paquetes son los instalados actualmente, ya que probablemente ya hallamos instalado la versión 5.3 de PHP (mi caso).

[bash]dpkg -l | grep php5[/bash]

Si no hay ninguno, simplemente tenemos que instalar el paquete php con el siguiente comando.

[bash]apt-get install php5 -t oldstable[/bash]

El mágico «-t» es el modificador que le dice que versión debe utilizar. Hay que seguir la misma nomenclatura que fue utilizada en /etc/apt/preferences, si pusimos oldstable … ponemos oldstable… si pusimos lenny…. adivinen!

En el caso de que ya teníamos instalado paquetes de PHP en la versión php5.3 los siguientes mágicos comandos, nos van a borrar los archivos y agregar exactamente los mismos paquetes (osea, por ejemplo si instalamos php5-gd) en la versión php5.2.

[bash]
aptitude remove dpkg -l | grep php| awk '{print $2}' |tr "\n" " "
apt-get -t oldstable install dpkg -l | grep php5| awk '{print $2}' |tr "\n" " "
[/bash]

– Woooooowwwwwwwwwww… magia….

Ahora, chequeamos de que los paquetes que instalamos digan que son php5.2!

[bash]dpkg -l | grep php5[/bash]

Muy probablemente les debe haber funcionado… solo queda ser felices… dejo abierto el post para hacer comentarios de si les funciono, les sirvió… mejoras… etc…

PD: Esto también lo probé para el paquete de postgresql, y funciono a la perfección, solo tuve que editar el archivo /etc/apt/preferences con la información correspondiente al paquete.

Si no encuentran los repositorios de la versión que buscan (los repos lenny casi desaparecieron), pueden probar en el archivo de debian, prueben el siguiente repo:

deb http://archive.debian.org/debian-archive/debian/ lenny main contrib non-free

Sigue leyendo