Guia de iniciación a la shell de GNU/Linux Capitulo 2

Capitulo segundo.

En este capitulo veremos algunos aspectos interesantes de la shell y el uso de los comandos, conoceremos aspectos de las variables del sistema, como añadirlas como editarlas, redirección de la entrada/salida estándar de los comandos, los filtros de búsqueda, iniciación y manejo de los procesos ,entre alguna que otra utilidad .

Empecemos .

Antes de nada me gustaría mencionar un comando que a mi modo de ver es muy interesante, me refiero al comando ‘alias’, con este comando se puede dar un alias a un comando determinado .

Aqui vemos como le doy como alias a iwconfig ‘red’

rh3nt0n@rh3nt0n-laptop:~$ alias red=’iwconfig’
rh3nt0n@rh3nt0n-laptop:~$ red
lo no wireless extensions.
irda0 no wireless extensions.
eth1 no wireless extensions.
sit0 no wireless extensions.

 

Cabe resaltar que el alias espira cuando cerramos la shell donde la hemos creado, pero esto es fácilmente subsanable editando el archivo ‘.bashrc’ de nuestro home, añadiendo el alias al final del archivo, este archivo se encarga de la configuración inicial de nuestra shell, y ejecuta automáticamente las ordenes que contiene al iniciar la shell .
Esto es muy bueno, por ejemplo para tema de configuraciones de red etc.

Para eliminar un alias, solo hay que ejecutar el siguiente comando:

unalias -a alias_creado

Concatenación de comandos en la shell .

Cuando estamos utilizando la shell, podemos hacer que los comandos o aplicaciones actúen en el ‘back-ground‘ o en el ‘front-ground‘ .

Que es esto? muy sencillo, al ser linux un sistema operativo multitarea, la shell puede trabajar con muchos procesos a la vez, aunque solo se puede ejecutar un proceso cada vez mientras los demás están preparados o dormidos. Este tema de los procesos lo veremos mas adelante.

Los procesos en back-ground, son los que se ejecutan invisiblemente para el usuario y dejan libre la shell para seguir trabajando con ella.

los procesos en front-ground, son justo lo contrario, son procesos que se ejecutan en primer plano y ocupan la shell el tiempo que están en funcionamiento.

También podemos unir una serie de ordenes, e interactuar con la salida de cada orden aprovechando esa salida para que sirva de argumento para otra orden esto lo entenderemos mejor viendo unos ejemplos:

Modos de invocar ordenes:

 

orden &

El umpersand ‘&’, hace que esta orden se ejecute en back-ground y nos dejaría la shell libre para poder seguir usando otros comandos.

orden1 ; orden2

El punto y coma ‘;’ hace que se ejecuten las ordenes una a una, independientemente de que una u otra funcione.

 

rh3nt0n@rh3nt0n-laptop:~$ cd .. ; ls
rh3nt0n
rh3nt0n@rh3nt0n-laptop:/home$

Como se puede observar, en el anterior comando, se ejecuta ‘cd..’ y después se ejecuta ‘ls‘, sobre el directorio al que se sube con ‘cd..’

 orden1 | orden2

El pipe ‘|’ hace que la salida de la orden1, de argumentos a la orden 2. Ejemplo:

 dmesg | grep ipw

Estos comandos los explicare mas adelante, la orden dmesg, da los argumentos a grep para que filtre el texto especificado .

 orden1 `orden2`

Estas comillas -“- ejecutan la orden2 que esta dentro de las comillas y pasan la salida de este como argumento a la orden1.

 apt-get install kernel-headers`uname -r`

Aquí el resultado de uname -r daría argumentos al comando apt-get

 orden1 && orden2

En esta opción la orden2 se ejecutaría si orden1 termina sin errores.

make && make install

orden1 || orden2

En esta opción las ordenes irían ejecutándose, hasta que una de ellas se ejecute correctamente ,en ese momento se detiene.

Histórico de ordenes:

Un buen comando de ayuda en referencia a comandos, y a trabajar con ellos en la shell, es el comando ‘history‘, este comando guarda en buffer de memoria los comandos que se han ido ejecutando en la shell y con el es posible conocer cuales se han efectuado, y citarlos por su número
de orden.

 

rh3nt0n@rh3nt0n-laptop:/home$ history
1 sudo iwconfig eth0 essid j
………..
174 iwconfig
175 dmesg
176 lsusb
177 iwconfig
178 lsusb
179 dmesg
180 wget http://www.bluntmen.com/ipw2200-1.1.4-inject.patch
181 bogomips
182 yes
183 yes >/dev/null &
184 jobs
185 bg 2
186 fg 2
187 kill 2
188 jobs
189 top
190 cd .. ; ls
191 dmesg
192 history

La primera columna indica el número de comando, en el orden en el que se ha ejecutado.
La segunda evidentemente es el comando que se ha ejecutado, es una muy buena utilidad, ya que por ejemplo en comandos largos haciendo un history y fijándote en el número de orden, con solo citar el número de la forma que explicare ahora, se ejecutaría el comando:

Si por ejemplo de la lista anterior queremos hacer el número 180, haríamos lo siguiente:

rh3nt0n@rh3nt0n-laptop:/home$ !180
wget http://www.bluntmen.com/ipw2200-1.1.4-inject.patch
–21:03:51– http://www.bluntmen.com/ipw2200-1.1.4-inject.patch
=> `ipw2200-1.1.4-inject.patch’
Resolviendo www.bluntmen.com…

Variables de entorno.

Las variables de entorno, son como explique en el anterior capitulo, porciones de memoria que el sistema coge para guardar valores específicos necesarios para el sistema. Si queremos saber las variables de entorno que hay en el sistema, solo tenéis que usar el comando ‘set‘.

 

rh3nt0n@rh3nt0n-laptop:/home$
rh3nt0n@rh3nt0n-laptop:/home$ set | more
BASH=/bin/bash
BASH_ARGC=()
BASH_ARGV=()
BASH_COMPLETION=/etc/bash_completion
BASH_COMPLETION_DIR=/etc/bash_completion.d
BASH_LINENO=()
BASH_SOURCE=()
……..

Para ejecutar una variable de entorno solo hay que citarla de esta manera:

rh3nt0n@rh3nt0n-laptop:/home$ echo $HOSTNAME
rh3nt0n-laptop

las variables siempre se citan con el signo del dólar delante $, y es de resaltar que las variables predeterminadas del sistema, suelen estar en mayúsculas .
Nosotros podemos creas variables de entorno, las cuales pueden ejecutarse en la shell donde las hemos creado, o exportarlas para poder usarlas en cualquier terminal de la sesión que esta en marcha, aunque estas variables una vez reiniciado el sistema se pierden, esto es útil en servidores en los cuales rara vez se reinicia el sistema.

Para crear una variable de entorno seria de esta forma:

 

nombre_variable=concepto

Ejemplo:

rh3nt0n@rh3nt0n-laptop:/home$ edad=30
rh3nt0n@rh3nt0n-laptop:/home$ nombre=rh3nt0n
rh3nt0n@rh3nt0n-laptop:/home$ echo $edad
30
rh3nt0n@rh3nt0n-laptop:/home$ echo $nombre
rh3nt0n
rh3nt0n@rh3nt0n-laptop:/home$

Es recomendable a la hora de crear variables de entorno, que las que hagamos nosotros, las hagamos en minúsculas, así a la hora de borrar variables, no borraremos nada que no tengamos que borrar .
Las variables de entorno, cuando las crea un usuario, solo se ejecutan en la terminal donde se crean, para poder ejecutarlas en todas las terminales tendríamos que exportarlas:

Comando ‘export’

 

rh3nt0n@rh3nt0n-laptop:/home$ export edad

Esto haría que en la misma sesión en la que estamos, pero en otra terminal, se pueda ejecutar esa variable sin problemas.

Para borrar una variable determinada, solo habría que usar el comando ‘unset’ para ello:
comando ‘unset’

 

rh3nt0n@rh3nt0n-laptop:/home$ export edad

 

Hay variables como $PWD que se van actualizando dependiendo de donde nos encontremos y automáticamente.

Entrecomillado de caracteres en la shell.

Hay ordenes que requieren de argumentos los cuales habitualmente dependiendo de la forma que se quieren utilizar se usan unas comillas u otras.

echo ”$PATH ”
echo ‘ $PATH ‘
echo \$PATH

En el primer caso, ” ” las comillas son denominadas débiles, el comando o el argumento lo usa la shell tal y como esta escrito y lo ejecuta si viene al caso.
En el segundo caso, ‘ ‘ las comillas son denominadas fuertes ,lo cual quiere decir que la shell no actúa dentro de ellas, por lo tanto se toma literalmente el argumento.
En el tercer caso, el back slash ‘\’ se utiliza para escapar caracteres especiales como $ para que la shell tome el argumento como en el segundo caso.

Las comillas se usan en el caso de las variables para que se pueda usar un comando asignado a una variable:

fecha:`date`

Esta orden ejecutaría el comando date, al llamar a la variable ‘fecha’.

Redirección de la entrada/salida estándar.

La shell, toma información de la entrada estándar, (teclado) denominada stdin, cuando se ejecuta la orden dependiendo de como se ejecute, puede dar una salida valida o errónea, en caso de la salida valida la información por defecto la shell como salida estándar usa la pantalla, con lo cual nos muestra la información en la shell, en caso de que la ejecución del comando sea errónea, nos muestra la salida de error por defecto también por la pantalla y nos la muestra por la shell, aunque parezca en principio que tanto la salida estándar como la salida estándar de errores es lo mismo, no lo son, solo tienen por defecto asignado que enseñen la información por la pantalla .

Estas salidas, se pueden redireccionar, así mismo también la entrada estándar, o bien para que un comando tome los argumentos o sea la entrada de datos de un fichero o que la salida de un comando sea el argumento de otro, o que esa salida salga por la impresora, se imprima en un fichero etc .
Lo mejor es que lo veamos gráficamente:

 

 

Formas de redireccionar la entrada estándar ‘stdin’.

el signo ‘<‘ cambia la entrada estándar.
ejemplos:

 

mail rh3nt0n < carta.txt

El anterior comando tomaría como argumento para el comando mail, el contenido del fichero carta.txt.

 

comando < fichero

El anterior comando tomaría como argumento para el comando ejecutado, el contenido de fichero.

Formas de redireccionar la salida stantdart ‘stdout’ .

El signo ‘>’ redirecciona la salida estándar, creando el fichero si no existe y sobre escribiendo el archivo si existe.

comando > fichero
comando > contenido
comando > argumentos
comando > /dev/dispositivo

comando > stdout

El comando anterior, redireccionaria la salida del comando a el fichero stdout

La salida estándar de errores, también puede redireccionarse, ya que si el comando ejecutado, aun teniendo la salida estándar redireccionada a el sitio que sea que no sea la salida estándar, si ese comando falla, la salida de errores la muestra por pantalla.

Para que esto no ocurra si no es nuestro deseo, o bien capturar en un fichero las posibles salidas de error, se usa ‘2>’ lo cual hace lo mismo que con la anterior opción hacia con la salida estándar.

 

comando 2> stderr

Este comando mostraría en caso de que la ejecución fuera correcta, por la pantalla, salida estándar de errores. y en caso de que hubiera algún error, la salida de error la mostraría en el fichero stderr.

En conjunción ,seria algo como esto:

comando > stdout 2> stderr

Esta sintaxis, redireccionaria la salida del comando en caso de que fuera correcto, a el archivo stdout, en caso de que fallara enviaría la salida de error a el fichero stderr.

Cuando no queremos que el archivo, a sabiendas de que existe, se sobrescriba, se utiliza el mayor que doble ‘>>’ de esta forma:

echo ” hola mundo ” >> fichero.txt

 

El anterior comando añadiría el texto hola mundo a el fichero.txt sin sobrescribirlo.
esto ocurre de igual manera con la salida de errores, pero de este modo:

 

echo “hola mundo” 2>> errores.txt

Como se podrá apreciar, el comando echo esta mal escrito, pero la salida de errores se redireccionaria a el fichero errores.txt, en lugar de mostrarla por la pantalla.

rh3nt0n@rh3nt0n-laptop:~$ eco “hola mundo” 2>> errores.txt
rh3nt0n@rh3nt0n-laptop:~$ cat errores.txt
bash: eco: orden no encontrada
rh3nt0n@rh3nt0n-laptop:~$

Redirección a dispositivos ‘especiales’

Se pueden redireccionar salidas muy extensas, o salidas de errores a el dispositivo ‘/dev/null’, para evitar colapsar de información la salida estándar, o simplemente por que no nos interese ver esa salida. Este dispositivo es denominado ‘agujero negro’ ya que lo que es redireccionado allí, no se puede recuperar.

Ejemplo de uso:

Aquí cabe resaltar el uso del comando ‘time’, el cual tiene la peculiaridad de mostrar su salida estándar, por la salida de errores. En el siguiente ejemplo ,este comando se encarga de cronometrar el tiempo que tarda en ejecutarse el comando junto al que se ejecuta, mostrando la salida por pantalla y enviando la salida del comando a ejecutar a el dispositivo /dev/null.

 

rh3nt0n@rh3nt0n-laptop:~$ time ls -R /etc > /dev/null
ls: /etc/cups/ssl: Permiso denegado
ls: /etc/ssl/private: Permiso denegado
real 0m0.382s
user 0m0.024s
sys 0m0.012s
rh3nt0n@rh3nt0n-laptop:~$

Los filtros de búsqueda.

Los filtros de búsqueda son una utilidad muy interesante a la hora de buscar palabras comandos etc de forma ordenada y desechando lo que no nos interesa .
vamos a ver algunos comandos de búsqueda interesantes:

Comando “sort” sin opciones, ordena líneas de texto alfabéticamente aunque sean números.

opciones:
-n ordena números ” 1 2 3 4 ”
-t: define delimitador de campos
+(n) n de número, para elegir que columna queremos ver primero.
-F no considera mayúsculas o minúsculas.
-r invierte la salida normal.

Comando “grep”, busca líneas de texto en un archivo o salida de comando especificada.
sintaxis: grep patrón fichero
ejemplo de otro uso:
dmesg argumento | grep
opciones:
-v busca todas las líneas que no contienen el patrón
-i no considera mayúsculas de minúsculas .
-n numera las líneas que contienen el patrón especificado.

Comando “wc” ‘word count’ cuenta palabras la salida normal sin parámetros saca tres columnas:
sintaxis: wc [opciones] fichero
1º cantidad de líneas del fichero .
2º cantidad de palabras.
3º cantidad de caracteres.

opciones:
-l número de líneas únicamente
-w número de palabras únicamente
-c número de caracteres únicamente

Ejemplo de redirección con este comando:

 

ls /bin/l* | wc-l

Iniciación a los procesos.

Los procesos no son mas que los programas que se están ejecutando, cada procesador puede ejecutar solo un proceso cada vez que actúa. existen multitud de estados de los procesos, pero a groso modo podríamos destacar estos cuatro:

Los procesos pueden estar en varios estados:
Estado runing – solo puede haber un proceso runing o funcionando.

Estado preparado – son procesos que están preparados para ser ejecutados por el procesador.

Estado dormido – son procesos que han acabado, pero pueden ser llamados otra vez a funcionar.

Estado zombie – son procesos como su propio nombre indica, que al no acabar bien, siguen en memoria sin borrarse.

Esto se aprecia mejor con el siguiente grafico:

 

Comandos de información de procesos.

Comando “ps” este comando sirve para ver los procesos que se están ejecutando. Esto es muy útil para dar preferencias a algún proceso determinado, matar procesos, en definitiva conocer los PID de los procesos, para poder mandarles señales entre otras cosas .
La forma mas habitual de usar este comando es con las opciones a y x.

a para ver todos los procesos y x que muestre cuales se están ejecutando.

sintaxis: ps ax

 

ejemplo:
rh3nt0n@rh3nt0n-laptop:~$ ps ax
PID TTY STAT TIME COMMAND
1 ? S 0:01 init [2]
2 ? SN 0:00 [ksoftirqd/0]
3 ? S 0:00 [watchdog/0]
4 ? S< 0:00 [events/0]
5 ? S< 0:00 [khelper]
6 ? S< 0:00 [kthread]
8 ? S< 0:00 [kblockd/0]
9 ? S< 0:00 [kacpid]
10 ? S< 0:00 [kacpid-work-0]
162 ? S 0:00 [pdflush]
163 ? S 0:00 [pdflush]
165 ? S< 0:00 [aio/0]
164 ? S 0:00 [kswapd0]
766 ? ………………

La primera columna de la salida del comando anterior muestra el PID del proceso ,todos los procesos tienen un PID del proceso, no es mas que un número identificador, para poder mandarle señal a cada proceso ejecutandose desde la consola.
La segunda columna indica la consola virtual donde se esta ejecutando el proceso, si no tiene aparece un signo de interrogacion ‘?’.
La tercera columna indica en el estado en el que se encuentra el proceso:

s —- dormido
r —- runing o corriendo
z —- zombie
t —– detenido

comando útil:

 

ps ax | grep “proceso”

Busca y filtra el proceso buscado.

La cuarta columna, indica el tiempo que lleva ejecutándose el proceso.

Los procesos pueden recibir señales a través de la terminal, para interactuar con ellos .
Pueden trabajar como he explicado anteriormente en el front-ground, de forma visible en la terminal, y en el back-ground, de forma transparente, para nosotros desde la terminal.
Cuando un proceso recibe una señal desde la terminal, puede reaccionar de tres maneras diferentes:
1º puede ignorar la señal .
2º puede interpretar la señal .
3º puede aceptar que se encargue de el, el kernel .

Señales a los procesos.

Comando “kill” en principio mata el proceso, con opciones puede hacer reiniciar procesos dormidos.
sintaxis: kill -señal PID
Señales mas importantes:

señal -1 para que se reinicie un proceso, si no se puede, el sistema lo mata .
señal -2 interrupción
señal -3 para que el proceso acabe, pero sin errores .
señal -9 para el proceso, y el proceso no puede ignorar esta orden.
señal -15 es lo mismo que ejecutar kill sin opciones es como decirle al proceso ‘cuando puedas cierra’, esta señal puede ser ignorada por el proceso .

Comando ‘nohup’ Ejecuta la orden ignorando las señales de colgar, sirve para que las ordenes sigan funcionando, aunque salgamos de la terminal.

Sintaxis: nohup orden [argumento]

Cabe resaltar que cuando la shell deja un comando funcionando y salimos de ella lo hereda init.

Para ver los procesos y los niveles de ejecución existe el comando ‘top’, este comando muestra de forma dinámica los procesos que se ejecutan en el sistema:

 

 

Esta aplicación (parecida a el visor de procesos de Windows) nos es muy útil para interactuar con los procesos, a la hora de mandar señales, y dar prioridades a uno u otro proceso .

Prioridades de los procesos.

Podemos asignar prioridades de ejecución a los procesos, si queremos que un programa tenga mas prioridad o menos, podemos bajarle o subirle el nivel de ejecución con el comando “nice”.

Comando “nice”
Este comando asigna nivel de ejecución a los procesos, por defecto asigna el valor 10.
sintaxis: nice [valor] orden [argumentos]
Los valores de nivel de ejecución van de el +19 al -19 siendo el de menor valor ‘-19′ el que mas prioridad tiene de ejecucion.

Los valores del -0 al -19 solo puede asignarlo el usuario root.

Comando “renice”.

Este comando repone el nivel de ejecución, a un procesos que este ejecutándose.

Sintaxis: renice [valor] número PID

Comando “sleep”.

Este comando duerme el proceso deseado ‘x‘ segundos especificados.

Sintaxis: sleep [tiempo] [opción] [orden]

Opciones:

-s tiempo en segundos (por defecto)
-h tiempo en horas.
-d tiempo en días.

Comando “jobs”. Muestra los procesos que se ejecutan en el back-ground.

Para usar este comando y los siguientes, nos viene muy bien el comando anteriormente citado “top“, ya que debemos apoyarnos en el IDE de proceso “PID“, para poder interactuar con los procesos en back-ground.

 

rh3nt0n@rh3nt0n-laptop:~$ yes > /dev/null &
[2] 6521
rh3nt0n@rh3nt0n-laptop:~$ jobs
[1]+ Stopped yes >/dev/null
[2]- Running yes >/dev/null &
rh3nt0n@rh3nt0n-laptop:~$

 

Comando “fg”. Lleva un comando ejecutándose en back-ground, al front-ground.

Sintaxis: fg [PID de proceso]

 

rh3nt0n@rh3nt0n-laptop:~$ fg 2
yes >/dev/null

 

Comando “bg”. Relanza un proceso dormido, ejecutándolo en el back-ground.

Sintaxis: bg [PID del proceso dormido]

 

[2]+ Stopped yes >/dev/null
rh3nt0n@rh3nt0n-laptop:~$ jobs
[1]- Stopped yes >/dev/null
[2]+ Stopped yes >/dev/null
rh3nt0n@rh3nt0n-laptop:~$ bg 2
[2]+ yes >/dev/null &
rh3nt0n@rh3nt0n-laptop:~$ jobs
[1]+ Stopped yes >/dev/null
[2]- Running yes >/dev/null &
rh3nt0n@rh3nt0n-laptop:~$

 

En este punto, recuerdo que para matar un proceso conociendo su PID podemos usar lo siguiente:

Sintaxis: kill “% PID”

 

rh3nt0n@rh3nt0n-laptop:~$ kill %2
rh3nt0n@rh3nt0n-laptop:~$ jobs
[1]+ Stopped yes >/dev/null
[2]- Terminado yes >/dev/null
rh3nt0n@rh3nt0n-laptop:~$

también recuerdo, como lanzar un proceso en el back-ground.

Sintaxis: orden [argumentos] &

 

Guía de iniciación a la shell de GNU/Linux Capitulo 1

Prologo

El presente articulo solo pretende ser una forma de acercarse de una forma rápida y cómoda en castellano a Linux, conforme he ido yo personalmente adquiriendo conocimientos sobre este fantástico sistema operativo.

También pretende ser una guía de mano de consulta para las posibles lagunas mentales que podamos tener a la hora de usar los distintos comandos.

Básicamente voy a tratar el uso de la terminal (shell) y los comandos que mas nos interesan a la hora de tratar con ficheros y configuraciones de dispositivos.

GNU/Linux, que es?

Un sistema operativo, bien, eso ya lo sabemos ¿pero que supone ?

Empecemos por su nombre o denominación. GNU/Linux proviene de la unión de GNU ( GNU is not Unix) y Linux, un sistema operativo pensado en primera instancia para uso recreativo por su desarrollador Linus Torvalds. El cual gracias a la colaboración de muchos desarrolladores y la posibilidad de portabilidad de aplicaciones gracias al proyecto GNU de la Free Software Fundation de Cambridge, es hoy el sistema potente y complejo pero cada vez mas accesible que conocemos.

Bueno si queremos saber sobre los principios de Linux y las diferencias que existen en comparación con Unix, hay multitud de artículos y papers que tratan sobre ello en internet. Vamos a lo que nos importa.

Capitulo primero.

Principios y Comandos Básicos.

La Shell o interprete de comandos de GNU/Linux.

La Shell es el medio que tenemos para interactuar con la maquina con la que estamos trabajando y con su sistema operativo, literalmente interpreta ordenes.

Esto es una shell:

Hay muchos tipos de shell, la mas popular es ‘bash’ (bourne again shell) fue creada por J.Bourne, en principio creó ‘bsh’ después la mejoró, y la renombró añadiendo la ‘a’

La Shell se encarga de:

1º De interpretar las variables de entorno *
2º Interpreta los metacarácteres,(caracteres comodines) ‘*’ ‘?’.
3º Maneja la entrada y salida standart de los comandos.
4º Busca alias, y los interpreta.
5º Interpreta las ordenes comparando si son comandos internos de la shell, o binarios ejecutables, mirando en $PATH.

* Las variables de entorno son porciones de memoria a las que se asigna un valor, por ejemplo una variable de entorno seria el propio ‘bash’ ($BASH=/bin/bash), lo cual nos indica que cuando se llama a la variable $BASH, la shell busca en las variables, e interpreta que tiene que ejecutar: /bin/bash. Esto es útil cuando veamos en otros capítulos, la iniciación a el shell-script.

Principales diferencias con la línea de comandos de wuindos.

En la terminal de Linux (de ahora en adelante shell), el interprete de comandos distingue entre mayúsculas y minúsculas a la hora de interpretar los comandos, cosa que en la línea de comandos (de ahora en adelante cmd.exe) de Guindos no ocurre:

Shell:
ls no es igual a LS
cmd.exe:
dir es igual a DIR

En la shell los modificadores de los comandos se representan con un guión ‘-‘, y en cmd.exe el modificador es ‘/’.

Shell:
ls -l
cmd.exe:
dir /all

En la shell no son estrictamente necesarias las extensiones de fichero, solo se usan para reconocer visualmente los archivos.

El Promt:

Hay muchos tipos de promt, los mas usuales son ‘$’ para la terminal de usuario y ‘#’ para la terminal de root.

Cuando abrimos una terminal, la única información en principio con la que contamos es el promt, este nos indica el usuario con el que estamos accediendo a la shell, la maquina sobre la que esta corriendo la shell y el directorio donde nos encontramos, el cual lo normal sea nuestro directorio home.

ejemplos de promt:

rh3nt0n@rh3nt0n-laptop:~$
root@rh3nt0n-laptop:/home/rh3nt0n#

El primer promt nos indica que el usuario es rh3nt0n que esta en la maquina rh3nt0n-laptop en el directorio home de rh3nt0n (/home/rh3nt0n) y que la terminal es de usuario ‘$’.

El segundo promt nos indica que el usuario es root el cual esta en la maquina rh3nt0n-laptop, dentro del directorio /home/rh3nt0n y que la terminal es de root ‘#’.

Principales diferencias entre usuario y root..

El usuario root, es el administrador del sistema es el amo y señor, es el que asigna permisos a otros usuarios, crea grupos, usuarios etc.. en fin tiene todos los derechos de hacer lo que quiera, es por esto que no es recomendable usar de continuo este usuario para el día a día de uso del sistema, ya que por un descuido o un comando mal efectuado, podemos causar graves daños al sistema o perder información de la cual no nos queramos desprender.

El usuario, depende de root para tareas de administración del sistema y configuración de dispositivos. Pero para el trabajo con ficheros propios o navegación por internet y el sistema de archivos, el usuario por defecto no tendría ningún problema para usar el sistema.

En Linux no existen unidades, existen particiones del disco duro.
En Linux todo es un fichero, el monitor estar representado como fichero así como el teclado el mouse etc. Por ejemplo:

hda —- representaría a todo el disco duro
hda1 —- representaría a la partición 1
hda2….. representaría a la partición 2

El sistema de ficheros de Linux representa un árbol invertido del cual la raíz, es ‘/’, y de la cual cuelgan el resto de directorios del sistema.
Cualquier fichero que comience por un punto ‘.’ (eje:.fichero) es un fichero oculto.

Para cualquier usuario el símbolo de la ñ ‘~’ en el promt, representa su directorio home.
a la hora de buscar ficheros existen los meta caracteres:

‘*’ el asterisco representa a cualquier fichero o carácter
‘?’ la interrogación representa un carácter.

Sistema de ficheros.

/<—–directorio raíz
|
|_______/bin <————-almacena binarios (ejecutables)
|_______/etc <————contiene ficheros de configuración de programas.
|_______/media <————– dispositivos tipo CDROM, floppy
|_______/root <————-directorio home de el administrador del sistema
|_______/dev <————-contiene los ficheros de dispositivos tipo monitor, teclado etc
|_______/home <————– contiene los directorios home de los usuarios normales
|_______/sbin <————-contiene ficheros imprescindibles, accesible a root
|_______/tmp <————-ficheros temporales
|_______/var <————ficheros variables eje: fichero.log
|_______/usr <————tiene una estructura parecida a el directorio raíz.(explicado mas abajo)
|_______/lib <————contiene librerías dinámicas.
|_______/boot <————–contiene ficheros de arranque de sistema
|_______/mnt <————–aquí se montan los dispositivos extraíbles.

/usr
|_____/bin <———-binarios ejecutables de usuario
|_____/local <——–aquí van todas las compilaciones
|_____/src <——–aquí deberían de compilarse los programas de los usuarios.
|_____/share <———ficheros de entorno gráfico.
|_____/include <——-archivos de cabecera que usan las aplicaciones.
|_____/lib <———–enlaces dinámicos a librerías.

Permisos de los ficheros..

Los ficheros se protegen con permisos, los cuales pueden ser de lectura ‘r’, escritura ‘w’, y ejecución ‘x’.Los cuales se asignan a los tres tipos de usuarios que puede tener un fichero, dueño, grupo. otros, y se representa de esta manera en la terminal:

Columnas:
La primera es del tipo de fichero: ‘d’ si es directorio, ‘-‘ si es fichero regular, ‘c’ fichero de caracteres. ‘b’ fichero por bloques.
1.Permisos de los usuarios, se agrupan de tres en tres: [rwx] [r-x] [r-x], el primer grupo de permisos, corresponde a el dueño, el segundo a el grupo, y el tercero a ‘otros’.
2.El numero de nombres que tiene el fichero.
3.Dueño
4.Grupo
5.Tamaño en bytes
6.Fecha y hora de la ultima modificación.
7.Nombre del fichero.
Cada permiso esta representado por una cifra en octal:

Por lo que si un fichero tiene los siguientes permisos: rwx rw- r–, su valor en octal sera 764.Esto nos servirá para cambiar a nuestro criterio los permisos de cada fichero del que seamos dueños.

Comandos básicos para moverse en la Shell.

Para empezar aclaro algo importante, cada vez que se crea un directorio, este dentro de si mismo crea dos ficheros:

‘.’ que representa el directorio actual.
‘..’ que representa el directorio padre, o anterior.

rh3nt0n@rh3nt0n-laptop:~/guia$ ls -la nuevo/
total 8
drwxr-xr-x 2 rh3nt0n rh3nt0n 4096 2006-10-21 16:03.
drwxr-xr-x 3 rh3nt0n rh3nt0n 4096 2006-10-21 16:03..

Y los crea con unos permisos predeterminados por el sistema. en realidad, son enlaces a otros directorios como dije anteriormente y así consta en la primera columna ‘d’.
Dicho esto pasamos a los comandos:

Comandos para movernos por el Árbol de directorios..

Comando ls. abreviatura de list (listar)
sintaxis: ls [opciones] [fichero ]
opciones: -l vemos todos los datos de los ficheros del directorio actual.
-ld vemos los permisos del directorio actual.
-ldi vemos el numero de Inodo del fichero en cuestión *
-R muestra de forma recursiva, los ficheros que halla dentro de los directorios que se encuentren dentro de el directorio que estamos listando.
-lS lista los ficheros de mayor a menor en tamaño de bytes.
-lSr lo contrario que el anterior.
-t ordena los ficheros por fecha de modificación.
-tr forma inversa a la anterior opción.

Comando pwd: print working directory, imprime en la pantalla el directorio actual.

ejemplo:
rh3nt0n@rh3nt0n-laptop:~/guia$ pwd
/home/rh3nt0n/guia

Esto es muy útil, cuando estamos dentro de muchos directorios y no sabemos donde nos encontramos.

Comando cd: change directory. Cambia de directorio
Sintaxis: cd [directorio]
Formas útiles de usarlo:

cd sin mas, te lleva a tu directorio home.
cd.. te lleva al directorio padre (directorio anterior)
cd ~ igual que el primero, te lleva a tu directorio home.

Comando mkdir: make diretory. Hacer directorio.
Sintaxis: mkdir [directorio]
mkdir -p [directorio]/[directorio]/[directorio]/etc..
puedes crear tantos directorios como quieras, desde el directorio actual, o desde tu home poniendo la ruta absoluta **

notas:

* inodo es el numero de sector donde se encuentran los datos en el disco duro.
** ruta absoluta, es la ruta desde el directorio home del usuario.

Comando rmdir: remove directory. Borrar directorio.
Sintaxis: rmdir [directorio]
rmdir -p [ruta de directorios ]

Comando cat: Muestra el contenido del archivo en cuestión, en pantalla.
Sintaxis: cat [fichero]

Comando more: igual que cat, pero muestra si el contenido de el fichero es grande, pantalla a pantalla.
Sintaxis: more [fichero]

Comando head: muestra la cabecera del archivo, por defecto las 10 primeras líneas.
opción: -n [numero] muestra el numero de líneas que especifiques
Sintaxis: head [opción] [fichero]

Comando tail: al contrario que head, este comando muestra el final de el archivo. Por defecto al igual que head muestra 10 líneas.
sintaxis: tail [opciones] [fichero]
opciones: -n numero de líneas especificado
-f esta opción, es muy interesante, ya que te muestra el incremento de líneas a tiempo real.

Comando cp: copy. Copiar.
sintaxis: cp [opciones] [fichero origen] [directorio destino]
opciones: -b hace back up del archivo si en el directorio donde copiamos existe un fichero con el
mismo nombre y la renombra añadiendo al final ~.
— no-dereference copia forzosamente si es un enlace simbólico.
-F fuerza la copia en caso de que exista el fichero. por lo tanto sobre escribe.
-i interactivo, te pregunta en caso de que pueda sobre escribir.
-l hace enlace duro. link.
-L te copia el contenido del fichero en caso de que intentes copia un
enlace simbólico.
-r copia el contenido total de un fichero y ficheros hijos
recursivamente.
-s crea un enlace simbólico, soft.
-u en caso de que halla un archivo con el mismo nombre, lo
actualiza.update.

Comando mv: move. mueve o renombra el archivo o directorio.
sintaxis: mv [opciones] [origen] [destino]
opciones: -b si es un fichero, hace back-up. si es directorio, mueve el
directorio y su contenido.
-f fuerza
-i interactivo
-u actualiza si el fichero movido existe en destino

Comando ln: link, enlace duro por defecto (sin opciones).
Sintaxis: ln [opciones] [fichero]
opciones: -b hace back-up
-f fuerza
-i interactivo
-s enlace simbolico o soft

Comando file:muestra el tipo de archivo de que se trata.
sintaxis: file [opciones] [archivo]
opciones: -z muestra el tipo de archivo si es un comprimido con gz.
-L en caso de que sea enlace simbolico, te muestra los datos del
fichero al que apunta.

Comando rm: remove. borra el fichero
sintaxis: rm [opciones] [fichero/s]
opciones: -i pregunta antes de borrar
-r borra de forma recursiva todo el contenido de un directorio
si es el caso.Muy peligroso efectuarlo, usadlo con cautela.
-f fuerza el borrado sin preguntar, mas peligroso aun que el
anterior si se efectúan en
conjunto: rm -fr directorio ( el caos) sed prudentes al borrar archivos.

Comando chmod: change mode, cambiar permisos.
sintaxis: chmod [permisos] [ficheros]
Forma octal de cambiar permisos:
Como ya he explicado anteriormente el valor de cada permiso
( lectura, escritura y ejecución) se representa con números octales,
y se agrupan en conjuntos de tres, un conjunto para el dueño, otro grupo
para el grupo, y otro grupo para otros usuarios:

4 para ‘r’ —> lectura
2 para ‘w’ –> escritura
1 para ‘x’ –> ejecución

Por lo cual si tenemos un fichero con estos permisos:

rwx rw- r–

Tendremos que el primer grupo tiene un valor de 7, resultante de la suma
de 4+2+1, el segundo grupo tendrá un valor de 6 resultado de la suma de 4+2
y el tercer grupo tendrá un valor de 4 resultante del valor de ‘r’.
Por lo tanto el valor en octal de los permisos de ese fichero en cuestión
será de 764.

Para cambiar los permisos de ese archivo a:
rw- r– –x

La orden seria la siguiente:

chmod 641 fichero

Forma abreviada de cambiar permisos:
La sintaxis seria la misma, pero variarían las opciones, para mi, es mas cómodo
y menos laborioso que la anterior manera, pero de la forma anterior podemos sacar
partido a el comando umask que veremos posteriormente.

Opciones:

Por lo tanto una orden para dejar los permisos como la orden del otro modo seria:

chmod u+rw,g+r,o+x fichero

Comando umask: te dice la mascara de permisos del fichero en cuestión.
Sin especificar la nueva mascara te dice la mascara del directorio.
sintaxis: umask [mascara]
Si queremos que los archivos que creemos tengan un valor distinto a el valor por
defecto habría que restar a 666 (por defecto rw-rw-rw-) el valor en octal que
queramos para nuestros
archivos:
Si por ejemplo queremos que nuestros archivos se creen con permisos
r– para dueño, r– para grupo y r– para otros, deberíamos restar 444
a 666 y nos daría 222, entonces el comando seria el que sigue:

umask 222

Comando touch: crea un fichero
sintaxis: touch [fichero]

Comando which: busca el fichero/s binario especificado/s.
Te devuelve la ruta absoluta donde se encuentra/n
sintaxis: witch [fichero] [fichero]

Comando id: muestra nombre de usuario y grupo

Comando su: te permite cambiar al usuario que desees.
sintaxis: su usuario
password

Comandos de ayuda.

La terminal de Linux se caracteriza por su ayuda, sabiendo usarla,
no se debería tener ningún problema a la hora de interactuar con ella.
Los mas útiles:

Comando man: manual, especificando el comando a usar te muestra la ayuda
y opciones que tiene el comando
sintaxis: man [comando]

Comando apropos: apropósito, te muestra los comandos relacionados con la palabra objeto.
sintaxis: apropos [palabra]

Esto no es un comando, en realidad es una opción que tienen todos los comandos en Linux,
la opción – – help.

sintaxis: [comando] – – help

Comando Whatis: que es

rh3nt0n@rh3nt0n-laptop:~$ whatis ls
ls (1) – list directory contents

Comando uname: este comando te devuelve información sobre el sistema
que estas usando.
sintaxis: uname [opción]

rh3nt0n@rh3nt0n-laptop:~$ uname -a
Linux rh3nt0n-laptop 2.6.15-27-386 #1 PREEMPT Sat Sep 16 01:51:59 UTC 2006 i686 GNU/Linux

opciones: -a da toda la información.
-r versión del kernel

Comando date: te devuelve la fecha actual, esto es usado
en shell-script con opciones.
sintaxis: date + %[opcion]
sintaxis: date -s [formato de fecha] <——- cambia la hora y fecha del sistema
recomiendo usar la opción – – help para este comando ya que tiene multitud de
opciones.

Comando who: quien, aporta información sobre quien esta usando el
sistema.
sintaxis: who [opción]
opciones: -b system boot, hora y fecha de cuando arranco el sistema.
-H para ver en columnas quien esta y mas información.
-q cuantos usuarios
-r nivel de ejecución

Comando cal: devuelve el calendario mensual actual.
Especificando mes y año en numero te devuelve el calendario pedido.
sintaxis: cal [mes] [año]
opciones: -m cambia el formato del calendario a Europeo,
empezando la semana por lunes.
-y devuelve el calendario de todo el año.

Hasta aquí llega la descripción de los comandos mas usados en la terminal,
espero que os sea de ayuda.

Fabricación de pigtail casero

- Construcción propia de pigtail para los amantes del bricolaje.

1.- Introducción                           

2.- Objetivo

3.- Herramientas

4.- Materiales

5.- Procedimiento

6.- Presentación de nuestra obra maestra

7.- Comprobaciones

8.- Antena con lata de aceitunas

9.- Montaje real y presentación final

1.- Introducción                               

– Pretende ser una guía muy personal en la fabricación artesanal y casera de un enlace entre una antena externa y un tarjeta inalámbrica. He colocado las fotos en miniatura para tener una visión general del proyecto pero en cualquier momento podéis aumentarlas al cliquear sobre ellas.

2.- Objetivo

- El objetivo de esta pagina corresponde a la realización de un pigtail para adaptar una antena externa a una tarjeta wireless. Habitualmente las antenas externas comerciales llevan un conector del tipo N-Hembra (formato europeo) así como las antenas caseras que nosotros fabricamos. En el mismo orden las tarjetas wireless del tipo PCI para PC de sobremesa llevan un conector RPSMA-Hembra (formato americano, tales como D-Link, Belkin, Conceptronic, etc.) por lo que el diseño aquí explicado será para fabricar el pigtail mas usado que llevara por un lado un conector N-Macho y un conector RPSMA-Macho. Debemos de diferenciar la palabra Reverse para no llevarnos sorpresas. Una vez visto podemos aplicar esta táctica a todo tipo de pigtail sean macho-hembra, sean conectores N, sean conectores SMA normales (europeos) o sean SMA-Reverse ( RPSMA americanos ). Lo único que cambiara entre macho y hembra será la forma del pin interior. Este proceso también en valido para las tarjetas usb, las pcmcia y las internas de los portátiles pero solo la parte que correspondería a la conexión a la antena externa. Respecto a la conexión a la tarjeta, si será diferente ya que habitualmente estas tarjetas no tienen conector externo. Si que es cierto que hay algunas excepciones.

Unas fotos aclaratorias.

RPSMA-Hembra

  N-Hembra (colocado en antenas)

 N-hembra y macho + RPSMA-Macho

Conector SMA-RP Macho (habitual para conectar a tarjeta PCI)

Conector SMA-RP Hembra (habitual salida tarjeta PCI)

3.- Herramientas

- Herramienta manual de crimpar para este tipo de conectores. Precio: 30 euros. Esta pieza es fundamental, igual la podéis encontrar mas barata en los todo a 1 euro o en los chinos, pero dudaría de su calidad.

- Tijeras

- Cutex

- Secador

                Cutex y funda termoretráctil                                     Crimpadora o maquina de crimpar

                                 

4.- Materiales

Entramos en materia importante.

1.- Cable parecido a los que usan las antenas televisión pero que realmente son diferentes. Llevan una malla bajo un aislante y debajo de este otro aislante. Debajo de este ultimo aislante encontraremos en los de televisión un hilo rígido y en los wireless multihilos flexibles. Posteriormente cuando pelemos el cable ya veréis su forma interna ya que no quiero repetirme con las fotos. En mi caso es negro pero os lo podéis encontrar de diferentes colores así como transparentes. Este cable en concreto tiene un diámetro exterior de 5 mm y el diámetro del activo entre 1 y 2 mm, es decir el conductor multihilo del interior. Longitud de cable la que queráis, pero no os paséis mucho ya que la perdida será mayor. Este cable es el RG-58 con una perdida de1.056db por metro, hay cables mucho mas buenos, y su secciones lógicamente serán diferentes, en el caso de los LMR-400 la zona de crimpado será mayor a la par que mas caro pero con menos perdida (0.217 dB por metro). Pero la técnica de trabajo aquí explicada deberá ser la misma. El LMR-200 puede ser una solución intermedia. Los LMR-400 tienes un diámetro de 12mm y los LMR-200 un diámetro de 6mm.

Si queréis ver una tabla de perdidas de los cables mas comunes, pulsa: aquí

 Nota recordatoria: Los LMR-400 tienen un diámetro de aproximadamente 12mm y los LMR-200 un diámetro de 6mm. Los conectores para los cables del tipo RG58 suelen ser los mismos que para los cables del tipo LMR-200 debido a que presentan diámetros de cable para crimpado muy parecidos.

2.- Funda termoretráctil

3.- Conector completo 3 piezas del tipo N-Macho, pero para crimpar sobre cable del tipo RG58 y LMR200, en el caso de que fuera cable del tipo LMR400 seria necesario este conector N-Macho:

En lugar del que vamos a usar, que es:

4.- Conector completo 3 piezas del tipo SMA-RP Macho, pero para crimpar sobre cable del tipo RG58 y LMR200, en el caso de que fuera cable del tipo LMR400 seria necesario este conector RP-SMA Macho:

En lugar del que vamos a usar, que es este:

Diversos ángulos de los materiales a emplear.

         

         

Siempre son los mismo conectores, pero así tenéis una perspectiva amplia (la quinta foto esta repetida)

A.- El dorado siempre es el conector SMA-RP-Macho.

B y C.- Los metálicos son del tipo N.

B.- El que lleva el hilo de cobre soldado es el N-Hembra. Se le suelda el hilo de cobre por detrás del conector. Este tipo es que se suele usar para las antenas comerciales y para la antenas caseras. Obviamente en la comerciales no vemos la parte internar es decir donde hemos soldado el hilo de cobre. Cabe una mención sobre este tipo de conector, es del tipo chasis y los hay de diversas formas, algunos viene con 4 tornillos y este modelo en concreto lleva una simple tuerca que se fija dentro de la lata, como podéis ver es mas fácil de elaborar y quedara mejor compactado y mas ganancia para una antena casera que no comparado con el de 4 tornillos que hay que hacerle los agujeros a la lata y encima las cabezas quedarían por dentro. Y su estanqueidad es mayor al no tener que apoyarse una zona rectangular plana grande sobre una circunferencia tal como ocurriría con el de 4 tornillos. La tuerca es mas bien pequeña y queda adaptada perfectamente en la lata o en el bote de patatas pringles. Ya lo veremos en un ejemplo al final de la pagina en el apartado 8.

C.- El del medio y metálico (no lleva soldado nada) corresponde al conector N-Macho.

Así pues los conectores para el pigtail serán el A y el C.

Las piezas que veis cilíndricas tienen un diámetro aproximado de 5-7mm algo superior al cable, pero que al crimparlas se reducen y quedan bien ensambladas. La funda termoretráctil tiene un diámetro parecido y similar a esta a esta pieza y para que al calentarla y se encoja se ajuste perfectamente al cable y a esta parte del conector.

5.- Procedimiento

Antes de entrar en este punto es importante que tengáis claro los conceptos que antes he explicado y si tenéis los materiales y herramientas adecuadas para este trabajo.

Empezaremos con el conector mas fácil de trabajar debido a sus mayores dimensiones.

Pero si tenéis manos pequeñas podéis ir a por el mas pequeño. Yo siempre lo hago de esta forma.

Paso 1: Presentamos la zona de trabajo para el conector N-Macho

              

Esta foto es muy aclaratoria y os muestro un despiece intuitivo de como quedarían los componentes una vez todo ensamblado. Lo importante aquí, es determinar la distancia de cable para pelar.  Como veis es un 1 cm. Os recomiendo que no es quedéis corto sino mas bien largo. ¿Por que?  Ya lo veremos posteriormente cuando hagamos trabajar la maquinita verde (crimpadora)

Paso 2: Pasamos a pelar el cable negro

     

Esta técnica es muy personal. Si usáis los dientes con caries (ya mencionado en el tema herramientas) podéis evitar el uso de cutex. Yo habitualmente cojo el cable con una mano y con la otra el cutex y le doy un corte redondo (similar a cuando quieres córtale el cuello a tu profesora de filosofía). Bueno vemos en esta foto que el cutex lesionado también esta oxidado (toma pareado).

Paso 3: Sacamos el aislante externo

     

Para sacar el trozo pelado de aislante hacerlo de forma suave.  En la segunda foto podemos ver como esta situada la malla dentro del cable. Si al hacer el corte con el cutex nos hemos pasado y observamos un desgarro considerable en la malla podemos cortar todo (dejamos el cable como al principio) y empezamos de nuevo con el paso 2.

Paso 4: Abrimos y retiramos para atrás la malla

Abrir ligeramente la malla y retirarla hacia atrás. Así veremos un segundo aislante que esta dentro de la malla y que a su vez contiene los multihilos. Estos multihilos lo veremos después (y esos multihilos y el tipo de aislante es la diferencia entre el cable de antenas de televisión y los wireless, ya que los de televisión suelen ser un solo conductor rígido y un aislante mas débil que se puede quitar con las manos-uñas). Además os he pintado con un rotulador aparentemente negro este segundo aislante para que sea vea mejor en la foto pero suele ser transparente.

Paso 5: Volvemos a presentar la zona de trabajo para el pin interno del conector (macho)

     

Como veis defino una distancia entre 2 y 3 milímetros. ¿por que? Para que el multihilo conductor (el cual esta debajo de este aislante “activo”)  pueda encajar dentro del pin macho del conector N. Si aumentáis la foto veréis un pequeño agujero que determina hasta donde puede introducirse el multihilo y para posterior crimpado. De esta forma se sabe hasta donde hay que crimpar y evitar romper el pin (aunque son bastantes duros)

Paso 6: Pasamos a pelar el aislante del multihilo

Repetir nuevamente que esta técnica es muy personal. Como dije; habitualmente cojo el cable con una mano y con la otra el cutex y le doy un corte redondo. Tener en cuenta que este aislante tiene una mayor rigidez y se te puede ir la mano cuando después de iniciar la operación te das cuenta que no puedes cortarlo y que debes de aplicar una mayor energía.. Si os equivocáis y cortáis mas de lo necesario (dañáis los multihilos) podéis hacer dos cosas. La primera y la mas recomendable es cortar todo y empezar de nuevo en el paso 2. O bien, si solo se ha dañado un hilo o dos (cosa que no creo que influya mucho en la perdida del cable) seguir con el paso 7.  Además, ¿quien lo va a ver?.

En esta foto podemos apreciar el estado del cable después de pelar el segundo aislante. Ya se que esta foto no se ve muy bien pero es que las dimensiones del multihilo interno son muy reducidas, del orden de 2 milímetros de grosor.

 Lo que debe de quedar claro es lo siguiente: Que tenemos 2 aislantes separados correctamente y una malla abierta hacia atrás y un activo (multihilo) en el interior dispuesto a penetrar en un pin (en nuestro caso macho pero que podía ser hembra) .

Paso 7: Pasamos a crimpar

Antes de nada, comprobamos que en el pin macho pueda albergar perfectamente en el multihilo activo. En este caso igual es necesario redondear con la mano estos multihilos conductores. Y que a su vez,  que este llegue hasta el máximo sobre la pared de separación (muy próxima al agujero que comentábamos antes) y que a la vez no quede nada de multihilo fuera del pin macho, solo aislante. Si nos hemos quedado cortos podemos pelar un poquito mas pero no mucho, y si nos hemos quedado largos podemos recortar el multihilo flexible con las tijeras oxidadas.

     

Es conveniente si es la primera vez que usamos este tipo de herramientas que comprobemos en que posición debemos de introducir el pin de las varias que lleva. Como podéis ver, en este caso correspondería al segundo por la derecha de los grandes, el anterior seria muy pequeño y posiblemente rompería el pin y el posterior no crimparia nada y se colaría en pin por el interior.

Nota: Creo oportuno en este momento explicar que esta herramienta funciona como unos alicates de presión. Es decir hasta que no llegue al final de su recorrido de crimpado (es decir las 2 bocas se toquen) no pude volver hacia atrás. Entonces diréis, ¿y si te equivocas en la elección del agujero o se te mueve el pin y quieres empezar de nuevo? Tranquilo el truco del almendruco, lleva un dispositivo para liberar la herramienta en la posición que se haya quedado  y volver a su posición de reposo (boca abierta).

Lo veis, empujáis de esa pequeña palanca hacia adelante (hacia las bocas) y se libera el pin. también hay que decir que la fuerza de presión y/o el recorrido final que permite abrir la maquinita una vez este haya crimpado puede variarse. Hice una foto pero ha salido mal. Pero ya lo veréis si la utilizáis, lleva un pequeño tornillo en un lateral de las bocas y una rueda dentada con las simbologías de mas y menos. Pero posiblemente con el calibre que venga de serie puede valer y no haya que tocarla. Pero bueno, por si alguien se pregunta para que es eso.

           

Colocamos el cable multihilo dentro del pin y la vez todo dentro de la herramienta pero en la posición de la foto para que solo crimpe la parte necesaria. Os acordáis que os dije de que mejor os quedarais largo al pelar el cable al principio de todo. Bien esto es debido a que según el grosor de la herramienta la parte de la malla puede molestaros a la hora del crimpar. Lo veis en la foto de la izquierda lo justo que puede quedar.

Con una manco aguanto el cable y el pin para que no se mueva (sino a por otro conector y no veas lo caros que son) y con la otra mano aprieto firmemente las palancas verdes de la herramienta (como si ordeñara una vaca). Si ya se, aparecen letras al lado de la herramienta, pero joder los folios valen caros y tengo que rehusarlos. Simplificando que es gerundio: se tarar de machacar (literal) la parte del pin donde esta introducido el multihilo flexible para que quede fijado. Cuando tengáis los componentes y la herramienta en vuestro poder lo veréis mas claro.

Paso 8: Preparación previa al ensamblado

Aquí podemos ver el pin macho crimpado del conector N-Macho. A la vez volvemos a peinar la malla hacia la punta del pin. Si vemos que ha quedado mucha malla podemos recortarla con unas tijeras. también mostramos  la pieza cilíndrica que se usar para crimpar la malla. Además, cortaremos unos 3 cm de funda termoretráctil para colocarla seguidamente. El color azul esta de moda. Pero los hay de diferentes colorines algunos realmente fashion club pijo total.

        

Introducimos primero la funda y después la pieza cilíndrica. Esto se podía a ver hecho antes de pelar y crimpar pero yo prefiero hacerlo así. Así evitamos que estos dos componentes estén bailando por todo el cable mientras estamos trabajando.

Una vez colocadas la pieza y la funda volvemos a tirar la malla hacia.

Paso 9: Introducimos el pin macho en la base del conector.

Como veis por la parte de atrás del conector introducimos el pin macho crimpeado con el cable de forma muy suave hasta que quede fijado.

Seguidamente volvemos a peinar (es que esta malla ha salido muy presumida) el cable hacia delante, y recordad que siempre se la puede afinar con las tijeras (lavar y cortar).

Paso 10: Crimpado de la malla.

Después de peinar la malla hacia delante, hacemos correr (esto viene a huevo para hacer un chiste pero no lo haré) la pieza metaliza cilíndrica sobre el cable hasta que toque la base del conector de forma que la malla quede completamente escondida (le da vergüenza). Y acto seguido crimpamos la malla.

    

Este es mas fácil de hacer. Recordad de elegir la posición adecuada de la crimpadora para el diámetro de esta pieza.

Así ya podía valer para nuestros propósitos.

Pero lo completaremos dándole un acabado mas profesional (esto no hay quien se lo crea solo se usa para tapar fallos) con la funda, al igual que hicimos con la pieza cilíndrica que tapa la malla,  haremos correr la funda  (ahora si, después de esto un cigarrito) hasta que tape (sobrepuesta) la pieza cilíndrica y parte del cable negro negrito (bueno, bonito, barato). Aunque los diámetros de funda y pieza cilíndrica sean aparentemente los mismos no hay problemas de encaje ya que el tipo de material de la funda es bastante maleable.

Paso 11: Acabado conector N-Macho

Posteriormente calentaremos con un secador (recordad lo de los guantes para no dejar pruebas dactilares) la funda termoretráctil y esta se adaptara al contorno del cable y de la pieza cilíndrica, otorgándole un aspecto semiprofesional.

Llegados a este punto, tendréis completado la mitad del trabajo, ya tenemos lista la conexión para la antena externa, sea comercial sea lata o sea patatas pringles.

.

Paso 12: Intermedio

A partir de ahora muchas de las operaciones ya serán repetidas pero para un conector diferente, es decir el SMA-RP-Macho, así que iremos mas rápido y solo haremos un énfasis en los aspectos mas característicos. Los SMA-RP son mas pequeños y difíciles de tratar.

Paso 13: Presentamos la zona de trabajo para el conector SMA-Reverse-Macho (RP-SMA-Macho)

 Al igual que antes os muestro un despiece intuitivo de como quedarían los componentes una vez todo ensamblado. Para no liaros con diferentes distancias usaremos la misma medida de pelado para el cable negro para este extremo del pigtail es decir 1 cm. Aquí os recomiendo que os quedéis corto ya que las dimensiones son menores y el crimpado se hace de otra manera. Además veréis dibujado un corte seccional del pin hembra para que lo entendáis mejor ya que es muy diminuto y no se distingue bien en la foto. Observar la parte que corresponde al pin hembra interno y la parte trasera completamente negra donde se albergaran los multihilos del cable para crimpado posterior, esta medida suele ser muy pequeña del orden de 2mm.

Paso 14: Pasamos a pelar el cable negro

     

Aquí os pongo las misma fotos y la técnica personal. Se coge el cable con una mano y con la otra el cutex y se le da un corte redondo.

Paso 15: Sacamos el aislante externo, abrimos y retiramos para atrás la malla

     

Sacar el trozo pelado tal como hicimos anteriormente. Si al hacer el corte con el cutex nos hemos pasado y observamos un desgarro considerable en la malla podemos cortar todo (dejamos el cable como al principio) y empezamos de nuevo con el paso 13.

Abrir ligeramente la malla y retirarla hacia atrás.

Paso 16: Pasamos a pelar el aislante del cable multihilo

    

Defino una distancia de 2 milímetros para que el multihilo conductor pueda encajar dentro del pin interno (hembra) del conector SMA-RP-MAcho. Si observáis el dibujito veréis el limite hasta donde se puede introducirse el multihilo y para posterior crimpado. Así se evita romper el pin en el crimpado.

En la foto de la derecha podemos apreciar el estado del cable después de pelar el segundo aislante.

Paso 17: Pasamos a crimpar

Comprobamos que en el pin hembra pueda albergar perfectamente en el multihilo activo. En este caso seguro que es necesario redondear con la mano estos multihilos conductores para evitar tener que quitar algún hilo. Lo mismo de siempre, si nos hemos quedado cortos podemos pelar un poquito mas pero no mucho, y si nos hemos quedado largos podemos recortar el multihilo flexible con las tijeras oxidadas. En este caso usaremos el segundo de los pequeños orificios de la herramienta, en este caso no habrá problema con la malla ya que se trabaja de forma inversa respecto al conector N. Esto es posible a que la herramienta tiene por la otra cara un espacio abierto donde hay sitio para el cable y la malla. Ahora lo vemos.

    

Veis el espacio que os digo. Os pongo la comparativa con el otro pin del conector N para que podáis ver la diferencia a la hora de colocar el cable en la maquina de crimpar.

                                                                              

Recordad que aquí si molestaba el pin y/o la malla (N)          En este caso no molestaría ni la malla ni el propio pin (RP-SMA)

Paso 18: Preparación previa al ensamblado

Peinamos la malla hacia adelante. Vemos que hay demasiada malla.

 

Cortamos un trozo de malla para que la pieza cilíndrica pueda entrar. Y colocamos primero la funda termorectráctil y la pieza cilíndrica para el crimpado de la malla.

Paso 19: Introducimos el pin hembra en la base del conector.

 

Lo mismo que para el conector N.

 

Corremos  la pieza cilíndrica hasta que toque la base del conector y tape la malla

Paso 20: Crimpado de la malla.

Podéis ver en esta foto que se usara la misma posición de crimpado en la herramienta que para el conector N. Además podéis observar las medidas relativas del cable y de la pieza cilíndrica. Digo relativas por que lo he medido con un metro, ya que en estos momentos no dispongo de un pie de rey. ¿Pero quien va a la tienda a comprar cable con un pie de rey? Así tenéis mas abanicos de posibilidades y lo podéis ajustar a vuestras necesidades. Ya que si defino una medida correcta y no un rango, os volverías locos para encontrar un cable exactamente igual. Yo os muestro el camino y vosotros decidís que tipo de cable usar y como se debe de usar la herramienta de crimpar. Este cable es el RG-58, hay cables mucho mas bueno, y su secciones lógicamente serán diferentes, en el caso de los LMR-400 la zona de crimpado será mayor. Pero la técnica de trabajo aquí explicada deberá ser la misma.

Literalmente acción de crimpar. Igual que hicimos para el conector N

Estado después de haber crimpado la malla. Para algunos seria suficiente. Pero al igual que para el conector N le daremos un acabado semiprofesional. Veis la forma que le da la herramienta de crimpar a la pieza que antes era cilíndrica. Esta foto es buena y es muy expresiva.

Paso 21: Acabado conector RPSMA-Macho

Desplazamos la funda hasta que toque la base del conector y esconda completamente la pieza crimpada con la malla y también esconda parte del cable.

Y posteriormente calentaremos con un secador.

Aquí tenemos acabado la otra parte del pigtail la que correspondería  a la conexión para vuestra tarjeta wifi

Y lo presentamos para su conexión a la tarjeta wireless

6.- Presentación de nuestra obra maestra

    

7.- Comprobaciones

Siempre digo que todo lo que se hace debe de ser barato y funcional y luego si se puede bonito. Por lo tanto debemos de realizar una serie de comprobaciones para comprobar el funcionamiento correcto.

Comprobación 1: Cortocircuitado

Primera comprobación cortocircuito

Colocamos una punta del tester en la masa de la tarjeta y la otra en el activo de la antena justo en la misma antena. Si la antena fuera comercial y no podemos acceder a esta parte haremos la comprobación substituyendo lo visto en la foto 2 colocando el pin rojo del tester en el propio pin macho de la antena, posteriormente lo veréis mejor para el caso de la conectividad entre activos de diferentes conectores. Ya haré una mención para esta forma de trabajo en el punto siguiente.

       

Segunda comprobación cortacircuito

       

Colocamos una punta del tester en la masa  de la tarjeta (punto soldadura central) y la otra en la masa de la antena justo en la misma antena. Si la antena fuera comercial y no podemos acceder a esta parte haremos la comprobación substituyendo lo visto en la foto 2 colocando el pin negro del tester en el propio pin macho de la antena, posteriormente lo veréis mejor para el caso de la conectividad entre activos de diferentes conectores. O si encontráis  alguna pieza metálica en la antena que tenga contacto con la masa de la misma.

Esta doble comprobación podría parecer redundante pero no lo es. Me explico, estaréis pensando que si hay que si hay un cortocircuito la conectividad se dará en ambos casos, pero podría ser que hubiera dos errores, es decir por un lado cortocircuito y por otro lado un falsa conexión entre activo-activo y malla-malla. Si fallara lo segundo y solo hubiéramos comprobado la conexión de una sola forma posiblemente si hubiera cortocircuito solo tendríamos un 50% de posibilidades de saberlo. Por si un caso comprobarlo de las dos formas

Esta operación es lo primero que hay que mirar para evitar que el pigtail este dañado y exista una conectividad entre malla y activo. Recordad que si tenéis una antena comercial es mejor hacerlo si la antena conectada es decir miráis directo en los conectores.

Como tenia una lata lo he hecho de esta forma, pero antes de nada hay que roscar el pigtail a la antena y a la tarjeta de forma correcta para que las pruebas sean validas. Aunque lo haya hecho con esto equipos conectados también se puede realizar solo con el mismo pigtail y de hecho es recomendable realizar estas 3 comprobaciones.

Comprobación 2: Conectividad cable

             

Debemos comprobar que la conectividad entre los activos de los diferentes conectores sea correcta es decir valor 0 de ohmios y lo mismo para el chasis o la masa.

Veréis que se ha movido el pin rojo para la segunda foto, pero para que sea correcto debe de tocar el pin interno del conector.

En la prueba del cortocuito hice una mención a este punto así que me aprovecho de estas fotos para indicaros que la comprobación de cortocircuito se haga de esta forma pero evidentemente colocando los pines del tester mezclando las fotos 1 y 2. Es decir activo-malla y malla-activo, supongo que lo entendéis perfectamente. El valor para el cortocircuito no debería ser cero sino aunque loa pongáis en la escala mas grande del tester debe dar infinito (no conectividad) pero eso para el caso del cortocircuito que ya os estoy liando con tanto repetir las cosas.

Comprobación 3: Conectividad real entre equipos.

                

                 

Compruebo que haya conexión eléctrica entre los equipos reales de trabajo es decir entre activos de antema y tarjeta y entre chasis o masas. Vemos que no es cero absoluto pero lo he puesto a propósito para que veías que un error de 0.2 ohmios no es nada y además incluso muchos testers te dan este valor incluso tocándose las puntas del mismo, o incluso algunos llegan hasta 0.4 ohmios dependiendo del tipo o de su año de fabricación. Esta pruebas y fotos son similares a las del cortocircuito pero poniendo las puntas del tester en sentido contrario es decir activo-malla y malla-activo. La malla es igual a la masa. De hecho si una vez todo montado comprobáis con las puntas del tester colocando una en alguna pieza metálica del pc (o la misma masa del cable de alimentación del pc aunque ya sabemos que es de alterna 220 voltios) y la carcasa de la antena si es una de lata hecha por nosotros o el chasis del conector de la antena comercial o de la antena pringles y a la vez asegurándose que esta todo conectado observareis que existe una perfecta conectividad entre ambos puntos.

Vale si todo estaba correcto y no hay cortocircuitos en el pigtail y la conexión entre equipos es correcta, entones aparentemente podemos darlo por bueno. Pero quedara la prueba definitiva. Arrancar (ya me entendéis) el ordenador y comprobar realmente que se detectan señales wireless,  por lo menos las misma que ya se detectaban con la mini antena que incorporaba la propia tarjeta wireless. Podría haber hecho una foto de estas antenas propias que llevan casi todas tarjetas para bus pci pero todo el mundo tiene el culo pelado de verlas, así que no me haré mas extenso.

Si no se presentara una conectividad habría que analizar donde esta el fallo y posiblemente cambiar algunos de los conectores. Pero habría que empezar cortando uno y luego el otro. Así que habría que repetir todo el proceso o solo una parte de construcción del pigtail.

8.- Antena con lata de aceitunas

Aprovechado que fabrique una antena con una lata de aceitunas,  ya que posiblemente este será la causa principal (pero no la única) por la que nos aventuramos a fabricar un pigtail (bueno también para la antena pringles, pero esta la haré el domingo y esta pagina Web vera la luz el viernes, así que no tengo fotos, bueno ya se que además se construyen de otro tipo pero estas son las mas genéricas) os comentare algunas cosas particulares respeto al conector N-Hembra que hay casi en todas ellas. No voy a explicar el diseño de la antena ya que hay multitud de información en diferentes sitios y el objetivo de esta Web era explicar la fabricación de pigtail, ya que de esto concretamente si hay poca información.

Vemos el pigtail conectado a la tarjeta wireless y a la vez conectado al conector N-Hembra que habitualmente se coloca en este tipo de antenas y en muchas mas. Lo he dejado fuera de la antena para que lo vais mejor. Observar el diámetro del agujero de la lata y de la tuerca que hay debajo. Este tipo de conector es mejor al típico de chasis de 4 tornillos que todo las Web del mundo aconsejan, si habéis hecho un diámetro de agujero correcto y de igual diámetro al conector N-Macho podréis libraros de los tornillos de anclaje y de la propia tuerca. Esto es debido a que este conector lleva por la parte de la conexión del hilo de cobre (la que se introduce en la lata)  una tipo de rosca que pude encajar perfectamente en el chasis de la lata, así que la instalación es mas sencilla, rápida y encima mucho mejor, pero si no habéis acertado siempre podemos poner la tuerca, además es aconsejable poner la tuerca ya que así se consigue una mayor sujeción del conector N-Hembra.

Veis como es mas fácil  trabajar con este tipo de conectores N.

En esta foto ya esta roscado y completo todo el sistema. Observad como queda el conector perfectamente encajado, para el caso de chasis de 4 tornillos al ser una superficie mayor no queda también y hay que ir después repasando con silicona o deformar el volumen de la lata con lo cual aunque no se aprecie de forma visual acabara  afectando a la ganancia de la antena. Es por pura lógica, si existe una  mayor superficie de agarre u encima al ser una zona  rectangular y colocado obre una cilíndrica (lata de aceitunas) evidentemente no quedara perfectamente ajustado. Por eso decía antes que era mas sencillo, rápido y mejor. En los conectores de chasis del tipo N con tornillo además estos últimos sus cabezas quedarían dentro de la lata con lo cual la ganancia lógicamente será menor. Hablo de lata de aceitunas pero podría ser otro tipo de lata siempre que cumplan con las especificaciones de dimensiones que ya sabemos y que correspondería a otro objetivo.

9.- Montaje real y presentación final

         

Solo el pigtail

              

En el caso que vuestra antena sea comercial, por ejemplo una planar de 12dbi:

La antema comercial esta, en este caso. atornillada a una mini estanterías de CD o DVD.

Al final parece profesional y todo.

 Quedaría el punto 10 que seria la comprobación final en la detección de señales, yo en mi caso os digo que las pruebas han sido satisfactorias, de lo contrario ni hubiera empezado a diseñar este pagina, de eso que no quede la menor duda. Pero os aseguro que con un cable de mayor calidad por ejemplo el LMR-200 hubieran sido aun mejores (tenerlo en cuenta, y decidir vosotros en virtud de la longitud del cable la calidad del mismo por supuesto del presupuesto que dispongáis. Existen pigtail ya fabricadas que podéis encontrar en muchas tienda online, pero si os gusta el bricolaje wireless, creo que este es un buena guía de montaje. Lo importante es seguir el proceso y observad las fotos, en ellas esta la verdadera valía de esta Web.