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

martes, 10 de noviembre de 2009

Bomba fork....

Referencia:

bomba fork



Comando shell:

:(){ :|:& };:



Solucion en Linux:

Agregar en el archivo /etc/security/limits.conf la linea;

* hard nproc 1024

Asi se limita a 1024 el numero de procesos que pueden correr simultaneamente.

jueves, 5 de noviembre de 2009

Sony Vaio VPC W110XL con Linux??

Compre hace poco una netbook Sony Vaio VPC-W110XL. Probe Ubuntu en 9.04 y no reconocio a la primera las interfaces de red. Ahora estoy probando Fedora 11 y parece funcionar de manera general bastante bien.

Alguien le ha puesto Debian 5? .... Debian sera su siguiente SO :P

miércoles, 25 de febrero de 2009

Xen virtualizando winxp en centos 5.1 en un Dell Power Edge 1950s

La historia empezo, cuando fue necesario que las maquinas de la granja de render, tuvieran varios SO. Inicialmente tenian CentOS 5.1 x86_64, luego fue tambien Windows xp 64. Despues, como todas las maquinas de composicion son Ubuntu, porque no ponerles Ubuntu?

La solución inicial fue instalar y levantar el sistema que fuera necesario para cada ocasion; luego me dio flojera tener que reiniciar las maquinas y desde el grub seleccionar el SO, ademas de que el hecho de que estuvieran en un determinado SO hacia inoperable las otras herramientas usadas en los otros sistemas operativos. Asi que debi recurrir a la virtualizacion.

Segun lei, la alternativa por default de CentOS es XEN. XEN funciona tanto con paravirtualizacion como con virtualizacion completa.

Siguiendo a grandes rasgos el manual

http://www.eslomas.com/index.php/archives/2008/03/11/virtualizacion-linux-y-windows-en-ubuntu-con-xen

La instalación de XEN fue realmente sencilla:

1) # yum install xen

2) los paquetes instalados fueron:

* xen-libs-3.0.3-64.el5_2.9
* xen-libs-3.0.3-25.el5
* xen-3.0.3-64.el5_2.9
* kernel-xen-2.6.18-92.1.22.el5

3) # vi /etc/xen/xend-config.sxp

(xend-unix-server yes)
(xend-unix-path /var/lib/xend/xend-socket)
(xend-relocation-hosts-allow '^localhost$ ^localhost\\.localdomain$')
(network-script network-bridge)
(vif-script vif-bridge)
(dom0-min-mem 256)
(dom0-cpus 0)
(vncpasswd '')


4) Verificar que el kernel de Xen este en el menu del grub y adicionarle la opcion loop max_loops=64 al final del module del kernel

# vi /boot/grub/menu.lst

5) Deshabilitar iptables, SELinux y mover /lib64/tls a /lib64/tls.disabled

6) # shutdown -r now


Máquinas virtuales con virtualización completa - Windows XP 64bits -

1) Comprobar que la maquina soporta virtualizacion:

# egrep '(vmx|svm)' /proc/cpuinfo
flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm
flags : fpu tsc msr pae mce cx8 apic mtrr mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm syscall nx lm constant_tsc pni monitor ds_cpl vmx est tm2 cx16 xtpr lahf_lm


2) Hacer un archivo que sera la imagen del SO de la maquina virtual:

# mkdir /opt/VM/winxp
# dd if=/dev/zero of=/opt/VM/winxp/win2_64.img bs=1M count=10240

3) Hacer el archivo de configuracion de la maquina virtual:

# vi /etc/xen/win2xp_64.cfg



kernel = "/usr/lib/xen/boot/hvmloader"
builder = 'hvm'
device_model = '/usr/lib/xen/bin/qemu-dm'
memory = 5120
name = "winxp"
vcpus = 1
vif = [ 'type=ioemu, bridge=xenbr1' ]
disk = [ 'file:/root/winxp/win2_64.img,ioemu:hda,w' ]
cdrom='/dev/scd0'
ne2000=0
boot='d'
vnc=1
vncunused=0
vncviewer=0
sdl=0



4) Tuve un error al intentar hacer

# xm create /etc/xen/win2xp_64.cfg

Error: HVM guest support is unavailable: is VT/AMD-V supported by your CPU and enabled in your BIOS?

La solucion fue activar la virtualizacion por hardware en un Dell PowerEdge 1950s .

Para activar la virtualización asistida por hardware:
1 Pulse en la pantalla de inicio para acceder al programa de configuración del BIOS.
2 Vaya a la sección CPU Information (Información de la CPU).
3 Pulse y vaya a Virtualization Technology (Tecnología de virtualización).
4 Seleccione Enabled (Activada) alternando las teclas de flecha izquierda y derecha.
5 Guarde la selección y salga del programa de configuración del BIOS.

NOTA: No uso el eth0 por eso en el archivo de configuracion esta referenciado xenbr1 ~= eth1.

La otra opcion que vi para crear administrar una maquinas virtuales desde consola grafica: virt-manager





Otro link de documentacion al respecto

martes, 10 de febrero de 2009

Dell T5400 con Fedora 4

Mas de una vez me he topado con las complicaciones de instalar en un maquina con harware "reciente" alguna distribucion de Linux tambien reciente, suelen no identificarse correctamente todo el hardware, pero es mas que nada por que aun no sale el modulo adecuado ;)


Sin embargo, ayer me tope con el problema de instalar en hardware reciente un Fedora Core 4 :-S

Aqui las caracteristicas generales de la maquina en cuestion Workstation Dell Precision T5400:

- 8G RAM
- Procesador Dual QuadCore
- Disco Duro SAS
- Tarjeta de Red Broadcom Ethernet NIC NetXtreme 5754
- Tarjeta de video Nvidia Quadro FX 3700


La historia de como superar esa instalacion....

La instalacion la pense hacer por DVD, hice el boot desde el dvdrom, pero resulto el siguiente mensaje de error:

vfs cannot open root device null or unknowblock

y varios mensajes despues de un kernel panic :-0

Busque en la red y alguien comento que debi hacerlo asi:

1) boot desde dvdrom
2) En el prompt de boot:

boot: lo que sea

Esto mandara un mensaje de error debido a que no se encuentra dicha imagen "lo que sea"

2) nuevamente en el prompt:

boot: linux media check

Asi se supera el mensaje de error anterior, pero resulto que no detectaba la unidad de dvdrom y aparecio el clasico mensaje:

"Unable to find any devices of the type needed for this installation type. Would you like to manually select your driver or use a driver disk? "


En la pantalla aparece las opciones para cargar el modulo adecuado para dicha unidad, probe varios, pero la verdad ninguno funciono. Asi que opte por cambiar el medio de instalacion, empiezo con dvdrom y a la hora de seleccionar el medio opte por hacerlo desde disco duro.

Para instalar desde disco duro, simplemente copie la imagen iso en una parte del disco duro diferente a la particion donde instalare, recuerdo que debe ser ext2, ext3 o fat para que pueda ser usada. Todo va bien hasta que trata de hacer la instalacion con ambiente grafico :(

No es reconocida la tarjeta grafica; asi que en lugar de usar en el prompt de boot linux media check use linux text, claro aun usando el dvd para hacer boot y el disco duro para la instalacion.

Asi por fin termina la instalacion basica. Pero resulta que no funciona la tarjeta grafica y tampoco la de red 8o|

Para la tarjeta grafica:

1) bajo el driver del sitio de nvidia
2) compilo el driver
3) modifico el archivo /etc/X11/xorg.conf

Para la tarjeta de red:

1) bajo el driver del sitio de broadcom http://www.broadcom.com/support/ethernet_nic/netxtreme_desktop.php

2) unzip linux-3.92n.zip
3) rpm -ivh tg3-3.92n-1.src.rpm
4) cd /usr/src/redhat/SPECS/
5) rpmbuild -bb SPECS/tg3.spec
6) como marco el siguiente error:

error: conflicting types for ’skb_header_cloned’ include /linux/skbuff.h:398: error: previous definition of ’skb_header_cloned’ was here RPM build errors:


vi /usr/src/kernels/2.6.11-1.1369_FC4smp-x86_64/include/linux/skbuff.h

hay que comentar las siguientes lineas:

/** static inline int skb_header_cloned(const struct sk_buff *skb)
*{
* int dataref;
*
* if (!skb->cloned)
* return 0;
*
* dataref = atomic_read(&skb_shinfo(skb)->dataref);
* dataref = (dataref & SKB_DATAREF_MASK) - (dataref >> SKB_DATAREF_SHIFT);
* return dataref != 1;
*}



7) rpmbuild -bb SPECS/tg3.spec
8) rpm -Uvh RPMS/x86_64/tg3-3.92n-1.x86_64.rpm
9) insmod /lib/modules/2.6.11-1.1369_FC4smp/kernel/drivers/net/tg3.ko
10) ifconfig eth0 XXX.XXX.XXX.XXX gw XXX.XXX.XXX.XXX
11) vi /etc/resolv.conf
12) ping google.com


Listo!!!!


PD: Quiza este post nunca le sea util a alguien, pero me da mucho gusto poder decir que esto fue prueba superada ;)

miércoles, 21 de enero de 2009

Recuperando el Grub....

He tenido que recuperar el grub de una maquina con 2 discos SATA y 6 SO diferentes, se que hay muchas ligas a respecto; pero aqui esta una mas :P


1) usar un LiveCD
2) mount /dev/sdaX /mnt
mount -o bind /dev /mnt/dev
mount -o bind /proc /mnt/proc

3) chroot /mnt

4) grub-install /dev/sdaX

o

grub;
grub> find /boot/grub/stage1
grub> root (hdX,Y)
grub> setup (hd0)
grub> quit

5) shutdown -r now

Una vez que se tenga el grub instalado, el meter todas las opciones en el menu no deberia ser complicado.

jueves, 1 de mayo de 2008

RPM - DEB

Comando utiles e interesantes


RPM:

rpm -qa --last ---> listar en orden de mas reciente a mas antiguo todos los paquetes instalados.

rpm2cpio | cpio -icduv ---> extraer el contenido del rpm en el directorio actual.

rpm -qpl archivo.rpm ---> lista el contenido de un archivo rpm no instalado.

rpm -ql paquete ---> lista el contenido de un rpm instalado.

rpm -qf archivo ---> Da el nombre del paquete que provee dicho archivo



DEB:

apt-show-versions ---> herramienta para listar paquetes y su estado respecto al repositorio. Para saber la version de determinado paquete usa -r paquete o bien usa -u para saber si esta actualizado o hay alguna actualizacion pendiente.

sort -r /var/log/dpkg.log | awk '{ if ($3=="install" ) print $4 " " $6 "\t" $1 " " $2 }' ---> como root puede listar de manera similar a rpm -aq --last

dpkg -X ---> extraer el contenido de un deb.

dpkg -c paquete_NO_instalado ---> Lista de archivos que provee el paquete deb NO instaldo.

dpkg -L paquete_instalado ---> Lista de archivos que provee el paquete deb.

dpkg -S archivo ---> Lista el nombre de paquete que provee dicho archivo


ALIEN:

alien -d paquete.rpm