ERICLINUX: Consola
Mostrando entradas con la etiqueta Consola. Mostrar todas las entradas
Mostrando entradas con la etiqueta Consola. Mostrar todas las entradas

10/2/10

Instalar Java Runtime Environment (JRE) en Ubuntu 9.10 (Karmic)

Karmic viene sin Java. Para instalarlo simplemente ingresamos el siguiente comando en nuestra preciada consola:

sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts

Aceptamos la licencia y listo!

Este es el output:

gise@pollux:~$ sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts
[sudo] password for gise:
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Se instalarán los siguientes paquetes extras:
gsfonts-x11 java-common odbcinst1debian1 sun-java6-bin unixodbc
Paquetes sugeridos:
equivs ttf-kochi-gothic ttf-sazanami-gothic ttf-kochi-mincho ttf-sazanami-mincho
ttf-arphic-uming libmyodbc odbc-postgresql libct1
Se instalarán los siguientes paquetes NUEVOS:
gsfonts-x11 java-common odbcinst1debian1 sun-java6-bin sun-java6-fonts sun-java6-jre
sun-java6-plugin unixodbc
0 actualizados, 8 se instalarán, 0 para eliminar y 2 no actualizados.
Necesito descargar 36,0MB de archivos.
Se utilizarán 103MB de espacio de disco adicional después de esta operación.
¿Desea continuar [S/n]? s
Des:1 http://ar.archive.ubuntu.com karmic/main java-common 0.30ubuntu5 [80,3kB]
Des:2 http://ar.archive.ubuntu.com karmic/multiverse sun-java6-jre 6-15-1 [6.421kB]
Des:3 http://ar.archive.ubuntu.com karmic/main odbcinst1debian1 2.2.11-16ubuntu1 [69,9kB]
Des:4 http://ar.archive.ubuntu.com karmic/main unixodbc 2.2.11-16ubuntu1 [308kB]
Des:5 http://ar.archive.ubuntu.com karmic/multiverse sun-java6-bin 6-15-1 [29,1MB]
Des:6 http://ar.archive.ubuntu.com karmic/main gsfonts-x11 0.21 [10,5kB]
Des:7 http://ar.archive.ubuntu.com karmic/multiverse sun-java6-fonts 6-15-1 [1.886B]
Des:8 http://ar.archive.ubuntu.com karmic/multiverse sun-java6-plugin 6-15-1 [1.818B]
Descargados 36,0MB en 4min 25s (136kB/s)
Preconfigurando paquetes ...
Seleccionando el paquete java-common previamente no seleccionado.
(Leyendo la base de datos ... 00%
143134 ficheros y directorios instalados actualmente.)
Desempaquetando java-common (de .../java-common_0.30ubuntu5_all.deb) ...
Seleccionando el paquete sun-java6-jre previamente no seleccionado.
Desempaquetando sun-java6-jre (de .../sun-java6-jre_6-15-1_all.deb) ...
Seleccionando el paquete odbcinst1debian1 previamente no seleccionado.
Desempaquetando odbcinst1debian1 (de .../odbcinst1debian1_2.2.11-16ubuntu1_i386.deb) ...
Seleccionando el paquete unixodbc previamente no seleccionado.
Desempaquetando unixodbc (de .../unixodbc_2.2.11-16ubuntu1_i386.deb) ...
Seleccionando el paquete sun-java6-bin previamente no seleccionado.
Desempaquetando sun-java6-bin (de .../sun-java6-bin_6-15-1_i386.deb) ...
sun-dlj-v1-1 license has already been accepted
Seleccionando el paquete gsfonts-x11 previamente no seleccionado.
Desempaquetando gsfonts-x11 (de .../gsfonts-x11_0.21_all.deb) ...
Seleccionando el paquete sun-java6-fonts previamente no seleccionado.
Desempaquetando sun-java6-fonts (de .../sun-java6-fonts_6-15-1_all.deb) ...
Seleccionando el paquete sun-java6-plugin previamente no seleccionado.
Desempaquetando sun-java6-plugin (de .../sun-java6-plugin_6-15-1_i386.deb) ...
Procesando disparadores para doc-base ...
Processing 2 added doc-base file(s)...
Registering documents with scrollkeeper...
Procesando disparadores para man-db ...
Procesando disparadores para shared-mime-info ...
Procesando disparadores para desktop-file-utils ...
Configurando java-common (0.30ubuntu5) ...

Configurando odbcinst1debian1 (2.2.11-16ubuntu1) ...

Configurando unixodbc (2.2.11-16ubuntu1) ...

Configurando gsfonts-x11 (0.21) ...

Configurando sun-java6-jre (6-15-1) ...

Configurando sun-java6-fonts (6-15-1) ...
No CIDSupplement specified for Dotum-Bold, defaulting to 0.
No CIDSupplement specified for ZenHei, defaulting to 0.
No CIDSupplement specified for Batang-Regular, defaulting to 0.
No CIDSupplement specified for Dotum-Regular, defaulting to 0.
No CIDSupplement specified for ZenHei-CNS, defaulting to 0.
No CIDSupplement specified for Batang-Bold, defaulting to 0.
Updating fontconfig cache for /usr/share/fonts/truetype/ttf-lucida

Configurando sun-java6-bin (6-15-1) ...
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/ControlPanel para proporcionar /usr/bin/ControlPanel (ControlPanel) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/java para proporcionar /usr/bin/java (java) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/java_vm para proporcionar /usr/bin/java_vm (java_vm) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/javaws para proporcionar /usr/bin/javaws (javaws) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/jcontrol para proporcionar /usr/bin/jcontrol (jcontrol) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/keytool para proporcionar /usr/bin/keytool (keytool) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/pack200 para proporcionar /usr/bin/pack200 (pack200) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/policytool para proporcionar /usr/bin/policytool (policytool) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/rmid para proporcionar /usr/bin/rmid (rmid) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/rmiregistry para proporcionar /usr/bin/rmiregistry (rmiregistry) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/unpack200 para proporcionar /usr/bin/unpack200 (unpack200) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/orbd para proporcionar /usr/bin/orbd (orbd) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/servertool para proporcionar /usr/bin/servertool (servertool) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/tnameserv para proporcionar /usr/bin/tnameserv (tnameserv) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/lib/jexec para proporcionar /usr/bin/jexec (jexec) en modo automático

Configurando sun-java6-plugin (6-15-1) ...

Procesando disparadores para libc-bin ...
ldconfig deferred processing now taking place
gise@pollux:~$

Si somos paranoicos, podemos comprobar la correcta instalacion del paquete con el siguiente comando:

gise@pollux:~$ java -version
java version "1.6.0_15"
Java(TM) SE Runtime Environment (build 1.6.0_15-b03)
Java HotSpot(TM) Client VM (build 14.1-b02, mixed mode, sharing)
gise@pollux:~$

Anteriormente, cuando no estaba instalado, obteniamos el siguiente output:

gise@pollux:~$ java -version
El programa «java» puede encontrarse en los siguientes paquetes:
* gcj-4.4-jre-headless
* openjdk-6-jre-headless
* cacao
* gij-4.3
* jamvm
* kaffe
Pruebe: sudo apt-get install
java: command not found
gise@pollux:~/$


Gracias y saludos!

Chris



Te puede interesar:

Karmic viene sin Java. Para instalarlo simplemente ingresamos el siguiente comando en nuestra preciada consola:

sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts

Aceptamos la licencia y listo!

Este es el output:

gise@pollux:~$ sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts
[sudo] password for gise:
Leyendo lista de paquetes... Hecho
Creando árbol de dependencias
Leyendo la información de estado... Hecho
Se instalarán los siguientes paquetes extras:
gsfonts-x11 java-common odbcinst1debian1 sun-java6-bin unixodbc
Paquetes sugeridos:
equivs ttf-kochi-gothic ttf-sazanami-gothic ttf-kochi-mincho ttf-sazanami-mincho
ttf-arphic-uming libmyodbc odbc-postgresql libct1
Se instalarán los siguientes paquetes NUEVOS:
gsfonts-x11 java-common odbcinst1debian1 sun-java6-bin sun-java6-fonts sun-java6-jre
sun-java6-plugin unixodbc
0 actualizados, 8 se instalarán, 0 para eliminar y 2 no actualizados.
Necesito descargar 36,0MB de archivos.
Se utilizarán 103MB de espacio de disco adicional después de esta operación.
¿Desea continuar [S/n]? s
Des:1 http://ar.archive.ubuntu.com karmic/main java-common 0.30ubuntu5 [80,3kB]
Des:2 http://ar.archive.ubuntu.com karmic/multiverse sun-java6-jre 6-15-1 [6.421kB]
Des:3 http://ar.archive.ubuntu.com karmic/main odbcinst1debian1 2.2.11-16ubuntu1 [69,9kB]
Des:4 http://ar.archive.ubuntu.com karmic/main unixodbc 2.2.11-16ubuntu1 [308kB]
Des:5 http://ar.archive.ubuntu.com karmic/multiverse sun-java6-bin 6-15-1 [29,1MB]
Des:6 http://ar.archive.ubuntu.com karmic/main gsfonts-x11 0.21 [10,5kB]
Des:7 http://ar.archive.ubuntu.com karmic/multiverse sun-java6-fonts 6-15-1 [1.886B]
Des:8 http://ar.archive.ubuntu.com karmic/multiverse sun-java6-plugin 6-15-1 [1.818B]
Descargados 36,0MB en 4min 25s (136kB/s)
Preconfigurando paquetes ...
Seleccionando el paquete java-common previamente no seleccionado.
(Leyendo la base de datos ... 00%
143134 ficheros y directorios instalados actualmente.)
Desempaquetando java-common (de .../java-common_0.30ubuntu5_all.deb) ...
Seleccionando el paquete sun-java6-jre previamente no seleccionado.
Desempaquetando sun-java6-jre (de .../sun-java6-jre_6-15-1_all.deb) ...
Seleccionando el paquete odbcinst1debian1 previamente no seleccionado.
Desempaquetando odbcinst1debian1 (de .../odbcinst1debian1_2.2.11-16ubuntu1_i386.deb) ...
Seleccionando el paquete unixodbc previamente no seleccionado.
Desempaquetando unixodbc (de .../unixodbc_2.2.11-16ubuntu1_i386.deb) ...
Seleccionando el paquete sun-java6-bin previamente no seleccionado.
Desempaquetando sun-java6-bin (de .../sun-java6-bin_6-15-1_i386.deb) ...
sun-dlj-v1-1 license has already been accepted
Seleccionando el paquete gsfonts-x11 previamente no seleccionado.
Desempaquetando gsfonts-x11 (de .../gsfonts-x11_0.21_all.deb) ...
Seleccionando el paquete sun-java6-fonts previamente no seleccionado.
Desempaquetando sun-java6-fonts (de .../sun-java6-fonts_6-15-1_all.deb) ...
Seleccionando el paquete sun-java6-plugin previamente no seleccionado.
Desempaquetando sun-java6-plugin (de .../sun-java6-plugin_6-15-1_i386.deb) ...
Procesando disparadores para doc-base ...
Processing 2 added doc-base file(s)...
Registering documents with scrollkeeper...
Procesando disparadores para man-db ...
Procesando disparadores para shared-mime-info ...
Procesando disparadores para desktop-file-utils ...
Configurando java-common (0.30ubuntu5) ...

Configurando odbcinst1debian1 (2.2.11-16ubuntu1) ...

Configurando unixodbc (2.2.11-16ubuntu1) ...

Configurando gsfonts-x11 (0.21) ...

Configurando sun-java6-jre (6-15-1) ...

Configurando sun-java6-fonts (6-15-1) ...
No CIDSupplement specified for Dotum-Bold, defaulting to 0.
No CIDSupplement specified for ZenHei, defaulting to 0.
No CIDSupplement specified for Batang-Regular, defaulting to 0.
No CIDSupplement specified for Dotum-Regular, defaulting to 0.
No CIDSupplement specified for ZenHei-CNS, defaulting to 0.
No CIDSupplement specified for Batang-Bold, defaulting to 0.
Updating fontconfig cache for /usr/share/fonts/truetype/ttf-lucida

Configurando sun-java6-bin (6-15-1) ...
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/ControlPanel para proporcionar /usr/bin/ControlPanel (ControlPanel) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/java para proporcionar /usr/bin/java (java) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/java_vm para proporcionar /usr/bin/java_vm (java_vm) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/javaws para proporcionar /usr/bin/javaws (javaws) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/jcontrol para proporcionar /usr/bin/jcontrol (jcontrol) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/keytool para proporcionar /usr/bin/keytool (keytool) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/pack200 para proporcionar /usr/bin/pack200 (pack200) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/policytool para proporcionar /usr/bin/policytool (policytool) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/rmid para proporcionar /usr/bin/rmid (rmid) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/rmiregistry para proporcionar /usr/bin/rmiregistry (rmiregistry) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/unpack200 para proporcionar /usr/bin/unpack200 (unpack200) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/orbd para proporcionar /usr/bin/orbd (orbd) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/servertool para proporcionar /usr/bin/servertool (servertool) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/bin/tnameserv para proporcionar /usr/bin/tnameserv (tnameserv) en modo automático
update-alternatives: usar /usr/lib/jvm/java-6-sun/jre/lib/jexec para proporcionar /usr/bin/jexec (jexec) en modo automático

Configurando sun-java6-plugin (6-15-1) ...

Procesando disparadores para libc-bin ...
ldconfig deferred processing now taking place
gise@pollux:~$

Si somos paranoicos, podemos comprobar la correcta instalacion del paquete con el siguiente comando:

gise@pollux:~$ java -version
java version "1.6.0_15"
Java(TM) SE Runtime Environment (build 1.6.0_15-b03)
Java HotSpot(TM) Client VM (build 14.1-b02, mixed mode, sharing)
gise@pollux:~$

Anteriormente, cuando no estaba instalado, obteniamos el siguiente output:

gise@pollux:~$ java -version
El programa «java» puede encontrarse en los siguientes paquetes:
* gcj-4.4-jre-headless
* openjdk-6-jre-headless
* cacao
* gij-4.3
* jamvm
* kaffe
Pruebe: sudo apt-get install
java: command not found
gise@pollux:~/$


Gracias y saludos!

Chris



Te puede interesar:

7/2/10

Ver la consola durante el inicio de Ubuntu

Por defecto, Ubuntu no nos muestra nada durante el arranque. Pero si por algún motivo necesitamos ver que pasa durante este proceso, debemos editar el siguiente archivo:

sudo gedit /etc/default/grub

Buscamos la siguiente linea:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Y borramos la palabra quiet, quedando asi:

GRUB_CMDLINE_LINUX_DEFAULT="splash"

Despues ejecutamos el siguiente comando:


sudo update-grub

Esperamos unos minutos y listo! No se asusten si tarda en aparecer algún mensaje. Les dejo lo que aparece luego de ejecutar update-grub:

gise@pollux:/etc/default$ sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.31-19-generic
Found initrd image: /boot/initrd.img-2.6.31-19-generic
Found linux image: /boot/vmlinuz-2.6.31-14-generic
Found initrd image: /boot/initrd.img-2.6.31-14-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sdb1
done
gise@pollux:/etc/default$

Saludos y gracias!

Chris

Nube de etiquetas:


Te puede interesar:

Por defecto, Ubuntu no nos muestra nada durante el arranque. Pero si por algún motivo necesitamos ver que pasa durante este proceso, debemos editar el siguiente archivo:

sudo gedit /etc/default/grub

Buscamos la siguiente linea:

GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"

Y borramos la palabra quiet, quedando asi:

GRUB_CMDLINE_LINUX_DEFAULT="splash"

Despues ejecutamos el siguiente comando:


sudo update-grub

Esperamos unos minutos y listo! No se asusten si tarda en aparecer algún mensaje. Les dejo lo que aparece luego de ejecutar update-grub:

gise@pollux:/etc/default$ sudo update-grub
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-2.6.31-19-generic
Found initrd image: /boot/initrd.img-2.6.31-19-generic
Found linux image: /boot/vmlinuz-2.6.31-14-generic
Found initrd image: /boot/initrd.img-2.6.31-14-generic
Found memtest86+ image: /boot/memtest86+.bin
Found Microsoft Windows XP Professional on /dev/sdb1
done
gise@pollux:/etc/default$

Saludos y gracias!

Chris

Nube de etiquetas:


Te puede interesar:

4/6/08

acceder a Google por comandos desde Firefox

Utilizar una secuencia de comandos para realizar busquedas de webs, hacer traducciones , buscar fotos,videos, callejeros, etc... y mucho mas es lo que nos ofrece goosh .Una página web en ajax que utiliza los servicios de búsqueda de Google pero ofreciéndolos con una interface similar a una shell de Unix.Lo interesante es que se puede integrar en los motores de busqueda de Firefox(Una vez dentro de la web de goosh, escribimos el comando "addengine" y ya tendremos el nuevo motor de busqueda en firefox).




Ahora accederemos a Google por comandos,por ejemplo :

translate es en "estoy leyendo el blog de ericlinux" Y nos devolvera el texto traducido de español a ingles

images "pinguinos" y nos devolvera fotos de pinguinos

video "futbol" nos devuelve videos de futbol

Las busquedas son mas rapidas al escribir el comando y lo que queremos directamente en firefox y comandos hay unos cuantos






Utilizar una secuencia de comandos para realizar busquedas de webs, hacer traducciones , buscar fotos,videos, callejeros, etc... y mucho mas es lo que nos ofrece goosh .Una página web en ajax que utiliza los servicios de búsqueda de Google pero ofreciéndolos con una interface similar a una shell de Unix.Lo interesante es que se puede integrar en los motores de busqueda de Firefox(Una vez dentro de la web de goosh, escribimos el comando "addengine" y ya tendremos el nuevo motor de busqueda en firefox).




Ahora accederemos a Google por comandos,por ejemplo :

translate es en "estoy leyendo el blog de ericlinux" Y nos devolvera el texto traducido de español a ingles

images "pinguinos" y nos devolvera fotos de pinguinos

video "futbol" nos devuelve videos de futbol

Las busquedas son mas rapidas al escribir el comando y lo que queremos directamente en firefox y comandos hay unos cuantos






27/5/08

controlar el audio desde la consola


alsamixer es un programa de mezclado de audio para la arquitectura de sonido de Linux ALSA.Se utiliza para configurar el sonido y ajustar los volumenes . Tiene una interface para usuarios basada en ncourses (modo texto) y no necesita del sistema X Window y soporta gran variedad de placas con dispositivos múltiples.Nos desplazamos a traves del tabulador y las flechas de direccion

Tecleamos en consola: alsamixer

Opción Descripción
-h, -help Ayuda: muestra las opciones disponibles.
-c Selecciona la placa de sonido a utilizar, si en el sistema existen más de una placa. Las placas se numeran desde 0 (por defecto).
-D Selecciona el mezclador para el control.
-g Cambia el uso de colores.
-s Minimiza la ventana del mezclador
-V Selecciona el modo de vista inicial, reproducción, captura o todos.


via wikipedia





alsamixer es un programa de mezclado de audio para la arquitectura de sonido de Linux ALSA.Se utiliza para configurar el sonido y ajustar los volumenes . Tiene una interface para usuarios basada en ncourses (modo texto) y no necesita del sistema X Window y soporta gran variedad de placas con dispositivos múltiples.Nos desplazamos a traves del tabulador y las flechas de direccion

Tecleamos en consola: alsamixer

Opción Descripción
-h, -help Ayuda: muestra las opciones disponibles.
-c Selecciona la placa de sonido a utilizar, si en el sistema existen más de una placa. Las placas se numeran desde 0 (por defecto).
-D Selecciona el mezclador para el control.
-g Cambia el uso de colores.
-s Minimiza la ventana del mezclador
-V Selecciona el modo de vista inicial, reproducción, captura o todos.


via wikipedia




17/5/08

Convertir videos Flash en carpeta tmp

Normalmente cuando queria convertir un video flash de Youtube (o todos sus clones) a .avi o .mpeg,tenia dos opciones:
- Utilizar algun web online que te pedia la URL ,lo convertia (eso si no daba error) y te daba la opcion de descargar el video ya en otro formato.
- O descargar el video y utilizar algun programa (WinFF ,etc...).

La tercera opcion es simplemente desde consola ,siempre que tengamos instalados ffmpeg y mencoder

# aptitude install ffmpeg mencoder

Ver integramente el video por internet (de principio a fin), para luego abrir consola e ir al directorio tmp:

cd /tmp

flash se queda en cache hasta que apagamos nuestra maquina, aqui esta todo los que hemos visto en las webs,solo hay que listarlo:

ls -l

Normalmente los videos de youtube tienen un nombre del tipo FlashEvjZU.flv (en mi caso)
Copiamos el video al Escritorio para trabajar mejor:

cp -v FlashEvjZU.flv /home/vuestro_usuario/Escritorio/nuevo_nombre_del_video.flv

Y convertimos a .avi:

ffmpeg -i FlashEvjZU.flv nuevo_nombre_del_video.avi

O convertimos a .mpeg:

ffmpeg -i FlashEvjZU.flv nuevo_nombre_del_video.mpeg

Si algun video no tiene soporte en ffmpeg probamos con mencoder:

mencoder FlashEvjZU.flv -ovc lavc -oac mp3lame -o nuevo_nombre_del_video.avi

Normalmente cuando queria convertir un video flash de Youtube (o todos sus clones) a .avi o .mpeg,tenia dos opciones:
- Utilizar algun web online que te pedia la URL ,lo convertia (eso si no daba error) y te daba la opcion de descargar el video ya en otro formato.
- O descargar el video y utilizar algun programa (WinFF ,etc...).

La tercera opcion es simplemente desde consola ,siempre que tengamos instalados ffmpeg y mencoder

# aptitude install ffmpeg mencoder

Ver integramente el video por internet (de principio a fin), para luego abrir consola e ir al directorio tmp:

cd /tmp

flash se queda en cache hasta que apagamos nuestra maquina, aqui esta todo los que hemos visto en las webs,solo hay que listarlo:

ls -l

Normalmente los videos de youtube tienen un nombre del tipo FlashEvjZU.flv (en mi caso)
Copiamos el video al Escritorio para trabajar mejor:

cp -v FlashEvjZU.flv /home/vuestro_usuario/Escritorio/nuevo_nombre_del_video.flv

Y convertimos a .avi:

ffmpeg -i FlashEvjZU.flv nuevo_nombre_del_video.avi

O convertimos a .mpeg:

ffmpeg -i FlashEvjZU.flv nuevo_nombre_del_video.mpeg

Si algun video no tiene soporte en ffmpeg probamos con mencoder:

mencoder FlashEvjZU.flv -ovc lavc -oac mp3lame -o nuevo_nombre_del_video.avi

25/3/08

Yaourt: Frontend para Pacman con más caraterísticas.

ERICLINUX

ArchLinux User-community Repository (AUR) o Repositorio del Usuario-comunidad de ArchLinux (RUA) es una comunidad impulsada para el repositorio de paquetes de los usuarios de Arch.
En el AUR se suben, se verifican y testean los paquetes por usuarios que pertenezcan a ella.

Votación:

Una de las actividades más fáciles para todos los usuarios de Arch es registrarse para luego navegar por la AUR y votar por sus paquetes favoritos utilizando la interfaz online. Todos los paquetes son elegibles para la adopción en el repositorio [commuity]. Cuanto mayor sea el numero de votos que tenga un paquete en AUR, mayor son sus posibilidades que ingrese en el repositorio de la comunidad.

Yaourt es una interfaz de línea de comandos que completa a pacman, posee muchas más funcionalidades (como el soporte a AUR) para instalar software sobre Archlinux.

Funciones:

* Búsqueda en el repositorio de pacman como en AUR.
* Salida coloreada de los resultados de búsqueda con indicación de software ya instalado.
* Instalación de paquetes desde los repositorios y desde AUR con un único mando.
* Modo interactivo de búsqueda (búsqueda y selección, tecleando el número de paquete).

* Opción: instalación de software desde los fuentes (abs) con srcpac.
* Eliminación de los paquetes inútiles:

* Actualización global de todos los paquetes de AUR.
* Totalmente compatible con pacman/pacman-drive/pacman-cage.
* Reutilización de las opciones de pacman (véase el pacman - help).
* Detección de los paquetes que han quedado huérfanos después de una actualización .
* Editor de fichero de configuración (véase pacdiffviewer-h).
* Búsqueda mejorada para encontrar de dónde proviene un archivo.


Todos las opciones de pacman son reconocidas, utiliza los mismos parámetros.


Búsqueda e instalación:

Yaourt [cadena]: búsqueda rápida + instalación.
Yaourt -S [paquete]: instala el paquete, lo compila desde AUR si es necesario.
Yaourt -Ss [cadena]: búsqueda en repositorios y en AUR (con aviso de los paquetes ya instalados)
Yaourt -Sb [paquete]: instala un paquetes por compilación desde fuentes (abs).
Yaourt -Sl [repositorio]: muestra los paquetes seleccionados de los repositorios (subrayar los ya instalados).
Yaourt -Qs [cadena]: Salida coloreada de los paquetes instalados y los repositorios de donde provienen.
Yaourt -Qo [nombre del programa] o [nombre de archivo]: muestra el paquete de donde proviene el programa o el archivo.

Actualización:
Yaourt -Syu: Actualización completa del sistema, repositorios y paquetes. (solo de repositorios)
Yaourt -Syu - aur: Actualización completa del sistema, incluso los paquetes provenientes de AUR.
Yaourt -Sybu - aur: Actualización completa del sistema por compilación (repositorios y AUR).
Yaourt -Su --devel: Actualización y renovación de paquetes de cvs/svn/mercurial/git.

Limpieza:
Yaourt -C: edición y fusión de .pacnew/.pacsave .
Yaourt -CC: eliminación de todos los .pacnew/.pacsave .
Yaourt -Qt: búsqueda de paquetes huérfanos.
Yaourt- Cd: búsqueda de repositorios obsoletos.

Otras opciones:
--export [directorio]: exportación de los paquetes compilados para gensync.
Yaourt -S - aur [paquete]: fuerzas la compilación desde AUR de paquetes que se encuentra también en los repositorios.
Yaourt -G [paquete]: retrive PKGBUILD and local sources in current directory.
Yaourt -B: copia de seguridad de la base de datos de pacman.

Instalación de yaourt:


Agregar las siguiente líneas al fichero /etc/pacman.conf .


[archlinuxfr]

Server = http://repo.archlinux.fr/i686

Luego:

pacman -Sy yaourt

Problema con pacman:

Luego de la instalación mi repositorios cambiaron y saltaba el siguiente mensaje de error cuando intentaba actualizar:

root / # pacman -Sy
error: el archivo de configuración /etc/pacman.d/core no se ha podido leer.
error: el archivo de configuración /etc/pacman.d/extra no se ha podido leer.
error: el archivo de configuración /etc/pacman.d/community no se ha podido leer.
:: Sincronizando las bases de datos de paquetes...
error: fallo al sincronizar core:
error: fallo al sincronizar extra:
error: fallo al sincronizar community:
kdemod 33,4K 124,7K/s 00:00:00 [#####################] 100%
archlinuxfr 14,9K 130,0K/s 00:00:00 [#####################] 100%
la base de datos local está actualizada
root / #

Como podemos observar los archivo de configuración de core-extra y community no se encontraban, para solucionarlo tienen que comentar sus repositorios oficiales de arch en /etc/pacman.conf y dejarlo de la siguiente manera:

[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[community]
Include = /etc/pacman.d/mirrorlist

Ahora lo actualizamos y podemos utilizar completamente yaourt.

root / # pacman -Sy
:: Sincronizando las bases de datos de paquetes...
core 23,6K 48,5K/s 00:00:00 [#####################] 100%
extra 311,4K 62,5K/s 00:00:05 [#####################] 100%
community 345,4K 65,6K/s 00:00:05 [#####################] 100%
kdemod está actualizado
archlinuxfr está actualizado
la base de datos local está actualizada

Gracias Braian por el dato.

Un Saludo, Eric.

ERICLINUX

ArchLinux User-community Repository (AUR) o Repositorio del Usuario-comunidad de ArchLinux (RUA) es una comunidad impulsada para el repositorio de paquetes de los usuarios de Arch.
En el AUR se suben, se verifican y testean los paquetes por usuarios que pertenezcan a ella.

Votación:

Una de las actividades más fáciles para todos los usuarios de Arch es registrarse para luego navegar por la AUR y votar por sus paquetes favoritos utilizando la interfaz online. Todos los paquetes son elegibles para la adopción en el repositorio [commuity]. Cuanto mayor sea el numero de votos que tenga un paquete en AUR, mayor son sus posibilidades que ingrese en el repositorio de la comunidad.

Yaourt es una interfaz de línea de comandos que completa a pacman, posee muchas más funcionalidades (como el soporte a AUR) para instalar software sobre Archlinux.

Funciones:

* Búsqueda en el repositorio de pacman como en AUR.
* Salida coloreada de los resultados de búsqueda con indicación de software ya instalado.
* Instalación de paquetes desde los repositorios y desde AUR con un único mando.
* Modo interactivo de búsqueda (búsqueda y selección, tecleando el número de paquete).

* Opción: instalación de software desde los fuentes (abs) con srcpac.
* Eliminación de los paquetes inútiles:

* Actualización global de todos los paquetes de AUR.
* Totalmente compatible con pacman/pacman-drive/pacman-cage.
* Reutilización de las opciones de pacman (véase el pacman - help).
* Detección de los paquetes que han quedado huérfanos después de una actualización .
* Editor de fichero de configuración (véase pacdiffviewer-h).
* Búsqueda mejorada para encontrar de dónde proviene un archivo.


Todos las opciones de pacman son reconocidas, utiliza los mismos parámetros.


Búsqueda e instalación:

Yaourt [cadena]: búsqueda rápida + instalación.
Yaourt -S [paquete]: instala el paquete, lo compila desde AUR si es necesario.
Yaourt -Ss [cadena]: búsqueda en repositorios y en AUR (con aviso de los paquetes ya instalados)
Yaourt -Sb [paquete]: instala un paquetes por compilación desde fuentes (abs).
Yaourt -Sl [repositorio]: muestra los paquetes seleccionados de los repositorios (subrayar los ya instalados).
Yaourt -Qs [cadena]: Salida coloreada de los paquetes instalados y los repositorios de donde provienen.
Yaourt -Qo [nombre del programa] o [nombre de archivo]: muestra el paquete de donde proviene el programa o el archivo.

Actualización:
Yaourt -Syu: Actualización completa del sistema, repositorios y paquetes. (solo de repositorios)
Yaourt -Syu - aur: Actualización completa del sistema, incluso los paquetes provenientes de AUR.
Yaourt -Sybu - aur: Actualización completa del sistema por compilación (repositorios y AUR).
Yaourt -Su --devel: Actualización y renovación de paquetes de cvs/svn/mercurial/git.

Limpieza:
Yaourt -C: edición y fusión de .pacnew/.pacsave .
Yaourt -CC: eliminación de todos los .pacnew/.pacsave .
Yaourt -Qt: búsqueda de paquetes huérfanos.
Yaourt- Cd: búsqueda de repositorios obsoletos.

Otras opciones:
--export [directorio]: exportación de los paquetes compilados para gensync.
Yaourt -S - aur [paquete]: fuerzas la compilación desde AUR de paquetes que se encuentra también en los repositorios.
Yaourt -G [paquete]: retrive PKGBUILD and local sources in current directory.
Yaourt -B: copia de seguridad de la base de datos de pacman.

Instalación de yaourt:


Agregar las siguiente líneas al fichero /etc/pacman.conf .


[archlinuxfr]

Server = http://repo.archlinux.fr/i686

Luego:

pacman -Sy yaourt

Problema con pacman:

Luego de la instalación mi repositorios cambiaron y saltaba el siguiente mensaje de error cuando intentaba actualizar:

root / # pacman -Sy
error: el archivo de configuración /etc/pacman.d/core no se ha podido leer.
error: el archivo de configuración /etc/pacman.d/extra no se ha podido leer.
error: el archivo de configuración /etc/pacman.d/community no se ha podido leer.
:: Sincronizando las bases de datos de paquetes...
error: fallo al sincronizar core:
error: fallo al sincronizar extra:
error: fallo al sincronizar community:
kdemod 33,4K 124,7K/s 00:00:00 [#####################] 100%
archlinuxfr 14,9K 130,0K/s 00:00:00 [#####################] 100%
la base de datos local está actualizada
root / #

Como podemos observar los archivo de configuración de core-extra y community no se encontraban, para solucionarlo tienen que comentar sus repositorios oficiales de arch en /etc/pacman.conf y dejarlo de la siguiente manera:

[core]
Include = /etc/pacman.d/mirrorlist
[extra]
Include = /etc/pacman.d/mirrorlist
[community]
Include = /etc/pacman.d/mirrorlist

Ahora lo actualizamos y podemos utilizar completamente yaourt.

root / # pacman -Sy
:: Sincronizando las bases de datos de paquetes...
core 23,6K 48,5K/s 00:00:00 [#####################] 100%
extra 311,4K 62,5K/s 00:00:05 [#####################] 100%
community 345,4K 65,6K/s 00:00:05 [#####################] 100%
kdemod está actualizado
archlinuxfr está actualizado
la base de datos local está actualizada

Gracias Braian por el dato.

Un Saludo, Eric.

24/3/08

Expresiones Regulares en la shell. Ejemplos de uso con grep, awk y sed.

ERICLINUX
Navegando por mi blogroll me encuentro con Braian que realiza un articulo muy interesante titulado "Expresiones Regulares en la shell. Ejemplos de uso con grep, awk y sed.".

Estaba intentando hacer un CGI muy sencillo usando bash (como lo que quería hacer era algo muy específico de bash, no he querido usar ni Perl, ni PHP). La única dificultad que he encontrado ha sido obtener las distintas variables que el método GET pasa al CGI a través de la variable $QUERY_STRING, que normalmente tiene este aspecto:

QUERY_STRING='parametro1=valor1&parametro2=valor2&parametro3=valor3'

Estaba yo ya comenzando a darle vueltas a una Expresión Regular para interpretar dicha salida cuando he decidido buscar en Google para ver si alguien tenía una solución más completa que la que yo ya tenía a medias. He llegado al artículo CGI Scripting Tips for Bash or SH que propone lo siguiente para extraer del QUERY_STRING la variable que nos interese:

PARAMETROX=`echo "$QUERY_STRING" | grep -oE "(^|[?&])parametrox=[^&]+" | sed "s/%20/ /g" | cut -f 2 -d "="`

Y es que con bash y sus compañeros sed, awk, cat, grep, etc. aún se puede hacer casi de todo, incluso un weblog o un servidor web. Como las Expresiones Regulares son tan excepcionalmente útiles como complicadas a la hora de usarlas, me he decidido a comentar algunos ejemplos, comenzando por el que me ha llevado a este artículo.

Y antes de seguir conviene comentar que la opción -o del grep del comando anterior indica que la salida del comando ha de contener únicamente la parte de texto que coincide con el patrón, no toda la línea. La opción -E indica que se va a usar una Expresión Regular Extendida (egrep es lo mismo que grep -E).

Pasemos a analizar la expresión regular… (^|[?&])parametrox=[^&]+ significa que buscamos algo que:

^|[?&] está a principio de línea ^ o | que comienza por un caracter ? o un &
parametrox= seguido por la secuencia de caracteres parametrox=
[^&]+ y que acaba con uno o más caracteres + que no sean &

Ejemplos de Expresiones Regulares

La página http://www.regular-expressions.info es un excelente sitio para aprender sobre expresiones regulares. Allí he encontrado algunos ejemplos que me han gustado Éstos son tres de ellos especialmente útiles:

Buscar una dirección de e-mail

\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b

\b[A-Z0-9._%-]+ Buscamos un comienzo de palabra \b que contenga uno o más caracteres + dentro del conjunto A a Z, 0 a 9,., _, % y -, que son los caracteres admitidos para un nombre de usuario
@ seguido del símbolo @
[A-Z0-9.-]+ seguido por uno o más + caracteres A a Z, 0 a 9,. y -, que son los caracteres admitidos para un dominio
\. seguido por un punto escapado con \, ya que el punto solo significa cualquier caracter
[A-Z]{2,4}\b seguido por entre 2 y 4 caracteres {2,4} entre el conjunto A-Z y además éste tiene que ser el final de una palabra \b

Por tanto, si usáramos esa expresión regular con egrep sobre un texto como este:

En un lugar de la Mancha, de cuyo nombre no quiero acordarme, pero a cuyo ayuntamiento podíamos enviar e-mails a la dirección ayuntamiento@lugardelamancha.es, no ha mucho tiempo que vivía un hidalgo de los de lanza en astillero, adarga antigua, rocín flaco y galgo corredor cuyo e-mail era don.quijote@del.toboso.edu.

obtendríamos:

$ egrep -oi '\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}' donqui.txt
ayuntamiento@lugardelamancha.es
don.quijote@del.toboso.edu

Buscar dos palabras cercanas en un párrafo

Si consideramos que dos palabras cercanas son aquellas que están separadas entre 1 y 8 palabras, esta expresión regular es perfecta:

\bpalabra1\W+(w+\W+){1,8}palabra2\b

\bpalabra1 Buscamos un comienzo de palabra con la sucesión de caracteres palabra1
\W+ seguido por uno o varios caracteres no alfanuméricos \W
(\w+\W+){1,8} seguido de entre 1 y 8 grupos {1,8} de uno o más caracteres alfanuméricos \w y uno o más caracteres no alfanuméricos \W
palabra2\b acabado un la sucesión de caracteres palabra2

Y podemos probar la expresión sobre el texto anterior:

$ egrep -o '\bhidalgo\W+(\w+\W+){1,8}lanza\b' donqui.txt
hidalgo de los de lanza

Por supuesto, puede ser que no sepamos si palabra1 va antes que palabra2, así que podemos especificar que una cosa o | la otra:

\b(palabra1\W+(\w+\W+){1,8}palabra2|palabra2\W+(\w+\W+){1,8}palabra1)\b

Buscar una dirección IP

\b[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\b

Creo que este ejemplo ya no necesita explicación, aunque tiene un defecto: la expresión encajaría también con 999.999.999.999. Para corregirlo, podríamos sustituir cada bloque [0-9]{1,3} por (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?) que significa que cada número puede ser del 250 al 255 25[0-5] o del 200 al 249 2[0-4][0-9] o del 0 al 199, contemplando la posibilidad de que por ejemplo un 7 se escriba 7, 07 o 007 [01]?[0-9][0-9]?. El símbolo ? indica uno o ninguno.

Podemos obtener fácilmente una lista de IPs que han visitado nuestro servidor web con el siguiente comando:

$ egrep -o '\b[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\b' access.log | sort -u

Ejemplos de uso de las Expresiones Regulares en la shell

En el uso diario de la shell, las expresiones regulares son nuestra navaja suiza. Ya hemos visto algunos ejemplos con grep, pero sigamos con algunos más de cosecha propia que usan grep, awk y sed.

Lista de usuarios con password a partir del /etc/shadow

Resulta que queremos saber los usuarios del fichero /etc/shadow que pueden logearse al sistema (que no tienen un caracter ! o * en el campo del password). La expresión regular a usar sería:

# egrep '^[^:]+:[^*!]+:' /etc/shadow
fulano:$1$PFC1F2pj$0KEflTjNmDQg9.rtFT/DK0:12793:0:99999:7:::
mengano:$1$aAUa4js/$c2LEh.HeT0JvCG3B.34O.:12793:0:99999:7:::

^[^:]+ Buscamos uno o más caracteres + que no sean : [^:] a principio de línea ^
: seguido de un caracter :
[^*!]+ seguido por una secuencia de uno o más caracteres que no sean ! o *
: seguido de otro caracter :

Podemos hacerlo un poco mejor, porque sólo nos interesa ver el nombre del usuario. Para ello podríamos hacer un cut -f 1 -d : sobre la salida anterior, pero usando el awk somos capaces de hacer lo anterior en un sólo comando:

# awk -F":" '$2~/[^!*]+/ { print $1 }' /etc/shadow
fulano
mengano

En el comando anterior le decimos a awk que, usando como separador de campos el caracter : (-F”:”) queremos que nos saque el primer campo { print $1 } siempre que el segundo campo cumpla la regla de que contenga uno o más caracteres que no sean ! o * $2~/[^!*]+/.

Extraer los referer del access.log

Si tenemos líneas como la siguiente (LogFormat combined) en el access.log de nuestro apache:

192.168.1.3 - - [12/Apr/2007:22:15:14 +0200] "GET /blog/ HTTP/1.1" 200 46503 "http://www.google.es/search?hl=es&q=vicente+navarro" "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.3) Gecko/20070310 Iceweasel/2.0.0.3 (Debian-2.0.0.3-1)"
192.168.1.3 - - [12/Apr/2007:22:24:07 +0200] "GET /blog/ HTTP/1.1" 200 46503 "http://www.google.es/search?q=super+coco&hl=es&start=10&sa=N" "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.3) Gecko/20070310 Iceweasel/2.0.0.3 (Debian-2.0.0.3-1)"

podemos obtener un listado de los referers que han traído a los visitantes a la página con el siguiente comando:

$ egrep -o '^[0-9.]+ - - \[.+\] \"[^"]+\" [0-9-]+ [0-9-]+ \"[^"]+\"' access.log | egrep -o '\"[^"-]+\"$' | egrep -o '[^"]+' | sort -u
...
http://www.google.es/search?hl=es&q=vicente+navarro
http://www.google.es/search?q=super+coco&hl=es&start=10&sa=N
...

Hay dos grep’s, porque estamos identificando y extrayendo todo el texto hasta llegar al referer para dejarlo al final y después extraerlo con el segundo grep. Pero aunque sirva para ilustrar la entrada, resulta que nos hemos complicado muchísimo la vida, porque el trozo del referer es el único que comienza con http://. Teniendo en cuenta esto, el comando, con una Expresión Regular mucho más simple, queda:

$ egrep -o 'http://[^"]+' access.log | sort -u

Y usando sólo awk:

awk '$0~/http/ { print $11 }' access.log | awk -F'"' '{ print $2 }' | sort -u

Pero ahora queremos saber a partir de los referers que hemos obtenido anteriormente, con qué parámetros de búsqueda y en qué posición aparece nuestra página en Google. Para ello, podríamos usar la Expresión Regular del principio para obtener los parámetros q= y start= de la URL de Google, pero hagámoslo con awk:

$ egrep -o 'http://[^"]+' big | sort -u | awk -F "[?&=]" '$1~/google.+search/ { TERMINOBUSQUEDA=""; POSICION="0"; for (i=2; i<=NF; i++) { if ($(i-1)~"(^|^as_)q$") { TERMINOBUSQUEDA=$i; } if ($(i-1)~"^start$") { POSICION=$i; } } print TERMINOBUSQUEDA " " POSICION; }' super+coco 10 vicente+navarro 0

Es decir, si la línea es una búsqueda de Google, el awk ha de hacer:

TERMINOBUSQUEDA="";
POSICION="0";
for (i=2; i<=NF; i++) { if ($(i-1)~"(^|^as_)q$") { TERMINOBUSQUEDA=$i;} if ($(i-1)~"^start$") { POSICION=$i; } } print TERMINOBUSQUEDA " " POSICION;

Expresiones Regulares de Perl (PCRE)

Las Expresiones Regulares de Perl (PCRE) son más potentes que las Expresiones Regulares POSIX. En algunas distribuciones, el grep -P nos permite usarlas, pero en Debian no es posible usar la opción -P de grep. En cambio, tenemos el pcregrep que sí que nos lo permite. Y una de las cosas más interesantes que se puede hacer con estas reglas es Lookahead y Lookbehind. Supongamos que queremos sacar de las URL de Google el valor del parámetro q= con un sólo comando, a diferencia de la expresión del principio que requería un cut adicional:

$ echo "http://www.google.es/search?q=super+coco&hl=es&start=10&sa=N" | pcregrep -o '(?<=[&?]q=)[^&?]+' super+coco

Usando PCRE, algo como (?<=delante)detras significa que para coincidir, la cadena tiene que ser delantedetras, pero delante no aparecerá en la cadena coincidente. ¡Muy útil! La pena es que este tipo de expresiones no se puede usar con cadenas de longitud variable:

$ pcregrep -o '(?<=\w+)prueba' fichero.txt pcregrep: Error in command-line regex at offset 7: lookbehind assertion is not fixed length

Ejemplos con sed y el /etc/passwd

sed es otra utilidad muy versátil. Su función más típica es la de sustitución, aunque también puede hacer cosas sencillas pero útiles como mostrar sólo un conjunto de líneas de un fichero o eliminarlas, insertar texto al final de una línea determinada o reemplazar el texto de esa línea..

La sintaxis típica de sed para reemplazos es:

sed -r 's/reemplazada/reemplazo/g'

El -r es paraque el sed use Expresiones Regulares Extendidas o POSIX y el g significa que la sustitución se hará todas las veces que se encuentre la Expresión Regular en la línea, no sólo la primera vez. Si nos viene mal usar el carácter / para no tener que escapar, por ejemplo, muchas barras de path, podríamos usar cualquier otro carácter: s_reemplazada_reemplazo_g.

Por ejemplo, si quisiéramos cambiar la shell por defecto a todos los usuarios que aparecen en /etc/passwd, podríamos hacer:

$ sed -r 's/[^:]+$/:\/bin\/bash/g' /etc/passwd
...
mail:x:8:8:mail:/var/mail::/bin/bash
news:x:9:9:news:/var/spool/news::/bin/bash
uucp:x:10:10:uucp:/var/spool/uucp::/bin/bash
...

Y si queremos añadir una cabecera de “usuario_” a todos los nombres de usuario del sistema, podemos usar el carácter & para usar la parte coincidente en la cadena de reemplazo:

$ sed -r 's/^[^:]+/usuario_&/g' /etc/passwd
...
usuario_mail:x:8:8:mail:/var/mail:/bin/sh
usuario_news:x:9:9:news:/var/spool/news:/bin/sh
usuario_uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
...

Y como lo que pongamos entre paréntesis () en la cadena reemplazada, el sed nos lo guarda para usar en la cadena de reemplazo en \1, \2,… \9, supongamos que queremos mover todo a un nuevo sistema de ficheros y queremos cambiar tanto el home del usuario como su shell:

$ sed -r 's/([^:]+):([^:]+)$/:\/newfs\1:\/newfs\2/g' /etc/passwd
...
mail:x:8:8:mail::/newfs/var/mail:/newfs/bin/sh
news:x:9:9:news::/newfs/var/spool/news:/newfs/bin/sh
uucp:x:10:10:uucp::/newfs/var/spool/uucp:/newfs/bin/sh
...

Gracias Braian por el dato.

Un Saludo, Eric.

Enlaces de interés:

ERICLINUX
Navegando por mi blogroll me encuentro con Braian que realiza un articulo muy interesante titulado "Expresiones Regulares en la shell. Ejemplos de uso con grep, awk y sed.".

Estaba intentando hacer un CGI muy sencillo usando bash (como lo que quería hacer era algo muy específico de bash, no he querido usar ni Perl, ni PHP). La única dificultad que he encontrado ha sido obtener las distintas variables que el método GET pasa al CGI a través de la variable $QUERY_STRING, que normalmente tiene este aspecto:

QUERY_STRING='parametro1=valor1&parametro2=valor2&parametro3=valor3'

Estaba yo ya comenzando a darle vueltas a una Expresión Regular para interpretar dicha salida cuando he decidido buscar en Google para ver si alguien tenía una solución más completa que la que yo ya tenía a medias. He llegado al artículo CGI Scripting Tips for Bash or SH que propone lo siguiente para extraer del QUERY_STRING la variable que nos interese:

PARAMETROX=`echo "$QUERY_STRING" | grep -oE "(^|[?&])parametrox=[^&]+" | sed "s/%20/ /g" | cut -f 2 -d "="`

Y es que con bash y sus compañeros sed, awk, cat, grep, etc. aún se puede hacer casi de todo, incluso un weblog o un servidor web. Como las Expresiones Regulares son tan excepcionalmente útiles como complicadas a la hora de usarlas, me he decidido a comentar algunos ejemplos, comenzando por el que me ha llevado a este artículo.

Y antes de seguir conviene comentar que la opción -o del grep del comando anterior indica que la salida del comando ha de contener únicamente la parte de texto que coincide con el patrón, no toda la línea. La opción -E indica que se va a usar una Expresión Regular Extendida (egrep es lo mismo que grep -E).

Pasemos a analizar la expresión regular… (^|[?&])parametrox=[^&]+ significa que buscamos algo que:

^|[?&] está a principio de línea ^ o | que comienza por un caracter ? o un &
parametrox= seguido por la secuencia de caracteres parametrox=
[^&]+ y que acaba con uno o más caracteres + que no sean &

Ejemplos de Expresiones Regulares

La página http://www.regular-expressions.info es un excelente sitio para aprender sobre expresiones regulares. Allí he encontrado algunos ejemplos que me han gustado Éstos son tres de ellos especialmente útiles:

Buscar una dirección de e-mail

\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}\b

\b[A-Z0-9._%-]+ Buscamos un comienzo de palabra \b que contenga uno o más caracteres + dentro del conjunto A a Z, 0 a 9,., _, % y -, que son los caracteres admitidos para un nombre de usuario
@ seguido del símbolo @
[A-Z0-9.-]+ seguido por uno o más + caracteres A a Z, 0 a 9,. y -, que son los caracteres admitidos para un dominio
\. seguido por un punto escapado con \, ya que el punto solo significa cualquier caracter
[A-Z]{2,4}\b seguido por entre 2 y 4 caracteres {2,4} entre el conjunto A-Z y además éste tiene que ser el final de una palabra \b

Por tanto, si usáramos esa expresión regular con egrep sobre un texto como este:

En un lugar de la Mancha, de cuyo nombre no quiero acordarme, pero a cuyo ayuntamiento podíamos enviar e-mails a la dirección ayuntamiento@lugardelamancha.es, no ha mucho tiempo que vivía un hidalgo de los de lanza en astillero, adarga antigua, rocín flaco y galgo corredor cuyo e-mail era don.quijote@del.toboso.edu.

obtendríamos:

$ egrep -oi '\b[A-Z0-9._%-]+@[A-Z0-9.-]+\.[A-Z]{2,4}' donqui.txt
ayuntamiento@lugardelamancha.es
don.quijote@del.toboso.edu

Buscar dos palabras cercanas en un párrafo

Si consideramos que dos palabras cercanas son aquellas que están separadas entre 1 y 8 palabras, esta expresión regular es perfecta:

\bpalabra1\W+(w+\W+){1,8}palabra2\b

\bpalabra1 Buscamos un comienzo de palabra con la sucesión de caracteres palabra1
\W+ seguido por uno o varios caracteres no alfanuméricos \W
(\w+\W+){1,8} seguido de entre 1 y 8 grupos {1,8} de uno o más caracteres alfanuméricos \w y uno o más caracteres no alfanuméricos \W
palabra2\b acabado un la sucesión de caracteres palabra2

Y podemos probar la expresión sobre el texto anterior:

$ egrep -o '\bhidalgo\W+(\w+\W+){1,8}lanza\b' donqui.txt
hidalgo de los de lanza

Por supuesto, puede ser que no sepamos si palabra1 va antes que palabra2, así que podemos especificar que una cosa o | la otra:

\b(palabra1\W+(\w+\W+){1,8}palabra2|palabra2\W+(\w+\W+){1,8}palabra1)\b

Buscar una dirección IP

\b[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\b

Creo que este ejemplo ya no necesita explicación, aunque tiene un defecto: la expresión encajaría también con 999.999.999.999. Para corregirlo, podríamos sustituir cada bloque [0-9]{1,3} por (25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?) que significa que cada número puede ser del 250 al 255 25[0-5] o del 200 al 249 2[0-4][0-9] o del 0 al 199, contemplando la posibilidad de que por ejemplo un 7 se escriba 7, 07 o 007 [01]?[0-9][0-9]?. El símbolo ? indica uno o ninguno.

Podemos obtener fácilmente una lista de IPs que han visitado nuestro servidor web con el siguiente comando:

$ egrep -o '\b[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\b' access.log | sort -u

Ejemplos de uso de las Expresiones Regulares en la shell

En el uso diario de la shell, las expresiones regulares son nuestra navaja suiza. Ya hemos visto algunos ejemplos con grep, pero sigamos con algunos más de cosecha propia que usan grep, awk y sed.

Lista de usuarios con password a partir del /etc/shadow

Resulta que queremos saber los usuarios del fichero /etc/shadow que pueden logearse al sistema (que no tienen un caracter ! o * en el campo del password). La expresión regular a usar sería:

# egrep '^[^:]+:[^*!]+:' /etc/shadow
fulano:$1$PFC1F2pj$0KEflTjNmDQg9.rtFT/DK0:12793:0:99999:7:::
mengano:$1$aAUa4js/$c2LEh.HeT0JvCG3B.34O.:12793:0:99999:7:::

^[^:]+ Buscamos uno o más caracteres + que no sean : [^:] a principio de línea ^
: seguido de un caracter :
[^*!]+ seguido por una secuencia de uno o más caracteres que no sean ! o *
: seguido de otro caracter :

Podemos hacerlo un poco mejor, porque sólo nos interesa ver el nombre del usuario. Para ello podríamos hacer un cut -f 1 -d : sobre la salida anterior, pero usando el awk somos capaces de hacer lo anterior en un sólo comando:

# awk -F":" '$2~/[^!*]+/ { print $1 }' /etc/shadow
fulano
mengano

En el comando anterior le decimos a awk que, usando como separador de campos el caracter : (-F”:”) queremos que nos saque el primer campo { print $1 } siempre que el segundo campo cumpla la regla de que contenga uno o más caracteres que no sean ! o * $2~/[^!*]+/.

Extraer los referer del access.log

Si tenemos líneas como la siguiente (LogFormat combined) en el access.log de nuestro apache:

192.168.1.3 - - [12/Apr/2007:22:15:14 +0200] "GET /blog/ HTTP/1.1" 200 46503 "http://www.google.es/search?hl=es&q=vicente+navarro" "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.3) Gecko/20070310 Iceweasel/2.0.0.3 (Debian-2.0.0.3-1)"
192.168.1.3 - - [12/Apr/2007:22:24:07 +0200] "GET /blog/ HTTP/1.1" 200 46503 "http://www.google.es/search?q=super+coco&hl=es&start=10&sa=N" "Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.8.1.3) Gecko/20070310 Iceweasel/2.0.0.3 (Debian-2.0.0.3-1)"

podemos obtener un listado de los referers que han traído a los visitantes a la página con el siguiente comando:

$ egrep -o '^[0-9.]+ - - \[.+\] \"[^"]+\" [0-9-]+ [0-9-]+ \"[^"]+\"' access.log | egrep -o '\"[^"-]+\"$' | egrep -o '[^"]+' | sort -u
...
http://www.google.es/search?hl=es&q=vicente+navarro
http://www.google.es/search?q=super+coco&hl=es&start=10&sa=N
...

Hay dos grep’s, porque estamos identificando y extrayendo todo el texto hasta llegar al referer para dejarlo al final y después extraerlo con el segundo grep. Pero aunque sirva para ilustrar la entrada, resulta que nos hemos complicado muchísimo la vida, porque el trozo del referer es el único que comienza con http://. Teniendo en cuenta esto, el comando, con una Expresión Regular mucho más simple, queda:

$ egrep -o 'http://[^"]+' access.log | sort -u

Y usando sólo awk:

awk '$0~/http/ { print $11 }' access.log | awk -F'"' '{ print $2 }' | sort -u

Pero ahora queremos saber a partir de los referers que hemos obtenido anteriormente, con qué parámetros de búsqueda y en qué posición aparece nuestra página en Google. Para ello, podríamos usar la Expresión Regular del principio para obtener los parámetros q= y start= de la URL de Google, pero hagámoslo con awk:

$ egrep -o 'http://[^"]+' big | sort -u | awk -F "[?&=]" '$1~/google.+search/ { TERMINOBUSQUEDA=""; POSICION="0"; for (i=2; i<=NF; i++) { if ($(i-1)~"(^|^as_)q$") { TERMINOBUSQUEDA=$i; } if ($(i-1)~"^start$") { POSICION=$i; } } print TERMINOBUSQUEDA " " POSICION; }' super+coco 10 vicente+navarro 0

Es decir, si la línea es una búsqueda de Google, el awk ha de hacer:

TERMINOBUSQUEDA="";
POSICION="0";
for (i=2; i<=NF; i++) { if ($(i-1)~"(^|^as_)q$") { TERMINOBUSQUEDA=$i;} if ($(i-1)~"^start$") { POSICION=$i; } } print TERMINOBUSQUEDA " " POSICION;

Expresiones Regulares de Perl (PCRE)

Las Expresiones Regulares de Perl (PCRE) son más potentes que las Expresiones Regulares POSIX. En algunas distribuciones, el grep -P nos permite usarlas, pero en Debian no es posible usar la opción -P de grep. En cambio, tenemos el pcregrep que sí que nos lo permite. Y una de las cosas más interesantes que se puede hacer con estas reglas es Lookahead y Lookbehind. Supongamos que queremos sacar de las URL de Google el valor del parámetro q= con un sólo comando, a diferencia de la expresión del principio que requería un cut adicional:

$ echo "http://www.google.es/search?q=super+coco&hl=es&start=10&sa=N" | pcregrep -o '(?<=[&?]q=)[^&?]+' super+coco

Usando PCRE, algo como (?<=delante)detras significa que para coincidir, la cadena tiene que ser delantedetras, pero delante no aparecerá en la cadena coincidente. ¡Muy útil! La pena es que este tipo de expresiones no se puede usar con cadenas de longitud variable:

$ pcregrep -o '(?<=\w+)prueba' fichero.txt pcregrep: Error in command-line regex at offset 7: lookbehind assertion is not fixed length

Ejemplos con sed y el /etc/passwd

sed es otra utilidad muy versátil. Su función más típica es la de sustitución, aunque también puede hacer cosas sencillas pero útiles como mostrar sólo un conjunto de líneas de un fichero o eliminarlas, insertar texto al final de una línea determinada o reemplazar el texto de esa línea..

La sintaxis típica de sed para reemplazos es:

sed -r 's/reemplazada/reemplazo/g'

El -r es paraque el sed use Expresiones Regulares Extendidas o POSIX y el g significa que la sustitución se hará todas las veces que se encuentre la Expresión Regular en la línea, no sólo la primera vez. Si nos viene mal usar el carácter / para no tener que escapar, por ejemplo, muchas barras de path, podríamos usar cualquier otro carácter: s_reemplazada_reemplazo_g.

Por ejemplo, si quisiéramos cambiar la shell por defecto a todos los usuarios que aparecen en /etc/passwd, podríamos hacer:

$ sed -r 's/[^:]+$/:\/bin\/bash/g' /etc/passwd
...
mail:x:8:8:mail:/var/mail::/bin/bash
news:x:9:9:news:/var/spool/news::/bin/bash
uucp:x:10:10:uucp:/var/spool/uucp::/bin/bash
...

Y si queremos añadir una cabecera de “usuario_” a todos los nombres de usuario del sistema, podemos usar el carácter & para usar la parte coincidente en la cadena de reemplazo:

$ sed -r 's/^[^:]+/usuario_&/g' /etc/passwd
...
usuario_mail:x:8:8:mail:/var/mail:/bin/sh
usuario_news:x:9:9:news:/var/spool/news:/bin/sh
usuario_uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
...

Y como lo que pongamos entre paréntesis () en la cadena reemplazada, el sed nos lo guarda para usar en la cadena de reemplazo en \1, \2,… \9, supongamos que queremos mover todo a un nuevo sistema de ficheros y queremos cambiar tanto el home del usuario como su shell:

$ sed -r 's/([^:]+):([^:]+)$/:\/newfs\1:\/newfs\2/g' /etc/passwd
...
mail:x:8:8:mail::/newfs/var/mail:/newfs/bin/sh
news:x:9:9:news::/newfs/var/spool/news:/newfs/bin/sh
uucp:x:10:10:uucp::/newfs/var/spool/uucp:/newfs/bin/sh
...

Gracias Braian por el dato.

Un Saludo, Eric.

Enlaces de interés:

21/3/08

Abrir terminal con una tecla

El metodo es asignarle al terminal una tecla mediante atajo de teclado:

Sistema > Preferencias > Combinaciones de teclas

Buscamos el apartado Desktop > Ejecutar en un terminal

Le asignamos una tecla,por ejemplo la de windows (super L ),y cerramos.

Podemos asignar teclas a lo usemos mas habitualmente.Tambien hay muchos atajos ya preestablecidos.


Via Howtogeek


Creative Commons License

El metodo es asignarle al terminal una tecla mediante atajo de teclado:

Sistema > Preferencias > Combinaciones de teclas

Buscamos el apartado Desktop > Ejecutar en un terminal

Le asignamos una tecla,por ejemplo la de windows (super L ),y cerramos.

Podemos asignar teclas a lo usemos mas habitualmente.Tambien hay muchos atajos ya preestablecidos.


Via Howtogeek


Creative Commons License

18/3/08

Restaurando Grub desde Windows

Uno de los problemas más frecuentes con los que se encuentran los usuarios de Linux es cuando instalan Windows en una partición aparte ya que el sistema operativo de Microsoft sobrescribe el grub (el gestor de arranque de GNU/Linux) sin ni siquiera dar opción a ejecutar GNU/Linux para arrancar.


Hasta ahora la solución era usar un LiveCD y restaurar el grub desde la consola de comandos, pero ahora con WinGrub podemos hacerlo fácil y rápidamente desde Windows ahorrandonos el engorro de usar un LiveCD.

FUENTE


Uno de los problemas más frecuentes con los que se encuentran los usuarios de Linux es cuando instalan Windows en una partición aparte ya que el sistema operativo de Microsoft sobrescribe el grub (el gestor de arranque de GNU/Linux) sin ni siquiera dar opción a ejecutar GNU/Linux para arrancar.


Hasta ahora la solución era usar un LiveCD y restaurar el grub desde la consola de comandos, pero ahora con WinGrub podemos hacerlo fácil y rápidamente desde Windows ahorrandonos el engorro de usar un LiveCD.

FUENTE


14/3/08

Usar Nautilus en modo Superusuario (Root)



Un tip facil y rapido: Para navegar en Nautilus (el navegador de archivos de Gnome) en modo Root, solo tenemos que escribir en la consola:

~$ sudo nautilus
Se nos abre una nueva ventana del navegador y desde la misma podremos manipular los archivos en modo Superusuario.

[renesis]



Un tip facil y rapido: Para navegar en Nautilus (el navegador de archivos de Gnome) en modo Root, solo tenemos que escribir en la consola:
~$ sudo nautilus
Se nos abre una nueva ventana del navegador y desde la misma podremos manipular los archivos en modo Superusuario.

[renesis]

6/3/08

IBM ofrece ordenadores Linux a las administraciones de Europa del Este y Central

La empresa de servicios informáticos IBM se ha unido con socios de Austria y Polonia para ofrecer computadoras personales sin productos de Microsoft en el mercado de Europa Oriental, anunció la compañía estadounidense el martes en un comunicado.

International Business Machines (IBM) informo su intención de ofrecer ordenadores operando bajo la distribución basada en Linux de Red Hat conjuntamente con la austríaca VDEL y con la empresa polaca de servicios y distribución LX Polska.

Rusia, donde muchas grandes empresas y organismos públicos están confeccionando por primera vez grandes sistemas informáticos, está convirtiéndose en un campo de batalla clave en la lucha entre Microsoft y aquellos que ofrecen alternativas de código abierto. La apuesta de IBM por combinar hardware y software basado en código abierto responde a una demanda creciente por patte de los directivos de tecnología de las empresas y administraciones.

IBM agregó que entre los altos cargos de organizaciones rusas que han solicitado computadoras con sistemas de código abierto están el Ministerio de Defensa, la aerolínea Aeroflot y el banco privado Alfa Bank.

Los ordenadores incorporan un pack de herramientas que compiten directamente con las aplicaciones de Microsoft, como IBM Lotus Symphony, basado en el formato Open Document.

El gigante informático dijo que los ordenadores serán fabricados por sus socios locales VDEL y LX Polska bajo la marca comercial de Open Referent. Desde hace unos años, IBM no fabrica ordenadores ya que vendió esa actividad a la china Lenovo.


FUENTE

La empresa de servicios informáticos IBM se ha unido con socios de Austria y Polonia para ofrecer computadoras personales sin productos de Microsoft en el mercado de Europa Oriental, anunció la compañía estadounidense el martes en un comunicado.

International Business Machines (IBM) informo su intención de ofrecer ordenadores operando bajo la distribución basada en Linux de Red Hat conjuntamente con la austríaca VDEL y con la empresa polaca de servicios y distribución LX Polska.

Rusia, donde muchas grandes empresas y organismos públicos están confeccionando por primera vez grandes sistemas informáticos, está convirtiéndose en un campo de batalla clave en la lucha entre Microsoft y aquellos que ofrecen alternativas de código abierto. La apuesta de IBM por combinar hardware y software basado en código abierto responde a una demanda creciente por patte de los directivos de tecnología de las empresas y administraciones.

IBM agregó que entre los altos cargos de organizaciones rusas que han solicitado computadoras con sistemas de código abierto están el Ministerio de Defensa, la aerolínea Aeroflot y el banco privado Alfa Bank.

Los ordenadores incorporan un pack de herramientas que compiten directamente con las aplicaciones de Microsoft, como IBM Lotus Symphony, basado en el formato Open Document.

El gigante informático dijo que los ordenadores serán fabricados por sus socios locales VDEL y LX Polska bajo la marca comercial de Open Referent. Desde hace unos años, IBM no fabrica ordenadores ya que vendió esa actividad a la china Lenovo.


FUENTE

4/3/08

Montar dispositivos en Linux.

ERICLINUX
Para aquellos que se inician en el mundo de Gnu/Linux sabrán que muchas veces se presentan complicaciones para montar dispositivos como pendrive.
Para montarlo debemos realizar los siguientes pasos.

Montar dispositivos en Linux.

1. Conectar nuestro dispositivo al ordenador (en mi caso es un pendrive).
2. Creamos una carpeta en /media sobre nuestro dipositivo, en mi caso pendrive.

# mkdir /media/pendrive

3. Abrimos un terminal y tipeamos:

# fdisk -l

De éste modo sabremos si se encuentra conectado.
En mi caso devuelve ésto:

Disco /dev/hda: 82.3 GB, 82348277760 bytes 255 cabezas, 63 sectores/pistas, 10011 cilindros Unidades = cilindros de 16065 * 512 = 8225280 bytes Disk identifier: 0x000f269a Disposit. Inicio Comienzo Fin Bloques Id Sistema /dev/hda1 * 1 9684 77786698+ 83 Linux /dev/hda2 9685 10011 2626627+ 5 Extendida /dev/hda5 9685 10011 2626596 82 Linux swap / Solaris Disco /dev/sda: 4127 MB, 4127195136 bytes 16 cabezas, 32 sectores/pistas, 15744 cilindros Unidades = cilindros de 512 * 512 = 262144 bytes Disk identifier: 0x00000000 Disposit. Inicio Comienzo Fin Bloques Id Sistema /dev/sda1 1 15744 4030448 c W95 FAT32 (LBA)

Como pueden observar al final de los resultados se encuentra el dispositivo /dev/sda1.
Ese es nuestro nuevo dispositivo (en mi caso el pendrive).

4. Muy bien, ahora debemos montarlo con el comando "mount".
Abrimos un terminal y tipeamos:

# mount /dev/sda1 /media/pendrive/

Luego nos dirigimos a esa carpeta y listo, nuestro dispositivo se encuentra disponible para transferir datos.

Cuando queramos retirarlo simplemente tipeamos:

# umount /media/pendrive/

Un Saludo, Eric.

Enlaces de interés:

ERICLINUX
Para aquellos que se inician en el mundo de Gnu/Linux sabrán que muchas veces se presentan complicaciones para montar dispositivos como pendrive.
Para montarlo debemos realizar los siguientes pasos.

Montar dispositivos en Linux.

1. Conectar nuestro dispositivo al ordenador (en mi caso es un pendrive).
2. Creamos una carpeta en /media sobre nuestro dipositivo, en mi caso pendrive.

# mkdir /media/pendrive

3. Abrimos un terminal y tipeamos:

# fdisk -l

De éste modo sabremos si se encuentra conectado.
En mi caso devuelve ésto:

Disco /dev/hda: 82.3 GB, 82348277760 bytes 255 cabezas, 63 sectores/pistas, 10011 cilindros Unidades = cilindros de 16065 * 512 = 8225280 bytes Disk identifier: 0x000f269a Disposit. Inicio Comienzo Fin Bloques Id Sistema /dev/hda1 * 1 9684 77786698+ 83 Linux /dev/hda2 9685 10011 2626627+ 5 Extendida /dev/hda5 9685 10011 2626596 82 Linux swap / Solaris Disco /dev/sda: 4127 MB, 4127195136 bytes 16 cabezas, 32 sectores/pistas, 15744 cilindros Unidades = cilindros de 512 * 512 = 262144 bytes Disk identifier: 0x00000000 Disposit. Inicio Comienzo Fin Bloques Id Sistema /dev/sda1 1 15744 4030448 c W95 FAT32 (LBA)

Como pueden observar al final de los resultados se encuentra el dispositivo /dev/sda1.
Ese es nuestro nuevo dispositivo (en mi caso el pendrive).

4. Muy bien, ahora debemos montarlo con el comando "mount".
Abrimos un terminal y tipeamos:

# mount /dev/sda1 /media/pendrive/

Luego nos dirigimos a esa carpeta y listo, nuestro dispositivo se encuentra disponible para transferir datos.

Cuando queramos retirarlo simplemente tipeamos:

# umount /media/pendrive/

Un Saludo, Eric.

Enlaces de interés:

3/3/08

Logran ejecutar Linux en consola Wii

A sólo un mes de anunciado el primer hack para la consola Wii ésta está preparada para ejecutar Linux. La situación podría convertirse en una pesadilla de piratería para Nintendo.

El agujero que hace posible el hack fue detectado a fines de enero y desde ese mismo momento expertos pronosticaron que dentro de poco tiempo sería posible ejecutar Linux en a consola de Nintendo. Sin embargo, nadie previó que tomaría tan poco tiempo.

El grupo de hackers que ha logrado ejecutar su propia distribución Linux en la consola de Nintendo precisa que el sistema operativo es ejecutado sin conectores, pero que funciona en la práctica. Como prueba de sus afirmaciones han publicado una versión de Linux en Internet para quienes deseen probarla.

Los intrusos celebran lo que califican de hito sin precedentes, en tanto que los piratas muestran gran entusiasmo. En efecto, la “solución" permite en principio ejecutar copias pirateadas de juegos en la consola.

Asimismo, ya no es necesario modificar la consola con los denominados modchips. En conclusión, Nintendo podría verse enfrentada próximamente a una verdadera pesadilla de piratería generalizada.

FUENTE

A sólo un mes de anunciado el primer hack para la consola Wii ésta está preparada para ejecutar Linux. La situación podría convertirse en una pesadilla de piratería para Nintendo.

El agujero que hace posible el hack fue detectado a fines de enero y desde ese mismo momento expertos pronosticaron que dentro de poco tiempo sería posible ejecutar Linux en a consola de Nintendo. Sin embargo, nadie previó que tomaría tan poco tiempo.

El grupo de hackers que ha logrado ejecutar su propia distribución Linux en la consola de Nintendo precisa que el sistema operativo es ejecutado sin conectores, pero que funciona en la práctica. Como prueba de sus afirmaciones han publicado una versión de Linux en Internet para quienes deseen probarla.

Los intrusos celebran lo que califican de hito sin precedentes, en tanto que los piratas muestran gran entusiasmo. En efecto, la “solución" permite en principio ejecutar copias pirateadas de juegos en la consola.

Asimismo, ya no es necesario modificar la consola con los denominados modchips. En conclusión, Nintendo podría verse enfrentada próximamente a una verdadera pesadilla de piratería generalizada.

FUENTE

1/3/08

Lo mejor de Febrero.

ERICLINUX

Aquí un listado de lo mejor del mes de Febrero.
Febrero 2008.


Disfruten del contenido.

Un Saludo, Eric.

Enlaces de interés:

ERICLINUX
Aquí un listado de lo mejor del mes de Febrero.
Febrero 2008.


Disfruten del contenido.

Un Saludo, Eric.

Enlaces de interés:

28/2/08

Comando Alias.

ERICLINUX
En ciertas ocasiones se suelen utilizar comandos que son difíciles de recordar o que son demasiado extensos, pero en LINUX existe la posibilidad de dar un nombre alternativo a un comando.

Sintaxis:

alias nom_alias=’comando’
Por ejemplo:
# alias dir='ls'
Cada vez que tipiemos dir en la consola será como un ls.

Vía | Linux Comandos.

Un Saludo, Eric.

Enlaces de interés:

ERICLINUX
En ciertas ocasiones se suelen utilizar comandos que son difíciles de recordar o que son demasiado extensos, pero en LINUX existe la posibilidad de dar un nombre alternativo a un comando.

Sintaxis:
alias nom_alias=’comando’
Por ejemplo:
# alias dir='ls'
Cada vez que tipiemos dir en la consola será como un ls.

Vía | Linux Comandos.

Un Saludo, Eric.

Enlaces de interés:

25/2/08

unp - Descomprimir archivos.


ERICLINUX
Anteriormente les mostré como descomprimir archivos .tar .gz .zip .rar etc.
Gracias al comentario de Perseus conosco la herramienta unp.

unp es un pequeño script escrito en Perl que permite descomprimir los tipos de archivo comprimido más populares (tar.gz, tar.bz2, rmp, deb, zip, rar…).

Se encuentra disponible en los repositorios de Ubuntu.
Para su instalación tipeamos:

# apt-get install unp

Su sintaxis es:
unp nombre_del_archivo.extensión

Por ejemplo:
$ unp Linux_Comandos.rar

Y listo... A descomprimir se a dicho.

Vía | Linux Comandos.

Un Saludo, Eric.

Enlaces de interés:


ERICLINUX
Anteriormente les mostré como descomprimir archivos .tar .gz .zip .rar etc.
Gracias al comentario de Perseus conosco la herramienta unp.

unp es un pequeño script escrito en Perl que permite descomprimir los tipos de archivo comprimido más populares (tar.gz, tar.bz2, rmp, deb, zip, rar…).

Se encuentra disponible en los repositorios de Ubuntu.
Para su instalación tipeamos:
# apt-get install unp

Su sintaxis es:
unp nombre_del_archivo.extensión

Por ejemplo:
$ unp Linux_Comandos.rar

Y listo... A descomprimir se a dicho.

Vía | Linux Comandos.

Un Saludo, Eric.

Enlaces de interés:

12/2/08

Msn en la consola.

tmsnc es un programa de chat basado en texto para GNU/Linux, que utiliza las redes de MSN Messenger. La interfaz está programada usando la librería ncurses, de modo que es fácil portarlo a otros sistemas operativos basados en Unix como GNU/Linux, BSD, Solaris y Mac OS X. Este software es de especial utilidad en entornos donde no se puede disponer de una interface gráfica o en equipos de reducidos recursos. Su licencia es de software libre (IR Public domain license) y su programador inicial es Jonas Broms.


Se encuentra disponible en los repositorios de Ubuntu.
Para instalarlo tipeamos:

# apt-get install tmsnc

Luego lo ejecutamos con:

$ tmsnc

Colocamos; Usuario, Contraseña, y listo.

Atentamente Eric.

ÚLTIMAS ENTRADAS

tmsnc es un programa de chat basado en texto para GNU/Linux, que utiliza las redes de MSN Messenger. La interfaz está programada usando la librería ncurses, de modo que es fácil portarlo a otros sistemas operativos basados en Unix como GNU/Linux, BSD, Solaris y Mac OS X. Este software es de especial utilidad en entornos donde no se puede disponer de una interface gráfica o en equipos de reducidos recursos. Su licencia es de software libre (IR Public domain license) y su programador inicial es Jonas Broms.


Se encuentra disponible en los repositorios de Ubuntu.
Para instalarlo tipeamos:

# apt-get install tmsnc

Luego lo ejecutamos con:

$ tmsnc

Colocamos; Usuario, Contraseña, y listo.

Atentamente Eric.

ÚLTIMAS ENTRADAS

Caracteres especiales de Linux.

Éstos son caracteres especiales que se utilizan en la Shell de Linux.

Caracteres Función
* ? [ ] El asterisco, el signo de pregunta y los corchetes, se utilizan para búsqueda de archivos con patterns
& Este se utiliza para correr un comando en background (segundo plano), lo que brinda la facilidad de liberar la terminal para otros usos
; Se utiliza para poner en una misma linea varios comandos
\ La barra invertida se utiliza para deshabilitar las funciones de otros caracteres especiales como * ? [ ] & ; > < |
'...' Permite que el texto encerrado en ella, se deshabiliten todos los caracteres especiales y el carácter de espacio
"..." Lo mismo que las comillas simples excepto que no deshabilita los caracteres $ y `
> Este carácter redirige la salida de un comando a un archivo, sobreescribiendo el contenido de este
< Este redirige la entrada de un comando desde un archivo
>> Los dos signos mayores redirigen la salida de un comando, igual que el signo menor solo, excepto que no sobreescriben el archivo.
| Este envía la salida de un comando a la entrada de otro comando
`...` Produce que el comando que esta escrito entre los acentos graves, sea el argumento de una linea de comando
$ El signo de peso, retorna los valores de los parámetros pasado al script, y también identifica las variables definidas por el usuario

Vía | Linux Comandos.

Atentamente Eric.

Enlaces de interés:

Éstos son caracteres especiales que se utilizan en la Shell de Linux.

Caracteres Función
* ? [ ] El asterisco, el signo de pregunta y los corchetes, se utilizan para búsqueda de archivos con patterns
& Este se utiliza para correr un comando en background (segundo plano), lo que brinda la facilidad de liberar la terminal para otros usos
; Se utiliza para poner en una misma linea varios comandos
\ La barra invertida se utiliza para deshabilitar las funciones de otros caracteres especiales como * ? [ ] & ; > < |
'...' Permite que el texto encerrado en ella, se deshabiliten todos los caracteres especiales y el carácter de espacio
"..." Lo mismo que las comillas simples excepto que no deshabilita los caracteres $ y `
> Este carácter redirige la salida de un comando a un archivo, sobreescribiendo el contenido de este
< Este redirige la entrada de un comando desde un archivo
>> Los dos signos mayores redirigen la salida de un comando, igual que el signo menor solo, excepto que no sobreescriben el archivo.
| Este envía la salida de un comando a la entrada de otro comando
`...` Produce que el comando que esta escrito entre los acentos graves, sea el argumento de una linea de comando
$ El signo de peso, retorna los valores de los parámetros pasado al script, y también identifica las variables definidas por el usuario

Vía | Linux Comandos.

Atentamente Eric.

Enlaces de interés:

11/2/08

Cambiar DNS en Linux.

Domain Name System (DNS) es una base de datos distribuida y jerárquica que almacena información asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar distintos tipos de información a cada nombre, los usos más comunes son la asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo electrónico de cada dominio.

Para cambiar las DNS, debemos abrir un terminal y editar el archivo resolv.conf:

# vim /etc/resolv.conf

El archivo contiene lo siguiente:

search local
nameserver

nameserver


Donde dice "nameserver" ahí debemos colocar las dns.
En otras palabras:

nameserver tu_dns_primaria
nameserver tu_dns_secundaria


Por ejemplo:

search local
nameserver 80.150.31.200
nameserver
80.150.31.150

Guardamos los cambios y listo.

Atentamente Eric.

Domain Name System (DNS) es una base de datos distribuida y jerárquica que almacena información asociada a nombres de dominio en redes como Internet. Aunque como base de datos el DNS es capaz de asociar distintos tipos de información a cada nombre, los usos más comunes son la asignación de nombres de dominio a direcciones IP y la localización de los servidores de correo electrónico de cada dominio.

Para cambiar las DNS, debemos abrir un terminal y editar el archivo resolv.conf:

# vim /etc/resolv.conf

El archivo contiene lo siguiente:

search local
nameserver

nameserver


Donde dice "nameserver" ahí debemos colocar las dns.
En otras palabras:

nameserver tu_dns_primaria
nameserver tu_dns_secundaria


Por ejemplo:

search local
nameserver 80.150.31.200
nameserver
80.150.31.150

Guardamos los cambios y listo.

Atentamente Eric.

7/2/08

Rcconf - Administrar Procesos.

Para aquellos que tienen distribuciones un tanto "Automáticas", sabrán que se ejecutan muchos procesos que son innecesarios.
En el caso de Ubuntu, podemos detener algunos yendo a Sistema»Administración»Servicios.

Destildamos los servicios que deseamos detener.

Existe otra alternativa más compleja y eficaz, se llama, Rcconf.
Se encuentra en los repositorios de Ubuntu, para instalarlo tipeamos:

# apt-get install rcconf
Y luego lo ejecutamos con:
# rcconf
Ahora solo destildamos los servicios que no queramos iniciar.

Para ver cuantos procesos corre tu sistema actualmente podemos instalar Gkrellm. En ese post hay más información al respecto.

Atentamente Eric.

Para aquellos que tienen distribuciones un tanto "Automáticas", sabrán que se ejecutan muchos procesos que son innecesarios.
En el caso de Ubuntu, podemos detener algunos yendo a Sistema»Administración»Servicios.

Destildamos los servicios que deseamos detener.

Existe otra alternativa más compleja y eficaz, se llama, Rcconf.
Se encuentra en los repositorios de Ubuntu, para instalarlo tipeamos:
# apt-get install rcconf
Y luego lo ejecutamos con:
# rcconf
Ahora solo destildamos los servicios que no queramos iniciar.

Para ver cuantos procesos corre tu sistema actualmente podemos instalar Gkrellm. En ese post hay más información al respecto.

Atentamente Eric.