Bloqueo de pantalla con X lanzada desde la consola


Donde trabajo los empleados, cuando salen a almorzar o están en una reunión, siempre bloquean sus equipos. Yo utilizaba slock[0] que cumplia con esa función: poner la pantalla en negro y esperar se ingrese nuestra contraeña.
Estaba muy contento con esa herramienta hasta que un amigo me contó de un “bug” que tenemos aquellos que lanzamos el entorno gráfico desde la consola: basta con volver a la TTY donde lanzamos la X, presionar Ctrl+Z y el startx o xinit se manda a segundo plano dejándonos una bonita tty esperando que se ingresen comandos. Él paso una solución[1] que, si bien es efectiva, no me gustaba que me devuelva la tty cuando mato el startx y ese método no me reconocía las tildes ni “ñ” de mi teclado. Y para colmo, slock solo funciona en la X.
Buscando encontré a vlock[2] que cumple con todo lo que espero. Me gusto el que muestre un lindo texto informando que la pantalla esta bloqueada (ver screenshots en el sitio) y registre los logins fallidos. Pero además tiene la funcionalidad de bloquear todas las sesiones e impedir nos desplacemos entre TTYs.
Para lanzarlo hay que estar en una TTY (no sirven las virtuales como las de X o screen) pero aquí es donde lo uso con ese supuesto “bug”: Voy a la TTY donde lancé el startx, con Ctrl+Z mando a segundo plano el startx y tipeo “vlock -a” impidiendo así que cualquiera pueda hacer uso de mi equipo. Luego salgo a almorzar, vuelvo, ingreso mi constraseña y con “fg” reclamo de nuevo el proceso que dejé en segundo plano.

0. http://tools.suckless.org/slock
1. https://gbe.ring0.de/crap/display_managers
2. http://cthulhu.c3d2.de/~toidinamai/vlock/vlock.html

Made it with charm and jed from a rxvt-unicode terminal.

Probando charm

Hola mundo

¿aceptará blockquote?

Saber IP por consola II

Más sencilla aún que la fórmula anterior

curl icanhazip.com

(La encontré en un blog y no recuerdo cuál…)

Saber IP por consola I

A veces me pasa que quiero conocer mi IP ya que mi ISP me la asigna de forma dinámica y no deseo entrar a algún sitio web y tampoco me sirve hacer un ifconfig porque utilizo un router (y me da la IP de mi equipo dentro de la subred).
Se podía hacer con la aplicación lynx pero el servidor que daba este servicio decidió bloquearla por la cantidad de peticiones que se le realizaba. Y encontré esta que es más sencilla y sin necesidad de instalar nada.
Como root creamos el archivo myip:

nano /usr/bin/myip

y pegamos (Ctrl+Shift+v) dentro de él el siguiente código:

#! /bin/bash
wget -q -O- http://www.whatismyip.com/automation/n09230945.asp
echo ""

Salimos y le damos permisos de ejecución con

chmod +x+x+x /usr/bin/myip

Buscar cadenas de texto (y remplazar) en GNU/Linux

Si bien no existe un comando directo en GNU/Linux para buscar cadenas, se puede hacer mediante la conjunción de tres comandos, poniendo en el intérprete de comandos la siguiente instrucción:

find "ruta" -type f | xargs grep "cadena a buscar"

Con find (y la opción usada) se buscan archivos en el directorio especificado (usar . para el directorio actual), el comando xargs combina cada elemento con el comando especificado y grep busca patrones en el archivo.

Tambień en varias ocasiones tendremos la necesidad de buscar una cadena de texto y suplirla por otra en n cantidad de archivos, para lograr esto de manera sencilla:

for arg in `find <ruta del directorio de los archivos> -type f`; do perl -pi -e 's/<texto a buscar>/<texto nuevo>/g' $arg; done;

un ejemplo:

for arg in `find /etc/apache2 -type f`; do perl -pi -e 's/90.0.0.20/192.168.1.60/g' $arg; done;

[Fuente: LinuxData y CómoCarajos.]

Conectarse a una red inalámbrica desde consola

Probablemente ya tenemos este paquete andando en nuestro sistema, lo verificamos/instalamos con:

# apt-get install wireless-tools

Antes de continuar debemos tener configurada nuestra tarjeta de red inalámbrica, ya hecho esto, procederemos a encenderla apretando el botón o switch en dado caso que no encienda, vamos a verificar que el módulo ah sido cargado correctamente, si el problema persiste, esto podría ayudar:

# ifconfig wlan0 up

Ahora necesitamos saber cuales conexiones están a nuestro alcanze, también necesitamos el nombre de las conexiones (essid) y otra información útil, para eso vamos a scanear las redes con:

# iwlist wlan0 scan

El resultado será algo como esto:

wlan0 Scan completed :
Cell 01 – Address: 00:19:E4:00:30:A9
ESSID:”Cozumel”
Mode:Master
Channel:1
Frequency:2.412 GHz (Channel 1)
Quality=70/100 Signal level=-42 dBm Noise level=-73 dBm
Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s
11 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
48 Mb/s; 54 Mb/s
Extra:tsf=00000150eb2a735d
Cell 02 – Address: 00:19:E4:00:30:E9
ESSID:”INFINITUM1459″
Mode:Master
Channel:2
Frequency:2.462 GHz (Channel 2)
Quality=55/100 Signal level=-57 dBm Noise level=-73 dBm
Encryption key:on
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 6 Mb/s; 9 Mb/s
11 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s; 36 Mb/s
48 Mb/s; 54 Mb/s
Extra:tsf=000000b3fb81ba48

Ya tenemos las opciones y detalles de cada red, escogeremos una y configuraremos para conectarnos:

# iwconfig wlan0 essid Cozumel
# iwconfig wlan0 key password_de_la_essid

Si hay dos essid con el mismo nombre, especifica el canal con iwconfig wlan0 channel [número]

Nota: Si la red a la que nos conectaremos está abierta, basta con establecer el nombre de la essid (primer comando).

Y como último paso:

# dhclient wlan0

Que nos tirará en la consola algo como esto:

Internet Systems Consortium DHCP Client V3.1.1
Copyright 2004-2008 Internet Systems Consortium.
All rights reserved.
For info, please visit http://www.isc.org/sw/dhcp/

wmaster0: unknown hardware address type 801
wmaster0: unknown hardware address type 801
Listening on LPF/wlan0/00:14:a5:e3:7a:9a
Sending on LPF/wlan0/00:14:a5:e3:7a:9a
Sending on Socket/fallback
DHCPDISCOVER on wlan0 to 255.255.255.255 port 67 interval 5
DHCPOFFER from 192.168.1.254
DHCPREQUEST on wlan0 to 255.255.255.255 port 67
DHCPACK from 192.168.1.254
bound to 192.168.1.78 — renewal in 32442 seconds.

Ya tenemos nuestra IP en la red, por consecuente ya podemos abrir nuestro navegador, conectar nuestro cliente irc y actualizar nuestro sistema.

Existen clientes gráficos que realizan todo este proceso, pero es bueno saber lo que estos hacen para que podamos surfear en internet :D

Extraido de: ¿Cómo Carajos?