martes, 29 de septiembre de 2015

phpmyadmin #1045 El servidor MySQL no autorizó su acceso

parte del sitio:  http://www.webestilo.com/foros/mensaje.phtml?foro=13&msg=44796

  1. Abri el archivo: config.inc.php. que se encuentra en /etc/phpmyadmin. Busque donde dice:  /* Uncomment the following to enable logging in to passwordless accounts,* after taking note of the associated security risks. */ $cfg['Servers'][$i]['AllowNoPassword'] = FALSE;
  2. Descomente
  3. Modifique  la siguiente:    $cfg['Servers'][$i]['AllowNoPassword'] = FALSE;
  4. cambielo por:   $cfg['Servers'][$i]['AllowNoPassword'] = TRUE;
  5. Listo ya pude ingresar al administrador. 
  6. Si desea usar su mysql con clave asigne una clave reinicie el servicio de mysql e intente ingresar con su usuario y clave.

M. Allen

Cómo recuperar la clave root en MySQL


http://ecapy.com/como-recuperar-la-clave-root-en-mysql-solucion-a-veces-pasa-d/

Paramos el servidor:
sudo service mysql stop
Arrancamos “mysqld_safe”:
sudo mysqld_safe --skip-grant-tables
Dejamos esa consola con “mysqld_safe” corriendo. Abramos otra consola y hagamos lo siguiente:
sudo mysql -u root
Una vez adentro de mysql tiramos los siguientes comandos:
use mysql;
update user set password=PASSWORD("NUEVACLAVE") where User='root';
flush privileges;
quit
Ahora que hemos vuelto a la consola de linux, paramos mysql:
sudo service mysql stop
El anterior comando va a terminar el proceso “mysqld_safe” que habíamos arrancado en la primer consola, por lo que podemos cerrarla.
Listo, arrancamos mysql normalmente y ya podemos usar la nueva clave.

martes, 15 de septiembre de 2015

Cómo obtener el tamaño de una base de datos en PostgreSql

 http://www.josealopezpastor.com/2012/10/tamano-de-una-base-de-datos-en.html

De repente tu aplicación empezó a funcionar, y la base de datos empieza a crecer.
Ahora bien, ¿cómo saber cuánto pesa tu base de datos en PostgreSql?. Bastante fácil, con la siguiente consulta.
SELECT pg_database.datname, pg_size_pretty(pg_database_size(pg_database.datname)) AS SIZE FROM pg_database;
De ésta forma, conseguimos los tamaños de nuestras bases y vemos algo como lo siguiente.
  datname  |  size
-----------+---------
 template1 | 4336 kB
 template0 | 4248 kB
 postgres  | 4336 kB
Si quisieras obtener el tamaño de alguna base en particular, será cuestión de agregarle la condición y preguntar por el nombre de la base buscada.

miércoles, 13 de mayo de 2015

Como recuperar contraseña postgres

Introducción
Puede que se nos <olvide> la contraseña de Super Usuario de PostgreSQL <postgres> y no seamos capaces de realizar ninguna operación sobre ella. Esto que parece un serio problema no será tanto si cumplimos los siguientes requisitos:
  • Tener acceso a la máquina que tiene instalado el servidor <por ssh, físico, etc ..>
  • Tener acceso con el usuario que ejecuta el servidor PostgreSQL <normalmente postgres>
Si tenemos estos requistos, será coser y cantar, sino, será un poco más complicado.

Asumiendo que los tenemos, y ya estamos conectados a la máquina que tiene el servidor con el usuario que la ejecuta, primero debemos editar el archivo de configuración <$PGDATA/pg_hba.conf> y permitir el acceso local sin contraseña, es decir, trust. Para ello, buscaremos la entrada -si la tenemos-
#"local" is for Unix domain socket connections only
local   all         all                               md5
Y la sustituiremos por
# "local" is for Unix domain socket connections only
local   all         all                               trust
Guardaremos y saldremos del editor. A continuación, deberemos llamar a postgres para que vuelva a leer los archivos de configuración, para ello utilizaremos el comando <pg_ctl> con la opción <reload>
$ pg_ctl reload
se ha enviado una señal al servidor
Ahora, nos conectaremos a postgres utilizando el comando <psql> y podremos cambiar la contraseña, utilizando la instrucción SQL <ALTER USER nombre WITH PASSWORD 'password';>
$ psql
psql (8.4.2)
Digite «help» para obtener ayuda.

postgres=# ALTER USER postgres WITH PASSWORD 'nueva_pass';
ALTER ROLE
postgres=# \q
Por último, sólo nos queda revertir el cambio en el archivo <$PGDATA/pg_hba.conf> y llamar a <pg_ctl> para que vuelva a leer la configuración.
$ vi /var/postgres/8.4/data/pg_hba.conf
    # "local" is for Unix domain socket connections only
    local   all         all                               md5

:wq
$ pg_ctl reload
se ha enviado una señal al servidor
$ psql
Contraseña:
psql (8.4.2)
Digite «help» para obtener ayuda.

postgres=# \q


fuente: http://sparcki.blogspot.com/2010/01/como-recuperar-contrasena-postgres.html

lunes, 4 de mayo de 2015

¿Como cambiar la contraseña del "Root" si la he perdido en GNU/Linux Canaima?

Fuente: http://www.somospolvo.com.ve/2014/03/como-cambiar-la-contrasena-del-root-en.html

Advertencia: el contenido de este articulo esta destinado a brindar el conocimiento tecnico para que el usuario pueda recuperar una contraseña que ha sido perdida, Somospolvo web no se hace responsable por el mal uso de esta informacion que esta siendo descrita de una forma neutral como la solucion a un problema que puede ser frecuente.

Iniciando como "Root" gracias al GRUB

Esto que se ve en la imagen, es el GRUB,
el gestor de arranque que usa Canaima
        El sistema operativo GNU/Linux Canaima usa como gestor de arranque algo llamado Grub o Burg; en primer lugar creo que el lector se estara preguntando ¿Que es un gestor de arranque?, la web wikipedia nos hace el favor de definirnoslo, dice que es un programa que "está diseñado exclusivamente para preparar todo lo que necesita el sistema operativo para funcionar". 
El caso es que, el gestor de arranque se ejecuta antes de que lo haga el sistema, y que, existe un truco que podemos aplicar para que el mismo ejecute la terminal en modo Root antes de que se ejecute el propio SO. Lo que haremos es basicamente, iniciar como Root, y desde la terminal cambiar la contraseña.
Procedimiento a realizar
  • Encedemos la computadora con Sistema Operativo Canaima de la cual queremos recuperar el control de Root.
  • Cuando en la pantalla vemos el GRUB, presionamos una de las teclas direccionales para que el sistema no cargue automaticamente la opcion por defecto; esto hara basicamente que la computadora se mantenga alli.
  • Tecleamos "Ctrl + E" y aparecera en pantalla un cuadro blanco con bordes suavizados.

  • Buscamos la linea que comienza diciendo "linux /vmlinuz" y buscamos en el final lo siguiente: "ro quiet", esto indica que el sistema se ejecutara con permisos de solo lectura, pero no de escritura. Cambiamos eso por "rw quiet" para que inicie con permisos de lecto-escritura y podamos guardar la nueva contraseña.
  • Agregamos el final de esa misma linea lo siguiente: "init=/bin/bash" (Sin comillas), eso es lo que le dira al sistema que ejecute la terminal, la cual, ya estara en modo Root.
  • Tecleamos "Ctrl + X" para cerrar ese cuadro blanco. Ya hemos realizado todas las modificaciones que requeriamos. Luego de eso, iniciamos el sistema seleccionando y presionando enter donde muestra en su nombre la version de Canaima que tenemos instalado [El que no dice al final entre parentesis: restaurar]
  • Se abrira la terminal, ya como "Root"; procedemos a escribir el comando "passwd" (Recuerde que la terminal es sensible al uso de mayusculas y minusculas, por ende, debemos escribirlo todo en minuscula, puesto que, a la minima variacion lanzara un error diciendo que ese comando no existe en el sistema)
  • Ahora, el sistema le pedira la contrase nueva que desea poner. Luego de eso, le pedira que vuelva a poner esa misma contraseña para corroborar que usted no se ha equivocado en alguna letra.
  • Una vez puesta la nueva contraseña, escribimos "Reboot" y la maquina se reiniciara; ya ha cambiado la clave del Root.

jueves, 12 de marzo de 2015

20 curiosidades geeks para terminales Linux

https://openwebinars.net/20-comandos-linux-imprescindibles-para-sysadmin/

Más de 20 curiosidades geeks para terminales GNU/Linux, entre las que se encuentran juegos, comandos, herramientas, huevos de pascua o animaciones ASCII.
Son muchos los administradores de sistemas, BOFHs (y usuarios en general) que utilizan a diario las terminales o consolas de servidores o sistemas GNU/Linux para trabajar, programar o realizar tareas varias.
En este artículo vamos a dar un repaso a 20 curiosidades geeks que se pueden realizar desde una terminal del sistema (en su mayoría, bastante inútiles y poco productivas), pero no por ello menos divertidas.

1. ASCII Portal

Probablemente conozcas Portal, el famoso juego de Valve, mod de Half life que tanto revolucionó el panorama de los puzzles de plataformas por allá el año 2007.
Lo que quizás no sabías es que hay una versión, realizada por Joe Larson, llamada ASCII Portal. En ella podrás jugar a una versión con carácteres ASCII desde una terminal Linux o Windows.
URL | ASCII Portal
Review | ASCIIPortal de Joe Larson

2. sl (Steam Locomotive)

El comando sl (Steam Locomotive) es un ingenioso comando dirigido a usuarios que acostumbran escribir mal y en lugar de escribir ls (listar archivos), escriben sl (¡sí! ¡condicionamiento operante!).
Además, podemos hacer un pequeño script, en el que reproduzcamos un sonido (Train.wav, por ejemplo) para hacer aún más real nuestra broma:
#!/bin/sh
/usr/bin/aplay -N -q ~/Train.wav &
sl
Así, al ejecutar el comando train, reproducirá también el sonido Train.wav, ubicado en la ruta del home de nuestro usuario.
Además, existen algunos parámetros especiales que harán algunas modificaciones, como por ejemplo sl -l, que muestra un tren más pequeñito o sl -a, en el cuál ha ocurrido un accidente y veremos algunas personas pidiendo ayuda por la ventanilla.
Install | sudo apt-get install sl

3. Star Wars ASCII Edition (vía telnet)

¿Te apetece ver el Episodio IV de Star Wars en edición especial ASCII? Nada más fácil. Sólo necesitarás conectarte vía telnet a la siguiente dirección:
telnet towel.blinkenlights.nl Debes saber también, que si eres capaz de conectar vía IPv6, la película tiene escenas extra y soporte a color.
EXTRA: Además, si conectas al puerto 666 (simplemente, añade un espacio y 666 al final de la línea de telnet) obtendrás una frase BOFH al azar.
URL | BlinkenLights

4. sudo Insults

Existe una característica desconocida, que es la de hacer agresivo al sudo (comando para ejecutar como otro usuario). Para ello, basta con editar el archivo /etc/sudoers, y al final de la linea Defaults añadir insults, de modo que quede algo como esto:
Defaults env_reset, insults Así, cuando nos equivoquemos en el password al intentar cambiar de usuario con sudo, el sistema nos mostrará unos bonitos insultos aleatorios.
URL | sudo insults

5. Grub Tune

La mayoría de los usuarios de Linux, utilizan Grub como gestor de arranque, que no es más que el cargador que aparece al arrancar el equipo para elegir sistema operativo.
Podemos activar una característica simpática del Grub llamada GRUB_TUNE, que hará sonar mediante el altavoz (PC Speaker) de nuestro PC, una pequeña melodía al arrancar, como el sonido de Super Mario o la Marcha Imperial de Star Wars.
echo "GRUB_INIT_TUNE=\"480 440 4 440 4 440 4 349 3 523 1 440 4 349 3 523 1 440 8 659 4 659 4 659 4 698 3 523 1 415 4 349 3 523 1 440 8\"" | sudo tee -a /etc/default/grub > /dev/null && sudo update-grub More tunes | tunes.h

6. ASCIIQuarium

¿Seguimos echando de menos las curiosidades de texto? Volvamos a ellas. Existe un programa llamado asciiquarium que nos mostrará el clásico salvapantallas del acuario... pero en versión ASCII. Con varias especies de peces, barcos, tiburones, un castillo y hasta el Monstruo del Lago Ness.
Se trata de una aplicación perl, por lo que necesitaremos tenerlo instalado, junto a algunas librerías como libcurses-perl o el módulo CPAN Term-Animation-2.6.
También existe otra aplicación llamada asciijump, que no es más que un simulador de esquí en ASCII.
URL | ASCIIQuarium
Install | sudo apt-get install asciijump

7. psDoom

Vale, de acuerdo. Esta aplicación no tiene nada que ver con las demás aplicaciones de terminales. Pero es tan buena, que no podía dejarla fuera de la lista. Se trata de psDoom, una variante del clásico ps de Linux (gestor de procesos) que te permite matar los diferentes procesos de Linux desde el clásico Doom.
Cada proceso es un enemigo, que muestra su PID en la parte superior (junto al nombre del comando) como si fuera un Shinigami de Death Note.
URL | psDoom
Review | Matando procesos con psDoom

8. Películas o series en ASCII

¿Nos quedamos con ganas de ver más películas (o series) en ASCII? Existe un reproductor llamado mplayer que puede ser utilizado junto a una librería bautizada (con un curioso sentido del humor) como libcaca0.
mplayer -vo caca video.avi Si tenemos los dos componentes citados instalados en nuestro sistema, podremos reproducir cualquier archivo de vídeo, resultando algo como lo siguiente:
Opening de un capítulo de la serie Doctor Who, con la TARDIS viajando por el vórtice.
Existe también un software llamado hasciicam, que permite hacer la misma operación, pero con una webcam y nosotros mismos.
URL | MPlayer
URL | libcaca

9. RSpec Nyan Cat

Todos hemos oído hablar a estas alturas del famoso meme Nyan cat. En caso contrario (cosa bastante increíble) ponte al día con el enlace anterior.
RSpec Nyan Cat Formatter es un sistema creado por Matt Sears que permite hacer uso de RSpec (relacionado con la ingeniería del software, más concretamente, con BDD) y modificarlo para que nos muestre el progreso de las pruebas al estilo de nuestro querido Nyan cat:
URL | Nyan Cat RSpec Formatter

10. Fortune

Otro gran veterano en nuestras terminales es el Fortune (las clásicas galletas de la fortuna, con un mensaje en su interior). Al instalarlo y ejecutarlo, nos va mostrando una frase al azar, de la amplia base de datos que posee (generalmente, ubicada en /usr/share/games/fortunes).
Con un apt-cache search ^fortune podrás echar un ojo a todas las extensiones de fortune que existen (la mayoría en inglés), e instalarlas en tu sistema.
Incluso nosotros mismos podemos crear archivos de fortune con nuestras propias citas, simplemente creando un archivo con citas (separadas por %) y organizandolas luego con strfile. Tienes más información en creating fortune files.
Install | sudo apt-get install fortune (o fortune-mod)

11. Juegos en red

Si en tu trabajo nunca ocurre nada y te pasas tardes y tardes aburrido delante de una terminal, ahora podrás ponerte de acuerdo con otros administradores y echar unas partidas a estos juegos multijugador vía terminal.
El primero de ellos es 0verkill, un juego de plataformas, con el cuál podrás establecer un servidor (ejecuta ./server para iniciarlo) y conectando a él con el cliente ./0verkill en el puerto 6666.
Si somos más conservadores, también podremos echarnos unas partidas al netris en red, el clásico tetris, también vía terminal. Basta con ejecutar un netris -w (que esperará una conexión) y un netris -c IP (que conectará al otro jugador que esté en espera).
URL | 0verkill
URL | Netris

12. Huevos de pascua

Existen muchísimos huevos de pascua (Easter Eggs) escondidos en comandos, programas y aplicaciones. Sin embargo, uno muy conocido es el de las vacas de Linux (o los poderes de super vaca).
Para ello, utilizaremos los gestores de paquetes apt-get y aptitude. Utilizando el primero con el parámetro moo veremos un pequeño guiño. Con aptitude ocurre algo muy similar, que se puede ir ampliando incluyendo uves como parámetros:
Clara referencia al clásico eslogan de Microsoft: «Where do you want to go today?».
Otro huevo de pascua, es la referencia a La guía del autopista galáctico de Douglas Adams, al abrir el editor vim y escribir :help 42.
Por último, una tercera curiosidad es la del calendario cal de Unix. Si escribimos cal 9 2012 nos mostrará el calendario del mes de septiembre del año 2012. Sin embargo, si lo hacemos del mismo mes pero del año 1752, nos mostrará este curioso e incompleto calendario:
La explicación es que el 2 de septiembre de 1752 fue cuando Gran Bretaña hizo los cambios respecto al calendario gregoriano (en el man de Solaris se dice que es una compensación de ajustes bisiestos).

13. Cowsay

Otro divertido e inútil comando es cowsay (la vaca dice), que podemos utilizar en nuestra terminal para hacer que una vaca diga un comentario. Incluso podemos redireccionarla (mediante pipes) para que la salida de un comando sea lo que dice la vaca.
Un claro y genuino cowinception (o vacorigen)
Además, en la ruta /usr/share/cowsay/cows/ se suelen guardar otros animales representables, como por ejemplo cowsay -f dragon (un dragón) o cowsay -f tux (el pingüino de Linux), entre muchos otros. Existe incluso un xcowsay (versión gráfica) y un Cowsay para Android.
Install | sudo apt-get install cowsay

14. Juegos de mazmorras (Rogue-like)

Los llamados juegos Rogue-like (juegos parecidos a Rogue), son una especie de juegos de rol, basados en mapas de mazmorras o mundos virtuales, en los que el personaje tiene que ir avanzando niveles, coleccionando objetos y realizando acciones.
Uno de los principales que mencionaré es DoomRL, un clon del clásico Doom, al estilo de este tipo de juegos. La última versión incluso incorpora gráficos y puede jugarse al estilo 2D.
Sin embargo, existen cantidad de juegos de este tipo. Por ejemplo, tenemos nethack, crawl (más sencillo), angband (basado en J.R. Tolkien), Dwarf Fortress o, saliendo por completo del género, dopewars, un simulador de peleas de mafias, también en terminal.
URL | Más juegos Roguelike en Briareoh

15. Oneko

Seguimos navegando por el pasado. Nuevamente, nos permitimos la licencia de saltarnos el género de terminal, abusando de la nostalgia. Hace mucho tiempo se pusieron de moda unos simpáticos personajes que correteaban por tu pantalla, persiguiendo el ratón o simplemente revoloteando a su antojo. Se llamaban Screenmates.
Uno de los más famosos era neko, un gatito que perseguía al ratón y se dormía con él si lo conseguía. Oneko es un port para Linux que lo trae a nuestra pantalla del pingüino.
URL | Web Neko
Install | sudo apt-get install oneko

16. Bombas fork

Un fork (bifurcación), en contexto de sistemas operativos es una especie de «clonación» de un proceso, en la cuál se copia a si mismo y se genera como proceso hijo, resultando dos procesos diferentes (padre e hijo).
Imaginemos ahora que cada proceso de esos hace un fork, y a su vez, cada uno de los resultantes hace otro fork, y así consecutivamente. Eso es lo que se llama una bomba fork, y puede realizarse escribiendo este simple comando:
:(){ :|:& };: Como se comprenderá, esta acción es infinita (salvo que el sistema marque un límite de forks a realizar), por lo que terminará colapsando el sistema y bloqueándolo por completo, nada más introducir ese comando. Existen bombas forks para muchos otros sistemas o dispositivos, como por ejemplo, Windows.
NOTA: Cuidado. Este comando es peligroso y puede (de hecho, probablemente lo haga) bloquear tu sistema.

17. BSDGames (Colección de juegos)

Los BSDGames son una colección de juegos clásicos y muy simples, incluidos en las distribuciones BSD. En este paquete se incluyen algunos muy interesantes:
  • adventure: Aventuras conversacionales basadas 100% en texto.
  • battlestar: Otra aventura conversacional.
  • gomoku: El clásico juego del 5 en raya.
  • hangman: El ahorcado. Versión stickman ASCII.
  • monop: Adaptación del tradicional Monopoly.
  • phantasia: Rol en tu terminal de texto.
  • robots: Todo un clásico (en gnome se incluye una versión)
  • snake: Una pequeña variación del clásico de la serpiente.
  • tetris-bsd: El clásico tetris.
  • hunt: Un pequeño juego multijugador.
Y si te gustan los clásicos, siempre puedes probar otros minijuegos sin relación a bsdgames, como por ejemplo, nettoe (3 en raya con soporte en red), pacman4console (el típico pacman), tint (otro clon de tetris) o bastet (el tetris cabrón), ninvaders (el space invaders) o matanza (similar al asteroids).
URL | BSDGames

18. CMatrix (Salvapantallas ASCII)

Seguramente recuerdas la terminal de Neo cuando empezaban a aparecer esas letras de colores verde cayendo en la terminal de texto. Existe una aplicación llamada cmatrix que nos permite visualizar este mismo efecto, como si fuera un salvapantallas para nuestra terminal.
Además, puedes especificar ciertos parámetros como cmatrix -b para utilizar negritas aleatorias o cmatrix -l que utiliza la tipografía original que se utilizaba en la película de Matrix (con carácteres orientales, por ejemplo).
URL | CMatrix

19. Toilet

Otra herramienta interesante de los creadores de la anteriormente mencionada librería libcaca, es el comando toilet (que viene a reemplazar el antiguo figlet) permitiendo generar textos ASCII con diferentes estilos y con la posibilidad de aplicar filtros predefinidos.
En la ruta /usr/share/figlet podrás encontrar los formatos de fuentes existentes en tu sistema y con el parámetro toilet --filter list podrás ver los filtros presentes que puedes aplicar a tus textos.
URL | Toilet

20. ASCIISector

Por último, tenemos ASCII Sector, un impresionante juego con gráficos ASCII, que nos traslada a un mundo de exploración, combate y comercio disperso por el gigantesco espacio. Puedes ir completando las diferentes misiones existentes, consiguiendo más dinero y actualizaciones para mejorar tu nave.
Además, en su propia página tiene un sistema de scripting para que los jugadores puedan crearse sus propias misiones para jugar contra otros jugadores.
URL | ASCIISector
¿Conoces algún comando o programa similar que no esté en la lista y merezca la pena reseñar? ¡Indícalo en los comentarios y cuéntanos de que se trata!
EXTRA: El artículo ha terminado en portada de menéame, y algunos usuarios nos van dejando ciertas curiosidades extra que no estaban en la lista. Voy añadiendo algunas:

Nyan telnet cat

Un simpático Nyan cat vía telnet, simplemente conectando a la siguiente máquina:
telnet miku.acm.uiuc.edu Curiosidad aportada por KernelPanic.

MUD multijugador en español

Otra curiosidad es la posibilidad de jugar a Reinos de leyendas, un juego de rol multijugador en español, conectando también vía telnet:
telnet rlmud.org 5001 Curiosidad aportada por eddard.

Otros

  • moon-buggy: El clásico de plataformas, en el que hay que ir saltando obstáculos, ahora en versión ASCII. Gracias a Rodd.
  • aalib: Librería de gráficos GFX ASCII. Puedes probar con el comando bb. Gracias a Tk421 y LordDeath.
  • figlet: Con figlet o banner podrás hacer textos ASCII, como en el mencionado toilet. Gracias a DamiaSoler.
  • tomenet: Otro juego multijugador de mazmorras basado en J.R.Tolkien, online y a tiempo real. Gracias a Poya.

10 comandos interesantes para Linux

http://www.emezeta.com/articulos/10-comandos-interesantes-para-linux

Recopilación de 10 comandos útiles e interesantes para nuestra distribución favorita de GNU/Linux y que quizás no conocías.
Los administradores de sistemas y usuarios avanzados siempre echan mano de su querida línea de comandos o terminal para realizar tareas de una forma más rápida y eficiente. Sin embargo, aún muchos son reacios a utilizarla porque creen que es algo demasiado complejo.
A continuación, vamos a dar un repaso a una serie de comandos destinados a ejecutarse desde una terminal (incluso remotamente, sin necesidad de disponer de una interfaz gráfica), realizando ciertas tareas en muy poco tiempo y apenas algo de esfuerzo. La mayoría de estos comandos son programas que se pueden instalar facilmente mediante apt-get install (o el gestor de paquetes de tu distribución).

1. Controlar el ancho de banda del sistema

Es posible que queramos monitorizar el consumo de la conexión a Internet por parte del equipo en el que estamos, conociendo así el ancho de banda consumido. Esto se puede realizar de forma muy sencilla mediante el comando bmon (Bandwidth Monitor).
Este comando nos mostrará un sencillo panel con las diferentes tarjetas de red del sistema y el consumo de Internet que están realizando (RX = recibido = descarga, TX = transmitido = subida):
Pulsando g también podemos ver una pequeña «pseudo-gráfica» que representa la evolución del ancho de banda utilizado conforme pasa el tiempo, o pulsando d una tabla de estadísticas más detalladas.
Si esto nos parece poco aproximado, podemos utilizar nethogs, un comando que nos informará del consumo de ancho de banda por proceso o aplicación, muy útil para saber que programa está enviando o recibiendo información:
Por último, si en lugar de monitorizar, lo que queremos es restringir el ancho de banda para limitar el uso de Internet por parte de un equipo en la red, podemos hacer uso de wondershaper, que nos permitirá limitar el ancho de banda:
sudo wondershaper eth0 1024 512 El ejemplo anterior limita la conexión a 1024kbps de bajada y 512kbps de subida.
Bonus: Si te interesa conocer algunos trucos para conseguir exprimir tu conexión a Internet al máximo, echa un vistazo al artículo Internet más rápido.

3. «Refuerzo negativo» para disléxicos

Con un simple apt-get install sl (o nuestro gestor de paquetes correspondiente) tendremos instalado este «refuerzo para disléxicos».
Steam Locomotive (sl) es un comando ideado para ser ejecutado cuando el usuario escribe mal el comando ls (listar ficheros), y mostrarnos un lento tren a modo de castigo para que no se vuelva a repetir otra vez.
Bonus: Si te interesan más curiosidades como esta (algunas completamente inútiles), puedes echar un ojo al artículo 20 curiosidades geeks para terminales Linux. ¡También cuento como ponerle sonido al tren para hacerlo más irritante!

4. Buscar archivos duplicados

Cuando tenemos gran cantidad de archivos almacenados en nuestros discos, otro problema clásico es el de tener archivos duplicados (imágenes, videos, mp3...). Este sencillo comando permite buscar y mostrarnos los archivos duplicados detectados en la ruta especificada:
También existe findimagedupes, que realiza una búsqueda de imágenes duplicadas de forma visual.
Bonus: Para Windows, la mejor alternativa a fdupes es DoubleKiller, mientras que para búsquedas visuales de imágenes duplicadas, la mejor opción es VisiPics. Puedes encontrar ambos en 12 programas gratuitos para eliminar ficheros duplicados.

5. Navegar desde una terminal de texto

Si estamos conectados desde una terminal de texto (sin interfaz gráfico) o de forma remota vía SSH (por ejemplo) nos puede interesar consultar alguna página o buscar determinado sitio web. Para ello podemos utilizar los navegadores de modo texto:

Lynx

Lynx es quizás mi preferido debido a su potencia y gran cantidad de parámetros personalizables. No sólo es un excelente navegador de modo texto, sino que además permite la utilización del parámetro --dump o --source para obtener texto o código HTML para su posterior procesamiento, por ejemplo:
eog `lynx --dump xkcd.com | egrep imgs.xkcd` La línea anterior, obtiene el texto de la web de XKCD y extrae con egrep la imagen de su última tira, la cuál la muestra con el visor de imágenes eog.

w3m

Por otro lado, también tenemos a nuestra disposición w3m, un navegador más sencillo, pero igualmente interesante que nos puede servir de alternativa a Lynx:

Elinks

Si ninguno de estos dos navegadores nos agrada, también podemos utilizar elinks, un navegador de texto un poco más sencillo, con menús desplegables que nos permiten seleccionar diferentes opciones de una forma más cómoda, sin recordar los atajos o teclas necesarias para realizar ciertas tareas:

6. Conversión de formatos de archivos multimedia

Una de las soluciones más completas para la conversión de formatos de audio o video es ffmpeg. Mediante este comando podemos realizar multitud de tareas como conversión de MP4 a XViD, MP3 a OGG, extraer sonido de un video a MP3, convertir un video en un GIF animado, o incluso capturar nuestra actividad en pantalla en video (screencast).
Eso sí, la sintaxis del programa da para 2 ó 3 artículos más (o varios tomos), por lo que comentaré sólo uno de sus posibles usos: convertir de .flv a .avi (XViD)
ffmpeg -i video.flv -c:v mpeg4 -vtag xvid video.avi Existen algunas interfaces gráficas para ffmpeg como WinFF o Avanti, si no quieres complicarte con parámetros y opciones.

7. Montar una cuenta SSH remota como carpeta local

Es posible montar la carpeta remota de una cuenta SSH como una carpeta local de nuestro sistema, permitiéndonos un acceso más rápido, fácil y cómodo. Para ello, basta con escribir:
sshfs user@www.dominio.com:/home/user /mnt/carpeta Donde user es el nombre del usuario de la cuenta SSH, www.dominio.com es la IP o dominio a conectar, /home/user la carpeta remota y /mnt/carpeta la carpeta local donde será montada.
Además, existe SSHFS Manager, un entorno gráfico para sshfs que nos permitirá hacer esto mismo desde un entorno Windows.
También puedes utilizar el comando scp (cp vía ssh) para realizar copias de archivos a través de SSH como te indico en el siguiente manual básico: 10 comandos para trabajar en GNU/Linux.

8. Realizar modificaciones en varios archivos

Imagina el siguiente escenario: 300 archivos con textos a modificar. ¿Cómo lo hacemos? ¿Abrimos y modificamos cada archivo uno por uno? ¿Creamos un script que recorra todos los archivos y vaya modificando los textos? No. Más fácil y rápido:
sed -i 's/paco/Francisco/g' *.txt Este pequeño ejemplo, reemplaza el texto «paco» por «Francisco» en todos los archivos con extensión txt. ¿Fácil y rápido, no?
En editores de texto basados en terminal hablo de sed, vim, mcedit y otros editores que pueden resultarte útiles y que permiten reemplazar texto utilizando expresiones regulares. Awk es otro magnífico lenguaje muy potente para manipulación de texto.

9. Desproteger archivos PDF

Es posible que más de una vez te hayas encontrado con archivos PDF que se encuentran protegidos y no permiten imprimir, editar o incluso copiar su contenido. Podemos utilizar qpdf para desproteger estos archivos y generar un nuevo archivo PDF sin protección:
qpdf --decrypt protected.pdf unprotected.pdf Obviamente, si el archivo PDF está protegido con un password, habrá que especificarlo con el parámetro --password, o utilizar algún comando como pdfcrack para intentar reventarlo.
Bonus: ¿Interesado en más operaciones similares? Echa un vistazo a 10 operaciones útiles con archivos PDF: Separar páginas, añadir marca de agua, rotar páginas, etc...

10. Descargar archivos directamente (con resume)

¿Que necesidad hay de abrir un navegador si sabemos exactamente la URL del archivo a descargar? Ninguna. Por eso lo mejor es utilizar el comando wget y descargarlo directamente.
Además, si utilizas el parámetro -c puedes activar el soporte para continuar descargas interrumpidas, y en el caso de haber descargado una parcialmente, no se elimina el archivo descargado, permitiendo continuar por donde iba, como se puede ver en la siguiente imagen:
Bonus: En Windows, existe una versión con interfaz llamada wackget, que hace las veces de gestor de descarga minimalista, y que puedes encontrar en el artículo 20 programas para hacer Windows más cómodo.

jueves, 26 de febrero de 2015

jueves, 19 de febrero de 2015

Resetear password de root en PostgreSQL

El archivo de configuración pg_hba.conf (hba: host-based authentication) mantiene la configuración de autenticación de los clientes por host al servidor postgresql. La ubicación del archivo puede depender del sistema operativo e inclusive de la versión de postgresql.
En un sistema ubuntu 9.04 y con la versión 8.4 de postgres se puede encontrar en:
/etc/postgresql/8.4/main/pg_hba.conf
Si no, es posible buscarlo con:
# locate pg_hba.conf
Cada registro del archivo tiene uno de los siguiente 7 formatos posibles:
local      database  user  auth-method  [auth-options]
host       database  user  CIDR-address  auth-method  [auth-options]
hostssl    database  user  CIDR-address  auth-method  [auth-options]
hostnossl  database  user  CIDR-address  auth-method  [auth-options]
host       database  user  IP-address  IP-mask  auth-method  [auth-options]
hostssl    database  user  IP-address  IP-mask  auth-method  [auth-options]
hostnossl  database  user  IP-address  IP-mask  auth-method  [auth-options]
Si quisiéramos cambiar la password de superusuario (“postgres” por default) por que nos la olvidamos, la posibilidad de solucionarlo es aprovechar la funcionalidad de este archivo de configuración y más precisamente del campo “auth-method”, seteando al mismo como método “trust” (en español, “método de confianza”), el cual da vía libre de autenticación a los clientes que matcheen con el registro.
Una posibilidad entonces para acceder a la base de datos by-passeando la autentificación es editar la regla que nos matchea y cambiar el método de “md5” a “trust”. Otra posibilidad es agregar una nueva regla, lo que quizás sea más seguro porque podemos definir muy precisamente la dirección ip del host, base de datos y usuario de libre acceso.
Por ejemplo podemos agregar la siguiente regla:
host template1 postgres 127.0.0.1 255.255.255.0 trust
Con la línea anterior, al iniciar una conexión a la base de datos template1, con usuario postgres y desde el host local, va a autorizar la misma sin necesidad de ingresar la password.
NOTA: al agregar la línea en el archivo hay que tener en cuenta que postgres matchea con el primer registro que se adecúe  a los datos de la conexión y no continua chequeando los siguientes líneas.
  • Reiniciamos el servicio.
# /etc/init.d/postgresql-8.4 restart
  • Ahora, ya recargada la configuración y libre el paso para conectarnos a la base de datos, conectamos y cambiamos la password.
 $ psql -U postgres -h 127.0.0.1 template1
#template1> ALTER USER postgres with password 'ElNuevoPassword';
#template1>
  • En este punto ya está reseteada la contraseña del usuario, pero queda por volver atrás los cambios para que vuelva a requerirla, para lo que entonces, si habíamos agregado una nueva línea en el pg_hba.conf habría que eliminarla (o comentarla con #) o si solo editamos el método de autenticación de “md5” a “trust” en alguna linea habría que volverlo a “md5”. Por último reiniciamos nuevamente.
# /etc/init.d/postgresql-8.4 restart.
Y si nos conectamos ahora nuevamente con psql debería pedirlos la password.
$ psql -U postgres -h 127.0.0.1 template1
Contraseña para usuario postgres:
#template1>
#template1> \q