Desactivar datos 3g/2g en Android excepto para MMS
Los smartphone (teléfono inteligente) Android prácticamente están siempre conectados a Internet bien por wifi o por datos moviles (2g/3g) Si no tienes tarifa plana esto te puede suponer mucho dinero en Tú factura. La solución fácil, desactivar datos móviles. Cuando estés conectado a una wifi se sincronizará el teléfono actualizándo el correo, calendario, etc.
¿Entonces todo solucionado? No. La pega es que te quedas sin MMS (mensajes multimedia) No puedes enviar ni recibir MMS porque para eso necesitas una conexión de datos móviles.
¿Sería una solución desactivar la sincronización de cuentas y activar datos móviles? Si y no. Puedes tener instaladas aplicaciones, widget, etc que se conectan a Internet por su cuenta.
En el market de Android hay una app APNdroid que dice poder desconectar datos móviles pero permitir mms. Yo no la he probado pero buscando información de usuarios hay un poco de todo. La verdad, me fastidiaría comprarla para que no funcionase.
Dándole vueltas al tema me decidí por otra solución. Instalé un cortafuegos con el que Yo decidía que aplicaciones tienen acceso a Internet y por donde (wifi y/o 3g)
Al tajo:
- Tienes que tener acceso ROOT*. Si no sabes si lo tienes verifícalo con la app RootCheckerBasic
- Instalamos el cortafuegos DroidWall
- Vas a aplicaciones -> DroidWall y habilitas a todos los programas solo en la wifi excepto el programa de mensajería.
- En DroidWall vas a menu -> aplicar reglas
A partir de este momento solo la aplicación de mensajes (sms, mms) puede acceder a datos móviles.
Cuando no tengas wifi verás que levanta la conexión de datos móviles aunque no hay trafico. La forma más rápida de desactivarla es con una pulsación larga en el botón de apagado y seleccionar en la nueva ventana Conexión de Datos para activarla o desactivarla.
¿Que ocurre si te mandan un MMS y tienes la conexión de datos desactivada? Te llega un mensaje indicándote que tienes un mms pendiente de descargar. En ese momento activas la conexión y ya está.
¿Y si quieres conectarte por datos móviles pero el cortafuegos no te deja? DroidWall tiene un widget que pulsandolo activa (verde) y desactiva (rojo) el cortafuegos.
Cada app que instales después tendrás que configurarla en DroidWall.
* Por ultimo una aclaración sobre acceso ROOT. El tener acceso ROOT es ser el administrador, poder toquetear en cualquier parte del sistema. Esto puede ser peligroso si lo usas de manera muy frívola dando acceso ROOT a cualquier aplicación, pero tiene muchas ventajas bien usado como el cortafuegos DroidWall, hacer copias de seguridad con TitaniumBackup, proteger tus datos de app indiscretas con LBE Privacy Guard, acceder a cualquier carpeta del sistema con File Expert, etc
Normalmente los teléfonos no vienen con acceso ROOT. Como habilitarlo depende de cada teléfono. Busca por Internet. Por ejemplo, para un Samsung Galaxy S Plus tienes Easy Root/Unroot
Bye
Crea un marcador para traducir una web o selección con Google
Hace tiempo, desde la página de traducción de Google podías agregar un marcador (o favorito) a tu navegador, que te permitía acceder rápidamente a la traducción de la página que estabas viendo o del texto seleccionado.
Ahora no lo encuentro. Puedes utilizar complementos o la barra de Google para ese propósito, pero se me antoja cómodo un pequeño código javascript en un marcador para usar el traductor y no tener que instalar nada.
Para usarlo crea un marcador, ponle un nombre y en el espacio para la dirección copias el siguiente código:
javascript:var%20t=((window.getSelection&&window.getSelection())||(document.getSelection&&document.getSelection())||(document.selection&&document.selection.createRange&&document.selection.createRange().text));var%20e=(document.charset||document.characterSet);if(t!=''){location.href='http://translate.google.es/?text='+t+'&hl=es&langpair=auto|es&tbb=1&ie='+e;}else{location.href='http://translate.google.es/translate?u='+encodeURIComponent(location.href)+'&hl=es&langpair=auto|es&tbb=1&ie='+e;};
Algunos parámetros indican:
Interface aparece en castellano hl=es
Detecta el idioma original de manera automatica langpair=auto
Y te lo traduce al español langpair=auto|es
Fácil y rápido. Ahora si quieres traducir una frase o párrafo, selecciona el texto y pincha en el marcador. Si quieres traducir toda la página, sin seleccionar nada, pincha en el marcador.
Bye
Tratar imágenes en la línea de comando con imagemagick
-
Convertir un pdf de 16 páginas en imágenes
convert -resize 1400x1400 ../archivo.pdf[0-16] imagenespdf-%05d.png
-
Crear miniatura de la foto
convert -thumbnail 80x80 imagen.png nuevaimagen.png
-
Cambiar de formato
convert -format jpg imagen.png
-
Cambiar tamaño
mogrify -resize 60% fotito.png mogrify -resize 100x60 fotito.png convert -sample 50%x50% imgagen.jpg nuevaimagen.jpg convert -resize 800x600 imagen.jpg nuevaimagen.jpg
-
Cambiar calidad (jpg)
convert -quality 85 imagen.jpg nuevaimagen.jpg
-
Información de una foto con datos incrustados (exif)
identify -verbose imagen.png
-
Rotar
convert -rotate 90 input.jpg output.jpg
-
Redimensionar todas las fotos de la carpeta actual
for i in *.jpg; do convert -resize 190x52 $i $i; echo $i; done
Reducir y comprimir todas las fotos de una carpetafor i in *.jpg; do convert -resize 650 $i web_$i; echo $i; done o for i in *.jpg; do convert -resize x650 $i web_$i; echo $i; done y for i in web*.jpg; do convert -quality 55 $i $i; echo $i; done
Borramos el perfil incrustado, comentarios y toda la información exiffor i in *.jpg; do convert -strip "$i" "$i"; echo "$i"; done
Y ahora un todo en unofor i in *.jpg; do convert -resample 72x72 -profile /usr/share/color/icc/sRGB.icm -intent relative -resize 600x600 -quality 55 "$i" "$i"; echo "$i"; done
Cada jpg, lo pasa a 72dpi, le cambia el perfil incrustado a sRGB, la conversión de colores al cambiar el perfil es de modo relativo, la redimensionamos a 600 puntos el lado mas largo (sin deformar) y la comprimimos a calidad 55 (100 es el maximo de calidad)
LVM – Redimensionar volumenes logicos
¿Que pasa si tienes que aumentar el tamaño de una partición y el hueco no está contiguo?
Imaginemos este escenario:
Queremos aumentar /usr quitandole espacio a /home que está sobredimensionada.
Gran problema. Ya me ha tocado en alguna ocasión reducir una partición, mover otras dos y aumentar una cuarta.
Después de este tipo de experiencias empecé a hacer instalaciones con LVM – Volúmenes Lógicos, lo cuál te permite asignar cualquier espacio a cualquier partición sin preocuparte si está contiguo. Puede estar incluso en otro disco.
¿Y cuales son los comandos que necesito para redimensionar con LVM? En el caso del esquema anterior pero con LVM serian:
1- Reducir (de mas) de 241Gb a 230Gb (11Gb) /home para liberar espacio
resize2fs /dev/riceru/home 230G
2- Reducir el volumen logico que contiene a /home (le quitamos 10 Gb)
lvreduce -L -10g (-t) /dev/riceru/home
3- Extender volumen logico que contiene a /usr (le añadimos 5Gb)
lvextend --size +5Gb /dev/riceru/usr
4- Ampliar el sistema de ficheros /usr a todo lo que da su volumen logico (5Gb)
resize2fs /dev/riceru-trinity/usr
5- Ajustar el sistema de ficheros reducido de mas (/home) a todo lo que da su volumen logico
resize2fs /dev/riceru-trinity/home
Si hacéis cuentas hay 5Gb que he dejado sin asignar, en la reserva, para el sistema de fucheros que lo necesite mas adelante.
Nota: La partición /boot no puede estar dentro del LVM para que el sistema sea arrancable.
Bye
Respuestas en ingles, please
Tienes un problema, una respuesta de fallo y te pones a buscar por el texto de la respuesta en Google. Como tienes configurado el sistema en español (es_ES) el texto del fallo lo tienes en español y resulta que no encuentras a nadie con el mismo problema. ¿Como buscarias ese fallo en ingles? No es necesario traducirlo, basta con indicarle al sistema que para ese comando use la locale predefinida, que es en ingles.
¿Y esto como lo hacemos?
Escribiendo antes del comando en cuestión LC_ALL=C, por ejemplo:
$ LC_ALL=C date 04011200 date: cannot set date: Operation not permitted Thu Apr 1 12:00:00 CEST 2010
Y si no le decimos nada
$ date 04011200 date: no se puede establecer la fecha: Operación no permitida jue abr 1 12:00:00 CEST 2010
Por cierto, si quieres saber que idioma tienes configurado mira con el comando “locale”.
Dolphin se cierra de manera inesperada (crash)
Dolphin, el explorador de archivos por defecto en KDE4, se me cierra inesperadamente en muchas ocasiones. Me pasa con Debian testing y con OpenSuse 11.2 y la semana pasada averigüé como solucionarlo. Según el bug 564048 es debido a un problema entre Dlophin y Nepomuk, una implementación del escritorio semántico. Tuve que desactivarlo para dar estabilidad a Dolphin. Esto soluciono el problema tanto en Debian como en OpenSuse, pero claro, pierdes esa función. Esperemos arreglen el bug en breve.
Para desactivar Nepomuk vas a Preferencias del Sistema -> Avanzado -> Búsqueda de escritorio y desactivas la opción Habilitar el escritorio semántico Nepomuk.
Bye
Problemas con los permisos de raw1394 (IEEE 1394)
Despues de la ultima actualización (de OpenSuse 11.1 a 11.2) no puedo capturar vídeo de mi videocámara sin ser root (administrador). Al ejecutar el comando dvgrab me contesta:
$ dvgrab -s dv PuenteColgante raw1394 - failed to get handle: Permission denied.
Y tiene razón, como siempre. El dispositivo (dev) que se ha creado al enchufar la cámara solo tiene permisos para root.
$ ls l /dev/raw13* crw-rw--- 1 root root 171, 0 nov 24 12:38 /dev/raw1394
La solución ha sido crear una regla nueva a udev para que cuando cree el dispositivo raw1394 le asigne el grupo video al que ya pertenecen los usuarios del sitema.
Las reglas se encuentran en el directorio:
/etc/udev/rules.d
Creamos un archivo nuevo para nuestro dispositivo:
# touch /etc/udev/rules.d/99-ieee1394.rules
Y con nuestro editor preferido añadimos la línea:
KERNEL=="raw1394*", GROUP="video"
También puedes añadir dos lineas mas para que cree unos enlaces simbólicos a otros posibles nombres del dispositivo.
KERNEL=="dv1394*", SYMLINK+="dv1394/%n", GROUP="video" KERNEL=="video1394*", SYMLINK+="video1394/%n", GROUP="video"
La próxima vez que enchufemos la videocámara se creará el dispositivo con grupo vídeo para que todos los usuarios del sistema puedan usarlo.
$ ls l /dev/raw13* crw-rw--- 1 root video 171, 0 nov 24 13:38 /dev/raw1394
Bye
P.D. Mas información sobre las reglas de udev en:
http://bulma.net/body.phtml?nIdNoticia=2114
http://www.reactivated.net/writing_udev_rules.html
kde4, preferencias del sistema y el modo administrador
Ahora que en Debian han pasado KDE4 a testing, me he puesto a actualizar mi ordenador de sobremesa. Lo actualicé desde fuera del sistema gráfico para evitar posibles problemas por una actualización tan importante del KDE.
Después de la actualización, entré en el sistema gráfico y voila, ya tengo KDE4 en marcha. La primera vez que entras en KDE4 después de una actualización desde KDE3, se te inicia una herramienta (kaboom) para migrar Tú directorio de configuración (.kde) de la estructura de KDE3 a la estructura que necesita KDE4.
Al ir a ajustar a mi gusto la configuración después de la migración en las Preferencias del Sistema (systemsettings) , me di cuenta que no aparecía el botón de “modo administrador”. Muy útil para aquellas partes que solo el administrador puede cambiar.
Indagando los bug de systemsettings vi que tenia uno referido a esto, el 523094.
La solución es lanzar systemsettings con el comando:
$ kdesu systemsettings
Esta ventana de systemsetting se utilizaría solo para los cambios en que se necesita ser root. Pero me encontré con otro problema. El comando kdesu no está en el path, otro fallo reflejado en el Bug 495999 ¿Y como lo soluciono? Pues de dos maneras:
Escribiendo la ruta completa
$ /usr/lib/kde4/libexec/kdesu systemsettings
O creando un enlace simbolico y así queda para siempre
# ln -s /usr/bin/kdesu /usr/lib/kde4/libexec/kdesu
Bye
Borar el directorio tmp al inicio en Suse y Debian
El directorio tmp, temporal, es donde los programas van creando los archivos que necesitan durante la ejecución. Esos archivos deberían borrarlos los programas al finalizar la ejecución, pero aveces eso no ocurre. Se van acumulando y llenando el disco.
El comportamiento de muchas distribuciones Linux es borrar todo el contenido de tmp al iniciar el sistema, pero no siempre es así. Ahora te explico como configurarlo en Debian y OpenSuse.
- Debian o Ubuntu
El parámetro es TMPTIME y está en /etc/default/rc.s . Los valores posibles es un numero entero que indica cuantos días pararán desde que se borró el contenido de tmp y la siguiente vez que se borrarán. Si el valor es Ø (cero) borrará el contenido en cada inicio.
- OpenSuse
Los parámetros se encuentran en /etc/sysconfig/cron que puedes editar como administrador con tu editor favorito o a través de Yast->Sistema->Editor
En este caso los parámetros a tener en cuenta son dos:
CLEAR_TMP_DIRS_AT_BOOTUP para que borre el contenido de tmp en cada inicio cambialo de no a yes.
MAX_DAYS_IN_TMP su valor es un numero entero que indica cuantos días pasarán entre borrado y borrado. Si pones Ø (cero) junto al parámetro anterior lo borrarán en cada inicio.
Y eso es todo
Zendwalk 5.2 y los modem por puerto serie
Zenwalk es una distribución basada originalmente el Slackware, aunque ahora llevan caminos separados. Es pequeña, muy valida para equipos con pocos recursos y fácil de instalar. Respecto a esto ultimo estaba convencido hasta que tuve que probar el modem. Un modem externo, totalmente estandar, y nada. No había manera.
La versión de Zenwalk 5.2 viene con el Linux kernel-2.6.25.4 que no se porqué no funciona bien el puerto serie. Tiene los modulos y se cargan sin problemas pero no funciona. El wvdialconf no encuentra el modem y con ppp consigo que marque pero no se establece la comunicación.
La solución que encontré fue instalar el Linux kernel-2.6.25.15 que viene en la versión de pruebas, snapshot, y todo empezó a funcionar.
La dirtribución oficial tampoco trae software para conexiones por moden. Utilicé el wvdial para conectarme, manejado a traves del interface grafico pywvdial. Los dos los encontre empaquetados para Zenwalk gracias a su amplia y activa comunidad. Y como no, grácias a Google.


