Aquí os dejo un video demostrativo de cómo dos técnicos de DELL
despellejan y destripan uno de sus nuevos servidores. Nos cuentan sus
bondades y características más relevantes. Pero lo más importante para
nosotros como Administradores de Sistemas, es comprender cómo se
organizan este tipo de servidores de alta gama.
Más información en este enlace.
sábado, 1 de febrero de 2014
jueves, 30 de enero de 2014
Asistente Jarvis (Shell Script)
En este script podemos ver cómo integrar un software de sintetización de voz y hacer que reproduzca lo que deseemos. Se trata de un asistente que emite a través del comando espeak todo aquel texto que se le pase como parámetro. Según vamos escribiendo el asistente lo va emitiendo a través del sistema de audio del equipo. Es un ejercicio sencillo que puede servirnos para practicar el uso de parámetros.
#!/bin/bash
#Asistente Jarvis
clear
#Preconfiguramos el tono, velocidad y demás elementos
#relacionados con el comando espeak, para que la voz de nuestro
#asistente se entienda adecuadamente.
parametros="-v es -s 150 -p45"
echo "ASISTENTE DE CONVERSACIÓN: JARVIS"
mensaje_bienvenida="Bienvenido al asistente de conversación digital: Jarvis"
espeak $parametros "$mensaje_bienvenida" 2>/dev/null
frase="Escribe tus mensajes a continuación"
espeak $parametros "$frase" 2>/dev/null
#Preparamos un bucle infinito que solicitará
#contínuamente la introducción de cualquier texto
#para que sea reproducido. Podremos parar con Ctrl+C
#La salida del programa debería mejorarse.
while [ 1 ]
do
read -p "Texto a emitir (* para salir): " texto
if [ "$texto" == "*" ]
then
break
else
espeak $parametros "$texto" 2>/dev/null
fi
done
echo "Gracias por utilizar este software"
espeak $parametros "Gracias por utilizar este software"
exit 0
Etiquetas:
asistente,
ciclos formativos,
fp,
GNU/Linux,
jarvis,
Linux,
pc,
script,
scripts,
Scripts Linux,
shell,
sintetización de voz,
sintetizador,
speak,
tecnología
miércoles, 29 de enero de 2014
Script para automatizar la instalación de Webmin
A continuación os propongo un Shell Script que automatiza la instalación de Webmin para Linux en su versión 1.670. Webmin permite, entre otras cosas: gestionar múltiples servicios de un servidor, modificar la configuración del sistema y otras muchas utilidades que a un administrador de sistemas le pueden facilitar el trabajo diario con sus servidores Linux.
La mayor ventaja es que Webmin permite todas estas acciones a través de un navegador web, concretamente con la utilización del puerto 10000.
Pues bien, este código fuente intenta comprobar la existencia de Webmin en el servidor, si existe lo actualiza y si no existe procede a su descarga e instalación. Finalmente, se eliminan los archivos temporales utilizados.
Es interesante observar que los mensajes al usuario que el propio script muestra en pantalla, han sido destacados mediante letra en negrita. Esto se consigue utilizando unos patrones para el formateo del texto emitido con la orden echo. Aquí teneis un enlace para tener más información sobre Colores en Shell Scripts.
#!/bin/bash
#Script que automatiza la instalación de webmin en su versión 1.670
#Creación: 29/01/2014
#Variables para poner letra en negrita
abrenegrita="\033[1m"
cierranegrita="\033[0m"
if [ $LOGNAME != "root" ]
then
echo -e "$abrenegrita Lo siento, este script requiere ejecutarse con privilegios de root. $cierranegrita"
read
exit 1
fi
#Comprobamos si Webmin está instalado
if [ -f /etc/init.d/webmin ]
then
echo -e "$abrenegrita Webmin se encuentra instalado en su sistema. $cierranegrita"
version=`cat /etc/webmin/version`
echo -e "$abrenegrita Versión actual: $version $cierranegrita "
else
echo -e "$abrenegrita Webmin no se encuentra instalado en su sistema, procediendo a la instalación... $cierranegrita"
fi
#Comprobamos si está instalado aptitude
which aptitude > /dev/null
if [ $? -ne 0 ]
then
apt-get install aptitude
fi
#Instalamos los paquetes previos necesarios para Webmin
aptitude install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions
if [ $? -eq 0 ]
then
echo -e "$abrenegrita Instalación satisfactoria de paquetes adicionales necesarios para webmin.$cierranegrita"
else
echo -e "$abrenegrita Error en la instalación de paquetes necesarios para webmin.$cierranegrita"
echo -e "$abrenegrita El script se cerrará.$cierranegrita"
read
exit 1
fi
#Descargamos en la carpeta tmp el paquete deb de instalación de webmin
#para ello creamos una carpeta específica
if [ -d /tmp/descarga_webmin ]
then
echo -e "$abrenegrita Descargando...$cierranegrita"
else
mkdir /tmp/descarga_webmin
fi
if [ $? -eq 0 ]
then
cd /tmp/descarga_webmin
#nos posicionamos en la nueva carpeta temporal y descargamos webmin
wget http://prdownloads.sourceforge.net/webadmin/webmin_1.670_all.deb
else
echo -e "$abrenegrita Error en la descarga del paquete .deb de webmin.$cierranegrita"
echo -e "$abrenegrita El script se cerrará.$cierranegrita"
read
exit 1
fi
if [ -f /tmp/descarga_webmin/webmin_1.670_all.deb ]
then
echo -e "$abrenegrita El paquete webmin en su versión 1.670 existe, instalando...$cierranegrita"
dpkg -i webmin_1.670_all.deb
if [ $? -eq 0 ]
then
echo -e "$abrenegrita Instalación satisfactoria, pulsa una tecla para comprobar...$cierranegrita"
firefox -new-window https://localhost:10000
else
echo -e "$abrenegrita Error al instalar webmin.$cierranegrita"
echo -e "$abrenegrita El script se cerrará.$cierranegrita"
read
exit 1
fi
else
echo -e "$abrenegrita El paquete .deb no se encuentra en la ubicación predeterminada.$cierranegrita"
echo -e "$abrenegrita Imposible instalar webmin.$cierranegrita"
echo -e "$abrenegrita El script se cerrará.$cierranegrita"
read
exit 1
fi
#Eliminamos la carpeta temporal y el archivo descargado
respuesta=""
while [ "$respuesta" == "" ]
do
read -p "¿Desea eliminar los archivos temporales utilizados en la instalación? (S/N)" respuesta
case $respuesta in
s|S) rm -r /tmp/descarga_webmin;break;;
n|N) echo "Ok, se mantendrán en /temp/descarga_webmin";break;;
*)echo "No ha introducido una respuesta válida";;
esac
done
echo -e "$abrenegrita Fin del Script. $cierranegrita"
read -p "Pulse una tecla."
exit 0
Etiquetas:
ciclos formativos,
deb,
dpkg,
GNU/Linux,
Linux,
Monitorización de Servidores,
open source,
script,
scripts,
Scripts Linux,
shell,
webmin
lunes, 27 de enero de 2014
Script para configuración de IP estática
El siguiente código fuente corresponde a un script cuyo objetivo es permitir la configuración de una única interfaz de red en una máquina Linux.
Hay que decir que el script no ha sido completado ya que se utilizó para comenzar las explicaciones relacionadas con la configuración de red de máquinas Linux y recordatorio de shellscripts. Dada la posible complejidad que pudiera derivarse al intentar dotar a este script de capacidad para configurar más de un interfaz de red, se optó por hacerlo para una sola.
Debemos tener en cuenta que si estamos trabajando con cualquier distro cuya gestión de interfaces de red esta realizada a través de Network Manager, será necesario desactivar dicho sistema de gestión.
Para ello bastaría con acceder al archivo de configuración de NetworkManager (/etc/NetworkManager/NetworkManager.conf) en la máquina en cuestión y poner a "false" la variable "managed". Si tienes alguna duda al respecto, te aconsejo que accedas al siguiente enlace: Desactivación de NetworkManager en Ubuntu.
Aquí teneis el código fuente:
#!/bin/bash
#Script que permite configurar de manera estática el direccionamiento IP
#de una tarjeta de red en una máquina Ubuntu Desktop 12.04.
#Para que los no nos afecte el gestor de red NetworkManager de Ubuntu
#deberemos desactivarlo. Accederemos a /etc/NetworkManager/NetworkManager.conf
#lo editaremos y modificaremos la variable "managed" poniéndola a false.
#los archivos a tener en cuenta en este script serían:
#a) Configuración IP: /etc/network/interfaces
#b) Resolución de nombres WAN: /etc/resolv.conf
#c) Resolución de nombre LAN: /etc/hosts (opcional)
#--------------------
# FUNCIONES
#--------------------
function titulo()
{
clear
echo "****************************************************"
echo "* CONFIGURADOR DE DIRECCIONAMIENTO IP ESTÁTICO *"
echo "****************************************************"
}
function copiaseg()
{
echo "Realizando copias de seguridad..."
if [ -f /etc/network/interfaces ]
then
cp /etc/network/interfaces /etc/network/interfaces.original
if [ $? -eq 0 ]
then
echo "El archivo interfaces ha sido salvaguardado con éxito."
else
echo "Error al salvaguardar el archivo interfaces."
fi
fi
if [ -f /etc/resolv.conf ]
then
cp /etc/resolv.conf /etc/resolv_original.conf
if [ $? -eq 0 ]
then
echo "El archivo resolv.conf ha sido salvaguardado con éxito."
else
echo "Error al salvaguardar el archivo resolv.conf."
fi
fi
}
function grabar_configuracion()
{
echo "----------------------------------------------------"
echo "La nueva configuración de red introducida es: "
echo "Interfaz: $1"
echo "Dirección IP: $2"
echo "Máscara de red: $3"
echo "Puerta de enlace / Gateway: $4"
echo "DNS 1º: $5"
echo "DNS 2º: $6"
echo "----------------------------------------------------"
# A partir de aquí abría que reescribir completos los archivos
# de configuración interfaces y resolv.conf
#Modificación de /etc/network/interfaces
interfaces="/etc/network/interfaces"
echo "auto lo" > $interfaces
echo "iface lo inet loopback" >> $interfaces
echo "auto $1" >> $interfaces
echo "iface $1 inet static" >> $interfaces
echo "address $2" >> $interfaces
echo "mask $3" >> $interfaces
echo "gateway $4" >> $interfaces
#Modificación de /etc/resolv.conf
resolv="/etc/resolv.conf"
echo "#Generado por script configuraip.sh" > $resolv
echo "nameserver $5" >> $resolv
echo "nameserver $6" >> $resolv
#reiniciamos los servicios de red para
#que la nueva configuración tenga efecto
/etc/init.d/networking restart
}
#--------------------
# PROGRAMA PRINCIPAL
#--------------------
titulo
if [ $LOGNAME != "root" ]
then
read -p "Lo siento, este script debe ser ejecutado con privilegios de root."
exit 1
fi
#Mostramos los interfaces de red
titulo
echo "Mostrando interfaces de red actuales..."
for nic in `lshw -short -class network | grep eth | tr -s " " | cut -f2 -d" " `
do
echo "* Interfaz: $nic"
done
echo "-----------------------------------------------------"
nic_elegida=""
while [ "$nic_elegida" == "" ]
do
read -p "Elige la interfaz que deseas configurar: " nic_elegida
done
nic_valida=1
for nic in `lshw -short -class network | grep eth | tr -s " " | cut -f2 -d" " `
do
if [ $nic == $nic_elegida ]
then
nic_valida=0
fi
done
if [ $nic_valida -ne 0 ]
then
echo "Error, la interfaz $nic_elegida no es válida."
read -p "Pulsa una tecla para cerrar el script..."
exit 1
fi
echo "La interfaz elegida es: $nic_elegida"
read -p "Introduce la nueva dirección ip estática: " ip
read -p "Introduce la nueva máscara de red: " mascara
read -p "Introduce la puerta de enlace: " puerta
read -p "Introduce el DNS 1º: " dns1
read -p "Introduce el DNS 2º: " dns2
echo
read -p "Pulse una tecla para continuar."
titulo
respuesta=""
while [ "$respuesta" == "" ]
do
read -p "Desea grabar estos datos de configuración (S/N): " respuesta
case $respuesta in
s|S)copiaseg; grabar_configuracion $nic_elegida $ip $mascara $puerta $dns1 $dns2; break;;
n|N)echo "Ok, no se modificarán los archivos de configuración"; read; break;;
*) echo "No ha introducido una respuesta válida, vuelva a intentarlo.";;
esac
done
echo "Fin del script."
read
exit 0
Etiquetas:
ciclos formativos,
GNU/Linux,
Linux,
redes,
script,
Scripts Linux,
shell,
smr
sábado, 19 de octubre de 2013
Fundamentos del Hardware: Montaje básico de un PC
Comenzamos aquí las entradas de este blog relacionadas con el Hardware. Para empezar, os dejo aquí una animación en la que podreis observar el montaje básico de un PC.
Y este otro que muestra el mismo proceso a través del simulador de CISCO de los materiales correspondientes a IT Essentials, correspondiente a un PC.
Finalmente, puedes ver en el siguiente video el simulador de CISCO IT Essentials correspondiente al montaje de un portátil.
Y este otro que muestra el mismo proceso a través del simulador de CISCO de los materiales correspondientes a IT Essentials, correspondiente a un PC.
Finalmente, puedes ver en el siguiente video el simulador de CISCO IT Essentials correspondiente al montaje de un portátil.
Etiquetas:
ciclos formativos,
desktop,
Fundamentos del hardware,
hardware,
informática,
laptop,
montaje,
pc,
portátil,
tecnología,
video,
videotutoriales
jueves, 17 de octubre de 2013
Estudio de Marketing digital casero
Ampliando conocimientos sobre videotutoriales y adaptando éstos a nuevas facetas que nuestro alumnado va a desarrollar durante este curso en algunos módulos profesionales como Fundamentos de Hardware, nos hemos visto en la necesidad de preparar algún lugar adecuado para poder grabar montajes de hardware y otras operaciones. Es por esto, que a través de algunos enlaces que aquí publicamos, vamos a daros información para crear vuestro propio Estudio de Marketing Digital casero.
Echad un vistazo al siguiente enlace y a las fotografías que os sugerimos:
Estudio de Marketing Digital casero
Para ir empezando a preparar...
Echad un vistazo al siguiente enlace y a las fotografías que os sugerimos:
Estudio de Marketing Digital casero
Para ir empezando a preparar...
Etiquetas:
ciclos formativos,
fp,
marketing,
video,
videotutoriales,
youtube
jueves, 10 de octubre de 2013
Más software para Inventarios de Equipamiento Informático
Recientemente he encontrado en la red un par de posts relacionados con software para la realización de Inventarios de TI. El primero de los enlaces que aquí os publico trata de software para auditar software y el segundo trata sobre una herramienta específica "Network Inventory Advisor" para la realización de inventarios de equipamiento informático. Esta herramienta es parecida a SpiceWorks.
Posible sitio de descarga. Cuestión de probarlo.
Posible sitio de descarga. Cuestión de probarlo.
Etiquetas:
ciclos formativos,
Inventarios Informáticos,
redes
martes, 25 de junio de 2013
SIIM 2.0. en IES Oretania
Hace ya algunos años que desarrollé junto con compañeros y alumnos del IES Ntra. Sra de los Remedios un proyecto llamado "Sistema Inalámbrico de Información Multimedia - SIIM". Tras varias evoluciones de este sistema, durante el curso 2012/13 el IES Oretania de Linares ha decidido a incorporar en sus instalaciones el "SIIM 2.0.", una nueva versión de este sistema de información adaptada a las necesidades de este Centro de Enseñanza.
Diversos materiales sobre el proyecto se encontraban dispersos en la red y creo que reunirlos en un post de este blog sería interesante para haceros una idea de qué trata este proyecto y sus evoluciones.
Y accediendo a este enlace podrás más información detallada sobre el proyecto: http://www.juntadeandalucia. es/averroes/impe/web/ contenidoRecurso?pag=/2009/04/ 13/0009/NDOIAND-20090413-0009& idSeccion=19021
Guía en pdf sobre SIIM 2.0.:
jueves, 20 de junio de 2013
Análisis de tráfico de red con ipfm
Cuando queremos tener nuestra red relativamente controlada se hace necesario utilizar ciertas herramientas que nos faciliten la tarea. En este caso vamos a utilizar una herramienta para Linux llamada ipfm o IP Flow Meter.
Con esta herramienta podemos tener una medición del tráfico de subida, bajada y total realizado por IP`s en nuestra red. Explicaremos cómo instalarla, cómo visualizar el resultado de su ejecución y cómo complementar estos datos mediante su visualización a través de un módulo en php que nos ofrecerá los datos capturados en un formato más legible, incluso a través de gráficos. Estos son los pasos que realizamos para poder hacerla funcionar:
1) Instalamos en nuestra máquina Ubuntu la herramienta mediante apt-get. Puedes encontrar más información en http://aspiranteageek.wordpress.com/2009/10/22/monitoreo-de-ancho-de-banda/
2) Descarga el siguiente paquete de http://scripfm.sourceforge.net/ y alójalo en /var/www de tu máquina Ubuntu.(lo normal es que tengas instalado un servidor http con intérprete php, mysql, etc. Una posible opción es lamp).
3) Una vez instalada tenemos que tener en cuenta que el lugar donde quedan los archivos de ipfm es en /var/www/ipfm. Es allí donde podremos encontrar todos los archivos asociados a este software, así como ejemplos de configuración para el mismo.
4) Tendremos que modificar los archivos de configuración y para ello tendremos que tener controlados los dos siguientes: /etc/ipfm.conf y /var/www/ipfm/conf.php. Te encontrarás dentro de /var/www/ipfm un archivo llamado ipfm.conf-sample en el que te puedes basar para generar tu propia configuración. Pero no generes un ipfm.conf en /var/www/ipfm ya que entraría en conflicto con el existente en /etc.
5) Por último en /usr/share/doc/ipfm también podrás encontrar un ejemplo de archivo de configuración muy completo sobre el que basarte, sobre todo para establecer las subredes, rangos y demás opciones con las que ipfm debe funcionar.
6) En el archivo /etc/ipfm.conf debes configurar qué redes o subredes quieres analizar, la frecuencia del análisis, cómo se van a generar los logs, cuántos, dónde, la periodicidad con la que se eliminarán éstos, la ordenación de los datos, etc.
7) Configura ahora el archivo /var/www/ipfm/php.conf con el que conseguirás que el módulo php funcione adecuadamente. Podrás establecer si quieres que aparezcan las estadísticas en un color u otro, si quieres que funcione con gráficos o sólo con datos, mensualmente, diariamente, etc. Fìjate en las líneas de comentario del archivo, ya que te aclararán los términos a configurar.
(Por ejemplo, hay una línea en la que se establece el tipo de estadísticas, por defecto viene "daily", pues puedes utilizar "daily-graph" si quieres que te aparezcan las estadísticas en formato de gráfico. Ojo en las líneas de comentario asociadas a esta parte del archivo, aparece la palabra "dailygraph" pero si lo configuras así no obtendrás los gráficos esperados. Debes utilizar "daily-graph" para que te funcione, es el nombre del archivo php que verás en la carpeta /var/www/ipfm/daily-graph.php).
(Por ejemplo, hay una línea en la que se establece el tipo de estadísticas, por defecto viene "daily", pues puedes utilizar "daily-graph" si quieres que te aparezcan las estadísticas en formato de gráfico. Ojo en las líneas de comentario asociadas a esta parte del archivo, aparece la palabra "dailygraph" pero si lo configuras así no obtendrás los gráficos esperados. Debes utilizar "daily-graph" para que te funcione, es el nombre del archivo php que verás en la carpeta /var/www/ipfm/daily-graph.php).
Ten en cuenta que cuando quieras que el módulo php te genere las estadísticas de tráfico, deberás generar algún log en /var/log/ipfm con el formato ipfm-global-año-mes-dia.log, donde año, mes y día serán variables del sistema. Un posible ejemplo de fragmento del archivo ipfm.conf podría ser:
# Indicamos la red a analizar
FILENAME "/var/log/ipfm/ipfm-global-%Y-%m-%d.log"
DUMP EVERY 30 minutes
CLEAR EVERY 1 day
SORT TOTAL
RESOLVE
CLEAR EVERY 1 day
SORT TOTAL
RESOLVE
Fíjate en el nombre del archivo con extensión log, ya que si no lo pones así el módulo php no lo reconocerá y no te sacará correctamente las estadísticas.
Después de darle algunas vueltas más a los archivos de configuración, sólo tendrás que acceder a tu servidor con una dirección del tipo www.miservidor.es/ipfm a través del navegador para poder ver algo como esto:
Por otra parte, accediendo a /var/log/ipfm podrás visualizar las carpetas creadas por ipfm en las que estarán todas las capturas realizadas a modo de logs.
Eso es todo, pruébalo y verás que seguro será de tu utilidad. Hasta la próxima.
Etiquetas:
ciclos formativos,
GNU/Linux,
ipfm,
monitorización,
Monitorización de Servidores,
redes,
script,
Scripts Linux,
tecnología
miércoles, 13 de febrero de 2013
Tweets desde consola de comandos Linux (twidge y TTYtter)
Twidge y TTYtter son dos alternativas muy útiles para enviar tweets desde la terminal de comandos.
En un post anterior os ofrecía una guía para poder enviar correos electrónicos desde la consola de comandos de GNU/Linux (Ubuntu). Concretamente a través del servidor ssmtp. En esta ocasión vamos a ver qué tenemos que hacer para poder enviar Tweets desde una Shell.
El objetivo del envío de estos Tweets es recopilar en un hastag mensajes de monitorización de los servidores que pudiera tener a su cargo un administrador de sistemas. Estos Tweets, al ser cortos y muy concretos en su información, pueden ofrecer una visión rápida del estado de los servidores o alertas que tengamos configuradas en ellos.
Manos a la obra. La primera herramienta que vamos a utilizar se denomina Twidge y para instalarla/configurarla haremos lo siguiente:
1) Actualiza tu sistema Ubuntu mediante un:
sudo apt-get update
2) Realiza la instalación de Twidge:
sudo apt-get install twidge
3) Una vez instalado, debemos proceder con la configuración básica de Twidge:
sudo twidge setup
Al lanzar este comando, se nos mostrará en pantalla una URL que deberemos copiar y pegar en nuestro navegador web. Seguidamente, el programa de configuración de Twidge queda a la espera de la introducción de un código numérico.
Este código numérico lo obtendremos siguiendo las indicaciones que se marcan en la URL indicada anteriormente. Una vez en la página correspondiente a dicha dirección, deberemos hacer un login con nuestro usuario y contraseña de Twitter para autorizar a Twidge el uso de dicha cuenta, de cara al envío de Tweets. Después de hacer login, se mostrará el código numérico que debemos ingresar en la línea de comandos, para finalizar correctamente la instalación de Twidge.
Ya estaríamos preparados para empezar a enviar Tweets a través de consola. Para ello utilizaríamos el siguiente formato:
twidge update 'Texto a enviar - máximo 140 caracteres'
twidge update 'Texto a enviar - máximo 140 caracteres'
Si necesitamos obtener algo más de información sobre las opciones de twidge podemos teclear:
man twidge
twidge lscommands
Por cierto, es muy recomendable que accedas a tu cuenta en Twitter y edites las preferencias de tu cuenta para modificar la seguridad de tus envíos y la forma en la que pueden seguir tus Tweets el resto de usuarios de Twitter, tú mismo.
Ahora ya solo quedaría generar Shell Scripts en GNU/Linux que sean capaces de recopilar información interesante para un administrador de sistemas y enviarla vía Twitter a tu cuenta para mantenerte informado al momento. Espero que en próximas entregas podamos ver el código fuente de algún script que haga algo relacionado.
En segundo lugar, analizaremos el uso alternativo de TTytter, ya que es posible que al intentar enviar los tweets con twidge en Ubuntu 12 os genere algún error 410 de usuario no autorizado. Este error se produce por una modificación que se realizó en la API de twitter y que dejó a twidge fuera de combate, si lo quieres ejecutar en un Ubuntu 12. Para resolver esto tendreis que seguir el siguiente enlace y realizar los pasos que os indica: Instalación y configuración de TTYtter para envío de tweets bajo terminal de comandos mediante TTYtter. Otros enlaces relacionados que pueden ser interesantes son estos: posible alternativa a twidge, TTYtter.
Yo he probado TTYtter desde consola de comandos y ha bastado con escribir esto en la terminal para recibir correctamente los tweets.
ttytter -status="Este es un mensaje de prueba desde TTYtter"
(Ojo, primero debes autorizar a TTYtter, pero esto lo podeis hacer desde el enlace que os he pasado más arriba.)
Yo he probado TTYtter desde consola de comandos y ha bastado con escribir esto en la terminal para recibir correctamente los tweets.
ttytter -status="Este es un mensaje de prueba desde TTYtter"
(Ojo, primero debes autorizar a TTYtter, pero esto lo podeis hacer desde el enlace que os he pasado más arriba.)
Suscribirse a:
Entradas (Atom)