CodeHard

Artículos computacionales

feb 18, 01:52
Ubicado en

Hola

Tan solo quería expresar mis felicitaciones a Elias, antiguo administrador de NixLKP y ex-compañero de ForoSpyware, por la finalización de su nuevo blog.

Este nuevo sitio sigue el hilo de NixLKP, con tópicos interesantes sobre seguridad de sistemas derivados Unix, documentos muy útiles de webappsec, hardening, programación web y algunas otras cosas interesantes. 

Pero en realidad el motivo de las felicitaciones y el cambio de nombre se debea la terminación de su propio gestor de blogs, NullMind, que tiene como características un sistema de generación de páginas de buen rendimiento, una sencilla interfaz con funciones básicas para la publicación de documentos y un buen sistema de seguridad, compuesto por un sencillo per efectivo sistema de validación y filtrado de cadenas. Además, el código está liberado en la misma página por lo cual si estás desarrollando algún sistema puedes tomarlo como base.

Pueden acceder al sitio mediante el siguiente link:

.:NullMind:. Blog dedicado a diferentes temas informáticos.

 

Muchas felicitaciones Elias, y espero tus publicaciones :D

 

ene 24, 16:48
Ubicado en

Hace ya un tiempo que empezé a usar Gentoo 2008. Los motivos fueron varios, entre ellos estaba interesado en probar una distro. que no estuviera basada en Debian, que sea veloz, y que tuviera un buen gestor de paquetes que no tuviera problemas de dependencias como APT, y versiones de programas actualizados. Gentoo cumple con todas estas características, aunque tiene la fama de ser una distro. complicada.

Tuve varios problemas de instalación. En primer lugar GRUB no iniciaba, por lo cual tuve que instalar LILO que si funcionó. Al parecer GRUB tiene problemas con la redirección LBA32, aunque LILO no. La primera vez que inicie luego de la instalación tuve un Kernel Panic, con un "VFS Sync Error". Logré averiguar que es directamente un problema de los drivers sata integrados al kernel. Para resolver este problema tuve que iniciar nuevamente con el cd de instalación de Gentoo (aunque hubiera valido cualquier otro live cd), hacer un chroot y recompilar el Kernel. Lo más problemático fue averiguar que driver necesitaba mi motherboard (Intel D102GGC2, basado en D101) pero al final googleando encontré que su chipset, ATI Xpress 200 (reconocido como ATI SMB400) está basado en un chipset Silicon, con lo cual activando los controladores Silicon Image 3124/3132 SATA support, Silicon Image SATA support y ATI PATA support el sistema arrancó.

 
Ya con Gentoo instalado estuve un par de días instalando paquetes y configurando el sistema. Debo decir que Portage es un buen sistema, tiene muchísimas opciones como los parámetros USE, la configuración de los CFLAGS y muchísima variedad de paquetes así como de versiones de los mismos. Aunque debo decir que el soporte para Hardware es bastante malo, muchos dispositivos no son detectados como en otros sistemas, y hacen falta varias configuraciones para que funcionen (aunque por algún motivo, Gentoo se sigue quejando).

El único gran problema que no pude resolver hasta ahora, es con el driver privativo de ATI: el módulo se instala pero falla al iniciar el Xorg. Quizás sea problema de Gentoo, pero es muy probable que sea un problema de incompatibilidad con el Kernel que uso (2.6.27) por lo cual deberé instalar una versión anterior o esperar a una nueva versión del driver.

He tenido otros problemas, pero la mayoría fueron resueltos sin mucha dificultad. Por ejemplo, tuve problemas con la creación y configuración de los locales. Como resultado, el idioma no funcionaba correctamente y aparecían carácteres extraños. Pude resolverlo con un script que encontre, que no andaba del todo bien pero basándome en él logré que funcionará bien. PulseAudio no funcionaba en cuentas normales (como en otras distros) pero pude resolver el problema programando la creación de una carpeta en /tmp/.esd y un cambio de propietario de la carpeta. Ivman tampoco funcionaba al principio, y logré que lo haga instalando nuevas versiones de pmount y sysfs.

Si por casualidad pretendes instalar Gentoo, o tienes problemas con él, te recomiendo que sigas la guía de instalación de la página oficial. Como tips, puedo decirte que no uses genkernel en la instalación, si no que compiles tu propio kernel, ya sea preferentemente emergeando las sources o descargandolas desde la página de gnu/linux. Con el comando lspci sabrás que hardware tienes y googleando o buscando en menuconfig sabrás que drivers compilar con el kernel. Antes de comenzar a instalar paquetes configure tu /etc/make.conf con los CFLAGS y los parámetros USE correctos, para evitarte futuras recompilaciones. Por ejemplo este es mi make.conf:

# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /etc/make.conf.example for a more detailed example.
CFLAGS="-march=prescott -mtune=prescott -O3 -pipe -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
# WARNING: Changing your CHOST is not something that should be done lightly.
# Please consult http://www.gentoo.org/doc/en/change-chost.xml before changing.
CHOST="i686-pc-linux-gnu"
ACCEPT_KEYWORDS=""
MAKEOPTS="-j3"
USE="X alsa -apm -arts -berkdb -bonobo bzip2 cups curl -eds -esd -fam -gd -gdbm -gnome -gpm gtk2 imagemagick -ipv6 -kde -kerberos -ldap -minimal -mozilla -motif nls opengl -oss -pam -qt -qt3 -qt4 -samba sse sse2 tiff truetype vim-syntax -xinerama zlib msn"
FEATURES="ccache parallel-fetch"
EMERGE_DEFAULT_OPTS="--verbose"
LINGUAS="es"
VIDEO_CARDS="vesa fglrx radeon ati"
INPUT_DEVICES="keyboard mouse evdev"
ALSA_CARDS="hda-intel"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
PORTAGE_RSYNC_RETRIES="3"
AUTOCLEAN="yes"
GENTOO_MIRRORS="http://gentoo.inode.at/ ftp://gentoo.inode.at/source/ http://mirror.uni-c.dk/pub/gentoo/ http://gentoo.modulix.net/gentoo/ ftp://ftp.free.fr/mirrors/ftp.gentoo.org/ http://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo http://gentoo.tiscali.nl/ http://mirror.gentoo.no/ http://linuv.uv.es/mirror/gentoo/ "

Obviamente debes cambiar algunos parámetros según tu hardware: CFLAGS, CHOST, VIDEO_CARDS, ALSA_CARDS. También debes setear ACCEPT_KEYWORDS dependiendo de que paquetes quieres aceptar o desbloquear. Yo por ejemplo, lo uso como "~x86" para acceder a paquetes más actualizados, aunque no es recomendable, dado que sean nuevas no significa que sean mejores.

Espero que mis experiencias les sirvan para alguien y próximamente estaré publicando algunos scripts relacionados con Linux.

 

Salu2

No hay comentarios
jun 1, 01:22
Ubicado en
Hola

Como prometí anteriormente, les voy a explicar como mover la carpeta /boot a una partición independiente.

El primer paso, es obviamente crear una nueva partición, para eso verificamos el tamaño ocupado por la carpeta /boot, para eso podemos usar el comando "sudo du /boot" el cual nos devolverá el tamaño de la carpeta en kilobytes. En mi caso, la carpeta pesa unos 20000 KB (20 MB), por lo cual decidí hacer una partición de 150 MB, por si en algún momento instalo otros kernels. Para crear la nueva partición, lo que hice fue, con la herramienta de particionado GPARTED, desmonté y reduci una de mis particiones con la función de redimencionado, y en el espacio que quedaba cree una nueva partición con el formato de archivos EXT3, el cual es uno de los más flexibles para nuestro proposito. Cabe aclarar que si solo tienes una partición ocupando todo el disco, necesitarás iniciar con algún LiveCD, ya que la redimensión no puede llevarse a cabo con la unidad montada, es decir, en uso.
Antes de empezar, hay que tener en cuenta varias cosas sobre este tutorial. La primera, que en este caso utilizaremos el gestor de arranque GRUB, el cual es el más utilizado. Además, si eres un novato en Linux, es necesario saber que los discos son representados como archivos en la carpeta /dev, ya sea como hd (discos IDE/ATA) o sd (discos SATA) seguidos de una letra que indica el puerto donde esta conectado físicamente el disco, y luego de un número que indica el número de partición. Por ejemplo, hda1, sda2, hdb3, etc.

Ahora, para que entiendan el ejemplo, supongamos que el disco de la nueva partición es hdaX, donde 'a' es el número de disco y 'X' el número de partición.

1. - Como primera medida nos logueamos como root con el comando su, para así trabajar más cómodos. El primer paso, será renombrar la carpeta /boot a otro nombre (no borrarla) por si tenemos algún problema podremos recuperarla:

mv /boot /boot_backup


2. - Luego creamos una nueva carpeta /boot:

mkdir /boot


3. - Ahora, debemos montar la partición creada en el directorio /boot:

mount /dev/hdaX /boot


4. - Copiamos el contenido de la carpeta /boot a la nueva partición:

cp -dpR /boot_backup/* /boot


**NOTA** Si queremos que la partición sea montada en cada inicio, debemos seguir el siguiente paso. Aclaro que si no son montadas, correrán menos riesgos de sufrir problemas, por lo cuál, si así lo prefiere, obvie el próximo paso, y si en algún momento requiere acceder a la partición puede usar el comando del paso 3.

5. - Para configurar el montado automático en modo de solo lectura, debemos agregar una línea al fstab. Podemos usar cualquier editor de texto, pero en este ejemplo usaré nano:

nano -w /etc/fstab


Y agregamos esta línea:

/dev/hdaX /boot ext3 ro 0 0


Guardamos los cambios en el archivo (en nano, Ctrl+X) y procedemos a configurar el gestor de arranque.

6. - Para configurar el GRUB, debemos editar el menu.lst dentro de la carpeta /boot/grub. Supongamos que tenemos este archivo de configuración:

title Distribución de Linux
root (hd0,0)
kernel /boot/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd /boot/initrd.img-2.6.25-2-686


7. - Lo que hacemos es copiarlo, uno seguida del otro, una para el nuevo arranque y otra de backup. Quedaría así:

title Distribución de Linux
root (hd0,0)
kernel /boot/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd /boot/initrd.img-2.6.25-2-686
#
title Distribución de Linux
root (hd0,0)
kernel /boot/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd /boot/initrd.img-2.6.25-2-686


8. - Grub, utiliza la nomenclatura hdY,X para los discos, la cual 'Y' es el "número de disco-1" y 'X' el "número de partición-1". Es decir, si nuestra nueva partición era hda7, en grub será hd0,6. Lo que hacemos es modificar la partición de la primera copia, y borrar los "/boot", ya que ahora la ubicación será en el directorio raíz de la partición y no en una subcarpeta. Si el disco fuera hda7, quedaría así:

title Distribución de Linux
root (hd0,6)
kernel /vmlinuz-2.6.25-2-686 root=/dev/hda7 ro noapic nolapic
initrd /initrd.img-2.6.25-2-686
#
title Distribución de Linux
root (hd0,0)
kernel /boot/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd /boot/initrd.img-2.6.25-2-686


9. - Ahora toca el turno de modificar la entrada de resguardo, para ello solo cambiamos /boot por /boot_backup, y cambiamos el título para diferenciarla:

title Distribución de Linux
root (hd0,6)
kernel /vmlinuz-2.6.25-2-686 root=/dev/hda7 ro noapic nolapic
initrd /initrd.img-2.6.25-2-686
#
title Entrada de seguridad de Distribución de Linux
root (hd0,0)
kernel /boot_backup/vmlinuz-2.6.25-2-686 root=/dev/hda1 ro noapic nolapic
initrd /boot_backup/initrd.img-2.6.25-2-686


10. - Guardamos los cambios y procedemos a reinstalar el GRUB:

grub-install /dev/hda


**ATENCION** Notese que después de hda no hay ningún número, eso es porque no lo instalamos sobre ninguna partición si no sobre el disco en sí.

11. - Reinicia el equipo, y si hiciste todo al pie de la lista, tendrás una opción más de arranque de lo normal, que corresponde a la configuración de seguridad. Elegimos la opción de inicio de siempre, y si no funciona, elegimos la copia de seguridad. Si inicia normalmente, si quieres y tienes confianza elimina las copias de seguridad (del menu.lst y el /boot_backup).
Como nota final, si configuraste el fstab para que monte el /boot como solo lectura, y quieres escribir en la partición, puedes usar el comando:

sudo mount -o remount,rw /boot


Hasta la próxima...

Salu2


Artículos relacionados:
No hay comentarios

Búsqueda

Anuncios

Donación

CodeHard por Mauro Ezequiel Soria
Licenciado bajo Creative Commons