Feb 07

Introducción.

El día de ayer fue liberada la versión 6.0 (Squeeze) de GNU/Linux Debian.  En el presente artículo se describen los pasos necesarios para actualizar este sistema operativo desde su versión anterior, Lenny (5.0), a la actual.

Como en toda actualización se recomienda hacer copias de seguridad previas de la información importante y en caso de realizarse en un servidor en producción se recomienda realizar pruebas de compatibilidad para garantizar su correcto funcionamiento.

Procedimiento.

Crear una copia de seguridad de la lista de repositorios del sistema operativo.

# cp /etc/apt/sources.list /etc/apt/sources.list.bak

Modificar la lista de repositorios del sistema operativo reemplazando las ocurrencias de Lenny a Squeeze.  El resultado final será algo similar a lo mostrado a continuación.

# vi /etc/apt/sources.list

# main repo
deb http://ftp.debian.org/debian/ squeeze main
deb-src http://ftp.debian.org/debian/ squeeze main
deb http://security.debian.org/ squeeze/updates main
deb-src http://security.debian.org/ squeeze/updates main

# contrib & non-free repos
#deb http://ftp.debian.org/debian/ squeeze contrib non-free
#deb-src http://ftp.debian.org/debian/ squeeze contrib non-free
#deb http://security.debian.org/debian/ squeeze/updates contrib non-free
#deb-src http://security.debian.org/debian/ squeeze/updates contrib non-free

Actualizar los índices de los paquetes a partir de los nuevos repositorios recién configurados.

# aptitude update

Instalar screen (opcional) para mantener la actualización aún si se cierra el shell desde donde se inició.

# aptitude install screen

Ejecutar screen si se instaló.

# screen

Si se pierde la conexión con el shell de la instalación, es posible recuperar su acceso mediante la ejecución del siguiente comando.

# screen -Dr

Actualizar los paquetes básicos para la instalación de la nueva versión.

# aptitude install apt dpkg aptitude

Realizar la actualización del sistema operativo.

# aptitude dist-upgrade

Enlaces.

Tagged with:



En February 7 de 2011, Jorge Iván Meza Martínez escribió acerca de Actualizar Debian Lenny a Squeeze.
Sep 06

Introducción.

Generalmente no es necesario ni conveniente que los servidores ejecuten, menos automáticamente, un servidor de ventanas por básicamente dos razones: aumentan la probabilidad de problemas de seguridad y el mayor consumo de recursos (procesamiento y memoria RAM).

Como se ha visto anteriormente, es posible realizar esto de múltiples maneras según la distribución de GNU/Linux que se utilice.  Para este caso, Debian, se plantea el desactivar el inicio automático del GDM.

Procedimiento.

Desactivar el inicio automático.

# update-rc.d -f gdm remove

Reemplace el gdm por el administrador de login que utilice como xdm o kdm si no utiliza GNOME.

Iniciar manualmente el sistema de ventanas.

En cualquier momento es posible iniciar manualmente el sistema de ventanas mediante la ejecución del siguiente comando.

$ startx

Esta ejecución no realiza ningún tipo de cambios en la configuración así que este inicio será temporal, la próxima vez que se reinicie el servidor lo hará nuevamente en modo texto.

Activar el inicio automático.

Si se desea revertir el cambio en la configuración y permitir que el login grafico y el sistema de ventanas se inicien automáticamente ejecute el siguiente comando.

# update-rc.d -f gdm defaults

Nuevamente, ajuste el nombre del administrador de login según el administrador de ventanas que utilice.

Enlaces.

Tagged with:



En September 6 de 2010, Jorge Iván Meza Martínez escribió acerca de Iniciar GNU/Linux Debian 5 en modo sólo texto.
May 14

Introducción.

Processing es un lenguaje y un ambiente de desarrollo opensource diseñado para quienes trabajan con imágenes, animaciones e interacción.  Es utilizado por estudiantes, artistas, diseñadores, investigadores y entusiastas para aprendizaje, creación de prototipos y producción.  Fue creado inicialmente para la enseñanza de los fundamentos de la programación de computadores en un contexto visual, para servir como software para la creación de gráficos (sketches) y como una herramienta de producción profesional.

Es libre de descargar y se encuentra disponible para GNU/Linux, Mac OS X y Windows.

El proyecto fue iniciado por Ben Fry y Casey Reas y ha evolucionado a partir de las ideas exploradas en el grupo de Aesthetics & Computation del MIT Media Lab.

Tomado de http://processing.org/.

Instalación.

Requisitos previos.

Processing se fundamenta en Java, tanto su ambiente de desarrollo como su compilador e intérprete (el cual es finalmente la JVM).  A pesar de que incluye su propia distribución del Java Runtime Edition considero ventajoso el tener instalado previamente el Java Development Kit, ya sea el oficial de Oracle o el de OpenJDK.

Las instrucciones para hacer esto se pueden encontrar en el siguiente enlace.

Instalación estándar.

Esta instalación es útil en cualquier distribución de Linux ya que se basa en la distribución TGZ de Processing.

El primer paso es descargar la distribución mas reciente del lenguaje, en este caso la versión 1.1.

$ wget http://processing.org/download/processing-1.1.tgz

Verifique cual es la última versión disponible en la página de descargas.

Se crea un directorio para almacenar el software y se translada allí.

$ sudo mkdir -p /usr/local/processing

$ sudo mv processing-1.1.tgz /usr/local/processing

$ cd /usr/local/processing

Se descomprime el paquete recién descargado con la distribución del lenguaje.

$ sudo tar zxvf processing-1.1.tgz

Se renombra apropiadamente para permitir la coexistencia de varias versiones de ser necesario.

$ sudo mv processing-1.1 1.1

Se verifican los permisos de ejecución del ambiente de desarrollo.

$ sudo chmod +x /usr/local/processing/1.1/processing

Para ejecutar el ambiente de desarrollo y empezar a programar con Processing es necesario invocarlo desde la línea de comando o crear un acceso directo (lanzador) a él.

$ /usr/local/processing/1.1/processing

Instalación para Ubuntu.

Los sistemas operativos herederos de Debian, como Ubuntu, pueden realizar la instalación del lenguaje de una manera resumida.

Descargar la última versión disponible en formato DEB de la siguiente ubicación.

Realice la instalación del paquete recién descargado.

$ sudo dpkg -i processing_1.1-1_all.deb

Los pasos descritos en la sección anterior serán automáticamente implementados y además se creará un ícono en el menú de GNOME bajo la sección de Programming.

Enlaces.

tar zxvf processing-1.1.tgz
Tagged with:



En May 14 de 2010, Jorge Iván Meza Martínez escribió acerca de Instalar Processing en Linux Ubuntu 10.04.
Jul 07

Introducción.

Un servidor que utilizo frecuentemente para el desarrollo de aplicaciones web que se encuentra basado en Debian 5 no estaba enviando los correos de las aplicaciones ni de un par de scripts que había escrito hace un tiempo para la creación de copias de seguridad.

Al revisar los logs encontré este mensaje: Mailing to remote domains not supported.

La solución es realizar la configuración del Exim 4, sin embargo tenía un detalle adicional que lo hacía interesante.  Para la empresa propietaria del servidor estoy utilizando Google Apps para gestionar su correo electrónico, así que el SmartHost tenía que ser con GMail, SSL (el puerto indicado) y autenticación.

Procedimiento.

Para este procedimiento se supone que el nombre del servidor es desarrollo.dominio.com.

1. Crear una cuenta de correo en GMail/Google Apps para el relay del servidor de correo.

Nombre de usuario: desarrollo_relay
Contraseña: password_relay

2. Realizar la configuración de Exim.

$ su -

$ dpkg-reconfigure exim4-config

  • General type of mail configuration: mail sent by smarthost; received via SMTP or fetchmail
  • System mail name: localhost
  • Ip Address to listen on: 127.0.0.1
  • Other destinations~: desarrollo.dominio.com
  • Machines to Relay for: <vacío>
  • IP address or hostname of the outgoing smarthost: smtp.gmail.com::587
  • Hide local mail name in outgoing mail: No
  • Keep number of DNS queries minimal: No
  • Delivery method for local mail: mbox format in /var/mail/
  • Split configuration into small files: Yes

3. Configurar la información del cliente de acceso.

$ vi /etc/exim4/passwd.client

gmail-smtp.l.google.com:desarrollo_relay@dominio.com:password_relay
*.google.com:desarrollo_relay@dominio.com:password_relay
smtp.gmail.com:desarrollo_relay@dominio.com:password_relay

$ chmod 640 /etc/exim4/passwd.client

$ chown root:Debian-exim /etc/exim4/passwd.client

4. Actualizar la lista de correspondencias de direcciones de correo.

$ vi /etc/exim4/email-addresses

root@localhost:    desarrollo_relay@dominio.com

$ chmod 640 /etc/exim4/email-addresses

5. Verifique la configuración actual del Exim.

$ vi /etc/exim4/update-exim4.conf

dc_eximconfig_configtype='smarthost'
dc_other_hostnames='desarrollo.dominio.com'
dc_local_interfaces='127.0.0.1'
dc_readhost='desarrollo.dominio.com'
dc_relay_domains=''
dc_minimaldns='false'
dc_relay_nets=''
dc_smarthost='smtp.gmail.com::587'
CFILEMODE='644'
dc_use_split_config='true'
dc_hide_mailname='false'
dc_mailname_in_oh='true'
dc_localdelivery='mail_spool'

6. Reiniciar el servicio del MTA.

$ /etc/init.d/exim4 restart

Enlaces.

Tagged with:



En July 7 de 2009, Jorge Iván Meza Martínez escribió acerca de Utilizar GMail como SmartHost desde Linux Debian 5.
Apr 23

Instalación.

# apt-get install samba

# apt-get install samba-client

Administración de usuarios.

Listar los usuarios registrados.

# pdbedit -L

Crear una nueva cuenta de usuario.

Como precondición para esta tarea, el usuario debe existir como usuario del sistema operativo.

# smbpasswd -a NOMBRE_USUARIO

Remover una cuenta de usuario previamente existente.

# smbpasswd -x NOMBRE_USUARIO

Desactivar una cuenta de usuario existente.

Esta tarea impide el acceso del usuario al sistema pero no remueve su información del mismo.

# smbpasswd -d NOMBRE_USUARIO

Activar una cuenta de usuario inactiva.

# smbpasswd -e NOMBRE_USUARIO

Cambiar la contraseña de un usuario existente.

# smbpasswd NOMBRE_USUARIO

Agregar un recurso compartido.

Para realizar esto es necesario editar la configuración del archivo smb.conf bajo la sección Share Definitions.

# vi /etc/samba/smb.conf

Agregar una sección similar a esta.

[web]
comment = Proyectos Web
inherit acls = Yes
path = /datos/www
read only = No
browsable = yes
writable = yes
read list = @sistemas
write list = @sistemas
create mask = 0775
directory mask = 0775

La sección anterior de configuración crea un recurso compartido con la siguiente información:

  • El nombre es web y su descripción es Proyectos Web.
  • Hace referencia a la ubicación real /datos/www del sistema de archivos del servidor.
  • El recurso es de lectura y escritura.
  • La lectura y la escritura estan restringidas a los usuarios que pertenezcan al grupo sistemas.
  • Aparece en el listado de recursos compartidos del servidor (browsable).
  • Las máscaras para la creación de archivos y directorios están definidas en 0775.

Para mas información al respecto de como crear recursos compartidos consultar la documentación de Samba: The Samba Configuration File y Advanced Disk Shares.

Verificar el archivo de configuración.

# testparm

Si todo está bien, debe aparecer un listado de las secciones del archivo de configuración y posteriormente un listado de los recursos compartidos (service definitions) sin errores.? En caso de haberlos, se deben corregir antes de continuar.

Reiniciar el servicio.

# /etc/init.d/samba restart

Probar la conexión al servicio recién creado.

Para probar el servicio y el usuario recién creados es posible utilizar la herramienta de línea de comando smbclient con la siguiente estructura.

# smbclient -U NOMBRE_USUARIO //SERVIDOR/RECURSO_COMPARTIDO

Adecuando la invocación de la herramienta al ejemplo del artículo sería de la siguiente manera.

# smbclient -U jimezam //localhost/web

Enter jimezam's password:
Domain=[D5WEBSERVER] OS=[Unix] Server=[Samba 3.2.5]
smb: \> ls
.                                   D        0  Thu Apr 23 08:31:51 2009
..                                  D        0  Thu Apr 16 10:08:43 2009
mapping-jimezam                     A        0  Wed Apr 22 11:33:10 2009
gconfd-jimezam                      D        0  Wed Apr 22 11:33:01 2009
.ICE-unix                          DH        0  Wed Apr 22 11:33:04 2009
.X11-unix                          DH        0  Wed Apr 22 11:32:30 2009
.X0-lock                           HR       11  Wed Apr 22 11:32:30 2009
orbit-jimezam                       D        0 Thu Apr 23 09:34:10 2009
virtual-jimezam.DLe9KX              D        0 Wed Apr 22 11:33:10 2009
keyring-LdVulV                      D        0 Wed Apr 22 11:33:01 2009
seahorse-V3VNUp                     D        0 Wed Apr 22 11:33:03 2009

38110 blocks of size 131072. 14368 blocks available

Enlaces.

Tagged with:



En April 23 de 2009, Jorge Iván Meza Martínez escribió acerca de Instalacion de Samba 3.2.x en Linux Debian 5.
Apr 20

Instalación del servicio.

# apt-get install ssh

Este paquete incluye las aplicaciones servidor y cliente para reemplazar las herramientas inseguras rlogin/rsh/rcp.

Configuración básica del servicio.

# vi /etc/ssh/sshd_config

Port 22
Protocol 2
UsePrivilegeSeparation yes
PermitRootLogin no
StrictModes yes
PermitEmptyPasswords no
Subsystem sftp /usr/lib/openssh/sftp-server

Opciones de configuración adicionales.

Agregar soporte para el transporte de aplicaciones X11 a través de SSH.

X11Forwarding yes

Si se presentan problemas de desconexión de las sesiones SSH, incluyendo las SSHFS, debido a timeouts modificar la siguiente opción de /etc/ssh/ssh_config.

ServerAliveInterval  120   # seconds.

Reiniciar el servicio.

# /etc/init.d/ssh restart

Tagged with:



En April 20 de 2009, Jorge Iván Meza Martínez escribió acerca de Instalación del servidor SSHd en Linux Debian 5.
Apr 20

Instalación de libsybdb.

Descargar la última versión de libsysbdb disponible en el sitio http://packages.debian.org/stable/libs/libsybdb5.

# wget http://debian.torredehanoi.org/debian/pool/main/f/freetds/libsybdb5_0.82-4_i386.deb

# dpkg -i libsybdb5_0.82-4_i386.deb

Instalación de FreeTDS.

# apt-get install freetds-common

Instalación del módulo de PHP para el acceso a bases de datos Microsoft SQL Server.

# apt-get install php5-sybase

Configuración del formato de fecha según se desee.

# vi /etc/freetds/locales.conf

[default]
date format = %d/%m/%Y %H:%M:%S

[default_orig]
date format = %b %d %Y %I:%M%p

[en_US]
date format = %b %d %Y %I:%M%p
language = us_english
char set = iso_1

[es_ES1]
date format = %b %d %Y %I:%M%p
language = spanish
char set = iso_1

[pt_BR]
date format = %d/%m/%Y %H:%M
language = Portuguese
char set = iso_1

[it_IT]
date format = %d/%m/%Y %H:%M
language = Italiano
char set = iso_1

Enlaces.

Tagged with:



En April 20 de 2009, Jorge Iván Meza Martínez escribió acerca de Instalación de FreeTDS para el acceso a MSSQL desde PHP en Linux Debian 5.
Apr 20

El método rápido.

La instalación de estos paquetes se puede realizar de dos maneras.  Utilizando Tasksel, que yo he llamado el método rápido, o instalando -casi- individualmente los paquetes que se deseen.  En mi opinión personal prefiero el segundo método ya que controlo directamente que se está instalando en el servidor.

Tasksel es una herramientas de Debian que se incluye en la mayoría de las distribuciones hijas (como Ubuntu) y permite instalar en bloque muchos paquetes según agrupaciones predefinidas, entre ellas la instalacion de un LAMP Server.

Instalación de Apache.

Instalación del servidor HTTP.

# apt-get install apache2

# apt-get install wwwconfig-common

Modificar la ubicación del DOCUMENT_ROOT.

Por defecto el árbol de directorios que se publica a través del servidor web se ubica en /var/www, si se desea modificar esta ubicación es necesario realizar los siguientes pasos.

Crear el directorio donde se almacenarán los documentos web.

# mkdir -p /home/www/public

Modificar la configuración de Apache para incluír a este nuevo directorio.

# vi /etc/apache2/sites-enabled/000-default

Reemplazar las ocurrencias de /var/www por la ruta deseada, es decir, los valores de DocumentRoot y su correspondiente Directory.

DocumentRoot /home/www/public/
# ...
<Directory /home/www/public/>
# ...

Reiniciar el servicio para tener en cuenta los cambios recién realizados.

# /etc/init.d/apache2 restart

Instalación de PHP.

Instalación de lenguaje de programación y varios de sus módulos.

# apt-get install php5 php5-cli php5-gd php5-mcrypt php5-curl php5-imagick php5-mhash php5-sqlite php5-xsl

Instalación del módulo dinámico (DSO) de Apache.

# apt-get install libapache2-mod-php5

Instalación de MySQL.

Instalación del motor de base de datos.

# apt-get install mysql-server

Instalación del modulo de PHP asociado a este motor de base de datos.

# apt-get install php5-mysql

Instalación de PHPMyAdmin para la administración de la base de datos a través de web.

# apt-get install phpmyadmin

El acceso se realiza a través de la URL http://localhost/phpmyadmin/.

Tagged with:



En April 20 de 2009, Jorge Iván Meza Martínez escribió acerca de Instalación de Apache, PHP y MySQL en Linux Debian 5.
Apr 16

Introducción.

Después de unos no muy buenos recuerdos instalando Debian hace unos años, probablemente la versión 3, ahora aprovechando el  lanzamiento hace 5 días de la versión 5, alias Lenny,  me dispongo a darle una segunda oportunidad a Debian después de una larga experiencia con unos de sus hijos: Ubuntu.

Hasta el momento es poco lo que puedo opinar acerca del nuevo Debian, sin embargo el proceso de instalación gráfico que utilicé esta vez dista mucho del confuso proceso de instalación en modo texto que complicó mis días hace un tiempo, sin contar con que ahora ya lo tengo en un DVD y no en cinco CDs como antes.  La instalación gráfica aunque sencilla me pareció muy larga y en algunas partes muy poco intuitiva, especialmente en la sección de manipular las particiones del disco.  Me parece interesante intentar nuevamente el instalador en modo texto para ver como ha mejorado en este tiempo.

A continuación se detalla gráficamente el proceso de instalación seguido para instalar a Debian 5 en una máquina virtual VirtualBox 2.2 sin nada mas que los paquetes estándar.

Instalación de Debian en VirtualBox.

Instalación de los Guest Additions de VirtualBox para Debian.

En una terminal ejecutar los siguientes comandos.

$ su -

# aptitude install gcc linux-headers-$(uname -r) make

En la ventana de VirtualBox seleccionar las siguientes opciones del menú.  Debe verificarse que no se tenga montando un medio en la unidad de CD/DVD previamente.

Devices > Install Guest Additions ...

De nuevo en la terminal ejecutar los siguientes comandos.

# cd /media/cdrom

# sh VBoxLinuxAdditions-x86.run

Después de instaladas las aplicaciones adicionales es necesario reiniciar el sistema operativo huésped.

# reboot.

Enlaces.

Tagged with:



En April 16 de 2009, Jorge Iván Meza Martínez escribió acerca de Instalación de Debian 5 en VirtualBox 2.2.