sábado, 24 de octubre de 2009

Algunas de Vi: Busqueda


Busqueda en vi

Key Función
fa Busca el primer caracter a desde la derecha del cursor.

Fa Busca el primer caracter a desde la izquierda del cursor.

; Repite el último f,F comando.

/string Busca por el string hacia la derecha del cursor, se pueden usar regexp

?string Busca por el string hcia la izquierda del cursor, se pueden usar regexp

n Repite el último comando / o ?.
set number Enumera todas las lineas.



viernes, 23 de octubre de 2009

Algunas de Vi: Copiar y Pegar

Copiar y Pegar

Key Función
yy or Y Copia una linea al buffer.
nyy or nY Copia n lineas al buffer.
yw Copia una palabra al buffer.

ynw or nyw Copia n palabras al buffer.
y$ Copia el texto desde el cursor hasta el final de la linea.

“ayy Copia una lina al buffer llamado a.

“Ayy Agrega una linea al buffer llamado A.

p Pega texto a la derecha del cursor.

P Pega texto a la izquierda del cursor.

np Pega n copias de texto a la derecha del cursor.

“ap Pega el contenido del buffer a hacia la derecha del cursor.

“c3P Pega 3 copias de texto del buffer c hacia la izquierda del cursor.

“add Mueve la linea al buffer llamado a.

“a5dd Mueve 5 lineas al buffer llamado a.

dw Elimina una palabra y la pone en el buffer.

Algunas de Vi: Eliminar

Eliminar con Vi

Key Función
x Elimina el caracter donde está el cursor.

X Elimina el caracter antes del cursor.

dw Elimina una palabra.

dd Elimina una linea.

D Elimina todo el texto después del cursor hasta el final de la linea.

dL Elimina todo el texto después del cursor hasta el final de la pantalla.

dG Elimina todo el texto desde el cursor hasta el final del archivo.

d^ Elimina todo el texto desde el inicio de la linea hasta el cursor.

d1g Elimina todo el texto desde el inicio del archivo hasta el cursor.

dn$ Elimina todo el texto desde el cursor hasta la linea n especificada.


Algunas de Vi: Añadir texto

Comandos para añadir texto
key     Función
i Inserta texto a la izquierda del cursor.

I Inserta texto antes del primer caracter sin espacio.

a Agrega texto a la derecha del cursor.

A Agrega texto al final de la linea.

o Empieza una nueva linea debajo de la linea actual.

O Empieza una nueva linea encima de la linea actual.


cw Cambia una palabra.
cs Cambiar una oración.

c$ or C Cambia la linea actual

r Reemplaza un caracter.

R Reemplaza texto hasta que la tecla ESC es presionada.

s Substituye texto por el caracter actual.

Algunas de Vi: Desplazamiento

Comando de desplazamiento del cursor


Key Función
h Mueve el cursor un caracter a la izquierda.
j Mueve el cursor una linea hacia abajo.
k Mueve el cursor una linea hacia arriba.
l Mueve el cursor un caracter a la derecha.
Ctrl-G Muestra la linea actual.
nG Ir hacia la linea especificada por n.
Ctrl-f Mueve hacia adelante una pantalla.
Ctrl-b Mueve hacia atrás una pantalla.
Ctrl-d Mueve hacia adelante media pantalla.
Ctrl-u Mueve hacia atrás media pantalla.
w Ir al principio de la siguiente palabra Moves to the start of the next word.
e Ir al fin de la siguiente palabra.
^ Ir a la primera palabra de la linea actual.
$ Ir al fin de la linea actual.
Enter Ir a la siguiente linea.
- Ir al principio de la linea anterior.
G Ir al final del archivo.
% Ir hasta el parantesis correspondiente.
H Ir a la primera linea de la pantalla.
M Ir a la mitad de la pantalla.
L Ir al final de la pantalla.
n| Mover el cursos a la columna n.

viernes, 2 de octubre de 2009

DNS + Gentoo 1.0

A fin de mantener un buen seguimiento de las actividades que estoy realizando con la compu que me regalaron, esta es la documentación del DNS para fines locales y de pruebas.
Primero que nada vamos a dar las especificaciones del servidor:
Procesador Intel P4 de 2.8Ghz
Memoria 256 ram
Disco duro de 20gb
2 interfaces de red

El software para implementar el DNS ha sido el omnipresente bind9, para instalarlo solo basta con hacerle un simple emerge. También se instaló el paquete bind-tools para tener las herramientas para depuración y busqueda de información de registros DNS (nslookup, host, dig).
#emerge bind bind-tools

Una vez que portage haya terminado con su trabajo, los archivos para configurar bind se encontrarán en /etc/bind/ y /var/bind/.
Ahora es momento de definir el esquema de red. En mi caso consta de 2 portatiles + 1 PC(servidor) conectadas a un router inalámbrico.
Para esto usaremos:

Dominio: bitclux
lap1: nuix 192.168.1.40
lap2: hyp 192.168.1.30
servidor: v00wix 192.168.1.254
router: router 192.168.1.1
admin: root
Red Local: 192.168.1.0

Configurando el archivo "/etc/named.conf"

#vi /etc/named.conf
options {
directory "/var/bind";
listen-on-v6 { none; };
listen-on { 127.0.0.1; 192.168.1.254; };
pid-file "/var/run/named/named.pid";
};

#Declaración option: define opciones de configuracion globales
#entre las opciones mas usadas tenemos:
#directory: Reemplaza al directorio actual /var/named, por otro directorio que se indique.
#listen-on: Para especificar la interfaz de red por la que named escuchara las solicitudes; por defecto, el servicio named escuchara por todas las interfaces.
#listen-on-v6: Soporte para direcciones IPv6.

zone "bitclux" {
type master;
file "pri/bitclux.zone";
allow-transfer { any; };
};

zone "." IN {
type hint;
file "named.ca";
};

zone "localhost" {
type master;
file "pri/localhost.zone";
allow-transfer { none; };
notify no;
};

zone "127.in-addr.arpa" IN {
type master;
file "pri/127.zone";
allow-update { none; };
notify no;
};

#zona: porcion discreta del espacio de nombres de dominio
#existen opciones:
#allow-transfer: indica a los servidores esclavos que estan autorizados a pedir transferencia zona.
#allow-update: indica a los hosts que estan autorizados a actualizar dinamicamente la informacion de la zona.
#file: nombre de archivo que contiene la información de la zona
#notify: controla si se notifica a los servidores esclavos.
#type: tipo de zona:
*hint: Para orientar hacia los servidores root para perticiones de nombres que no se conocen.
*master: Servidor con autorizacion de zona

Configuración de los registros de la zona "/var/bind/"
#vi /var/bind/bitclux.zone

$TTL 2d
@ IN SOA ns.bitclux. root.bitclux. (
20091001 //serial
3h //tiempo de refresco
1h //tiempo de reintentos
1w //tiempo de expiración
1d ) //ttl minimo

bitclux. IN NS ns.bitclux.
ns.bitclux. IN A 192.168.1.254
ns.bitclux. IN A 192.168.1.253
router.bitclux. IN A 192.168.1.1
nuix.bitclux. IN A 192.168.1.40
hyp.bitclux. IN A 192.168.1.30
v00wix.bitclux. IN A 192.168.1.254

# $TTL: Indica el tiempo en segundos que el servidor mantiene el registro en memoria.
# $ORIGIN: Anexa el nombre de dominio a registros no cualificados, como aquellos con el nombre de host solamente
# SOA: Ubicado detras de las directivas, es el primer registro de recursos, e indica la autorizacion de una zona al servidor DNS
#@: Coloca la directiva $ORIGIN, como el espacio de nombres que esta siendo definida para el registro SOA


Finalmente agregamos el bind al runlevel por defecto, agregamos la direccion del servidor en /etc/resolv.conf e iniciamos el bind:
#rc-update add named default
#echo -e "nameserver 192.168.1.254" >> /etc/resolv.conf
#/etc/init.d/named start

=D