29 de julio de 2006

Firefox IEtab

Interesante las extensiones de FireFox, habia visto el ietab pero no usado, y sirve mucho para uno que ah veces manipula sitios e incluso su mismo blog.

instalenlo para probar sus páginas en el mismo firefox y no tener que abrir el iexplorer, sino cargando el iexplorer como un tab del buen firefox.

Como pueden ver este mismo blog no se ve igual en el mismo firefox ya que en el primero uso un tab Iexplorer con motor de iexplorer y en el siguiente grafico ya es motor firefox, asi en la barra indica que puedo cambiar de motor.
Así mismo también presionando el boton del medio sobre el icono de IeTab, puedo ver los filtros, que quiere decir que yo añado los filtros de páginas que quiero por default carguen con el motor de Iexplorer.



https://addons.mozilla.org/firefox/1419/

22 de julio de 2006

Libro Mono y Gtk#

Buenaso el libro, muy completo hay muchos detalles que observar pero en fin util encima en pdf ya para que mas ah imprimir y usar!!

http://tornatmico.org/libro/LibroMono

21 de julio de 2006

Oracle Debian

Siempre me preguntan o me dicen que instalar oracle es muy sencillo en suse y bueno es porque suse lo ha hecho fácil y da soporte en oracle 10g, antes lo tenia ya RH y el enterprise lo sigue teniendo.

he visto usar centos con facilidad tambien, pero eso del soporte para gente en desarrollo o algo es trivial ya que el soporte se lo puede dar uno mismo, y no depende realmente de oracle sino como lo uses tu.

bueno aqui una buena guide para instalarlo en debian, que es la distro que uso mas y recomiendo, al final seguira siendo gnu linux.

esto para ti lucho que pediste importar lo de csv:
http://linux.togaware.com/survivor/Importing_data.html

y bueno ahi tambien la guia paso a paso para poner en marcha oracle en debian
http://linux.togaware.com/survivor/Oracle_10g.html

otro bueno y donde siempre hay buenos manuales el buen tldp-es
http://es.tldp.org/htmls/manuales.html

Suele pasar que queremos manejar el shutdown solo para algunos usuarios y bueno el ctrl-alt-del siempre esta activo y cualquiera pueda ejecutarlo, entonces veamos como podemos hacer que solo ciertos usuarios puedan hacer el reinicio o apagado respectivo:

para evitar que los usuarios puedan usar esta combinación de teclas nos vamos a /etc/inittab y ponemos el michi # que hara como comentario la siguiente linea:

ca::ctrlaltdel:/sbin/shutdown -t3 -r now

quedando asi:

#ca::ctrlaltdel:/sbin/shutdown -t3 -r now

Pero si lo que queremos es que sólo determinados usuarios puedan usarlo, modificamos la línea y la ponemos asi:

ca::ctrlaltdel:/sbin/shutdown -a -t3 -r now

y creamos un archivo llamado /etc/shutdown.allow con la lista de usuarios que deseamos:

jperez
usuario
usuario2

ahora bien si ponemos -h en vez de -r nos apagara el equipo
.

11 de julio de 2006

Firefox 2 rc1

bueno al parecer sigue avanzando firefox!! ya esta disponible la Versión 2 rc1 bajarlo aquí.

Milestone Release Date Summary
1.0 Phoenix 2004-11-9 Inaugural Release
1.5 Deer Park ??? 2005 New Gecko, ongoing HIG compliance, sw/update and extension manager improvements.
2a
Q1 2006 pre-feature complete alpha
2b
early Q2 2006 feature complete beta
2rc(s)
late Q2 2006
2
late Q2/early Q3 2006 Final Release
3.0
Q1 2007?
[   ] firefox-2.0b1.en-US.linux-i686.complete.mar                08-Jul-2006 01:04  8.4M
[   ] firefox-2.0b1.en-US.linux-i686.tar.gz 08-Jul-2006 01:03 8.9M
[   ] firefox-2.0b1.en-US.mac.complete.mar 07-Jul-2006 21:08 16M
[   ] firefox-2.0b1.en-US.mac.dmg 07-Jul-2006 21:08 17M
[   ] firefox-2.0b1.en-US.win32.complete.mar 07-Jul-2006 21:23 6.8M
[   ] firefox-2.0b1.en-US.win32.installer.exe 07-Jul-2006 21:19 5.4M
[   ] firefox-2.0b1.en-US.win32.zip
07-Jul-2006 21:22 7.4M

6 de julio de 2006

Linex2006



Bueno Linex2006 sea las trae, viene con fuerza ya esta el iso disponible! y todo lo demas, ah mejorado enormemente su gui, y configuración de muchas aplicaciones!
aquí un ejemplo:


Características Generales:

  • Escritorio Gnome, versión 2.14.
  • X.org 6.9, con espectacular rendimiento en plataforma Intel 945.
  • Núcleo Linux 2.6.16, con gran soporte de dispositivos como los nuevos Intel Core Duo, y las tarjetas inalámbricas ipw3945.
  • Soporte para las últimas controladoras SATA.
  • Últimos controladores ALSA a la fecha.
  • Instalación automática de controladores nVidia, ATI, firmware ipw2*00 y ipw3945, etc.
Aquí los link's respectivos:

HomePage Linex : http://www.linex.org/
Novedades Linex: http://www.linex.org/novedades.html
Instalar Linex : http://www.linex.org/linex06.html
Bajar Linex : http://montesinos.linex.org/linex2006.iso

Hace algún tiempo navegando encontre un popup para motivar o explicar razones porque dejar de usar Ms Internet Explorer, y bueno me parecio muy interesante e incluso un detector de si usas dicho programa, y bueno ya sabes que este programita no respeta las reglas w3c ni muchas otras. en fin aqui el script para eso y el link al autor de esto, al menos donde lo encontre.

Para que tu mismo pongas tu script y lo acomodes a tú gusto:
http://www.danielclemente.com/navega/ponlo.html

http://www.danielclemente.com/
http://www.danielclemente.com/navega/popup.html


Bueno hablando de ipod's, aqui les pongo algunas instrucciones bien sencillas de como poner una distro linux en su KEY USB, bueno 2 distros realmente, ya uds ven cual prefieren aunque asumo que muchos preferiran Damn Small Linux, antes que Knoppix, ya que es muy pequeña y necesita menos espacio, mucho menos espacio que Knoppix.

Primero necesitamos:

  • 1GB USB Flash Pen Drive Knoppix Linux ó 256Mb Damn Small Linux

  • Knoppix Linux | Damn Small Linux

  • Winrar (or another ISO extracting application)

  • Syslinux V3.11


Luego Pasos ah seguir:

  1. Primero es dar formato ah su Memoria USB, pueden usar el click derecho de Ms-WinXXX y listo, ah pero deben usar tipo FAT32 creo que es obvio pero no esta demás recordarlo.

  2. Bajar el ISO respectivo Knoopix o Damn Small Linux.

  3. Bajar y extraer syslinux-3.11.zip en un directorio con nombre syslinux311.

  4. Abrir el ISO respectivo Knoppix o Damn Small usando winrar o aplicación de sus preferencia. Luego Extraer los archivos a la memoria USB.

  5. Mueva el directorio y su contenido de /boot/isolinux a la raiz de la memoria USB.

  6. Elimine isolinux.bin y renombre | cambie el nombre isolinux.cfg a syslinux.cfg.

  7. Entre en modo linea de comando (en xp inicio/ejecutar/cmd) y luego ingrese al directorio syslinux311 entonces tipeamos "syslinux.exe F: " (donde F: es la unidad correspondiente a su memoria USB).

  8. Reinicie su ordenador | pc, y cambie en el BIOS para que bootee de USB.

  9. Entonces una vez cambiado en el bios y grabado, dejamos el usb conectado y esperamos que inicie el ordenador y listo! tendremos Nuestra distro Linux Corriendo.

Fuente


linux en un ipod, les paso este link interesante de los Inano's para los que tengan uno.... entren ahi para mas detalles y hay mucha info al respecto.

http://ipodlinux.org/Main_Page

4 de julio de 2006

Debian Interfaz Virtual

Existen varias formas de crear direcciones ip virtuales en debian, aqui uno de las cosa validas que al menos las he probado! por ahi tambien usando ip route pero estas son mas sencillas de usar

ah editar el archivo interfaces:

Virtual Adresses
--------------------------------------------
# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback interface
auto lo
iface lo inet loopback

# This machine's NIC
auto eth0
iface eth0 inet static
address 192.168.1.50
netmask 255.255.255.0
gateway 192.168.1.1
# Virtual Address
auto eth0:1
iface eth0:1 inet static
address 192.168.1.60
netmask 255.255.255.0
auto eth0:chat
iface eth0:chat inet static
address 192.168.1.70
netmask 255.255.255.0

auto eth1
iface eth1 inet static
address 10.2.3.4
broadcast 10.2.3.255
netmask 255.255.255.0
gateway 10.2.3.1
up ip addr add 10.2.3.5/24 dev eth1
down ip addr del 10.2.3.5/24 dev eth1
--------------------------------------------
Luego ah reiniciar el servicio de red:
"/etc/init.d/networking restart"

y listo tendremos 1 ip virtual en eth0 y otro ip virtual en eth1 de 2 maneras diferentes.


lea mas sobre ip-aliasing

Dos buenos manuales que nos pone a dispocisión el sitio de Desarrollo Web, me parece muy sencillos de entender, sobre todo para quienes quieren poner o dar control a sus usuarios de donde ingresan o se conectan a su servidor de base de datos mysql.

existen varias gui's para el manejo de mysql y una de las mas usadas ultimamente es su propia gui mysql administrator, así que denle click para poder leer sobre :



Gestionar usuarios MySQL
Definir los host de conexión de los usuarios a MySQL


Monodevelop es un bonito ambiente de desarrollo específicamente diseñado para la plataforma Mono. Lo novedoso de esta nueva versión es que incluye el paquete Stetic completamente integrado a Monodevelop. Stetic es un módulo que permite crear pantallas en Gtk# de una manera similar a Glade. La diferencia es que Stetic fué diseñado específicamente para Mono y ahora al integrarse a Monodevelop le da a este IDE un ambiente que le resulta bastante familiar a los usuarios de Visual Studio. Claro, guardando las distancias ya que Monodevelop sigue estando en desarrollo y si bien es bastante funcional en esta versión todavía le falta.

Existe una herramienta muy similar a Glade que se llama Stetic y se puede encontrar en las últimas versiones de MonoDevelop.

En mi opinión, Stetic es mucho mejor que al potente y sencillo gui de Glade, no sólo porque está desarrollándose más activamente sino porque, en lugar de requerir una libería externa
para cargar las interfaces, genera el código necesario para que tu aplicación funcione correctamente.

No obstante Stetic depende de una librería externa, una DLL propia de Stetic, pero de lo que ya no depende es del fichero XML, debido a que su interfaz no se construye en tiempo
de ejecución sino en tiempo de compilación a partir de la generación de código que tiene lugar en el IDE a partir del XML.


link's del tema:
http://www.mono-project.com/Stetic
http://mysterion.org/~danw/blog/2005/03/steticzilla.html
http://www.mono-project.com/Image:Steticinmonodevelop_s.png

los tan conocidos sp o store procedure! pues si ya existen hace mucho!! bueno en realidad desde la version 5.0 y muchas otras cosas mas. aqui los detalles

Una introducción a las nuevas características

Con la versión 5 de su motor de base de datos, MySQL da un salto comparable (o mayor) a la incorporación de almacenamiento ACID con InnoDB. Básicamente, esta última versión incorpora 4 novedades: Stored procedures, Triggers, Views y Data Dictionary (o Information Schema). De las otras 2 nuevas características (Cursores y matemática de precisión) me ocuparé más adelante.

Aunque cada una merece un espacio propio (y lo va a tener), acá va una pequeña introducción general, que no sólo se aplica a MySQL sino también a otros motores.

Empecemos con los Stored Procedures (o SPs). Un SP es un procedimiento (una rutina escrita en un lenguaje en particular) almacenado en una base de datos. Tiene un nombre, una lista de parámetros (que puede ser vacía) y un cuerpo (las sentencias que se ejecutarán al invocarlo) Se suele distinguir entre una función, que devuelve un valor como resultado de su ejecución y un procedimiento, que puede no devolver ningún valor, o puede devolver varios a través de sus parámetros. Además, una función tiene varias limitaciones que un SP no tiene. MySQL permite crear ambos tipos de rutina.

Un Trigger es una rutina también almacenada en la base de datos, asociada a una sentencia SQL de modificación de datos (INSERT, UPDATE o DELETE) Por ejemplo, se puede crear un trigger asociado a la sentencia DELETE en una tabla de clientes, para impedir que se elimine uno que tenga un saldo distinto de cero. El cuerpo del trigger puede ejecutarse una única vez como resultado de la ejecución de la sentencia, o una vez por cada registro afectado. Esto quiere decir que, en el caso de los clientes, el trigger debería ejecutarse por cada cliente que cumple la condición del WHERE.

Una View (Vista) es básicamente un SELECT almacenado. El motor distingue dos tipos de tablas, "base" y "derivadas" Una tabla base es una existente en el motor de almacenamiento. Una derivada es la que surge de cualquier combinación de tablas base, literales y/o funciones. Desde este punto de vista, un SELECT produce una tabla derivada. Así, una Vista es un nombre asociado a la tabla derivada que surge de un SELECT. Puesto de esta forma, parece bastante simple pero, de hecho, hay bastante para hablar sobre vistas. Por ejemplo, se pueden crear vistas "actualizables", o sea, vistas que soporten INSERTs y UPDATEs modificando la tabla base.

El Data Dictionary es la forma de acceder a los metadatos de la base (la información sobre los campos de una tabla es un metadato, por ejemplo) Antes de la versión 5, MySQL permitía acceder a los metadatos a través de SHOW, por ejemplo, "SHOW TABLES". Este mecanismo de acceso tiene como desventaja principal ser una desviación del estándar SQL, que presenta esta información de una forma más natural para el usuario de un motor SQL, esto es, a través de tablas. La nueva implementación pone el diccionario en la base de datos INFORMATION_SCHEMA (aunque las sentencias SHOW siguen siendo soportadas) Esta base es creada por el motor cada vez que arranca, y es mantenida a medida que ocurren cambios en las estructuras de la base. No se puede modificar su contenido directamente. Entre otras tablas, se puede encontrar "TABLES" que (obviamente) lista las tablas y vistas que existen en el motor.

Espero haber generado una chispa de curiosidad. Si ya utilizaron MySQL, es muy probable que en algún momento hayan lamentado que no tuviera alguna de las herramientas que ahora está presentando. En particular, me hubiera gustado mover ciertos checkeos que tuve que dejar en la aplicación a triggers, como forma de proteger la base "desde adentro"

visiten estas paginas de donde obtendran mas informacion en detalle sobre esto

http://dev.mysql.com/doc/refman/5.0/en/create-trigger.html
http://www.mysql-hispano.org/page.php?id=36
http://mysql5.linux10.com.ar/
sobre procedimientos almacenados
http://dev.mysql.com/doc/refman/5.0/en/stored-procedures.html

Siguiendo con openvpn, un consejo sobre esto, al menos en debian woody , es en realidad sencillo

#>apt-get install openvpn

luego de tu configuracion procedes ah crear el disp.

#> modprobe tun
#> mkdir /var/empty
#> chown nobody.nogroup /var/empty
#> /etc/init.d/openvpn restart

ahora bien que pasa si tienes varias conexiones a un solo servidor? entonces necesitaras tun0 tun1 tun2, como recomendacion les daria no crear el dispositivo manualmente, sino solo el openvpn lo crea y siempre apuntar solamente a el

ejm : para el primero ponen
dev tun0
luego para el 2do enlace
dev tun1
y listo.

solo como consejo.

ahora para el que quiere crearlo manualmente:

#> modprobe tun

Renombramos tun por tun1:
#> mv /dev/net/tun /dev/net/tun1

Creamos uno nuevo para la siguiente conexion:
#> mknod /dev/net/tun2 c 10 200


La configuracion de openvpn es muy sencilla realmente, pero cuando fuciona detras de un proxy suele traer ciertos problemas!
las reglas que se ponen en iptables deben tener mucho cuidado se deben fijar en no cerrar todos los puertos y denegar forward.
estas son las reglas que se necesitan para habilitar el puerto 5000 o 5001 sucesivamente para openvpn.

fijarse bien que aqui se permite forward para una red 192.168.1.x quiere decir que al otro lado se dara acceso ah la red origen digamos 192.168.2.x y el forward debe activarse en eth1 tambien, ya que si se tiene 2 tarjetas de red una apuntando ah tu salida a internet eth0 (o ip publico) y la otra a tu red local eth1.

_______________________desde aqui______________________
iptables -A FORWARD -i eth0 -s 192.168.1.0/255.255.255.0 -j ACCEPT
iptables -A INPUT -i eth0 -s 192.168.1.0/255.255.255.0 -j ACCEPT
# Aceptamos el tráfico entrante UDP por el puerto del OpenVPN sobre el interfaz real (eth0, eth1).
# 2 puertos, el 5000:
iptables -A INPUT -i eth0 -p udp --dport 5000 -j ACCEPT
# Aceptamos también la salida por dicho puerto:
iptables -A OUTPUT -o eth0 -p udp --sport 5000 -j ACCEPT
# Permitimos conectar desde cualquier equipo de las redes a nuestro router por la VPN:
iptables -A INPUT -i tun+ -j ACCEPT
# Permitimos conectar por la VPN desde el router al resto de routers y equipos de cada red:
iptables -A OUTPUT -o tun+ -j ACCEPT
# Permitimos que equipos de las otras redes accedan a nuestra red:
iptables -A FORWARD -i tun+ -j ACCEPT
# Permitimos que los equipos de nuestra red accedan a la VPN:
iptables -A FORWARD -o tun+ -j ACCEPT
iptables -A FORWARD -i eth1 -j ACCEPT
iptables -A OUTPUT -m state --state NEW -o eth0 -j ACCEPT
#iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A FORWARD -m state --state NEW -o eth0 -j ACCEPT
#iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT

_______________________hasta aqui______________________

24 de mayo de 2006

otro disco duro

siempre se quiere poner un 2do disco duro o un 3er disco duro, para tener mas espacio, aumentar el cache del proxy, tener un disco de aplicaciones o data para un samba o pagina web, etc.

bueno el proceso es sencillo apagas tu pc y lo conectas listo hablamos de discos ide y x86.

luego seria lo sgte:
1. particionar
fdisk /dev/hdb
o si es en el tercer ide fdisk /dev/hdc segun corresponda
y particionar


2. formatear
mkfs.ext3 /dev/hdb1
mkfs.ext3 /dev/hdb2

o segun corresponda si usan ext2 mkfs.ext2

3. mover info
- crear carpetas donde montar lo formateado para ver o copiar o usar esas particiones
mkdir /mnt/p1
- montar la particion formateada en la carpeta creada.
mount /dev/hdb1 /mnt/p1
- y copiar o usar como cualquier otro directorio o carpeta de otra particion

4. montar peremne
/etc/fstab.
aqui ya deben añadir al final donde montaran su nueva particion creada por ejm pueden duplicar la ultima linea de su fstab digamos la mia:
/dev/hda1 /home ext3 defaults 0 3
- duplico y modifico para que quede donde corresponda
/dev/hdb1 /home2 ext3 defaults 0 3
- si digamos sera un nuevo disco para mas usuarios.

es algo sencillo. en otro post explico mas detalle como mudar sus sitema osea ficheros de sistema a un nuevo disco duro sin formatear o reinstalar su os linux. claro que se puede y eso no se puede en winbug.

23 de mayo de 2006

fstab puntos de montaje

Generalmente, cuando ponemos un nuevo disco o queremos cambiar los lugares de montaje del sistema, una gran ventaja que nos da lox sistema unixes como linux, es esto podemos cambiar de disco o punto de montaje de la particion.
entonces el archivo fstab es donde se indica la particion y punto de montaje junto a otras opciones, gralte se debe reiniciar pero existe el comando mount que nos ahorra eso, entonces
modificamos el archivo fstab y damos simplemente:
mount -a

y listo montara de nuevo todos los sistema de ficheros que tengamos, ahora si queremos ser especificos podemos darle especificamente el directorio a montar

mount -o remount [directorio a montar]

entonces montaras los dispositivos que tengas en /etc/fstab

mas en : man mount

5 de mayo de 2006

mysql innodb

Acabo de leer una noticia en el site de innodb, donde como partner o propietarios los de oracle se afianzan mas en el mercado! donde se afianzan como socios del año, sin lugar a dudas esto es un gran impulso para innodb, pero aun me parece que no impulsan a mysql como una base de datos empresarial, mientras no se divulgue o de a conocer el uso de mysql + innodb esto seguira siendo solamente una tabla de datos (conjunto de tablas= ? ) pero el verdadero poder en mysql se obtiene configurando apropiadamente innodb y ya no usar myisam.

www.innodb.com
www.mysql.com

Los que ya hemos usado o visto oracle, conocemos sobre pl/sql que es el entorno fuerte e INN de oracle, asi tambien en postgresql hay pl/pgsql, un buen manual esta en la gente de postgresql.org.mx

bajenlo de aqui:
http://www.postgresql.org.mx/files/manual_plpgsql.pdf

.

3 de marzo de 2006

Ideas

Si tienes una manzana y yo tengo una manzana y las intercambiamos, entonces tu y yo todavía tendremos una manzana. Pero si tu tienes una idea y yo tengo una idea e intercambiamos esas ideas, entonces cada uno de nosotros tendrá dos ideas.

George Bernard Shaw


Interesante lo que uno encuentra en internet y sobre todo en sourceforge, me gusto esta frase deberian darle un oscar!!! :)