Noticias Interesantes de Linux

lunes 30 de marzo de 2009

Ejecutar comandos complejos con sudo

Si usas sudo para ejecutar comandos como root, quizás te has topado con el mensaje "Permiso Denegado" , esto sucede cuando solo una parte de la linea esta ejecutándose con permisos de root.

Esta falla es debido a que el archivo solo puede ser escrito por el root:

$ echo 12000 > /proc/sys/vm/dirty_writeback_centisecs

Pero ejecutando esto también falla:

$ sudo echo 12000 > /proc/sys/vm/dirty_writeback_centisecs

La causa del error es que si bien el programa /bin/echo esta ejecutándose como root, el shell que esta redireccionando la salida del echo hacia el archivo solo del root esta todavía ejecutándose con tu usuario. Tu shell actual hace la redireccion después que el sudo inicia.

La solución es ejecutar toda linea completa bajo sudo. Hay un par de formas de hacerlo, una es esta:

echo "echo 12000 > /proc/sys/vm/dirty_writeback_centisecs" | sudo sh

De esta forma puedes escribir todo antes del carácter de tubería (|), luego presionas la flecha de arriba y añades "| sudo sh". Esta forma es mas segura para ver antes de ejecutar el comando.

Fuente.

Recuento de la semana del 23 al 29 de Marzo 2009

Estas fueron las noticias que circularon por la Red, en la semana que pasó.

  • Pandora, La nueva consola de juegos portátil OpenSource. - 23 Mar - Barrapunto
  • Ya esta la versión 1.6.0 de Battle for Wesnoth. - 23 Mar - LinuxJuegos
  • Linux sigue ganando presencia en servidores. - 23 Mar - LinuxParty
  • KDE Brainstorm, ideas para el entorno KDE. - 24 Mar - Genbeta
  • Publicada la version 2.6.29 del kernel de Linux. - 24 Mar - Barrapunto
  • Tint2, reemplazo ligero para Gnome. - 24 Mar - MundoGeek
  • Linux va ganando fuerza en la recesión. - 27 Mar - LinuxParty
  • Python 5 veces más rápido. - 27 Mar - MundoGeek
  • Buscar por contenido en paquetes de Ubuntu. - 29 Mar - DiarioLinux

viernes 27 de marzo de 2009

Herramienta forense disponible para Linux

Los usuarios de Linux que creyeron que habían borrado cualquier pista de su Esquema Ponzi, tengan cuidado, porque la compañía MacForensicLab ha movido su herramienta de escritorio forense a Linux. Diseñado para ayudar a la aplicación de la ley, E-Discovery y profesionales TI extraen rápidamente información sospechosa, la version 2.1 de MacLockPick ahora corre sobre Linux.

Anteriormente solo estaba disponible para Windows y Mac OS X, ahora MacLockPick 2.1 esta apuntando al mas astuto de los criminales, los usuarios de Linux (ojo: que el articulo original dice criminales, pero discrepo en que todos los usuarios de Linux seamos criminales).

MacLockPick esta diseñado para localizar y organizar rápidamente pistas potencialmente sospechosas sin molestar la escena del crimen. La aplicación se centra especialmente en cibercriminales, realizando un triaje forense en escena para localizar información en minutos antes de que el rastro del criminal se enfrie.

Ejecutándose desde una memoria USB, el programa detecta detalles del sistema y actividades, así como historial en linea, rápido escaneo a través de logs de chat, registros telefónicos, historial del navegador, contraseñas, cuentas, data de estado del sistema o cualquier tipo de archivo seleccionado. Las rutinas minimamentes invasivas dejan la data intacta y viable para una futura investigación y ayuda a mantener la viabilidad de la evidencia en la corte.

Diseñado con una arquitectura de complemento (plugin), MacLockPick ofrece rutinas comunes para programas como Skype, Firefox y hasta data del iPhone. La version 2.1 añade nuevo soporte de complemento diseñado para extraer informacion especifica del registro de Windows que antes no estaba disponible.

El costo de herramienta es de 500 o 400 dolares.

Fuente.

jueves 26 de marzo de 2009

Diferencia entre aptitude y apt-get

Quizás hayas notado que hay veces algunos sitios te piden que instales un paquete en Ubuntu usando el comando apt-get, otros quizás te piden que lo instales usando aptitude (por lo general es el que mas uso). En general ambos son lo mismo en que ambos usan los repositorios en el archivo /etc/apt/sources.list para tomar e instalar los paquetes.

Las siguientes demostraciones muestran las diferencias, al menos para Ubuntu 6.06 y anteriores. El ejemplo mostrado es el paquete kword, pero funciona igual para cualquier paquete que tenga dependencias.

Aptitude y apt-get instalaran kword y sus dependencias (kspread, kword-data, and libwv2-1c2), pero solo aptitude removerá las dependencias cuando kword sea removido y solo si ningún otro paquete necesita esas dependencias.

Nota: para que aptitude trabaje apropiadamente, primero debes hacer un update, luego un install. También no puedes instalar con apt-get o Synaptic y luego esperar tener dependencias removidas desinstalando con aptitude.

Si usas apt-get y quieres limpiar algunas dependencias no usadas, puedes instalar deborphan o la version gráfica gtkorphan. Naturalmente lo haras de esta forma:

sudo aptitude update
sudo aptitude install gtkorphan

Demostración Aptitude:

username@ubuntu:~$ sudo aptitude update && sudo aptitude install kword


Password:

Reading package lists... Done

Building dependency tree... Done


Reading extended state information

Initializing package states... Done

Building tag database... Done

Get:1 http://security.ubuntu.com dapper-security Release.gpg [189B]

Get:2 http://archive.ubuntu.com dapper Release.gpg [189B]

Get:3 http://archive.ubuntu.com dapper-updates Release.gpg [189B]

Get:4 http://security.ubuntu.com dapper-security Release [27.0kB]

Get:5 http://archive.ubuntu.com dapper-backports Release.gpg [189B]

Hit http://archive.ubuntu.com dapper Release

Get:6 http://archive.ubuntu.com dapper-updates Release [27.0kB]

Ign http://packages.freecontrib.org dapper Release.gpg

Ign http://packages.freecontrib.org dapper Release

Get:7 http://archive.ubuntu.com dapper-backports Release [19.6kB]

Ign http://packages.freecontrib.org dapper/free Packages

Get:8 http://security.ubuntu.com dapper-security/main Packages [14.4kB]

Hit http://archive.ubuntu.com dapper/main Packages

Get:9 http://archive.ubuntu.com dapper/restricted Packages [4571B]


Hit http://archive.ubuntu.com dapper/main Sources

Get:10 http://archive.ubuntu.com dapper/restricted Sources [1478B]

Hit http://archive.ubuntu.com dapper/universe Packages

Hit http://archive.ubuntu.com dapper/universe Sources

Get:11 http://archive.ubuntu.com dapper/multiverse Packages [95.2kB]

Ign http://packages.freecontrib.org dapper/non-free Packages

Get:12 http://security.ubuntu.com dapper-security/restricted Packages [14B]

Get:13 http://security.ubuntu.com dapper-security/main Sources [3593B]

Get:14 http://security.ubuntu.com dapper-security/restricted Sources [14B]

Get:15 http://security.ubuntu.com dapper-security/universe Packages [3762B]

Get:16 http://security.ubuntu.com dapper-security/universe Sources [14B]

Ign http://packages.freecontrib.org dapper/free Sources

Ign http://packages.freecontrib.org dapper/non-free Sources

Get:17 http://archive.ubuntu.com dapper/multiverse Sources [46.6kB]

Hit http://packages.freecontrib.org dapper/free Packages

Get:18 http://archive.ubuntu.com dapper-updates/main Packages [10.2kB]


Get:19 http://archive.ubuntu.com dapper-updates/restricted Packages [14B]

Get:20 http://archive.ubuntu.com dapper-updates/main Sources [9006B]

Get:21 http://archive.ubuntu.com dapper-updates/restricted Sources [14B]

Get:22 http://archive.ubuntu.com dapper-backports/main Packages [14B]

Get:23 http://archive.ubuntu.com dapper-backports/restricted Packages [14B]

Get:24 http://archive.ubuntu.com dapper-backports/universe Packages [14B]

Get:25 http://archive.ubuntu.com dapper-backports/multiverse Packages [14B]

Hit http://packages.freecontrib.org dapper/non-free Packages

Hit http://packages.freecontrib.org dapper/free Sources


Hit http://packages.freecontrib.org dapper/non-free Sources

Fetched 263kB in 2s (89.0kB/s)

Reading package lists... Done

Reading package lists... Done

Building dependency tree... Done

Reading extended state information

Initializing package states... Done

Building tag database... Done

The following NEW packages will be automatically installed:


kspread kword-data libwv2-1c2

The following NEW packages will be installed:

kspread kword kword-data libwv2-1c2

0 packages upgraded, 4 newly installed, 0 to remove and 0 not upgraded.

Need to get 6613kB of archives. After unpacking 18.9MB will be used.

Do you want to continue? [Y/n/?] y

Writing extended state information... Done

Get:1 http://archive.ubuntu.com dapper/main kspread 1:1.5.0-0ubuntu9 [2276kB]


Get:2 http://archive.ubuntu.com dapper/main libwv2-1c2 0.2.2-5 [225kB]

Get:3 http://archive.ubuntu.com dapper/main kword-data 1:1.5.0-0ubuntu9 [1590kB]

Get:4 http://archive.ubuntu.com dapper/main kword 1:1.5.0-0ubuntu9 [2522kB]

Fetched 6613kB in 45s (146kB/s)

Selecting previously deselected package kspread.

(Reading database ... 110852 files and directories currently installed.)

Unpacking kspread (from .../kspread_1%3a1.5.0-0ubuntu9_i386.deb) ...

Selecting previously deselected package libwv2-1c2.

Unpacking libwv2-1c2 (from .../libwv2-1c2_0.2.2-5_i386.deb) ...


Selecting previously deselected package kword-data.

Unpacking kword-data (from .../kword-data_1%3a1.5.0-0ubuntu9_all.deb) ...

Selecting previously deselected package kword.

Unpacking kword (from .../kword_1%3a1.5.0-0ubuntu9_i386.deb) ...

Setting up kspread (1.5.0-0ubuntu9) ...



Setting up libwv2-1c2 (0.2.2-5) ...


Setting up kword-data (1.5.0-0ubuntu9) ...


Setting up kword (1.5.0-0ubuntu9) ...



username@ubuntu:~$ sudo aptitude remove kword

Reading package lists... Done

Building dependency tree... Done

Reading extended state information

Initializing package states... Done

Building tag database... Done

The following packages are unused and will be REMOVED:

kspread kword-data libwv2-1c2


The following packages will be REMOVED:

kword

0 packages upgraded, 0 newly installed, 4 to remove and 0 not upgraded.

Need to get 0B of archives. After unpacking 18.9MB will be freed.

Do you want to continue? [Y/n/?] y

Writing extended state information... Done

(Reading database ... 111678 files and directories currently installed.)

Removing kword ...


Removing kspread ...

Removing kword-data ...

Removing libwv2-1c2 ...

username@ubuntu:~$


Demostracion Apt-get:
username@ubuntu:~$ sudo apt-get update && sudo apt-get install kword


Get:1 http://security.ubuntu.com dapper-security Release.gpg [189B]

Get:2 http://archive.ubuntu.com dapper Release.gpg [189B]

Get:3 http://archive.ubuntu.com dapper-updates Release.gpg [189B]

Get:4 http://archive.ubuntu.com dapper-backports Release.gpg [189B]

Hit http://security.ubuntu.com dapper-security Release

Hit http://archive.ubuntu.com dapper Release

Hit http://archive.ubuntu.com dapper-updates Release

Hit http://security.ubuntu.com dapper-security/main Packages

Hit http://archive.ubuntu.com dapper-backports Release


Hit http://archive.ubuntu.com dapper/main Packages

Hit http://archive.ubuntu.com dapper/restricted Packages

Hit http://archive.ubuntu.com dapper/main Sources

Ign http://packages.freecontrib.org dapper Release.gpg

Hit http://security.ubuntu.com dapper-security/restricted Packages

Hit http://security.ubuntu.com dapper-security/main Sources

Hit http://security.ubuntu.com dapper-security/restricted Sources

Hit http://archive.ubuntu.com dapper/restricted Sources

Hit http://archive.ubuntu.com dapper/universe Packages


Hit http://archive.ubuntu.com dapper/universe Sources

Hit http://archive.ubuntu.com dapper/multiverse Packages

Hit http://archive.ubuntu.com dapper/multiverse Sources

Ign http://packages.freecontrib.org dapper Release

Hit http://archive.ubuntu.com dapper-updates/main Packages

Hit http://archive.ubuntu.com dapper-updates/restricted Packages

Hit http://archive.ubuntu.com dapper-updates/main Sources

Hit http://archive.ubuntu.com dapper-updates/restricted Sources

Hit http://security.ubuntu.com dapper-security/universe Packages


Hit http://security.ubuntu.com dapper-security/universe Sources

Ign http://packages.freecontrib.org dapper/free Packages

Ign http://packages.freecontrib.org dapper/non-free Packages

Ign http://packages.freecontrib.org dapper/free Sources

Ign http://packages.freecontrib.org dapper/non-free Sources

Hit http://packages.freecontrib.org dapper/free Packages

Hit http://archive.ubuntu.com dapper-backports/main Packages

Hit http://packages.freecontrib.org dapper/non-free Packages

Hit http://packages.freecontrib.org dapper/free Sources


Hit http://archive.ubuntu.com dapper-backports/restricted Packages

Hit http://archive.ubuntu.com dapper-backports/universe Packages

Hit http://archive.ubuntu.com dapper-backports/multiverse Packages

Hit http://packages.freecontrib.org dapper/non-free Sources

Fetched 4B in 2s (2B/s)

Reading package lists... Done

Reading package lists... Done

Building dependency tree... Done

The following extra packages will be installed:


kspread kword-data libwv2-1c2

Suggested packages:

koffice-doc-html

The following NEW packages will be installed:

kspread kword kword-data libwv2-1c2

0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.

Need to get 0B/6613kB of archives.


After unpacking 18.9MB of additional disk space will be used.

Do you want to continue [Y/n]? y

Selecting previously deselected package kspread.

(Reading database ... 110852 files and directories currently installed.)

Unpacking kspread (from .../kspread_1%3a1.5.0-0ubuntu9_i386.deb) ...

Selecting previously deselected package libwv2-1c2.

Unpacking libwv2-1c2 (from .../libwv2-1c2_0.2.2-5_i386.deb) ...

Selecting previously deselected package kword-data.

Unpacking kword-data (from .../kword-data_1%3a1.5.0-0ubuntu9_all.deb) ...


Selecting previously deselected package kword.

Unpacking kword (from .../kword_1%3a1.5.0-0ubuntu9_i386.deb) ...

Setting up kspread (1.5.0-0ubuntu9) ...



Setting up libwv2-1c2 (0.2.2-5) ...


Setting up kword-data (1.5.0-0ubuntu9) ...


Setting up kword (1.5.0-0ubuntu9) ...


username@ubuntu:~$ sudo apt-get remove kword

Reading package lists... Done


Building dependency tree... Done

The following packages will be REMOVED:

kwordb>

0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.

Need to get 0B of archives.

After unpacking 7000kB disk space will be freed.

Do you want to continue [Y/n]? y

(Reading database ... 111678 files and directories currently installed.)


Removing kword ...

username@ubuntu:~$ div>



Nota:
Aparentemente desde la version 6.10 de Ubuntu se incluye la opcion autoremove en el comando apt-get, el cual permite remover las dependencias del paquete que estas eliminando.

Fuente: Psychocats

miércoles 25 de marzo de 2009

Video: Como crear enlaces simbolicos

Nuevamente la gente de LinuxJournal muestra un video de como usar un comando muy util en Linux, en este caso es el comando ln, que sirve para crear enlaces simbólicos de directorios.

Extraer paginas de un documento PDF

Usando las herramientas poppler y psutils, puedes extraer un rango de paginas de un archivo PDF. Por ejemplo, si deseas extraer las paginas del 11 al 14 del archivo documento. pdf, podrías usar el siguiente comando:

$ pdftops documento.pdf - | psselect -p11-14 | ps2pdf - file-p11-14.pdf


El comando pdftops convierte el archivo PDF a PostScript; el comando psselect selecciona las paginas relevantes desde el PostScript, y el comando ps2pdf convierte el PostScript seleccionado en un nuevo archivo PDF.

Fuente.

martes 24 de marzo de 2009

Recuperar archivos borrados con Scalpel

Scalpel es un escultor rápido de archivos que lee una base de datos de cabeceras y pies de paginas y extrae los archivos que coinciden desde un conjunto de archivos de imágenes o archivos de dispositivos. Scalpel es independiente del sistema de archivo y puede tallar archivos desde FAT, NTFS, ext2/3. Es muy útil para investigación forense digital y recuperación de archivos. Este pequeño articulo te mostrara como usar Scalpel para recuperar archivos borrados.

Antes que nada ten en cuenta que Scalpel no garantiza que la recuperación de archivos sea exitosa.

Instalando Scalpel

En Debian o Ubuntu puedes ejecutar:

sudo aptitude install scalpel


Usando Scalpel

Para saber como usar Scalpel ejecuta:

man scalpel


Antes de usar Scalpel, debes definir algunos tipos de archivos que Scalpel buscara en /etc/scalpel/scalpel.conf. Por defecto todos los tipos de archivos están comentados. En este ejemplo, se va a recuperar los archivos borrados tipo PDF, por eso se descomentan las siguientes lineas:

nano /etc/scalpel/scalpel.conf

[...]
pdf y 5000000 %PDF %EOF\x0d REVERSE
pdf y 5000000 %PDF %EOF\x0a REVERSE
[...]

Scalpel puede ser usado como sigue para tratar de recuperar los archivos:

scalpel /dev/sda1 -o salida

La opcion -o define el directorio donde Scalpel ubicara los archivos recuperados, en este caso el archivo se llamara "salida" y es un sub directorio del directorio donde estamos ejecutando Scalpel, el directorio no debe existir por que de otro modo Scalpel no empezara.

Si no sabes en que partición buscar, dale un revisada a la salida del comando:

mount

server1:~# mount
/dev/sda1 on / type ext3 (rw,errors=remount-ro)
tmpfs on /lib/init/rw type tmpfs (rw,nosuid,mode=0755)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
udev on /dev type tmpfs (rw,mode=0755)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=620)
nfsd on /proc/fs/nfsd type nfsd (rw)
server1:~#

Después que Scalpel a terminado, encontraras un directorio llamado "salida" dentro del directorio donde ejecutaste el comando:

ls -la

server1:~# ls -la
total 36
drwxr-xr-x 5 root root 4096 2009-03-12 17:53 .
drwxr-xr-x 21 root root 4096 2009-02-16 13:10 ..
drwx------ 2 root root 4096 2009-02-16 13:15 .aptitude
-rw------- 1 root root 377 2009-02-16 13:32 .bash_history
-rw-r--r-- 1 root root 412 2004-12-15 23:53 .bashrc
drwxr-xr-x 2 root root 4096 2009-02-16 13:17 .debtags
drwxr-xr-- 3 root root 4096 2009-03-12 17:53 salida
-rw-r--r-- 1 root root 140 2007-11-19 18:57 .profile
-rw------- 1 root root 3480 2009-03-12 17:06 .viminfo
server1:~#

ls -l salida

server1:~# ls -l salida
total 8
-rw-r--r-- 1 root root 386 2009-03-12 19:10 audit.txt
drwxr-xr-x 2 root root 4096 2009-03-12 19:10 pdf-0-0
server1:~#

El archivo audit.txt contiene un resumen de lo que Scalpel ha hecho:

cat salida/audit.txt

server1:~# cat salida/audit.txt

Scalpel version 1.60 audit file
Started at Thu Mar 12 19:01:50 2009
Command line:
scalpel /dev/sda1 -o salida

Output directory: /root/salida
Configuration file: /etc/scalpel/scalpel.conf

Opening target "/dev/sda1"

The following files were carved:
File Start Chop Length Extracted From
00000000.pdf 5712642048 NO 437138 sda1


Completed at Thu Mar 12 19:10:33 2009
server1:~#

Y el subdirectorio pdf-0-0/ contiene los archivos pdf que Scalpel ha recuperado:

ls -l salida/pdf-0-0/

server1:~# ls -l salida/pdf-0-0/
total 432
-rw-r--r-- 1 root root 437138 2009-03-12 19:10 00000000.pdf
server1:~#

Antes de ejecutar Scalpel la siguiente vez en el mismo directorio, deberás borrar o renombrar el directorio actual "salida", por que Scalpel no iniciara si ese directorio ya existe o especifica otro nombre para el directorio.

Fuente.

lunes 23 de marzo de 2009

Recuento de la semana del 16 al 22 de Marzo 2009

Estas fueron algunas noticias que estuvieron circulando la semana del 16 al 22 de Marzo del 2009, referente a Linux y algo mas.

  • 15 Repositorios que pueden ser útil para Ubuntu - 16 Mar - MundoGeek
  • Comparativa de aplicaciones libres para universidades - 16 Mar - DiarioLinux
  • Como instalar Google Chrome en Ubuntu - 17 Mar - ALT1040
  • Estos serán los nuevos temas para Ubuntu 9.04 -17 Mar - MundoGeek
  • Ya se liberó Gnome 2.26 - 19 Mar - Genbeta
  • Buen artículo de como crear paginas web sin necesidad de Dreamweaver - 20 Mar - LinuxParty

viernes 20 de marzo de 2009

Tips para Linux que todos deberiamos saber. Serie Completa

Lista completa de la serie Tips para Linux que todos deberiamos saber.

jueves 19 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte XI

Continua la serie de tips para linux que deberíamos saber, esta vez con parte XI y final de la serie.
Si deseas puedes ver las otras partes de la serie:



#51 Usando rsync sobre ssh


SSH es ideal para hacer copias remotas de partes de un sistema de archivo, pero rsync es mucho mejor para mantener esos archivos sincronizados entre 2 maquinas. Para ejecutar rsync sobre ssh hay q usar la opcion -e, así:

rsync -ave ssh servidor:/home/ftp/pub/ /home/ftp/pub/

Nota la ruta / en las especificaciones del archivo desde la fuente (servidor). En la especificación de la fuente, el camino / le dice a rsync que copie el contenido del directorio, pero no el directorio mismo. Para incluir el directorio como el nivel mas alto de lo que esta siendo copiado, dejar fuera la /:

rsync -ave ssh bcnu:/home/six .

Esto mantendrá una copia del directorio ~/six/ sobre rsync con cualquiera que este presente en bcnu:/home/six/. Por defecto, rsync solo copiara los archivos y directorios, pero no los remueve de la copia destino cuando son removidos de la fuente. Para mantener las copias exactas, incluye la opcion --delete:

rsync -ave ssh  --delete servidor:~one/reports .

Ahora cuando los reportes antiguos son removidos de ~one/reports/ en servidor, también son removidos de ~six/public_html/reports/ en la version sincronizada, cada vez que se ejecute este comando. Si ejecutas un programa similar con cron, no usar la opcion v. Esto mantendrá la salida ( a menos que rsync tenga un problema al ejecutarse, en tal caso recibirás un correo con la salida del error). Usando SSH como transporte para rsync tienes la ventaja de encriptar la data sobre la red y también de usar cualquier relación de confianza establecida usando las claves de SSH.

#52 Escaneado de activos

Normalmente cuando la gente piensa en usar nmap, asumen que es usado para conducir cierto reconocimiento de red para prepararse para un ataque. Pero nmap es una poderosa herramienta que también puede usarse como white hat. Por ejemplo, un escaneado de conexión TCP simple puede ser conducido sin necesidad de privilegios de root:

nmap rigel

nmap también puede escanear rangos de direcciones IP especificando el rango o usando notaciones CIDR:

nmap 192.168.0.1-254
nmap 192.168.0.0/24

nmap puede proveer mucha mas información si se ejecuta como root. Puede usar paquetes especiales para determinar el sistema operativo de una maquina remota
usando la opcion -O. Adicionalmente, puedes escanear TCP medio abierto usando la opcion -sS. Cuando haces un escan medio abierto, nmap enviara un paquete SYN al servidor remoto y espera recibir el ACK, si recibe el ACK, sabrá que el puerto esta abierto.

La diferencia desde una comunicación TCP de tres vías normal, donde el cliente enviara un paquete SYN y luego envía un ACK de nuevo al servidor una vez que ha recibido el ACK inicial del servidor. Atacantes usan por lo general esta opcion para evitar tener sus escaneados logeados en la maquina remota.

nmap -sS -O rigel

Starting nmap V. 3.00 ( www.insecure.org/nmap/ )
Interesting ports on rigel.nnc (192.168.0.61):
(The 1578 ports scanned but not shown below are in state: filtered)
Port State Service
7/tcp open echo
9/tcp open discard
13/tcp open daytime
19/tcp open chargen
21/tcp open ftp
22/tcp open ssh
23/tcp open telnet
25/tcp open smtp
37/tcp open time
79/tcp open finger
111/tcp open sunrpc
512/tcp open exec
513/tcp open login
514/tcp open shell
587/tcp open submission
7100/tcp open font-service
32771/tcp open sometimes-rpc5
32772/tcp open sometimes-rpc7
32773/tcp open sometimes-rpc9
32774/tcp open sometimes-rpc11
32777/tcp open sometimes-rpc17
Remote operating system guess: Solaris 9 Beta through Release on SPARC
Uptime 44.051 days (since Sat Nov 1 16:41:50 2003)
Nmap run completed -- 1 IP address (1 host up) scanned in 166 seconds

Con la detección del sistema operativo habilitada, nmap ha confirmado que el OS es Solaris, pero ahora también sabras que es probable que es probable que sea la version 9 sobre un procesador SPARC.

Una característica que puede ayudarte a mantener un registro de tu red es la capacidad de nmap para mostrar una salida XML. Se activa usando la opcion -oX asi:

nmap -sS -O -oX scandata.xml rigel

Esto es especialmente útil cuando escaneas un rango de direcciones IP o toda tu red, porque pones toda la información recolectada en un archivo XML que puedes ser insertado en una base de datos. Así es mas o menos la salida del archivo XML:

"



"

nmap es una poderosa herramienta. Usando la capacidad de salida XML, un poco de código y una base de datos, puedes crear una herramienta mas poderosa aun que puede monitorear servicios o maquinas no autorizadas en tu red.

#53 Copia de seguridad de tu sector de arranque

Para los que tienen un proceso dual de arranque u otros procesos mas en el sector de arranque, seria bueno realizar una copia de seguridad (backup) de dicho sector, se puede hacer así:

dd if=/dev/hda of=bootsector.img bs=512 count=1

Obviamente tendrías que cambiar tu dispositivo para que refleje tu disco de arranque. También, se muy cuidadoso por que podrías dañar tu disco duro. Para restaurar la copia usa:

dd if=bootsector.img of=/dev/hda

#54 Protege tus logs

Si alguna vez atacan tu sistema una buena forma de saber que es lo que el atacante ha hecho, por donde ha entrado, etc es viendo los logs del sistema, pero si el atacante borra los rastros de su ataque sera mas difícil saber que es lo que paso.

Es ahí donde los atributos de archivos entran para salvar el día. Tanto Linux como BSD tiene la habilidad de asignar atributos extras a los archivos y directorios. Esto es diferente del esquema de permisos de Unix en el cual la configuración de un archivo aplica universalmente a todos los usuarios del sistema y ellos afectan el acceso al archivo a un nivel mas profundo que los permisos del archivo o ACL.

En Linux, puedes ver o modificar los atributos que están configurados para un archivo usando los comandos lsattr y chattr, respectivamente. Hasta el momento esto esta disponible solo usando el sistema de archivo ext2 y ext3. También hay parches disponibles para soportar atributos en XFS y ReiserFS. Uno de los atributos mas útiles para proteger los archivos es append-only (solo añadir). Cuando este atributo es configurado, el archivo no puede ser borrado y solo se permitirá escribir al final del archivo.

Para configurar el atributo append-only en Linux ejecuta este comando:

chattr +a  "nombre archivo"

Mira como el atributo +a funciona: crea un archivo y configura su atributo append-only:

touch /var/log/logfile
echo "append-only no configurado" > /var/log/logfile
chattr +a /var/log/logfile
echo "append-only Configurado" > /var/log/logfile
bash: /var/log/logfile: Operacion no permitida

Obviamente un intruso que haya logrado obtener los privilegios de root podría darse cuenta de los archivos que ha usado y y remover el atributo append-only de nuestros logs. Pra prevenir esto, debes deshabilitar la opcion para remover el atributo append-only. Para lograr esto en Linux, usa su mecanismo de capacidad.

El modelo de capacidad de Linux divide los privilegios otorgados al root y te permite deshabilitarlos selectivamente. Para prevenir que un usuario remueva el atributo append-only de un archivo, debes remover la capacidad CAP_LINUX_IMMUTABLE. Cuando esta presente en el sistema, esta capacidad permite modificar el atributo append-only. Para remover esta característica del sistema, puedes usar la utilidad lcap (http://packetstormsecurity.org/linux/admin/lcap-0.0.3.tar.bz2).

Luego de descargarla del enlace anterior, la desempaquetas y compilas con este comando:

tar xvfj lcap-0.0.3.tar.bz2 && cd lcap-0.0.3 && make

Ahora para deshabilitar la modificación de append-only, ejecuta:

./lcap CAP_LINUX_IMMUTABLE
./lcap CAP_SYS_RAWIO

El primer comando remueve la capacidad para cambiar el atributo append-only y la segunda remueve la capacidad de hacer E/S. Esto es necesario para que los archivos protegidos no puedan ser modificados accediendo al bloque del dispositivo donde residen. También previenen el acceso al /dev/mem y /dev/kem, el cual proveerá un bucle para el intruso que quiere volver a habilitar la capacidad CAP_LINUX_IMMUTABLE. Para remover esa capacidad al arranque, agrega el comando anterior al script de inicio del sistema (ej. etc/rc.local). Debes asegurarte que la capacidad fue removida en el arranque, para prevenir problemas con otros scripts de inicio. Una ve que lcap ha removido la capacidad del kernel, estas pueden ser colocadas de nuevo reiniciando el sistema.

Antes de hacer esto asegúrate de añadir la opcion append-only a los archivos logs.

#54 Encriptar conecciones automaticamente

Una característica muy buena soportada por FreeS/WAN es encriptacion con otros hosts corriendo FreeS/WAN. Esto permite a FreeS/WAN encriptar transparentemente el trafico entre todos los hosts que soporta este tipo de encriptacion. Para hacer esto cada host debe tener una clave publica generada para usarse con FreeS/WAN. Esta clave puede ser grabada en un registro DNS TXT para el host. Cuando un host esta configurado para usar este tipo de encriptacion y desea iniciar una conexión encriptada con otro host, este buscara la clave publica a través de DNS y la usara para iniciar la conexión.

Para comenzar, necesitas generar la clave para cada servidor que deseas usar esta característica. Lo puedes hacer ejecutando este comando:

ipsec newhostkey --output /tmp/`hostname`.key

Ahora necesitas agregar el contenido del archivo que fue creado por el comando a /etc/ipsec.secrets:

cat /tmp/`hostname`.key >> /etc/ipsec.secrets

Luego, tienes que generar un registro TXT para ponerlo en tu zona DNS, ejecutando lo siguiente:

ipsec showhostkey --txt @colossus.nnc

Ahora agrega el registro a tu zona y recargarlo. Puedes verificar si el DNS esta trabajando correctamente corriendo este comando:

ipsec verify

Checking your system to see if IPsec got installed and started correctly
Version check and ipsec on-path [OK]
Checking for KLIPS support in kernel [OK]
Checking for RSA private key (/etc/ipsec.secrets) [OK]
Checking that pluto is running [OK]
DNS checks.
Looking for TXT in forward map: colossus [OK]
Does the machine have at least one non-private address [OK]

Ahora solo reinicia FreeS/WAN, ahora deberas estar habilitado para conectarte con otro host que soporta la encriptacion opportunistic. Pero si otros host quieren conectarse contigo, deberas crear un registro TXT para tu maquina en zona de reverso DNS.

Puedes hacer esto ejecutando lo siguiente:

ipsec showhostkey --txt 192.168.0.64

Agrega este registro a tu zona de reverso de tu subred y otra maquina podra iniciar una conexion encriptada con tu maquina. Con esta opcion todo el trafico entros los host estara encriptado.

#56 Eliminar los SUID binarios

Si tu servidor tiene mas de un usuario de consola, deberas auditar regularmente el setuid y el setgid de tu sistema. Las probabilidades de como los encontraras son sorpresivas. Aqui hay un comando para encontrar los archivos setuid o setgid:

find / -perm +6000 -type f -exec ls -ld {} \; > setuid.txt &

Esto creara un archivo llamado setuid.txt que contendra los detalles de todos los archivos encontrados que esten en tu sistema. Para remover la s de cualquier herramienta que no usas, escribe:

chmod a-s program

#57 Filtrar por MAC

Si bien es cierto que puedes hacer un filtro de MAC usando iptables o ebtables, es mas rapido si dejas que Host AP lo haga por ti. Esto no solo bloquea el trafico destinado a tu red, sino que tambien prevendra un mal comportamiento de cualquier estacion asociada. Esto prevendra que cualquiera pueda causar problemas para tus clientes inalambricos, aun si estan mas alla del acceso a la red.

Cuando usas filtrado de MAC, la mayoria de personas hacen un alista de los dispositivos inalambricos que desean permitir y denegar a los demas. Esto se hace con el comando iwpriv:

iwpriv wlan0 addmac 00:30:65:23:17:05
iwpriv wlan0 addmac 00:40:96:aa:99:fd
...
iwpriv wlan0 maccmd 1
iwpriv wlan0 maccmd 4

La directiva addmac agrega una direccion MAC a la tabla interna. Puedes agregar tantas direcciones MAC como quieras en tu tabla ejecutando mas comandos addmac. Entonces necesitas decirle a Host AP que hacer con la tabla que has construido. El comando maccmd 1 le dice a Host AP usar la tabla como lista de "permitidos" y denegar las otras MAC. Finalmente el comando maccmd 4 bota todos los clientes asociados, forzandolos a reasociarse. Esto sucede automaticamente para todos los clientes listados en la tabla, pero todos los demas que intenten conectarse seran denegados.

Algunas veces solo necesitas sacar a uno o dos problematicos, en vez de configurar una politica explicita de dispositivos permitidos. Si necesitas sacar a una pareja de MAC especificas pero permitir a otras, prueba esto:

iwpriv wlan0 addmac 00:30:65:fa:ca:de
iwpriv wlan0 maccmd 2
iwpriv wlan0 kickmac 00:30:65:fa:ca:de

Como antes, puedes usar addmac tantas veces como quieras. El comando maccmd 2 configura la politica para "denegar" y expulsa la la MAC especificada inmediatamente. Probablemente sea mas agradable iniciar a todos y hacer que se reasocien solo para botar al problematico. Incidentalmente, si quisieras remover los filtros MAC juntos, prueba maccmd 0.

Si cometiste un error tipeando una MAC, puedes usar el comando delmac igual como usarias el comando addmac, y borrara la MAC de la tabla. Si necesitas limpiar toda la tabla MAC pero mantener las politicas, usa el comando:

iwpriv wlan0 maccmd 3

Finalmente, puedes ver la tabla MAC usando /proc

cat /proc/net/hostap/wlan0/ap_control

El programa iwpriv manipula el controlador Host AP, pero no conserva las configuraciones al reiniciar. Una vez que estes contento con el contenido de tu tabla MAC, asegurate de poner los comandos relevantes en un script rc al momento de iniciar.

Ten en cuenta aun los clientes no asociados pueden escuchar el trafico de tu red, por eso el filtro MAC hace una pequeña prevencion. Para evitar las tecnicas de escucha pasivas, deberas encriptar tu data.


martes 17 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte X

Continua la serie de tips para linux que deberíamos saber, esta vez con parte X.
Si deseas puedes ver las otras partes de la serie:


#46 Haciendo mas seguro SSH

A pesar de que SSH es una forma segura para conectarte a tu servidor, hay unos cambios simples que lo pueden hacer mas seguro aun. Primero, casi seguro que no querrás que las personas se logeen directamente como root, en vez de eso que entren como usuario normal y luego que usen el comando su para cambiar a root. Puedes cambiar esto simplemente en el archivo /etc/ssh/ssh_config y añadir esta linea:

PermitRootLogin  no

Ahora la única forma de obtener privilegios de root es a través de su, lo cual significa que los crackers necesitaran romper dos contraseñas para obtener acceso total. Mientras editas ese archivo , encuentra la linea que dice:

Protocol 2, 1

Y cámbiala por:


Protocol 2

Esto removerá la opcion fallback en el protocolo SSH original, que ahora es considerado muy vulnerable.

#47 Parar las respuestas de ping

Mientras que ping es un comando muy útil para descubrir la topologia de la red, la desventaja es que solo hace eso, y hace que sea fácil a los hackers en la red para apuntar a servidores en uso. Pero le puedes decir a Linux que ignore todos los pings. Hay varias formas de lograr esto, pero la mas fácil es usar sysctl. Para apagar las respuestas de ping:

sysctl -w net.ipv4.icmp_echo_ignore_all=1

Para prenderlas de nuevo:


sysctl -w net.ipv4.icmp_echo_ignore_all=0

#48 Disminuir los rangos de ping

Si deseas mantener la habilidad de responder los pings, pero protegerte de ataques como "ping flood", la forma mas fácil es disminuyendo el rango de pings:


sysctl -w net.ipv4.icmp_echoreply_rate=10

Esto disminuirá el rango de las respuestas que son enviadas a una sola dirección.

#49 Limpiar KDE al salir

En Windows hay varios programas que limpian la cache web, remueve archivos temporales y otras cosas mas al momento que cierras el sistema. Con KDE no necesitas instalar un programa para hacer eso, el script startkde automáticamente ejecutara los scripts que pongas en lugares especiales:

Lo primero es crear un directorio llamado apagado en tu directorio .kde:

mkdir /home/usuario/.kde/apagado

Ahora creas un script con lo que deseas hacer al apagar el sistema. Por ejemplo:

#!/bin/bash
#limpia el directorio temporal
rm -rf ~/tmp/*
#elimina las caches
rm -rf ~/.ee/minis/*
rm -rf ~/.kde/share/cache/http/*
# elimina formularios de konqueror
rm ~/.kde/share/apps/khtml/formcompletions

Asegúrate de que tenga permisos de ejecución:

chmod ug+x ~/.kde/apagado/limpiar.sh

Como se están limpiando archivos sensibles, puedes tener una script de apagado global para todos los usuarios, colocando en tu directorio KDE por defecto, en un subdirectorio llamado apagado. Para saber cual es tu directorio KDE por defecto prueba esto:

kde-config --path exe


#50 Usar SSH sin contraseña

Si estas cansado de ingresar tu contraseña cada vez que ingresas a un servidor podrías ingresar tu contraseña solo cuando ingresas a tu escritorio.
Generar un par de claves en tu escritorio:

ssh-keygen -t dsa -C tu.direccion@email

Ingresa la frase para tu clave. Esto colocara la clave secreta en ~/.ssh/id_dsa y la clave publica en ~/.ssh/id_dsa.pub. Ahora revisa si tienes un agente ssh ejecutándose:

echo $SSH_AGENT_PID

La mayoría de administradores de ventana lo ejecutaran si es que instalado, Si no, arranca uno:

eval $(ssh-agent)

Ahora, dile al agente sobre tu clave:

ssh-add

e introduce tu frase. Necesitaras hacer esto cada vez que te logeas, si estas usando X intenta añadir:

SSH_ASKPASS=ssh-askpass ssh-add

En tu archivo .xsession (necesitaras instalar ssh-askpass.) Ahora para servidor que te logeas, necesitaras creal el directorio ~/.ssh y copiar el archivo ~/.ssh/id_dsa.pub en el servidor como ~/.ssh/authorized_keys. Si inicias el ssh-agent a mano, mátaloriosys cuando sales con:

ssh-agent -k



Usando xclip para copiar y pegar desde la consola

¿Alguna vez has copiado un texto desde la consola y lo has pegado en una aplicación X? En vez de eso puedes arrastrar el mouse y usar xclip. Usando xclip, puedes conducir el contenido que quieras directamente a xclip.

$ lspci | xclip

Luego, ve a tu aplicación X y pega la salida capturada en la aplicación. xclip también te permite "pegar" el texto seleccionado en la consola. Solo usa la opcion -o para la salida del texto seleccionado desde la selección activa.
$ xclip -o

Puedes encontrar xclip en sourceforge.net/projects/xclip.

Fuente.

lunes 16 de marzo de 2009

Recuento de la semana del 09 al 15 de Marzo 2009

Nuevamente el recuento de la semana, esto es lo que se estuvo hablando en la semana del 02 al 08 de Marzo del 2009.

  • Matar aplicaciones con un solo clic - 09 Mar - ALT1040
  • Habilitar el root en Ubuntu Server - 10 Mar - LinuxParty
  • Ya salio la version 1.1 de Songbird - 11 Mar - MundoGeek
  • Android destronara Windows?? - 11 Mar - Barrapunto
  • Policía Francesa ahorra millones con Linux - 12 Mar - Barrapunto
  • BASIC para Linux, Mac y Windows - 13 Mar - LinuxParty

viernes 13 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte IX

Continua la serie de tips para linux que deberíamos saber, esta vez con parte IX.
Si deseas puedes ver las otras partes de la serie:

#41 Autoejecutar un dispositivo USB

¿Quieres ejecutar una aplicación especifica cada vez que conectas un dispositivo USB? El servicio USB hotplug puede ayudarte. Este servicio es notificado cuando un dispositivo USB es conectado a tu sistema. Para dispositivos que requieren drivers del kernel, hotplug puede llamar a un código por el nombre en /etc/hotplug/usb/, por ejemplo, un script llamado usb-storage existe ahí. Simplemente puedes añadir tu propio comando al final de dicho script. Entonces podrías tocar un sonido, sincronizar archivos, buscar imágenes o lo que sea.

Para dispositivos que no se basan en drivers del kernel, se usa una búsqueda de tabla que concuerde con el producto USB y el Identificador de la compañía. Varias distros configuran esto para hacer algo, pero tu puedes configurar esos scripts muy fácil, revisa http://jphoto.sourceforge.net/?selected=sync para que veas un ejemplo de como hacerlo.

#42 Cambiar de nombre y tamaño a imágenes

Muchas veces las cámaras digitales ponen nombres bien feos a las fotos y es un problema cambiarlos todos, felizmente eso se puede hacer mas fácil con un simple código bash:
#!/bin/sh
counter=1
root=mypict
resolution=400x300
for i in `ls -1 $1/*.jpg`; do
echo "Trabajando en $i"
convert -resize $resolution $i ${root}_${counter}.jpg
counter=`expr $counter + 1`
done

Graba el script en un archivo llamado nombrefoto.sh y haslo ejecutable:

chmod u+x nombrefoto.sh

Grábalo en algún lugar de tu ruta. Ahora, si tienes un montón de archivos .jpg en el directorio /ruta/de/fotos todo lo que tienes que hacer es ejecutar tu script:

nombrefoto.sh /ruta/de/fotos

#43 Salida del sistema segura

Cuando estas usando la consola en una maquina compartida o de hecho en tu propio escritorio, te habrás dado cuenta que cuando sales del sistema, la pantalla sigue mostrando rastros de quien estuvo logeado y que estaba haciendo. Muchas distros limpian la pantalla, pero otras no, puedes resolver esto editando el archivo ~/.bash_logout que esta en tu home y agregar este comando:

clear

También puedes agregar otros comandos útiles aquí.

#44 Transferir archivos sin usar FTP o SCP

Necesitas transferir un directorio a otro servidor pero no tienes acceso FTP o SCP, una forma de poder hacerlo es usando netcat, en el servidor destino ejecuta:

nc -l -p 1234 | uncompress -c | tar xvfp -

Y en el que envía ejecuta esto:

tar cfp - /algun/dir | compress -c | nc -w 3 [destino] 1234

#45 Haciendo copia de seguridad de la lista de paquetes en Debian o Ubuntu

Si estas usando Debian o Ubuntu y ya no sabes que paquetes tienes instalados, seria útil hacer una copia de seguridad (backup) de tus paquetes instalados. Puedes obtener una lista ejecutando esto:

dpkg --get-selections > debianlist.txt

Ahora puedes poner la lista completa que esta en debianlist.txt en una computadora diferente e instalar los mismos programas que tenias en la anterior:

dpkg --set-selections <>

Ten en cuenta que también necesitas una copia de los archivos de configuración que están en /etc y copiarlos a la nueva computadora.
Para instalar la selección de paquetes, usa:

apt-get -u dselect-upgrade

jueves 12 de marzo de 2009

Tiny Core Linux, distribucion de escritorio pequeña

Quizás sea la distribución mas pequeña de Linux para escritorios, solo necesita 10Mb en una memoria USB, CD o disco duro. Tiny Core Linux te podría ofrecer una nueva experiencia y máxima velocidad para navegar por Internet con un escritorio X costumizable que puede ejecutarse desde la RAM. La distribución Tiny Core Linux esta potenciada por el kernel de Linux 2.6, Busybox, Tiby X, Fltk y Jwm. Muestra una rápida velocidad de inicio y la ultima version (Tiny Core Linux 1.2) viene con muchas mejoras y solución de errores.

Aunque Tiny Core Linux no ofrece un escritorio completo, su funcionalidad puede ser extendida con aplicaciones existentes en un repositorio de forma automática. Ademas también ofrece soporte para hardware suplementario.

Tiny Core Linux permite que el usuario ejecute las aplicaciones desde la RAM o desde un dispositivo de almacenamiento permanente o removible.

Algunas de las aplicaciones disponibles lista para usar son Opera, Komposer, Inkscape, Mplayer y otras mas, las cuales te permiten ejecutar archivos multimedias, leer correo, conectarte a otros dispositivos vía BlueTooth y prácticamente ejecutar con éxito cualquier tarea que requieras.

Tiny Core Linux esta lista para ser descargada gratis desde su sitio oficial como LiveCD.



Fuente.

miércoles 11 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte VIII

Continua la serie de tips para linux que deberíamos saber, esta vez con parte VIII.
Si deseas puedes ver las otras partes de la serie:

#36 Eliminar SPAM de una manera simple

Spam o correo no solicitado, es un problema muy extendido por lo cual casi todo el mundo tiene alguna clase de sistema para protegerse. La mayoría de los ISP (proveedores de Internet) incluyen algún filtro antispam, pero algunas veces no es tan efectivo. Pero una forma mas efectiva de atacar el Spam es a través del cliente de correo.

Por ejemplo, en Kmail puedes crear filtros para mover los correos directamente al basurero. Para usar el mismo encabezado que usa tu ISP para etiquetar el correo basura, dependerá del programa que este usando tu ISP, pero por lo general es algo como X-Spam-Flag = YES para sistemas como SpamAssassin.

Simplemente crea un filtro en Kmail o Evolution o cualquier otro cliente de correo, Escoge la opcion "Concuerde con lo siguiente" y escoge la acción a realizar. Aplica el filtro para los correos entrantes.

#37 Leer documentos de OpenOffice sin OpenOffice

¿Necesitas leer un archivo de Ooo pero no tienes Ooo instalado? Pensaste guardarlo como archivo plano (.txt) pero en vez de eso lo guardaste como Staroffice (.sxw). El archivo se puede rescatar, primero, un archivo sxw es un archivo zip, asi que lo que hay que hacer es descomprimirlo

unzip miarchivo.sxw

El archivo que deseas recuperar se llama 'content.xml'. Desafortunadamente, esta lleno de etiquetas XML que no son muy legibles, entonces filtralo con Perl:

cat content.xml | perl -p -e  "s/<[^>]*>/ /g;s/\n/ /g;s/ +/ /;"

En este proceso perderás el formato, pero al menos podrás leerlo.

#38 Buscar y Ejecutar

El comando find no solo es útil para buscar archivos, sino también para procesar los que se han encontrado, Por ejemplo:

Supón que tienes muchos tarballs y deseas buscar todos:

find . -name '*.gz'

Con esto localizaras los archivos gzip en el directorio actual. Pero supón que quieres revisar si son archivos validos. La opcion -vt del comando gunzip hara esto por ti, pero se pueden combinar fácilmente usando xargs:

find . -name '*.gz' | xargs gunzip -vt

#39 Usar el servidor whois correcto

El comando whois es muy útil para rastrear Internet. Pero por desgracia muchos de los servidores que se usan para este comando. Sin embargo, hay algunos proxys whois pueden buscar en el servidor correcto. Algunos están disponibles en http://whois.geektools.com.

whois -h whois.geektools.com  plop.info

#40 Como saber donde esta montado el disco (drive)

Un problema común para la gente que tiene muchos dispositivos extraibles montado en Linux, como Memorias USB, discos USB, etc) es que no se sabe donde están montados.

Prácticamente todos los dispositivos que llaman a un disco (driver), como las memorias USB, botan información útil en los logs. Intenta esto:

dmesg | grep SCSI

Esto filtrara los dispositivos reconocidos desde la salida de dmesg. Quizás aparezca un texto como este:

SCSI device sda: 125952 512-byte hdwr sectors (64 MB)

Esto quiere decir que tu dispositivo esta montado en sda

martes 10 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte VII

Continua la serie de tips para linux que deberíamos saber, esta vez con parte VII.
Si deseas puedes ver las otras partes de la serie:

#31 Editando sin un editor

Cuando los archivos son muy grandes es difícil de manipularlos con un editor de texto. Si necesitas hacerlo regularmente, hay opciones para hacerlo mas rápido usando algunos comandos, por ejemplo:

Para imprimir las columnas 1 y 3 del archivo al archivo2, se puede usar awk:
awk '{print $1, $3}' archivo1 > archivo2

Para mostrar solo los caracteres desde la columna 8 a la 15 del archivo1, se puede usar cut:
cut -c 8-15 archivo1 > archivo2

Para reemplazar la palabra uno por la palabra dos en el archivo1, se puede usar esto:
sed "s/uno/dos/g" archivo1 > archivo2

#32 Hacer backup solo de los archivos seleccionados

Si quieres usar tar para hacer copias de seguridad (backup) de ciertos directorios, puedes usar entonces la opcion -T. Primero crea un archivo con el archivo que vas a copiar:
cat >> /etc/backup.conf
# /etc/passwd
# /etc/shadow
# /etc/yp.conf
# /etc/sysctl.conf
EOF

Luego ejecuta tar con la opcion -T apuntando al archivo recién creado:
tar -cjf bck-etc-`date +%Y-%m-%d`.tar.bz2 -T /etc/backup.conf

Listo, ya tienes tu backup.

#33 Juntar columnas en archivos

Mientras que dividir columnas en un archivo es sencillo, juntarlas es un poco complicado, aquí un pequeño código que hace el trabajo:

#!/bin/sh
length=`wc -l $1 | awk '{print $1}'`
count=1
[ -f $3 ] && echo "Opcionalmente removido$3" && rm -i $3
while [ "$count" -le "$length" ] ; do
a=`head -$count $1 | tail -1`
b=`head -$count $2 | tail -1`
echo "$a $b" >> $3
count=`expr $count + 1`
done

Guardalo como juntar.sh y dale permiso de ejecución:
chmod u+x juntar.sh

Ahora si quieres juntar las columnas del archivo1 y archivo2 y archivo3 solo debes ejecutarlo:
/ruta/a/juntar.sh archivo1 archivo2 archivo3

Donde ruta/a/ debes ser reemplazado con la ruta donde se encuentra juntar.sh.

#34 Distincion entre mayusculas y minusculas

A pesar de que en algunos sistemas operativos no se distingue entre mayúsculas en minúsculas, sabes que en Linux no es así, en Linux no es igual "COMMAND" que "command". Esto puede dar problemas cuando se pasan archivos entre Windows y Linux. tr es una pequeña utilidad shell que puede ser usado para cambiar un puñado de archivos:
#!/bin/sh
for i in `ls -1`; do
file1=`echo $i | tr [A-Z] [a-z] `
mv $i $archivo1 2>/dev/null
done
Cuando lo ejecutas, ARCHIVO1 y archiVo2 se renombraran como archivo1 y 2.

#35 Macros en Emacs

Cuando editas archivos quizás estes realizando tareas repetitivas, para ahorrarte tiempo podrías crear una macro. En Emacs, puedes hacerlo con los siguientes pasos:
  1. Presiona CTRL + X para empezar a grabar.
  2. Empieza a realizar la tarea que deseas repetir.
  3. Nuevamente CTRL + X para dejar de grabar.
Ahora puedes ejecutar tu macro con:
Ctrl -u "numero" Ctrl -x e

Donde numero es el numero de veces que deseas que se ejecute la macro. Si ingresas el valor 0, la macro se ejecutara hasta el final del archivo.

lunes 9 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte VI

Continua la serie de tips para linux que deberíamos saber, esta vez con parte VI.
Si deseas puedes ver las otras partes de la serie:



#26 Mostrar los archivos usados en el día

Quizás te haya pasado que has estado trabajando con varios archivos durante el dia, y justo deseas
recuperar un archivo y no recuerdas su nombre y ti directorio esta lleno de archivos. Hay varias formas
de encontrar el archivo y esta es una de ellas:

ls -al --time-style=+%D | grep `date +%D`


El parámetro para el comando ls usado aquí ase que la fecha la muestre en un formato en particular. Luego esa salida es pasada al comando grep. El comando grep, el cual sustituye la fecha actual en la cadena que se va a buscar. Este código se puede modificar fácilmente para buscar otras fechas, hora, tamaño de archivo o lo que sea.

#27 Evitar errores comunes y comandos largos

El comando alias es muy útil para configurar atajos para comandos grandes. Se puede hacer un
nuevo comando llamado lsnew, haciendo lo siguiente:
alias lsnew=" ls -al --time-style=+%D | grep `date +%D` "


Pero hay otros usos para alias. Por ejemplo, errores comunes de tipeos. Cuantas veces sin querer has dejado el espacio cuando has cambiado de directorio principal?
alias cd..="cd .."


Alternativamente, que sucede cuando reescribes algunos comandos que ya existen:
alias ls="ls -al"


Ahorrar algunas presionadas de teclas si deseas la lista completa

Para tener tus alias habilitados en cada sesión, solo añade el comando nuevo creado con alias
al archivo .bashrc que esta en el directorio home de tu usuario.

#28 Cambiar configuraciones secretas de Firefox

Si te gustaría cambiar la forma como Firefox trabaja pero las preferencias no ofrecen ninguna opcion que te ayude, hay un modo especial que puedes habilitar en Firefox para poder cambiar todo. Para acceder escribe lo siguiente en la barra de direcciones:
about:config


Puedes cambiar cada configuración que te interese solo cambiando el campo valor (Value) en la tabla.

Otros modos interesantes son información general (about:), detalles de agregados (about:plugins), créditos (about:credits) y mas detalles (about:mozilla).

#29 Un mural de estrellas

Quizás hayas jugado KStars, pero como podrías crear un mural (backdrop) de una imagen de KStar que se actualice cada vez que inicias?

KStar puede ejecutarse con las opcion --dump, el cual vuelca una imagen desde tu configuración de inicio, pero no carga la interfaz gráfica. Puedes crear un código que ejecute esto y genere una imagen para el escritorio la cual cambiara cada día o según ajustes en el método de que genera la imagen.

Ejecuta KStarts así:
kstars --dump --width 1024 --height 768 --filename = ~/kstarsback.png


Puedes añadir el código creado al directorio ~/.kde/Autostart para que se ejecute al inicio. Busca el archivo con Konqueror, arrástralo a tu escritorio y selección "Usar como fondo de escritorio" para usarlo aleatoriamente en tu mural generado.

#30 Abrir un SVG directamente

Puedes ejecutar Inkscape desde la consola y inmediatamente editar un gráfico desde una URL, solo escribe esto:
inkscape http://www.somehost.com/graphic.svg


Recuerda guardarlo con otro nombre.

Recuento de la semana 02 - 08 Mar 2009

Nuevamente el recuento de la semana, esto es lo que se estuvo hablando en la semana del 02 al 08 de Marzo del 2009.

  • El kernel de Linux compilado con Intel C++ - 02 Mar - Barrapunto.
  • Ya van 10,000 descargas del tutorial de Linux - 02 Mar - LinuxParty.
  • Ballmer reconoce que Linux es un competidor mas fuerte que Apple - 04 Mar - LinuxParty.
  • Quimo, Linux para niños - 04 Mar - LinuxParty.
  • Como realizar busquedas de RAE desde la consola Linux - 06 Mar - LinuxParty.

viernes 6 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte V

Continua la serie de tips para linux que deberíamos saber, esta vez con parte V.
Si deseas puedes ver las otras partes de la serie:


#21 Hacer las paginas man mas útiles

Si buscas alguna ayuda sobre algún comando o asunto en particular, las paginas man son un buen punto de partida. Normalmente se accede a estas paginas con el comando man "nombre comando", pero también puedes buscar la descripción de una pagina man para una palabra en particular. Por ejemplo, buscar en las paginas man que hablen sobre login:

man -k login


Cuando accedes una pagina man, también puedes usar la tecla barra "/" para buscar una palabra en particular en la misma pagina. Simplemente presiona / en tu teclado y escribe lo que deseas buscar.

#22 Conversa con tu doctor

Se dice que Emacs es mas que un editor de texto, y esto es verdad. Por ejemplo, abre el editor Emacs, presiona la tecla Esc seguida de X y luego ingresa a doctor: estarás en una conversación con un psicoterapista imaginario. Y si deseas perder el tiempo de una buena forma:

Esc-X tetris


Esto transformara Emacs en el juego de arcade favorito.

Pero eso no termina aquí. Revisa la lista de paquetes de tu distro para ver que mas esta asociado para Emacs, hay hasta ajedrez, Integración con Perl, IRC, traductor de francés, conversión HTML, ambiente de desarrollo para Java, compilación inteligente. Esto es solo una pista de lo que Emacs realmente puede hacer.

#23 Generación de diagrama sobre relación de paquetes

La parte mas critica de un sistema Debian o Ubuntu es la habilidad de instalar un paquete con todas sus dependencias. Si quieres una representación gráfica de la relación entre esos paquetes, puedes usar el paquete Graphviz:

apt-cache dotty > debian.dot


El comando genera un archivo gráfico el cual puedes verlo con dotty:

dotty debian.dot


#24 Desmontar dispositivos ocupados

Quizás te suene familiar esta situación, estas tratando de desmontar un dispositivo pero te sale el mensaje que esta ocupado. Pero ¿cual es la aplicación que lo tiene en ese estado? bueno un simple comando te lo puede decir:

lsof +D /mnt/windows


Esto devolverá el comando y el PID del comando que actualmente esta accediendo al directorio /mnt/windows, luego solo es cuestión de hacer kill a ese comando.

#25 Conversión de archivos de texto

recode es una pequeña herramienta que te ahorrara esfuerzo cunado usas texto creado en diferentes plataformas. La principal fuente de descontento es el salto de linea. En algunos sistemas, esto esta denotado con un carácter line-feed. En otros es usado un retorno de carro y en la mayoria de sistemas se usan ambos. El resultado final es que si estas intercambiando texto de una plataforma a otra, terminaras con muchos saltos de linea y muchos caracteres extraños.

Sin embargo los parámetros del comando son un poco obscuros, por eso por que no combinas este hack con HACK26 en esta característica y configuras algunos alias:
alias dos2unix='recode dos/CR-LF..l1'
alias unix2win='recode l1..windows-1250'
alias unix2dos='recode l1..dos/CR-LF'


Hay bastante mas opciones para recode, revisa las man para encontrar mas información.

jueves 5 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte IV

Continuando las partes I, II y III, dejo la parte IV de la serie de Tips en Linux que todos deberiamos saber.

#16 Liberar puertos abiertos


Generar una lista de puertos de red que están en el estado de escucha (Liste) en servidor Linux es simple usando netstat:

root@casa:~# netstat -lnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:5280 0.0.0.0:* LISTEN 698/perl
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 217/httpd
tcp 0 0 10.42.3.2:53 0.0.0.0:* LISTEN 220/named
tcp 0 0 10.42.4.6:53 0.0.0.0:* LISTEN 220/named
tcp 0 0 127.0.0.1:53 0.0.0.0:* LISTEN 220/named
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 200/sshd
udp 0 0 0.0.0.0:32768 0.0.0.0:* 220/named
udp 0 0 10.42.3.2:53 0.0.0.0:* 220/named
udp 0 0 10.42.4.6:53 0.0.0.0:* 220/named
udp 0 0 127.0.0.1:53 0.0.0.0:* 220/named
udp 0 0 0.0.0.0:67 0.0.0.0:* 222/dhcpd
raw 0 0 0.0.0.0:1 0.0.0.0:* 7 222/dhcpd

Esto te muestra que el PID 698 es un proceso Perl que esta enlazado al puerto 5280. Si no eres root, el sistema no distinguirá que programas están corriendo en cada puerto.

#17 Discos Duros más rápidos

Quizás ya sabes que la herramienta hdparm puede ser usado para probar la velocidad de tu disco duro y también para configurar ciertas cosas. Pero también se puede usar para optimizar y encender algunas características que no se habilitan por defecto. Antes de empezar, ten cuidado que al cambiar las opciones del disco puede causar que la data se vuelva corrupta, por eso has un backup antes de hacer estos cambios.
Para probar la velocidad podemos usar:
hdparm -Tt /dev/hda
Veras algo como esto:
/dev/hda:

Timing buffer-cache reads: 128 MB in 1.64 seconds =78.05 MB/sec
Timing buffered disk reads: 64 MB in 18.56 seconds = 3.45MB/sec

Ahora, si quieres aumentar la velocidad, para encontrar el disco que esta actualmente en usa, solo hay que pasar al hdparm el nombre del dispositivo:
hdparm /dev/hda
/dev/hda:
multcount = 16 (on)
I/O support = 0 (default 16-bit)
unmaskirq = 0 (off)
using_dma = 0 (off)
keepsettings = 0 (off)
readonly = 0 (off)
readahead = 8 (on)
geometry = 40395/16/63, sectors = 40718160, start = 0


Esto es justamente la configuración por defecto. La mayoría de las distros optan por estas opciones para que puedan trabajar con la mayoría de dispositivos. Para tener mas velocidad, quizás quieras habilitar el modo dma y ajustar el soporte de I/O. La mayoría de las computadoras modernas soportan el modo 3, el cual es un modo de transferencia a 32-bit, el cual puede ser doblado. Debes probar esto:

hdparm -c3 -d1/dev/hda

Luego ejecuta de nuevo la prueba de velocidad para ver la diferencia. Revisa los modos que tu hardware soporta y revisa el man de hdparm para como configurarlos.

#18 Mas tiempo en tus manos

Para ganar mas tiempo y ser mas efectivo puedes correr un proceso que actualice la barra de titulo del terminal con la carga actual en tiempo real, de modo que sabrás que es lo que estas ejecutando.

Guarda este script como tl en el directorio ~/bin
#!/usr/bin/perl -w

use strict;
$|++;

my $host=`/bin/hostname`;
chomp $host;

while(1) {

open(LOAD,"/proc/loadavg") || die "Couldn't open /proc/loadavg:
$!\n";

my @load=split(/ /,
);
close(LOAD);


print "$host: $load[0] $load[1] $load[2] at ", scalar(localtime);
print "\007";

sleep 2;
}


Cuando quieras tener tu barra de titulo reemplazada con el nombre, promedio de carga, la hora de sistema, simplemente ejecuta tl& esto hará que se ejecute en segundo plano aun si estas un programa interactivo como Vim.

#19 Tomando un screenshot (pantallazo) sin X

Hay una gran cantidad de programas para capturar la pantalla, pero la mayoría basada en X. El problema radica cuando una aplicación X que se esta ejecutando interfiere con la aplicación que deseas tomar, quizás un juego o un instalador Linux. SI usas ImageMagick, puedes tomar desde una sesión X vía la consola. Simplemente anda a un terminal virtual (CTRL + ALT + F1) e ingresa lo siguiente:
chvt 7; sleep 2; import -display :0.0 -window root sshot1.png; chvt 1;

El comando chvt cambia el terminal virtual y el comando sleep te el tiempo para mostrar la pantalla. El comando import captura toda la pantalla y lo guarda en un archivo antes del chvt final que regresa al terminal virtual. Asegúrate de escribir todo el comando en una linea.

Esto también puede servir en instalaciones Linux, la mayoría deja la consola ejecutándose en segundo plano, solo carga un CD con import y algunas librerías que requiere para ejecutar donde sea el capturador de pantalla.

#20 Acceder a tus programas remotamente

Si quieres estar recostado en tu cama y acceder con tu portátil o laptop con Linux a las aplicaciones de tu PC, lo puedes hacer usando SSH, primero debes habilitar lo siguiente en /etc/ssh/sshd_config:
X11Forwarding yes

Ya puedes ejecutar GIMP en 196.168.0.2 con:
ssh -X 192.168.0.2 gimp

Obviamente debes estar en red

miércoles 4 de marzo de 2009

Presto Distribucion de Inicio inmediato

Cuando escuchas acerca de un sistema operativo instantáneo (instant-on OS) pensamos en algo como SplashTop, ahora Xandros esta buscando traer ese concepto para cada laptop o portátil con Presto Xandros, una nueva distro de Linux que según dicen bootea (iniciar) en segundos. La idea no es reemplazar a Windows, sino como un complemento, podrás seleccionar entre Windows y Presto al momento de iniciar. Seguirás teniendo acceso a todos tus archivos y puedes desinstalar Presto desde Añadir/Quitar Programas. No es una mala idea para tener Linux y Presto parece muy funcional: Xandros ya potencia la Eee PC y parece que Presto de Xandros ejecutara decentemente. La instalación viene con Firefox, Skype, reproductores multimedia y suite de ofimática, pero Xandros esta pensando en una tienda de aplicaciones, entonces tendras mas opciones. Suena muy interesante. ¿Lo instalarías en tu laptop o portátil?

El lanzamiento de la version beta de Xandros Presto sera el 16 de Marzo.

Fuente.

martes 3 de marzo de 2009

Video: Reproduciendo archivos multimedia restrictivos en Ubuntu

Nuevamente en LinuxJournal muestran un vídeo tutorial esta vez es como habilitar Ubuntu para que pueda reproducir archivos multimedia restrictivos.

Tips para Linux que todos deberiamos saber. Parte III

Continuando las partes I y II con los tips o consejos para Linux, aquí dejo la tercera parte.

#11 Desfragmentar una base de datos en MySQL


Cada vez que cambias la estructura de una BD de MySQL o remueves una gran cantidad de data de esta, los datos pueden llegar a fragmentarse resultando en una perdida de performance, en especial cuando corres queries. Solo recuerda correr el optimizador cada vez que cambias tu base de datos:


mysqlcheck -o 'base de datos'


También te puede ser util desfragmentar tus tablas regularmente si estas usando campos de tipo VARCHAR.

#12 Envio rapido de e-mails

No puedes demorarte 3 segundos en localizar tu cliente de correo electrónico, una forma de enviar rápidamente un e-mail es presionando ALT + F2 lo cual mostrara el Dialogo de Ejecutar y ahí escribes:

mailto:plop@ploppypants.com


Presiona Enter y Kmail se levantara automáticamente, listo para usarlo. No es necesario que completes la dirección de correo. También funciona con direcciones de Internet. Intenta escribiendo una dirección de Internet y aparecerá Konqueror. Esto se ha probado con KDE, pero es probable que también funcione con GNOME.

#13 Paraleliza tu sistema

Si estas ejecutando un sistema multiprocesador (SMP) con un tamaño de RAM considerable, podras ver los beneficios, performando un paralelo (parallel) cuando construyes (build) tu código. Comparado con el modo serial build que es el que viene por defecto, el parallel build es mucho mejor. Para decirle a "make" que toma mas de un hijo (child) al mismo tiempo mientras se construye, usa la opcion -j

make -j4; make -j4 modules


#14 Ahorra energía de la batería

Seguramente te es familiar usar hdparm para ajustar tu disco duro, pero también te puede ayudar a ahorrar energía de tu laptop.

hdparm -y /dev/hdb
hdparm -Y /dev/hdb
hdparm -S 36 /dev/hdb


Lo que hacen estos comando es lo siguiente: hace que el disco cambie a modo Standby, a modo Sleep y finalmente configura en Automático el tiempo muerto de spindown. Este ultimo incluye una variable numérica, el cual su unidad son bloques de 5 segundos ( osea el valor 12 sera un minuto).

#15 Administrador de velocidad del Wireless (Red Inalambrica)

La velocidad en la cual una pieza de un equipo de radiotransmision puede comunicarse con otra depende en cuan disponible esta la señal. Para mantener la comunicación, los radios necesitan transmitir la data en un rango lento. Normalmente las radios intentan trabajar la señal disponible por su cuenta y automáticamente seleccionar la velocidad mas rápida posible.

En algunas áreas no muy despejadas o con señal pobre los datos se pueden perder innecesariamente mientras los radios intentan negociar la velocidad. Si puedes añadir mas antenas o reposicionar tu equipo para conseguir mejor señal. Otro método es forzar a que tu tarjeta sincronice a rango bajo. Cada controlador tiene sus propio método de configurar su velocidad. En Linux puedes configurar la velocidad con iwconfig:

iwconfig eth0 rate 2M


Esto forzara a la radio a siempre sincronizar a 2Mbps, aun si otras velocidades están disponibles. También puedes configurar cierta velocidad como limite y permitir que tu tarjeta escale automáticamente a cualquier velocidad mas baja, pero no ir mas rápido, ejemplo:

iwconfig eth0 rate 5.5M auto


Usando la directiva auto haces que el controlador pueda aumentar su velocidad a 5.5Mbps y correr mas lento si es necesario, pero nunca tratara de sincronizar mas rápido. Para restaurar la tarjeta a escalado automático, solo especifica auto:

iwconfig eth0 rate auto


Las tarjetas pueden por lo general lograr mas a 1Mbps que a 11 Mbps. Hay una diferencia de 12dB entre 1Mbps y 11Mbps.

lunes 2 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte II

Siguiendo con la continuación de la parte I de los tips en Linux que todos deberíamos saber dejo 5 mas.

#6 Navegacion rapida

Hay opcion un poco conocida en KDE para aumentar la velocidad de tu navegador web. Inicia el Centro de Control de KDE y escoge Sistema > KDE > Performance en la barra lateral. Ahora puede precargar instancias para Konqueror. Efectivamente esto significa que esta corriendo en segundo plano, pero escondido hasta que intentes usarlo, cuando lo haces aparece casi instantáneamente.

#7 Haz una copia de seguridad (Backup) de tu sitio web fácilmente

Si deseas hacer una copia de seguridad (backup) de un directorio en una computadora y solo copiar los archivos modificados en vez de todos los archivos cada vez que haces un backup, puedes usar la herramienta rsync para hacerlo. Necesitaras una cuenta en la computadora remota de la cual copiaras los archivos. Este es el comando:



rsync -vare ssh jono@192.168.0.2:/home/jono/archivosimportantes/*
/home/jono/backup/


Aquí se están copiando todos los archivos en /home/jono/archivosimportantes en 192.168.0.2 a /home/jono/backup en la maquina actual.

#8 Mantén tu reloj a la hora

Si te parece que tu reloj no esta a la hora, puedes usar la herramienta especial NTP para asegurarte que siempre este sincronizado con cierta precisión. Necesitas instalar la herramienta NTP que por lo general viene en el paquete NTP y luego puedes sincronizar con el servidor NTP:


ntpdate ntp.blueyonder.co.uk


Hay una lista de servidores disponibles en www.eecis.udel.edu/~mills/ntp/clock1b.html. Si modificas tu proceso de booteo y scripts para incluir el comando puedes estar seguro que siempre estarás a la hora cuando inicies tu computadora.

#9 Encontrando los archivos mas pesados

Un problema común con las computadoras es cuando tienen una gran cantidad de archivos pesados (como vídeos y audios) que no los puedes manejar. Puedes encontrar el archivo mas pesado en el directorio actual con:


ls -lSrh


La "r" hace que el archivo mas pesado sea listado al final y la "h" te da una salida que pueda ser mas entendible. También puedes encontrar el archivo MP3 o MPEG mas pesado:


ls -lSrh *.mp*

También puedes hacer búsqueda por el directorio mas grande:


du -kx | egrep -v "\./.+/" | sort -n

#10 Accesos directos en Nautilus

A pesar de que la mayoría de administradores de archivos esta diseñados para ser usado con el mouse, también es útil usar el teclado algunas veces. Nautilus tiene algunos atajos (shortcuts) para el teclado que pueden ser de mucha utilidad:

  • Abrir una ubicacion - CTRL + L
  • Abrir el directorio Padre - CTRL + Re.Pag
  • Flechas de navegacion en el directorio actual.

Recuento de la semana 23 Feb - 01 Mar 2009

El recuento de la semana del 23 de Febrero al 01 de Marzo del 2009

  • Como instalar el nuevo sistema de notificaciones de Ubuntu 9.04 - 23 Feb - Genbeta
  • BleachBit herramienta para limpiar el disco duro - 24 Feb - Genbeta
  • 11 cosas que debes saber para ser un experto en APT - 01 Mar - MundoGeek
  • Novedades e imagenes de XFCE 4.6 - 01 Mar - Genbeta

domingo 1 de marzo de 2009

Tips para Linux que todos deberiamos saber. Parte I

Quisiera compartir con ustedes unos tips para Linux en esta pagina, son 57 tips o ayudas que están en ingles y espero poder ir presentándolas cada cierto tiempo, espero que les sea de utilidad. Aquí van las primeras 5.

#1 Revisar que no es ejecutado por ti

Si deseas saber que otros usuarios están robando el precioso tiempo de tu CPU con sus experimentos científicos, servidores web o cualquier otra cosa, entonces veamos todos los procesos que no están siendo ejecutados por ti:

ps aux | grep -v `whoami`

O quizás algo mas inteligente, porque no mostrar solo la lista de los 10 que mas tiempo consumen:

ps aux  --sort=-%cpu | grep -m 11 -v `whoami`

Quizás sea mejor ejecutar esto como root aso se filtrara los procesos vitales que están en segundo plano. Ahora que tienes esta información solo necesitas matar los procesos.

#2 Reemplazar el mismo texto en múltiples archivos

Si tienes un texto que quisieras reemplazarlo en varios archivos, hay muchas formas de hacerlo. Para reemplazar el texto Windows por Linux en todos los archivos (llamados prueba algo) en el directorio actual puedes ejecutar lo siguiente:

perl -i -pe 's/Windows/Linux/;' prueba*

Para reemplazar el texto Windows por Linux en todos los archivos en directorio actual y bajar puedes hacer lo siguiente:

find . -name '*.txt' -print | xargs perl -pi -e's/Windows/Linux/ig' *.txt

O si prefieres esto también funcionaria pero solo con archivos regulares

find -type f -name '*.txt' -print0 | xargs --null perl -pi -e 's/Windows/Linux/'

#3 Reparar un terminal con problemas

Alguna vez ha pasado que accidentalmente usamos cat o less para listar archivos y terminamos viendo en vez de eso un binario. Esto usualmente envuelve una serie de de códigos que malograrían el terminal. Estará emitiendo bips y mostrando caracteres basura al final todo termina siendo jeroglíficos y no sabes que hacer. Bueno obviamente bash sigue trabajando pero no puede leer lo que actualmente esta pasando. Envía al terminal un comando de inicialización:

reset

Y todo estará bien de nuevo.

#4 Creando claves para Mozilla Firefox

Una característica muy util de Konqueror es la habilidad de tipear gg "cebolla" para hacer una búsqueda en Google basada en la palabra cebolla. Lo mismo se puede hacer con Firefox, primero haz clic en Marcadores > Administrar Marcadores y agrega un nuevo Marcador y añade una URL asi:

http://www.google.com/search?q=%s

Ahora selecciona la entrada en editor de marcadores y clic en el botón Propiedades. Ahora ingresa la palabra gg (o cualquiera que escogas) y el proceso esta completo. El %s en la URL sera reemplazado con el texto después de la palabra clave.

#5 Ejecutando varias sesiones X

Si compartes tu PC con Linux con alguien mas y estas cansado de logearte y salir, quizás te alivie saber que no es necesario hacer eso. Asumiendo que tu computadora inicia en modo grafico ( nivel 5) presionando a la misma vez las teclas Control + ALT + F1 aparecerá la ventana para logearse. Ingresa tu usuario y contraseña y ejecuta:

startx -- :1

para obtener el ambiente gráfico. para regresar a tu sesión anterior, presiona Control + ALT + F7, mientras estas regresando presiona Control + ALT + F8.

Puedes repetir el truco: las teclas F1 a F6 identifican seis sesiones de consola, mientras que las teclas F7 a F12 identifican seis sesiones X o gráficas.
Nota: aunque esto pueda funcionar en la mayoría de los casos, distribuciones diferentes pueden implementar esta característica en otras formas.