Tabla de Contenidos

Algunos Comos de Debian

Logo Debian Aquí dejaremos indicado algunos tip's de Debian, los que usaremos a diario de este Sistema Operativo Debian.

Sin perjuicio de esto, los TIP's nunca reemplazarán a los manuales de la distribución, si no que simplemente pretende ser un recordatorio de comandos sabidos o de utilidades que nos harán la vida más fácil.

Parámetros para definir la Consola Wterm

Hay veces que es necesario adaptar la consola que usamos a un tamaño adecuado para nosotros o disponer en ella algún tipo de modificación más allá de la que se entrega por defecto.

Dejaremos algunos parámetros que nos interesa modificar, con el siguiente comando:

  $ wterm -fg white -bg black -cr green -tr -sr -geometry 172x64

Como ahorrar espacio en Disco

Para ahorrar espacio en disco hay varias formas que indicaremos a continuación:

locales

Una de estas formas es instalar locales & localepurge, que son dos aplicaciones que nos permite seleccionar nuestro idioma y su archivos asociados

  #aptitude install locales localepurge

Esto nos instala ambas aplicaciones y sus dependencias, lo que permite configurar nuestro idioma con locales y posteriormente a ello deberemos de correr la aplicación localepurge la que nos elimina todos los archivos de idiomas que no han sido seleccionados en su configuración.

Borrando archivos del Caché

Una de las formas de realizar esta actividad es usando las herramientas que nos proporciona el sistema, en teste caso los apt-get y el caché se encuentra en /var/cache/apt/archives

  #apt-get autoclean   //elimina únicamente los paquetes inútiles
  #apt-get clean       //elimina la totalidad de los paquetes del caché

Como saber que archivos están duplicados

Cuando un sistema se encuentra funcionando desde hace años y han habido un sin número de actualizaciones e instalaciones y desinstalaciones de paquetes y archivos de datos, es inevitable que existan duplicidad de archivos o lo que es peor archivos con el mismo contenido pero con distinto nombre.

Bueno para este complicado estado del sistema existe una salvación, que es la instalación de un analizador de contenidos, este es fdupes.

# aptitude install fdupes

Una vez instalado podemos ver el man de esta aplicación de consola y ejecutar el siguiente comando que analizará un directorio y dejara en un archivo el contenido del análisis.

$ fdupes -r -n -S ~/pdf  > ~/duplicados.txt

Lo que hace este comando es analizar el directorio ~/pdf y genera un archivo duplicados.txt, que su contenido es el análisis de los contenidos de los archivos del directorio indicado.

Como obtener información de los paquetes

Para obtener informacion de los paquetes y de sus nombres, debemos usar el siguiente comando:

  # apt-cache search nombre_del_paquete --> Busca el nombre de un paquete
  # apt-cache show   nombre_del_paquete --> Mayor info del paquete.

Como instalar un paquete sin saber su nombre

Parece un contrasentido, pero aún así hay formas de buscar un nombre de un paquete que se nos ha olvidado o no sabemos su nombre.

Uno de los caminos para conocer el nombre de un paquete es conocer el nombre de unos de los archivos importantes que lo componen, por ejemplo para conocer el nombre del paquete que ofrece “stdio.h” se puede ejecutar:

  # dpkg -S stdio.h

Con la ejecución de este comando, nos entrega bastante info que podemos relacionar a la hora de buscar algo que desconocemos su nombre, en el ejemplo planteado la salida de este comando es:

  sdcc-libraries-nf: /usr/share/sdcc/include/stdio.h
  libc6-dev: /usr/include/bits/stdio.h
  sdcc-libraries-nf: /usr/share/sdcc/include/pic16/stdio.h
  avr-libc: /usr/share/doc/avr-libc/avr-libc-user-manual/group__avr__stdio.html
  perl: /usr/lib/perl/5.10.0/CORE/nostdio.h
  avr-libc: /usr/share/doc/avr-libc/man/man3/stdio.h.3.gz
  libc6-dev: /usr/include/stdio.h
  avr-libc: /usr/lib/avr/include/stdio.h
  libstdc++6-4.3-dev: /usr/include/c++/4.3/tr1/stdio.h

Como saber los paquetes que tenemos instalados

Hay ciertas cosas que a los novatos en Unix le parecen marcianas y una de ellas es el uso de la consola de comandos, herramienta sumamente útil para otros y que su aprendisaje es altamente necesario….

Por ejemplo para saber que paquetes tenemos instalado en nuestro sistema, es simple por línea de comandos..

  # dpkg -l                --> Muestra todos los paquetes instalados.
  # dpkg -l | grep _nombre_--> Muestra la salida con filtro por _nombre_.

Como instalar los mismos paquetes que tenía instalados

Hay ocasiones en que ya sea por una actualización o por cambio de versión o cualquier otra razón, se hace necesario replicar los mismos paquetes que tengo instalados en una máquina en otra máquina.

Para ello es necesario disponer de un listado de los paquetes que tengo instalados en mi máquina actual la de origen, para generar ese archivo debemos correr el comando siguiente:

$ sudo dpkg --get-selections > /tmp/paquetes_instalados.txt
$ scp /tmp/paquetes_instalados.txt  usuario@maquinaremota:~/.

Con este comando lo que hemos hecho es, generar el archivo paquetes_instalados.txt en el directorio temporal con el contenido del listado de todos los paquetes que tenemos instalados en una determinada máquina. Una vez hecho esto tendremos el archivo con el detalle, el cual pasaremos por la red local a otra máquina para que sean instalados.

La forma en que podemos generar ese listado como requerimiento de instalación en la nueva máquina, es con el comando siguiente:

$ cat paquetes_instalados.txt | sudo dpkg --set-selections

Con esto hemos seleccionado por completo el listado de requerimientos, con todas las aplicaciones que teníamos instaladas en la máquina de origen.

Ahora simplemente debemos instalarlos con el siguiente comando:

$ sudo apt-get -y update
$ sudo apt-get dselect-upgrade

Con esto y después de esperar que se instalen todos los paquetes, hemos replicado todos los paquetes desde la máquina origen a la de destino.

Como instalar programas sobre demanda

Como instalar programas sobre demanda. Si esta compilando un programa y le hace falta otro programa ”.h” que no esta en su sistema. La aplicación “auto-apt” puede salvarlo de esta situacion. Le pregunta si instala ciertos programas que son requeridos, deteniendo los procesos relevantes y continuando una vez que el paquete requerido es instalado.

  # auto-apt run command (command que necesita los archivos)
  # auto-apt run ./configure

Como instalar un Programa Fuente

La instalación de programas fuente en Debian no son tan raros, ya que Debian a pesar de ser una distribución bastante estable, carece de las últimas versiones de varios paquete que a veces desearíamos disponer en nuestra distribución. El problema surge cuando estas versiones no están siendo manejadas por nuestros administradores de paquetes y deseamos que sean mantenidas por la distribución.

Para lograr esto, lo que debemos hacer es instalar el paquete checkinstall, este paquete permite generar un paquete deb a contar de los archivos fuente de la aplicación.

Para instalarlo:

  #aptitude install checkinstall

Supongamos que estamos instalando la última versión por ejemplo de SQLite que es la versión 3.6.18 al momento de generar este Como y la que existe es los paquetes Debian, claramente es una versión anterior. Ahora generamos un directorio de trabajo y bajamos esta versión de su pagina web.

Para su uso debemos hacer lo siguiente:

  Compilando el paquete:
  (1) ./configure
  (2) make
  (3) sudo checkinstall

En el tercer paso nos pedirá algunos datos que deberemos ingresar y posteriormente no creará el paquete deb, que en este caso será:

  sqlite_3.6.18-1_i386.deb

Después de esto procedemos con el clásico:

  sudo dpkg -i sqlite_3.6.18-1_i386.deb

Como disponer de un LOG de Booteo

Para generar un LOG en el botteo y detectar problemas en este, se debe editar el archivo ubicado en /etc/default/bootlogd, naturalmente como root y modificar lo siguiente:

BOOTLOGD_ENABLE=No (este es el estado por default y se debe cambiar a)

BOOTLOGD_ENABLE=Yes

Una vez hecho esto y guardar los cambios, se debe reiniciar la máquina y ver el archivo en /var/log/boot

Como enviar un LOG de una maquina a otra

Para enviar los logs a otra maquina, lo que se debe hacer es:

  1. Editar el script de inicio de syslog ”/etc/init.d/sysklogd”, se busca la variable SYSLOGD y se deja “SYSLOGD=”-r”
  2. Se reinicia el servicio es esta maquina ”/etc/init.d/sysklogd restart”
  3. En la maquina donde quiero recivir el log de la maquina remota se pone en el archivo ”/etc/syslog.conf” al final, en la ultima lines se debe agregar 4 y 5.
  4. *.* @ip_de_maquina_remota
  5. *.* @192.168.1.105 –> Por ejemplo

Como forzar a que una NIC funcione a 100BT

Para forzar a una tarjeta de red a funcionar a 100BT aunque sea de 10/100 o 1000, se debe instalar el paquete debian ethtool, de acuerdo al siguiente:

  # apt-get  install ethtool  --> Para los clásicos de apt-get
  # aptitude install ethtool  --> Herramienta de administración de paquetes

Suponiendo además que la tarjeta NIC que deseamos dejar forzada sea la eth1, deberemos realizar lo siguiente:

  # ethtool -s eth1 speed 100 duplex full

Para verificar que así sea:

  # ethtool eth1

Como Remover Servicios

Hay oportunidades en que no requerimos tener servicios en nuestra máquina y hay una forma correcta de removerlos y es la siguiente:

# update-rc.d -f  nombre_del_servicio   remove

Esto nos permite remover de los runlevels, el nombre_del_servicio que requerimos dejar de entregar, ahora un ejemplo concreto:

# update-rc.d -f portmap  remove 

Lo anterior nos remueve el servicio portmap y nos cierra el puerto 111/tcp de nuestro sistema.

Como traer el contenido de un archivo

Hay veces en que necesitamos traer el contenido de un archivo entre una maquina remota a una local, esto típicamente se requiere para archivos de configuraciones por ejemplo.

En este caso del ejemplo, estamos en la máquina local y deseamos traer el contenido filtrado de un archivo desde la maquina remota.

  #ssh user@ip_remoto cat ~/remote_file.txt | grep filter >> ~/local_file.txt

Como extraer comentarios de los archivos

En ciertas ocasiones es posible que requiramos extraer los comentarios de los archivos, como por lo general los comentarios de los archivos en Unix se inician con el ”caracter gato #”, podemos hacer un filtro que elimine las lineas que parten con este caracter.

  $ grep ^[^#] nombre_archivo

Vamos ahora a ver un ejemplo de la utilidad de este comando, supongamos que necesitamos sacar todos los comentarios de un archivo de configuración y dejarlo en otro archivo de texto plano, pero que contenga los parámetros reales del archivo.

  $ grep ^[^#] /etc/squid/squid.conf > squid_parm.txt

El resultado de esto lo hemos dejado en el archivo squid_parm.txt

Como generar una imagen ISO

Hay veces que necesitamos realizar una imagen ISO de un CD o DVD, para realizar esto en Unix debemos usar el comando dd, supongamos que nuestra unidad de DVD o CD es la hda, que son típicamente en máquinas que los discos son SATA y las unidades de DVD o CD son IDE, por lo que el comando quedaría de la forma siguiente:

  $ dd if=/dev/hda  of=imagen.iso

Se genera una imagen.iso de DVD o CD.

Como montar una imagen ISO

Una vez generada esa imagen.iso, que la tendremos en nuestro directorio /home/user/, requerimos montarla, para ello deberemos realizar el siguiente comando:

  # mount imagen.iso /mnt -o loop

Monta la imagen ISO sobre el directorio /mnt.

Como grabar un CD desde línea de comandos

En este caso se supone que tenemos una imagen.iso, generada con anterioridad y se encuenta el algún directorio de nuestro /home/user/, por lo que ahora nos queda realizar la grabación de esta, sin necesidad de usar herramientas X, tales como k3b, brasero y otras, por ello deberemos correr el siguiente comando:

  # cdrecord -v dev=/dev/hda speed=12 fs=30m -eject -data imagen.iso

Con esto hemos definido:

Como formatear un Pendrive USB en Linux

El formateo de las unidades de almacenamiento en una tarea delicada, sobretodo en Unix en donde un error es irrecuperable, por ello se debe tener especial cuidado en detectar que la unidad es la correcta, para ello debemos usar habitualmente el dmesg o el fdisk -l para tener la seguridad suficiente en el dispositivo a formatear.

Pero como dato general, los pendrive montados si tenemos discos IDE (hda, hdb), son detectados por sda, y cuando tenemos discos SATA en nuestra maquina, los pendrive pasan a ser sdb o sdc dependiendo si tenemos un sólo disco SATA o dos.

Supongamos que nuestro pendrive, se a detectado como un dispositivo /dev/sdb y tiene una partición, eso significa que pasará a ser el dispositivo /dev/sdb1. El comando para ser formateado en VFAT es el siguiente:

# aptitude install dosfstools (Instale este paquete primero).
# mkfs.vfat /dev/sdb1         (Este comando formatea en FAT32 el USB).

Este comando debe ser ejecutado como root en una consola, ya que así lo indica el signo # en la linea de comando.

Como ver la mejor resolución en X

En pantallas wide hay veces en que no sabemos realmente que resolución soporta la pantalla, especialmente si somos novatos en linux.

Para salvar este problema tenemos una aplicación de consola que nos dirá que resolución tenemos y cual es la mejor que podemos tener en nuestra máquina, para ello ejecutamos el comando xrandr y nos entrega lo siguiente:

$ xrandr
 
Screen 0: minimum 320 x 200, current 1024 x 600, maximum 1024 x 1024
VGA disconnected (normal left inverted right x axis y axis)
LVDS connected 1024x600+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
   1024x600       62.4*+
   800x600        85.1     72.2     75.0     60.3     56.2  
   640x480        85.0     72.8     75.0     59.9  
   720x400        85.0  
   640x400        85.1  
   640x350        85.1  
TV disconnected (normal left inverted right x axis y axis)

Como podemos ver nos entrega bastante información que podemos usar para configurar las X en forma óptima.

Como buscar un Mirror de Debian más Rápido

Siempre es deseable tener un mirror de Debian lo más rápido posible, pero son tantos que obviamente no lo pondremos a buscar experimentalmente, para eso usamos un comando estupendo para ello:

# aptitude install netselect-apt

Esto instala dos aplicaciones la netselect y la netselect-apt, que al correrlar como root nos genera en el directorio en que estamos parados un archivo source.list en forma automática, lo que nos deja la opción de probar los nuevos mirror sin modificar el source.list original de nuestra máquina.

La forma de uso es la siguiente:

# netselect-apt -s -n lenny

Como activar el modo Laptop en Lenny

Uno de los detalles que importan a la hora de usar un laptop, es cuidar el uso de la batería, para ello los kernel's 2.6.6 y superiores vienen preparados para tal efecto, pero habitualmente no está activado.

Una forma simple de ver si está activado o no es:

# cat /proc/sys/vm/laptop_mode

Si la respuesta a este cat es 0 (cero), NO tenemos habilitada esta opción, para habilitarla debemos hacer lo siguiente:

# echo 5 > /proc/sys/vm/laptop_mode

Lo que hace esto es bajar los ciclos de accesos de los discos duros, optimiza los accesos de los buffers al disco y maneja de mejor forma el consumo del disco por ejemplo. Ver detalles en este link.

Como libero mi CD-DVD que no responde

Hay veces en que la unidad de CD-ROM o DVD se nos queda pegada porque alguna aplicación, nos la dejó pegada, en estos casos existen procesos que dejan tomada la unidad, una de las primeras cosas que debemos saber es quien la ha dejado tomada, eso lo sabremos con el siguiente comando:

# fuser /media/cdrom

Debemos tener en cuenta que el dispositivo se ha montado en /media/cdrom pero puede estar en otro directorio, teniendo esto en cuenta, este comando nos entrega que proceso nos tiene tomada la unidad, para liberarla lo hacemos con el siguiente comando:

# fuser -k /media/cdrom

Después de esto, sólo nos queda expulsar la unidad mediante un eject cdrom.

Como saber que Versión de Java usa tu Sistema

Es dificil saber que versión de Java usa tu sistema si hay más de una versión en uso y podría servir para confundirnos, una forma de configurar una versión de Java es:

$ sudo update-alternatives --config java <enter>

Hay 3 alternativas que proveen `java'.

  Selección     Alternativa
-----------------------------------------------
 *        1    /usr/lib/jvm/java-6-sun/jre/bin/java
          2    /usr/bin/gij-4.3
 +        3    /usr/lib/jvm/java-gcj/jre/bin/java

Pulse <Intro> para mantener el valor por omisión [*] o pulse un número de selección:

Tienes que ingresar la opción que deseas simplemente.

Para probar java en el navegador, abrimos el siguiente link.

Programa de Comunicaciones

Hay muchas aplicaciones que nos permiten conectarnos a nuestros dispositivos embebidos bajo Linux, por consola tenemos uno muy usado que es el minicom, pero para ambiente X tenemos el cutecom.

# aptitude install cutecom

Como abrir una sola ventana en Gnome

Una de las cosas que más molesta, al menos en el uso de Gnome, es que cada vez que usas el navegador de archivos y abres distintos directorios, se abren varias ventanas proporcionales a los directorios, es decir una ventana por cada directorio que abres, para eliminar eso, se debe hacer lo siguiente:

Ventanas del Navegador de Gnome

Navegador de Archivos → Editar → Preferencias → Comportamiento. Aquí se debe marcar Siempre abrir en una ventana del Navegador