Hoy (si 31 de Diciembre del 2010) tuve un problema intentando capturar los errores en postgres que me daba un script.
Cualquier persona que haya trabajado con psql sabe que muestra los errores durante la ejecución de los scripts en la pantalla. Sin embargo como el script era muy largo desde luego que era mejor, copiar todos los errores en una archivo y luego revisarlos uno a uno. De hecho se sabe que cuando son muchos mensajes después de cierto numero de lineas los mensajes que aparecen al principio se van perdiendo y no es posible recuperarlos.
Lo primero que hay que tener en cuenta es que la salida de errores no es lo mismo que la salida estándar. Aunque tanto los resultados de la salida de error como la estándar arrojan los resultados en pantalla.
Por esa razón pensaba que con un simple:
plsql -U usuario -d base_de_datos -c "\i archivo_de_script.sql" -h localhost > errores.out
Capturaría todos los errores. Pero así solamente se capturan los mensajes de la salida estándar. Para capturar los errores debe hacerse:
plsql -U usuario -d base_de_datos -c "\i archivo_de_script.sql" -h localhost 2> errores.out
Pero aquí tuve nuevamente un problema, no me daba de cuenta de que el "2>" era pegado y no separado. Me llevo tiempo darme cuenta.
Fuentes:
Curso de Linux Gratis. Tuberias. Wikilearning: http://www.wikilearning.com/curso_gratis/curso_de_linux-redirecciones_y_tuberias/4230-13
viernes, 31 de diciembre de 2010
sábado, 4 de diciembre de 2010
Archivo de configuración de NetBeans
Hace poco tuve que repararle el NetBeans a alguien que tuvo la mala idea de instalar el jdk en el escritorio y accidentalmente lo movió. Luego de detectar el problema quise ponerlo en otra ubicación.
Al principio pensaba que se trataba de las variables de entorno y eso. Pero a mi intuición le llevo más de una hora dar con el siguiente archivo
/usr/local/netbeans-6.9/etc/netbeans.conf
Fíjense el nombre del subdirectorio "etc", que coincide con el "/etc" de la instalación de linux. Desde en esa dirección es allí en donde esta netbeans en el caso de mi máquina y variara de una máquina a otra dependiendo de como se haya hecho la instalación.
Allí se cambia la dirección en donde dice:
# Default location of JDK, can be overridden by using --jdkhome <dir>:
netbeans_jdkhome="/opt/jdk1.6.0_20"
a la ubicación del jdk deseada y listo.
Al principio pensaba que se trataba de las variables de entorno y eso. Pero a mi intuición le llevo más de una hora dar con el siguiente archivo
/usr/local/netbeans-6.9/etc/netbeans.conf
Fíjense el nombre del subdirectorio "etc", que coincide con el "/etc" de la instalación de linux. Desde en esa dirección es allí en donde esta netbeans en el caso de mi máquina y variara de una máquina a otra dependiendo de como se haya hecho la instalación.
Allí se cambia la dirección en donde dice:
# Default location of JDK, can be overridden by using --jdkhome <dir>:
netbeans_jdkhome="/opt/jdk1.6.0_20"
a la ubicación del jdk deseada y listo.
Reiniciar un Sistema Operativo real como si fuera virtual en VirtualBox
Este es un ejemplo de cómo iniciar otro sistema operativo desde nuestra máquina, que no este virtualizado, sin tener que salirnos del sistema y volver a iniciar.
Antes que nada debemos tener todos los permisos del disco duro en donde este instalado el sistema operativo que se vaya a manipular. Generalmente el disco duro se identifica como sda (puede tener otro nombre o no ser un disco duro):
sudo chmod 666 /dev/sda
esto aunque parezca, no es tan peligroso y ese cambio que hicimos se perderá al volver arrancar el sistema. De hecho no tiene efecto desde el escritorio, para que tenga efecto tiene que arrancarse virtualbox desde la misma consola, como se verá más adelante
Luego se crea un enlace de disco duro virtual al disco duro real:
VBoxManage internalcommands createrawvmdk -filename ~/.VirtualBox/HardDisks/mint.vmdk -rawdisk /dev/sda -relative -register
por ultimo se arranca virutalbox (DESDE LA MISMA CONSOLA QUE ESTAMOS USANDO). Tecleando:
VirtualBox
En virtualbox se crea un sistema operativo virtual (cuyas características correspondan al real), escogiendo como unidad de disco duro la que se acaba de crear: "mint-vmdk", y con esto deberíamos poder arrancar el sistema real como virtual.
¡Pude arrancar en la máquina virtual el mismo SO que estaba corriendo!. Eso es peligroso y no se debería hacer.
Fuente: http://ubuntulife.wordpress.com/2009/05/13/ejecutar-varios-sistemas-operativos-reales-desde-virtualbox/
Antes que nada debemos tener todos los permisos del disco duro en donde este instalado el sistema operativo que se vaya a manipular. Generalmente el disco duro se identifica como sda (puede tener otro nombre o no ser un disco duro):
sudo chmod 666 /dev/sda
esto aunque parezca, no es tan peligroso y ese cambio que hicimos se perderá al volver arrancar el sistema. De hecho no tiene efecto desde el escritorio, para que tenga efecto tiene que arrancarse virtualbox desde la misma consola, como se verá más adelante
Luego se crea un enlace de disco duro virtual al disco duro real:
VBoxManage internalcommands createrawvmdk -filename ~/.VirtualBox/HardDisks/mint.vmdk -rawdisk /dev/sda -relative -register
por ultimo se arranca virutalbox (DESDE LA MISMA CONSOLA QUE ESTAMOS USANDO). Tecleando:
VirtualBox
En virtualbox se crea un sistema operativo virtual (cuyas características correspondan al real), escogiendo como unidad de disco duro la que se acaba de crear: "mint-vmdk", y con esto deberíamos poder arrancar el sistema real como virtual.
¡Pude arrancar en la máquina virtual el mismo SO que estaba corriendo!. Eso es peligroso y no se debería hacer.
Fuente: http://ubuntulife.wordpress.com/2009/05/13/ejecutar-varios-sistemas-operativos-reales-desde-virtualbox/
Suscribirse a:
Entradas (Atom)