sábado, mayo 05, 2007

Cosas interesantes: GNU/Linux en todos lados

Han pasado muchas cosas interesantes en mi vida. Pero en el aspecto tecnológico voy a mencionar dos. La primera es que pude vencer (parcialmente claro) la imposición de no usar GNU/Linux en el trabajo. Antes de continuar debo enfatizar que no es una prohibición explícita, si no implícita: Si pones GNU/Linux pierdes soporte. Pero conforme pasaban los días, mi maquina (poderosa máquina con 2 Gb, solo por mencionar una caraterística) se mostraba lenta, muy lenta, hasta el punto donde era imposible trabajar con ella. ¿Qué hice para aprovechar mi compu?

Fácil...

Creé un Debian GNU/Linux Etch en una USB de dos gigas de espacio. Arranco desde ella y voilá . GNU/Linux en mi escritorio, rápido, veloz, sin virus. Mi GNU/Linux en la USB puede leer y escribir a las particiones en Windows con Ntfs. (usando ntfs-3g Esto antes no se podía, para instalarlo usa:

sudo apt-get install fuse libfuse ntfs-3g

si estás en Debian Etch. Si estas en Ubuntu sigue este link.

Como puede ver otras USB, monto mi /home en otra usb o en la misma. He instalado Emacs, Auctex, Ruby, LaTeX, Xpdf y otros más y aún me queda 1 Gb de espacio. Esto es una maravilla. Tengo todo el poder y realmente está en la palma de mi mano.

El procedimiento estuvo basado en estos dos links (uno, dos) aquí lo resumo un poco:

1. Inserta la usb en algún puerto usb ( ;-) )
2. averigua en donde está montado (ESTO ES MUY IMPORTANTE, SI NO VERIFICAS BIEN PUEDES BORRAR OTRO DISCO INCLUSO TU DISCO DURO) trata con alguno de los siguientes comandos:


  • fdisk -l

  • cat /proc/bus/input/devices

  • cat /proc/bus/usb/devices

  • tail /var/log/messages

  • ls /deb/s*



probablemente sea /dev/sdbX donde X es una letra de tal manera que sería /dev/sdba o /dev/sdbb.
En el resto del post usaré /dev/sdbX para referirme al USB.

NOTA: Tus disco duros serán hdX o sdaX. Por favor ten cuidado!

3. Instala los siguientes paquetes: (Como sudo o su)



  • (Debian) apt-get install shred parted debootstrap

  • (Ubuntu) apt-get install parted debootstrap




4. PASO DE LA MUERTE Borra tu USB


shred -n 1 -z -v /dev/sdbX


5. Creamos dos particiones (en un solo paso, solo para mostrar un poco de músculos) la primera será donde pondremos el directorio raiz y la segunda será /boot. Está última tiene que ser de tipo FAT16 para que las compus puedan montarla.


parted /dev/sdb "mklabel msdos mkpartfs primary ext2 0 21 mkpartfs primary ext2 21 -0 set 1 boot on"


NOTA: No usé /dev/sdbX sino /dev/sdb (Ajusta según tu configuración)

6. Montamos los discos


mkdir /mnt/buildroot
mount /dev/sdb2 /mnt/buildroot
mkdir /mnt/buildroot/boot
mount /dev/sdb1 /mnt/buildroot/boot


7. Instalamos el sistema base


debootstrap --arch i386 etch /mnt/buildroot


8. Enjaula el directorio

chroot /mnt/buildroot /bin/su -

Ahora estás únicamente dentro de la usb...

9. Abre /etc/fstab

nano /etc/fstab

dentro pon esto

#/etc/fstab: static file system information.
#
/dev/sdb2 / ext2 defaults,errors=remount-ro,noatime 0 1
/dev/sdb1 /boot ext2 defaults,noatime 0 1
proc /proc proc defaults 0 0
tmpfs /etc/network/run tmpfs defaults,noatime 0 0
tmpfs /tmp tmpfs defaults,noatime 0 0
tmpfs /var/lock tmpfs defaults,noatime 0 0
tmpfs /var/log tmpfs defaults,noatime 0 0
tmpfs /var/run tmpfs defaults,noatime 0 0
tmpfs /var/tmp tmpfs defaults,noatime 0 0

montemos todo (apareceran unos errores, sólo ignoralos)

mount -a


10. Configura el /etc/apt/source.list

nano /etc/apt/source.list

y escribe

deb http://mirrors.kernel.org/debian/ etch main non-free contrib
deb-src http://mirrors.kernel.org/debian/ etch main non-free contrib

luego apt-get update.

NOTA:
Si quieres tener más velocidad de descarga haz lo siguiente
apt-get install apt-spy
y luego ejecuta

apt-spy -d etch -s us -t 2

Con este comando le indicamos que busque los sitios más rápidos que tengan la distribución etch, es estados unidos (us) y que pruebe por dos segundos (el default es 15 s).

luego eliminamos los idiomas que no queremos

apt-get install localepurge
localepurge
aptitude clean


11 . Instalar el Kernel
Creamos el archivo /etc/kernel-img.conf

do_symlinks = yes
relative_links = yes
do_bootloader = no
do_bootfloppy = no
do_initrd = yes ## <--- Verify this line link_in_boot = yes postinst_hook = /sbin/update-grub postrm_hook = /sbin/update-grub

ahora instalamos el Kernel

apt-get install linux-image-2.6.18-4-686
aptitude clean


12. Instalar paquetes
Como tenemos poco espacio (para checarlo usa df) te recomiendo instalar un manejador de ventanas pequeño (xfce, ion3, wmii, fluxbox, icew, openbox, windowmaker) Yo elegí wmii. Para el navegador web elegí galeon en lugar de firefox.

apt-get install xorg xorg-server wmii tetex-base tetex-bin tetex-extra latex-beamer emacs xterm galeon xpdf auctex whizzytex

etcétera (recuerda vigilar el espacio en disco duro con df!)

13. Instalamos GRUB

apt-get install grub

Salimos de la jaula

exit

e instalamos grub

grub-install --recheck --root-directory=/mnt/buildroot /dev/sdb

Y editamos /mnt/buildroot/boot/grub/menu.lst

#-----------------------------------------------
# default num
default 0

# timeout sec
timeout 5

# pretty colours
color green/black black/green

title Debian GNU/Linux-2.6.18-4-686
root (hd0,0)
kernel /vmlinuz-2.6.18-4-686 root=/dev/sda2 init=/sbin/init
initrd /initrd.img-2.6.18-4-686
savedefault
boot

title Debian GNU/Linux-2.6.18-4-686 (Rescue/Single)
root (hd0,0)
kernel /vmlinuz-2.6.18-4-686 root=/dev/sda2 init=/sbin/init single
initrd /initrd.img-2.6.18-4-686
boot
#----------------------------------------------------------

Y ahora ejecutemos grub


Probing devices to guess BIOS drives. This may take a long time.

GNU GRUB version 0.97 (640K lower / 3072K upper memory)

[ Minimal BASH-like line editing is supported. For
the first word, TAB lists possible command
completions. Anywhere else TAB lists the possible
completions of a device/filename. ]
grub> root (hd2,0)
root (hd2,0)
Filesystem type is ext2fs, partition type 0x83
grub> setup (hd2)
setup (hd2)
Checking if "/boot/grub/stage1" exists... yes
Checking if "/boot/grub/stage2" exists... yes
Checking if "/boot/grub/e2fs_stage1_5" exists... yes
Running "embed /boot/grub/e2fs_stage1_5 (hd2)"...
failed (this is not fatal)
Running "embed /boot/grub/e2fs_stage1_5 (hd2,0)"...
failed (this is not fatal)
Running "install /boot/grub/stage1 (hd2) /boot/grub/stage2
p /boot/grub/menu.lst "... succeeded
Done.
grub> quit


14. Crear cuentas de usuario

chroot /mnt/buildroot /bin/su -
passwd
adduser newuser
passwd newuser


15. Configuramos la red en el archivo /etc/network/interfaces

auto lo
iface lo inet loopbak

auto eth0
iface eth0 inet dhcp

Si no sabes que número de tarjeta de red es usa dhclient y luego ejecuta ifconfig -a .

16. Arregla /etc/fstab para que monte lo que quieras (incluido ntfs, otras usb, etc).

17. Sal de la jaula con exit. y reinicia la computadora. Arranca desde el usb configurando el BIOS. ¡Y Listo!.

La otra maravilla tecnológica es mi lector de PDF con tinta electrónica (e-ink)
compré una iRex iLiad. Corre en GNU/Linux, no tiene DRM, a diferencia de la Sony Reader. ¡Adios a todos mis artículos, libros y cosas por el estilo que llenan mi escritorio! Además (si, hay un además) tiene integrada una tableta wacom que permite tomar notas. ¿Qué mas puedo pedir?

ah sí, avanzar en mi tesis. :-(

Pregunta: Alguien sabe que unidades tiene $|r' \rangle$ . Ya que $\langle r | r' \rangle = \delta( r - r')$. ?


Etiquetas: , , , ,

3 Comments:

Blogger Sario said...

Bravo, es un gran post.
saludos

domingo, 13 mayo, 2007  
Anonymous Anónimo said...

Encontré una página relacionada, aunque no la he visto con detalle:
http://webierta.50webs.com/#USBLinux

viernes, 18 mayo, 2007  
Blogger Sario said...

Pues no la conocía pero tiene buena pinta.
Gracias

lunes, 21 mayo, 2007  

Publicar un comentario

<< Home