Automount disco eSata

26/01/2011

Tengo un disco SATA y una base para conectarlo a un puerto USB o a un puerto eSATA.
La conexión por USB va sin problemas y se monta automáticamente.
La conexión por eSATA provocaba un mensaje de error: “org.freedesktop.hal.storage.mount-fixed auth_admin_keep_always <– (action, result)."
De momento lo he solucionado introduciendo estas líneas en el fichero /etc/PolicyKit/PolicyKit.conf:

[?xml version="1.0" encoding="UTF-8"?] [!-- -*- XML -*- --]

[!DOCTYPE pkconfig PUBLIC "-//freedesktop//DTD PolicyKit Configuration 1.0//EN"
"http://hal.freedesktop.org/releases/PolicyKit/1.0/config.dtd"]

[!-- See the manual page PolicyKit.conf(5) for file format --]

[config version="0.1"]
[match user="root"]
[return result="yes"/]
[/match]
[match user="mi_usuario"]
[match action="org.freedesktop.hal.*"]
[return result="yes"/]
[/match]
[/match]
[define_admin_auth group="admin"/]
[/config]

Edito: en Ubuntu 11.10 el fichero que hay que modificar es /usr/share/polkit-1/actions/org.freedesktop.udisks.policy y hay que establecer el tag “allow_active” a “yes” (en vez de “auth_admin_keep” que es como está por defecto) en la entrada que corresponda con el error que aparece en pantalla al intentar acceder al disco duro.


Backups con rsync

14/01/2011

Gracias a este magnífico post de Vicente Navarro he aprendido cómo hacer backups con rsync.
Recomiendo leerlo íntegramente a todos los interesados. No obstante, escribo aquí el comando que lanzo para mis backups:

rsync -av –delete –include-from=backup.txt $DIR_ORIGEN $DIR_BACKUP

– $DIR_ORIGEN es el directorio a partir del que cuelga toda la estructura que queremos copiar. Normalmente será / o $HOME

– $DIR_BACKUP es el directorio donde vamos a realizar el backup. En mi caso es un directorio donde tengo montado un disco externo.

– backup.txt es un fichero con reglas que definen qué es lo que hay y no hay que copiar. En mi caso es algo así:

+ /dir1/***
+ /dir2/***
- /dir3/no_copiar/***
+ /dir3/***
- */
- *

Lo que significa que copie toda la rama dir1 y dir2 así como toda la rama dir3 salvo el subdirectorio dir3/no_copiar
El orden es importante, es decir, es necesario poner la exclusión “- /dir3/no_copiar/***” por encima de “+ /dir3/***”

En mi caso tengo algo más de 40Gb y casi 300.000 ficheros a copiar. Tras el primer backup que lógicamente tarda bastante, los posteriores backups, si no hay cambios, tardan unos 3 minutos en comprobarlo todo. Si hay cambios, hay que sumarle el tiempo de copiado y borrado de ficheros.


Benchmark de memoria USB

8/01/2011

Para comprobar la velocidad de lectura y escritura de una memoria USB, primero tenemos que montarla evitando el uso de caché que pueda desvirtuar el benchmark:

mount -t vfat /dev/sdc1 ./disk -o sync,dirsync

Después, por ejemplo, escribimos un fichero de 10Mb (en 10 bloques de 1Mb):

dd if=/dev/zero of=./disk/foo bs=1048576 count=10

Podemos probar diversas combinaciones de “bs” y “count” para ver cómo afecta el tamaño del bloque al rendimiento.

(más referencias del comando dd: http://www.linuxquestions.org/questions/linux-newbie-8/learn-the-dd-command-362506)


Unir ficheros PDF

6/10/2010

Para unir varios ficheros PDF en uno solo:

gs -dBATCH -dNOPAUSE -q -sDEVICE=pdfwrite -sOutputFile=resultado.pdf file1.pdf file2.pdf file3.pdf…

Visto en linux.com

Para generar un documento pdf a partir de varias imágenes:

a2ps –title=’titulo’ -R –columns=1 –rows=1 *.jpg –output=doc.ps
ps2pdf doc.ps doc.pdf


Cómo solucionar git svn si el repositorio SVN se ha movido

23/09/2010

Tengo un repositorio Git clonado de un repositorio Svn. Se ha movido el repositorio Svn a otro servidor, y ahora el git svn rebase lanza este error:

Unable to determine upstream SVN information from working tree history

Afortunadamente he encontrado una solución:

1) editar la URL svn-remote en .git/config para apuntar al nuevo repositorio
2) lanzar git svn fetch
3) cambiar la url svn-remote al antiguo repositorio
4) lanzar git svn rebase -l para realizar un rebase local (con los cambios obtenidos en el último fetch)
5) cambiar la url svn-remote url de nuevo al nuevo repositorio
6) lanzar git svn rebase que ahora debería funcionar


Echar a andar un portátil antiguo

9/08/2010

La semana pasada tuve en mis manos un Toshiba Satellite 1800-514 del 2001, con 384Mb de ram. El reto era hacerlo usable con un sistema operativo actual.
Para ello me decidí por instalar ubuntu con lxde. Me bajé el “Ubuntu Minimal CD image”, installé la versión “Command line install” y posteriormente:

sudo aptitude install xorg lxde synaptic

A partir de ahí, al iniciar entra en el modo gráfico al escritorio LXDE.
Le instalé Google Chrome (más ligero que Firefox), OpenOffice y alguna cosilla más.

Surgió un problema con el modo de vídeo, ya que no aprovechaba toda el área de la pantalla. Tuve que crear un xorg.conf personalizado:

# xorg.conf (X.Org X Window System server configuration file)
#
# This file was generated by dexconf, the Debian X Configuration tool, using
# values from the debconf database.
#
# Edit this file with caution, and see the xorg.conf manual page.
# (Type "man xorg.conf" at the shell prompt.)
#
# This file is automatically updated on xserver-xorg package upgrades *only*
# if it has not been modified since the last upgrade of the xserver-xorg
# package.
#
# Note that some configuration settings that could be done previously
# in this file, now are automatically configured by the server and settings
# here are ignored.
#
# If you have edited this file but would like it to be automatically updated
# again, run the following command:
#   sudo dpkg-reconfigure -phigh xserver-xorg

Section "Device"
	Identifier	"Trident Microsystems CyberBlade XPAi1"
	Driver		"trident"
	BusID		"PCI:1:0:0"
EndSection

Section "Monitor"
	Identifier	"Generic Monitor"
	Option		"DPMS"
	HorizSync	28-51
	VertRefresh	43-60
EndSection

Section "Screen"
	Identifier	"Default Screen"
	Monitor		"Generic Monitor"
	Device		"Trident Microsystems CyberBlade XPAi1"
	SubSection "Display"
		   Depth 8
		   Modes "1024x768"
	EndSubSection
	SubSection "Display"
		   Depth 16
		   Modes "1024x768"
	EndSubSection
	SubSection "Display"
		   Depth 24
		   Modes "1024x768"
	EndSubSection
	SubSection "Display"
		   Depth 32
		   Modes "1024x768"
	EndSubSection
EndSection

La verdad es que iba muy decente. Eso sí, no esperes ver vídeos de youtube o hacer videoconferencia.


Huawei E 1752 en Ubuntu 9.04

19/07/2010

Gracias a esta entrada he logrado configurar y hacer funcionar el modem usb en mi portátil: http://ubuntuforums.org/showthread.php?t=1328227

El problema con este modem USB es que, además de ser modem, es a la vez dispositivo de almacenamiento. El sistema operativo lo detecta como sistema de almacenamiento y el network manager no muestra la opción de conectarse a través de él.
Para solucionarlo necesitamos la utilidad usb-modeswitch (http://packages.debian.org/sid/usb-modeswitch) y sus dependencias, especialmente usb-modeswitch-data (http://packages.debian.org/sid/usb-modeswitch-data)

Una vez instalada la utilidad:

– como usuario root editamos el fichero /etc/usb_modeswitch.conf y le añadimos estas líneas:

########################################################
# Huawei E1752
#
# Contributor:

DefaultVendor= 0x12d1
DefaultProduct= 0x1446

TargetVendor= 0x12d1
TargetProdct= 0x1001

MessageEndpoint= 0x01

MessageContent= "55534243000000000000000000000011060000000000000000000000000000"

– también, como root, creamos el fichero /etc/udev/rules.d/10-huawei-e1752.rules :

ATTRS{idVendor}==”12d1″, ATTRS{idProduct}==”1446″,
RUN+=”/usr/sbin/usb_modeswitch”

– reiniciamos
– insertamos el modem usb
– si el sistema lo monta automáticamente, lo desmontamos
– desde el terminal ejecutamos como root: usb_modeswitch -c /etc/usb_modeswitch.conf
– nos vamos al network manager y creamos la nueva conexión de banda ancha móvil (no olvidemos poner el pin)
– ahora deberíamos poder conectarnos desde el network manager.