Mostrando las entradas con la etiqueta ubuntu. Mostrar todas las entradas
Mostrando las entradas con la etiqueta ubuntu. Mostrar todas las entradas

Gitweb

Ahora si, un facil y divertido gitweb para nuestros repositorios en git... en ubuntu karmic koala (9.10) instalarlo es tan sencillo como esto:

sudo apt-get install gitweb

1. Gitweb es un simple cgi escrito en perl (gitweb.cgi) la instalacion lo coloca en /usr/lib/cgi-bin, podemos moverlo si gustamos ... por lo pronto lo dejare ahi.

2. Las imagenes y css los coloca en /var/www/ este es el DocumentRoot de Apache2, asi que recomiendo copiarlas en otro lugar para configurar un VirtualHost digamos que las copiamos a /home/git.miweb.com/docs

3. Tambien genera un archivo de configuracion (gitweb.conf) en /etc/ en el cual podemos algunas variables de las cuales nos interesa por lo pronto modificar solamente una $projectroot en el cual colocaremos el directorio donde tenemos nuestros proyectos, lo mas probable es que dependiendo la version de gitweb deba cambiarse alguna otra en mi caso no fue asi.

4. Para publicar el cgi en web configure un VirtualHost de la siguiente manera:


<VirtualHost *:8081 >
ServerName git.miweb.com
ServerAdmin webmaster@localhost

DocumentRoot "/home/git.miweb.com/docs"
DirectoryIndex index.html
ErrorLog /home/git.miweb.com/logs/error_log

# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn

CustomLog /home/git.miweb.com/logs/access_log combined
ServerSignature on

<Directory>
Options Indexes FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>

Alias /cgi-bin /usr/lib/cgi-bin
<Directory /usr/lib/cgi-bin >
Options ExecCGI FollowSymLinks
AddHandler cgi-script .cgi
DirectoryIndex gitweb.cgi
</Directory>
</VirtualHost>


Esta configuracion incluye sus propios logs, configura la carpeta para accesar a imagenes,css, js desde raiz con el DocumentRoot y configura cgi-bin para ejecucion de cgis con perl. Si se fijan tambien configuramos DirectoryIndex como index.html, este es un archivo que contiene lo siguiente:


<html>
<head>
<meta equiv="Refresh" content="0; URL=/cgi-bin/">
</head>
<body><h1>Direccionando a gitweb</h1></body></html>


Y esto se comporta asi: cuando accesamos http://git.miweb.com:8081 abrira index.html el cual direccionara a http://git.miweb.com:8081/cgi-bin/ que a su vez direccionara a gitweb.cgi que si se fijan esta definido como DirectoryIndex de cgi-bin y Voilá!! Tenemos funcionando gitweb en nuestro VirtualHost.

Xubuntu y Tomcat

Despues de un rato de sufrimiento, logre hacer jalar tomcat en el server. Ah, el server es un HP Net-server E50 con un fabuloso Pentium a 333mhz, 320MB de Ram y un disco duro de 4GB, por lo cual decidí ponerle xubuntu o en si se ponia muy lento el asunto poner la desaparecida distro ubuntu-lite que puedes rescatar de la red bittorrent.

De lo primero que instale fue la maquina virtual de java. En su ultima version 1.6 mediante apt-get.

Despues hay que configurar con un sudo update-alternatives --config X
donde X es: jar, javac, javadoc, javah, javap y javaws.
Direccionando cada uno a la carpeta de instalación de java de sun.

Despues instale el tomcat, pero causaba error al final de la instalacion mediante apt (es decir al intentar arrancar el servicio pero ya estaba instalado), asi que despues de buscar y recordar un poco, simplemente edite el archivo de configuracion /etc/default/tomcat5.5 y descomentando las lineas con los siguientes parámetros:
TOMCAT USER
JAVA_HOME
CATALINA_BASE
JSP_COMPILER

JAVA_HOME es direccionado a la maquina virtual que acabamos de intalar, es decir la localizada en /usr/lib/jvm/miversion-sun-java

Esto lo había hecho si mal no recuerdo en una instalación de tomcat en windows y funcionó, pero aqui no ocurrio asi, por lo que tuve que recurrir a la siguiente página para levantar el servicio de tomcat de forma manual: http://mundogeek.net/archivos/2006/04/03/apache-y-tomcat-en-linux/

[Nota, además de la variable CATALINA_HOME tuve que crear la de JAVA_HOME]
sin embargo me rechazaba la conexion al momento de ejecutar el startup.sh asi que recurri desinstalar tomcat con un apt-get remove porque supuse que podrían estar estorbandose aunque se suponía que no estaba corriendo el servicio, sin embargo asi era, el tomcat instalado con apt nunca pude hacerlo jalar y el copiado a mano en una carpeta funcionar con solo quitarle de la vista al otro. To be continued...

Receta de Cocina Postgresql.

Para esta receta utilizaremos un ubuntu feisty montado en una dell inspiron E1505:

1. Dadas estas caracteristicas bajaremos nuestro gestor de bases de datos postgresql mediante el maravilloso apt-get (o si prefieren usar Synaptics allá ustedes):
$sudo apt-get install postgresql-8.2

2. Una vez instalado nos disponemos a entrar con nuestro usuario postgres a nuestra sesion postgres:
$sudo su postgresql
Deberemos ver en nuestro shell como algo similar a esto:
postgres@micompu: /$

3. Ahora, podemos intentar entrar al administrador psql:
postgres@micompu: /$ psql

Esto nos dará acceso a todas las bases de datos como administrador, como ven, esto es poco seguro, además de que no podemos hacer muchas cosas, por eso vamos a colocar la contraseña para administrador y vamos a realizar un pequeño cambio a la configuración:

3a. Para cambiar la contraseña, ya estando dentro del editor psql escribimos las siguientes lineas

=# ALTER USER postgres
=# WITH PASSWORD '12345';

Si todo salio bien nos salimos con el comando \q
=#\q

4a. Luego un exit para volver a nuestro usuario. Entraremos a nuestro archivo de configuracion de conexiónes pg_hba.conf de nuestro postgresql.
$sudo vi /etc/postgresql/8.2/main/hba.conf

y cambiamos la linea
local all all ident sameuser
por
local all all password

y hasta donde tengo entendido esto permitira accesos desde cualquier lugar por medio de un password, de otra manera nadie podrá accesar aunque le asignes un password.

Ahora reiniciaremos nuestro servidor de bases de datos:
$sudo /etc/init.d/postgresql-8.2 restart

Ahora entraremos tal como lo hicimos hasta el paso 3.

4. Una vez en en psql, nos dispongremos a crear un usuario, de hecho hay dos maneras de hacerlo:

4a.la primera mediante el comando createuser pero no en psql sino como usuario general de postgres, asi que tendriamos que salir de psql para hacerlo. Te preguntara algunas cosas como si el usuario creado va a ser

4b. la segunda es ejecutando una sentencia SQL dentro de psql, la cual sería similar a esta:
=#CREATE USER nombre_del_usuario WITH PASSWORD 'supass';

5. Ahora crearemos una base de datos que pertenezca a ese Usuario
=#CREATE DATABASE mi_db WITH OWNER = "nombre_del_usuario";


6. Ahora podemos entrar desde usuario postgres
postgres@micompu: /$ psql -d mi_db -U nombre_de_usuario
y veremos algo similar a esto:
mi_db=>

Ahora podremos meter las sentencias SQL para crear tablas, etc, etc... pero esto no es lo importante, ya que podemos acceder incluso como administrador psql y realizar esto, lo que logramos aqui es utilizar el acceso a un usuario especial al cual podemos asignarle ciertos privilegios por seguridad.

7. Como plus, instalaremos mediante apt-get admin3.
$sudo apt-get install admin3

el cual se agregará a nuestro menú de aplicaciones y herramientas del sistema. Para poder acceder en conexión pondremos los siguientes parámetros(los cuales configuramos en los pasos anteriores):

Address: localhost
MaintenanceDB: postgres
Username: postgres
Port: 5432
SSL: --- lo dejamos en blanco ---
Password: 12345

Algunos otros comandos utiles como psql:
\? - ver ayuda
\q - salir
\dt - ver tus tablas(siempre y cuando hayas entrado como en el paso 6, incluso sin User)

... los que vayan saliendo