que el apreciar y disfrutar el cuerpo desnudo de una mujer...

Korn Shell Settings

2008-07-18 20:30:16-05

Hacks

Este es mi ~/.kshrc:

# ~/.ksrch: Korn Shell Settings
#

# Variables de entorno del shell
export EDITOR=vi
export FCEDIT=$EDITOR
export HISTEDIT=$EDITOR
export HISTFILE=~/.ksh_history
export HISTSIZE=1024
export VISUAL=$EDITOR

# A la cuenta del root no le gusta los locales
if [ $USER != "root" ]; then
#export LANG=en_US.UTF-8
export LANG=en_US.ISO8859-1
export LC_ALL=$LANG
fi

# Usamos el estilo de vi para la linea de comandos
set -o vi

# El estilo del commando ls
if [ $USER != "root" ]; then
alias ls='ls -AF'
fi

# El estilo del prompt
export PS1='
$(whoami)@$(hostname)
$(date)
$(pwd)

[$(tty):!]# '

# Otras rutas de acceso
export PATH=$PATH:

Y esto es lo que tengo en ~/.profile:

export ENV=~/.kshrc

Ejemplo de mi prompt:

asarch@hell
Fri Jul 18 20:28:12 CDT 2008
/usr/pkgsrc/emulators/wine

[/dev/ttyp2:1035]$

Permalink: http://www.mononeurona.org/users/entry/asarch/1440


El despertar del Dæmonio

2008-07-18 20:09:53-05

Hacks

Desde que me inicié en esto de Unix (como filosofía y no como la marca registrada UNIX®), el editor vi siempre ha sido para mi uno de los grandes y fascinantes enigmas .

No entendía el por qué de su naturaleza (un tanto chocante para el iniciado), sus modos, sus variantes, sus clones, las diferencias entre ellos, sus licencias, el por qué de tantos de ellos, etc., y sobre todo, la médula en la que se centra su edición y su naturaleza: el editor ex.

Para tratar de comprender mejor esta mantra me compré el libro “Learning the vi editor” junto con su versión de bolsillo de Arnold Robins, me leí de cabo a rabo (más o menos) la ayuda en línea del vim, la ayuda en línea de su otro clón: el Elvis (el vi oficial de los slackers y de donde se inspiró Keith Bostic para hacer el nvi, el "New VI", el vi *OFICIAL* de los *BSD), el man page del nvi de los BSD, el comando “:visuage” del nvi asi como tambien el comando “:exusage” y seguía sin poder comprender.

En fin, todo lo relacionado con vi/ex (y por lo ende, todo lo que sea relacionando con el editor estándar de Unix: el editor ed).

“...y al buscar, en el aliento de otras bocas, el perfume que engañara mis tristezas...”.
— Canción popular, Falsa.

Hubo incluso un tiempo en que decidí engañarme y usar el otro mantra de Unix (que en realidad no nació en Unix sino en una PDP-10 que usaba el sistema operativo TOPS-10 y nació en Unix por la frustación de no poder asimilar el mantra de vi. Por eso me atrevo a decir que un usuario de Emacs es un usuario fracasado de vi en potencia. Si tan solo los usuarios fracasados del editor vi pudieran contarse con las... !momento! !ya se puede: vi vs emacs!), el editor Emacs y olvidarme de vi como aquél cuyo amor imposible hace que se olvide de la mujer que tanto quiso pero que nunca le pudo o hubo manera de entregarle todo el amor que sentía por ella.

Incluso imprimí todo sus manuales porque tenía las esperanzas falsas de que en este mantra finalmente iba a encontrar mi felicidad hasta que una noche cansado de hacer tantas “muecas” con las manos por presionar las teclas del “método abreviado” tan mamones que tiene este editor decidí volver derrotado una vez más para ver si en esta ocasión podía conquistar el amor de vi/ex de una vez por todas.

Todas las noches leía con vehemencia el manual del editor Sam, la versión oficial y gráfica del editor ed para el que iría ser el sucesor de Unix pero por falta de tiempo no lo fue (jubilaron a los desarrolladores): el sistema operativo Plan 9, pero no me cabía en la cabeza cómo es que alguien pudiera siquiera preferir un editor de “líneas” a un editor normal, hice miles de anotaciones, leía y leía sin comprender hasta que un día...

Suponiendo que vas a escribir un sencillo programa en C:
  • Abres una ventana del emulador de terminal y tecleas:
[$] ed

y te aparece lo siguiente:



¡Nada porque aún no hay nada escrito!
  • Para empezar a escribir el código fuente es necesario decirle a ed que vamos a agregar texto, para eso usamos el comado “a” (del inglés “append”, ¡d'oh!):
a
  • Y empezamos a hackear:
#include

main (int argc, char* argv[])
{
fprintf (stdout, "Hello, world!\n");
return (EXIT_SUCCESS);
}
  • Ahora vamos a detener la inserción de texto para poder guardar el archivo:
.

por cierto, es un sólo punto (“.”).
  • Guardamos con el comando “w” (“write”) más el nombre del archivo:
w main.c
116

El número que aparece enseguida es el total de bytes que ed guardó en el disco.
  • Compilamos:
[$] gcc -o saludo main.c
main.c: In function 'main':
main.c:6: error: 'EXIT_SUCCESS' undeclared (first use in this function)
main.c:6: error: (Each undeclared identifier is reported only once
main.c:6: error: for each function it appears in.)

Y vemos con tristeza que por las prisas nos hemos olvidado de agregar la cabecera estándar “stdlib.h” para el “EXIT_SUCCESS”.
  • Ahora editamos el archivo:
[$] ed main.c
  • Y le inidicamos que en la línea número 1 le vamos a agregar texto:
1a
  • y corregimos:
#include
  • Detenemos la inserción de texto:
.

Recuerda, es un sólo punto (“.”).
  • Compilamos y probamos:
[$] gcc -o saludo main.c

[$] ./saludo
Hello, world!

Pero suponiendo que por algún motivo ya no vamos querer la salida estándar (“stdout”) para mostrar el saludo sino la salida estándar de error (“stderr”).

He aqui el meollo de vi/ex y ed:

Con un editor normal habriamos que presionar la tecla flecha abajo unas cinco veces y presionar la tecla flecha derecha unas 10 veces, dependendiendo claro si habriamos ocupado el shortcut de Ctrl+Flecha derecha, para saltarnos palabra por palabra hasta llegar al lugar del reemplazo.

Lo primero que tenemos que hacer con ed es “seleccionar” la linea que vamos a editar y eso lo conseguimos con

/printf

Segun Arnold Robins hay básicamente tres formas de poder seleccionar las líneas (digo, despues de todo ex y ed son “editores de líneas”):
  1. De manera explícita através del número de línea.

  2. Con símbolos que te ayuden a especificar el número de línea apartir de la dirección actual.

  3. Por medio de expresiones regulas (“regexp”), que es el método mas eficaz, poderoso y confuso y es el que usamos con “/printf”).
Cuando ed abre un archivo para su edición, su “dirección” interna se sitúa en la última línea del archivo (Sam le dice a esta dirección “texto actual, current text” o “punto, dot”).

Viéndolo gráficamente:

1
#include
2
#include
3

4
main (int argc, char* argv[])
5
{
6
fprintf (stdout, "Hello, world!\n");
7
return (EXIT_SUCCESS);
8
}

Con el comando “/printf” lo que hacemos es seleccionar la línea número 6, que es básicamente:
  • /” <- Busca

  • printf”<- La expresión regular indicada.
1
#include
2
#include
3

4
main (int argc, char* argv[])
5
{
6
fprintf (stdout, "Hello, world!\n");
7
return (EXIT_SUCCESS);
8
}

Despues de haber seleccionado la línea que buscamos le vamos a indicar que en esa línea realice una sustitución de texto, para eso usamos el siguiente comando:

s/stdout/stderr/

Que es básiamente:
  • s/” <- Realiza un reemplazo de

  • stdout/” <- La siguiente expresión regular por

  • stderr/” <- La siguiente expresión regular.
Quedando el archivo de la siguiente manera:

1
#include
2
#include
3

4
main (int argc, char* argv[])
5
{
6
fprintf (stderr, "Hello, world!\n");
7
return (EXIT_SUCCESS);
8
}

Si queremos comprobar que se haya realizado dicha sustitución o comprobar que se haya efectuado en el lugar que indicado, imprimimos el contenido de la dirección actual con el comando “p”:

p
fprintf (stderr, "Hello, world!\n");

Y vemos que satisfactoriamente el cambio se ha realizado.

Guardamos el archivo:

w
120

Compilamos:

[$] gcc -o saludo main.c

Y ejecutamos:

[$] ./saludo
Hello, world!

Y ¡listo! Esta es la manera, expresado de la manera más simple, en la que ed/ex o cualquier otro editor de líneas operan.

Lo que hace muy poderoso a un editor de líneas es la posibilidad de poder usar las expresiones regulares (esas todavía me hacen falta por comprender) como por ejemplo, del libro de Arnold Robins:

Tenemos la siguiente base de datos:

Name: Feld, Ray; Areas: PC, UNIX; Phone: 123-4567
Name: Joy, Susan S.; Areas: Graphics; Phone: 999-333
...

Y queremos cambiar el orden de los nombres:

Name: Ray Feld; Areas: PC, UNIX; Phone: 123-4567
Name: Susan S. Joy; Areas: Graphics; Phone: 999-333
...

Sólo con teclear el siguiente poderoso comando con la siguiente poderosa expresión regular:

:g/^Name/s/: *\([^,]*\), \([^;*\);/: \2 \1;/

realizamos dicha tarea.

Por cierto, ed y ex son tan diferentes como un hombre y una mujer así que el juego de comandos de ed varia un poco en ex y viceversa.

Cuando nos encontramos en vi (que es solamente el modo visual de ex) todos los comandos de ex tienen que llevar implicito los dos puntos (“:”) para indicar que no es un comando del modo visual sino de ex propiamente. Como cuando guardamos un archivo:

:w calculo.c

Y cuando nos encontramos en ex, el editor automáticamente los agrega:

w calculo.c

Y pues bien, esto fue, expresado en mis propias palabras, mi iluminación con ed/ex.

Permalink: http://www.mononeurona.org/users/entry/asarch/1439


Disco de instalación de NetBSD reloaded

2008-07-14 13:48:30-05

Hacks

Introducción


NetBSD ofrece una gran variedad de imágenes de discos para su instalación vía CD-ROM, de tal forma que sólo basta con teclear la dirección del servidor FTP en el Firefox, indagar un rato, decidirse y descargar la imágen con el comando wget para hacerlo de la manera más fiable y segura.

Por ejemplo, para la arquitectura x86 podríamos usar:

[$] wget -c ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-4.0/i386/installation/cdrom/boot.iso

Sin embargo, estos imágenes de discos fueron creados teniendo en cuenta que en la máquinas en donde lo vayas a usar el kernel pueda hacer uso de por lo menos una interface de red para descargar el resto de los sets que se necesita para al menos tener un sistema decente y bootear con el.

Cuando no es posible conectarse por ningún medio a la red usando las interfaces de la máquina en cuestión, debido a que el kernel del proceso de instalación no los puede reconocer, es necesario tener que descargar el resto de los set, quemarlos por separado en otro disco, cambiar el disco de instalación por este disco y continuar con el proceso. Así, de esta forma andar cargando siempre los dos discos para poder instalar NetBSD (amén de que uno de ellos se llegue a dañar y/o de que llegemos a olvidarlo en la máquina de cliente).

El siguiente proceso es para crear un disco de instalación que combine ambos discos en uno solo.

Procedimiento


Descargando los sets necesario


  • Primero creamos nuestro directorio de trabajo y nos situamos dentro:
[$] mkdir ./netbsd-install-disc

[$] cd ./netbsd-install-disc
  • Ahora descargamos los componentes principales de la imágen del disco:
[$] wget -c -r ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-4.0/i386

Lo que esta de rojo es el “release” (la versión) de NetBSD y lo de azul la arquitectura.

Si desean otras versiones y/o arquitecturas solo echense un “clavado” por el servidor FTP usando Firefox y copiando y pegando dicho enlace para la versión y la arquitectura deseados.
  • Ahora descargamos los sets auxiliares (los que originalmente tenemos que quemarlos en un disco por separado):
[$] wget -c -r ftp://ftp.netbsd.org/pub/NetBSD/NetBSD-4.0/shared
  • Creamos el enlace simbólico que permitirá que nuestra imágen de disco funcione:
[$] ln -s ftp.netbsd.org/pub/NetBSD/NetBSD-4.0/i386 .

No olvides el “.” (punto) al final del comando.
  • Este enlace simbólico es necesario para que cuando lleguemos a la siguiente fase de la instalación:
alt

alt

el programa no se queje por la falta de la ruta de acceso y solo tengamos que presionar enter para continuar con el proceso:


alt

Creando la imágen del disco


Subimos un nivel para poder crear la imágen del disco:

[$] cd ..

Ahora creamos la imágen del disco con el mkisofs:

[$] mkisofs -b ftp.netbsd.org/pub/NetBSD/NetBSD-4.0/i386/installation/floppy/boot-big.fs -J -joliet-long -log-file ./mkisofs.log -o ./netbsd-4.0-i386.iso -r -V "NetBSD 4.0 for i386" ./netbsd-install-disc

Descripción


Ok, vamos paso a paso:
  • La opción “-b” es para agregar una imágen de inicio al disco de tal manera que puedas bootear con el como lo haces con las imágenes de disco que descargas de Ubuntu, Slackware, Fedora, etc.
El resto de la opción es para indicarle a mkisofs de dónde va a tomar la imágen booteable que agregará al disco, en este caso de la ruta de acceso

ftp.netbsd.org/pub/NetBSD/NetBSD-4.0/i386/installation/floppy/boot-big.fs

es relativa a la ruta de accesso de donde tomara los datos para crear la imágen.
  • Las opciones “-J” y “-joliet-long” son por si algún despistado encuentra nuestro disco y de chismoso desea saber qué contiene usando una máquina con Windows. Estas dos opciones las puedes omitir si no usas Windows pero, por experiencia propia, te sale más barato dejarlas.
  • La siguiente opción, “-log ./mkisofs.log”, es para indicarle a mkisofs que escriba todos los resultados de sus operaciones en el archivo “./mkisofs.log” de tal forma que si algo llegara a fallar podríamos hacer un estudio “post-mortem” con más calma.
  • La siguiente opción “-o ./netbsd-4.0-i386.iso” es para indicarle a mkisofs el nombre de la imágen del disco que va a generar, si se omite tu pantalla se llenará de basura ya que no al contar con éste, mkisofs manda todo a la salida estándar (“stdout”).
  • Así como le dijimos a mkisofs que habilitara a Windows para el uso del disco con las opciones “-J” y “-joliet-long”, con la opción “-r” le estamos diciendo que nuestra imágen tambien se usará en entornos Unix (*BSD, GNU/Linux, etc) y que tambien agregue el enlace simbólico a la imágen creada (muy necesario para que el truco funcione).
  • La siguiente opción, “-V "NetBSD 4.0 for i386"”, es para agregarle el nombre a la imágen del disco (el que aparece en el Explorador del Windows o cuando tienes habilitado el dæmonio HAL de GNU/Linux).
  • Y finalmente, “./netbsd-install-disc”, que es de donde tomará mkisofs la información para crear la imágen del disco.

Probando a la imágen del disco


Despues de un rato vamos a obtener el siguiente archivo:

[$] ls -lh ./netbsd-4.0-i386.iso

el cual podremos probar con QEMU (para no desperdiciar disco vírgenes):

[$] qemu-img create -f qcow2 c.img 5G

[$] qemu -localtime -m 256 -soundhw es1370 -hda c.img -cdrom ./netbsd-4.0-i386.iso -boot d

Si todo sale bien, procedemos a quemarlo.

Quemando el disco


Solo teclea:

[$] cdrecord dev=/dev/rcd0d -v -eject ./netbsd-4.0-i386.iso

y listo, a conquistar al mundo con nuestro *UNICO* disco de instalación de NetBSD para procedimientos fuera de línea.

Permalink: http://www.mononeurona.org/users/entry/asarch/1434


¿Qué +kota prefieres?

2008-07-14 12:35:49-05

Opiniones

¿Qué mascota te gusta más?

  • Un gato.
  • Un perro.
  • Un perico.
  • Un canario.
  • Una iguana.
  • Una tortuga.
  • Un puerquito (¿Babe?).
  • Una serpiente (!).
  • Un alacrán.
  • Una tarántula.
  • Un gecko (en mi casa abundan).
  • Un tigre.
  • Un elefante (!!).
  • Un delfín.
  • Una ballena.
  • Otro no especificado (dilo tu).
En lo personal me gustan muchos los gatos pero lamentablemente por mi alergía tengo que mantenerme a 3m de distancia de ellos (aunque de vez en cuando me vale y los acaricio aunque me pase el resto de la semana con estornudos, lagrimeos y los ojos llorosos).

En cuanto a los caninos tambien me gustan mucho porque cuidan la casa pero no tenemos el espacio amplio suficiente para ellos y es un cuete tenerlos porque luego andan dejando sus "cosas" donde quiera y en las prisas terminas pisándolas.

Permalink: http://www.mononeurona.org/users/entry/asarch/1433


Soporte técnico BSD

2008-07-12 18:57:44-05

General

Los BSD son tan fiables que incluso cuentan los mejores técnicos:

alt

Permalink: http://www.mononeurona.org/users/entry/asarch/1431


¡Enciende mi fuego!

2008-07-12 00:07:11-05

Rolas

Permalink: http://www.mononeurona.org/users/entry/asarch/1428


¿En qué equipo juega?

2008-07-11 16:45:26-05

General

Dos cuates que tenían mucho tiempo de no verse se encuentran por casualidad y...

— ¿Qué onda cabrón? ¿Qué cuentas? ¿Qué te has hecho? Dime.

— Pues nada cuate, aquí chambeando como siempre. Acabo de llegar de un viaje por el Brazil.

— ¿En serio? ¡Orale, qué bien! Y dime ¿qué te pareció?

— Pues dos tres. Te diré que allá solamente hay putas y futbolistas.

— ¡No chingues cabrón! Mi mujer es de allá.

— ¿En serio? ¿En qué equipo juega?

Para muestra un botón:


Permalink: http://www.mononeurona.org/users/entry/asarch/1427


BUG: No se puede renombrar una galeria

2008-06-27 12:58:24-05

Hacks

Si tratas de cambiarle el nombre a una de tus galerias, aparece esto:

alt

y si tratas de mandar el ticket aparece esto:

alt

Permalink: http://www.mononeurona.org/users/entry/asarch/1400


Got meat?

2008-06-27 12:53:41-05

Mujeres

alt

Permalink: http://www.mononeurona.org/users/entry/asarch/1399


Esta bien, tu mandas...

2008-06-27 11:07:16-05

Mujeres

alt

Permalink: http://www.mononeurona.org/users/entry/asarch/1398


Login



Remember me:
asarch
...sobre todo en la gimnasia.
BSD Daemon Copyright 1988 by Marshall Kirk McKusick. All Rights Reserved.&#39;
Powered by:
Despabilando la MonoNeurona.org
Livechat

<-Nombre
ana_20 wrote:
y si estudio ing en informatica i sistemas
2 weeks, 3 days ago

ana_20 wrote:
kiero un curso basico d viasual net!!! i soi d peru
2 weeks, 3 days ago

ana_20 wrote:
kiero un curso basico d viasual net!!! i soi d peru
2 weeks, 3 days ago

hola wrote:
alguiene q estudie sistemas
on 23/10/08

hola wrote:
hola aluien de peru
on 23/10/08

hola wrote:
hola aluien de peru
on 23/10/08

hola wrote:
sdfdsf
on 23/10/08

vendaval wrote:
hola, que piensas de mi proyecto comunitario en mi universidad
on 22/10/08

vendaval wrote:
hola, que pienzas de mi proyecto comunitario en mi universidad
on 22/10/08

lokito wrote:
te kiero follarr
on 19/9/08

¿Qué estuve haciendo?
Saqué 10 (de nuevo) en "Derecho Laboral"
1 hour, 31 minutes ago
Para usar: qemu -localtime -m 256 -soundhw all -hda c.img
4 days, 3 hours ago
Para instalar: qemu -localtime -m 256 -hda c.img -cdrom linux.iso -boot d
4 days, 3 hours ago
qemu-img create -f qcow2 c.img 10G
4 days, 3 hours ago
A lo mejor fue "brujería" ¡Gulp! :-S
6 days, 1 hour ago
¿"clavo"? ¿Qué clavo si el zapato en esa parte no lleva ningún clavo?
6 days, 13 hours ago
De hecho si. Solamente el dolor que, curiosamente, ya desapareció :-S
6 days, 13 hours ago
Algo me "picó" en mi pie izquierdo. Lo curioso es que tría los zapatos puestos :-(
1 week ago
Ese día yo no estuve ahí :-(
1 week, 3 days ago
¿Alguien sabe la verdadera razón de la rebelión de Lucifer?
1 week, 3 days ago
Galerias
FirefoxjEdit.orgGimpOpenOffice.orgHacker
Top
Colectivo MonoNeurona.org © 2002-2008.