domingo, 29 de julio de 2012

Formatear Pendrives fácilmente


No hace mucho, el usuario Pablo uy hacía una consulta sobre la desaparecida opción de formatear dispositivos USB  o tarjetas en Debian de forma rápida e intuitiva. Tras consultar un poco veo que realmente esta opción (como ha sucedido con otras tantas tras la irrupción de Gnome 3 ) a desaparecido.

Tras esto, pensé que no sería muy complicado la creación de un pequeño Script que nos pudiera servir como sustituto a esta desaparecida herramienta.
Así que hoy vengo a presentar este pequeño Script que ya he "terminado" e intenta llenar el hueco dejado por la anteriormente herramienta referida.

El funcionamiento de éste es muy simple. Detecta el último dispositivo conectado para poder formatearlo.  Por lo tanto es muy importante conectar el USB o tarjeta momentos antes de ejecutar el script, o que sea el último dispositivo que se conecto.


De cualquier modo he añadido dos rutinas de control para que no asuma dispositivos distintos a un  USB o tarjeta, así como también le he puesto un tope al tamaño de estos. Si es mayor de 32GB no se podrá formatear. Las dos rutinas son para evitar que por equivocación formateemos un dispositivo mayor como suelen ser los discos físicos que tengamos en nuestro sistema, y de este modo evitar que se muestren para ser formateados.

Con la primera rutina puede parecer que ya sería suficiente ya que realiza un chequeo a todas las conexiones frontales tanto de tarjetas como USB, mirando de ver si el dispositivo detectado está en alguna de ellas. Si es así, entonces lo mostrará para que la podamos formatear. Pero me he dado cuenta de que las conexiones traseras que tengo no entran en este rango.


Es aquí donde entra la otra rutina de control de capacidad ya que asumo que USB superiores 32GB no son muy habituales aún. De este modo cualquier dispositivo encontrado mayor de esta capacidad no será admitido.
En este punto podría haber puesto un dialogo de selección en el cual el usuario decidiera si continuar o no en el caso de encontrar un dispositivo mayor a 32GB. Pero por motivos de seguridad prefiero no ponerlo, ya que aún los hay (usuarios venidos del Lado Oscuro) que aún tiene la manía de ir pulsando de forma compulsiva el botón Aceptar.


El que quiera puede añadir este dialogo, así como modificar el valor máximo de 32GB por el que crea más conveniente, pero no aconsejo hacerlo. Claro está, salvo que tenga un USB de mayor capacidad de 32GB. La variable a modificar es la llamada mg que es fácilmente distinguible.

Bueno ahora vamos al lo que interesa....
Para que nos funcione el formato  NTFS es necesario tener los siguientes paquetes instalados:
fuse ntfs-3g
Para que nos funcione la interfaz del Script se necesita:
zenity
o en el caso de MATE podemos instalar:
mate-dialogs-gnome
Que para el casos es lo mismo.

Importante:
El Script podemos guardarlo donde queramos y luego debes crear un lanzador anteponiendo a su ruta la orden : gksu como se muestra en la imagen:



Bueno el funcionamiento es el siguiente:
Introducimos en Pendrive que queramos. Una cosa muy importante para que este sea detectado es que tiene que estar montado.
Luego clicamos en en lanzador creado para este menester para ejecutar el Script. Introducimos nuestra clave y se mostrará el pendrive listo para formatear:


Seleccionamos el tipo de formato deseado:


Añadimos si se quiere una etiqueta identificativa para el pendrive:


A partir de aquí comenzará el formato del dispositivo...


Una vez finalizado éste, recibiremos un aviso al respecto:


Si luego volvemos a montar el pendrive veremos que su formato a cambiado por el que seleccionamos:


Como con todo hay que tener cuidado ¿OK?.  Yo para realizar este Script he formateado dos de mis pendrives cerca de ¡100 veces! cada uno probados de manera indistinta en un Portátil Toshiba y en un PC de escritorio Acer . Lo resultados han sido muy buenos y puedo dar fe de que no he tenido problema alguno. Pero esto no quita que puedan haberlos. Así que en un principio tomad las precauciones lógicas.

Si queres probar esta utilidad puedes decargarlo aquÍ: 
↓↓↓↓↓↓↓↓↓↓↓↓
Ver código fuente: Código

24 comentarios:

  1. me has dejado con la boca abierta son un capo recien llego al trabajo pero apenas llegue a casa lo pruebo muchas gracias por todo sos un grande
    saludos

    ResponderEliminar
    Respuestas
    1. Gracias Pablo, tú tienes mucha culpa de esto jeje.

      Saludos

      Eliminar
    2. no me eches culpa a tus dolores de cabeza porque seas porfiado con los problemas q se t presentan y te des la cabeza contra la pared para resolverlos jeje

      yo solo pregunte porque no estaba esa opcion y si habia alguna forma de hacerlo
      no pense q te ivas a hacer un script igualmente muchas gracias por este nuevo aporte creo q a muchos les va a servir de utilidad (yo soy el primero jeje)
      saludos muchas gracias

      Eliminar
  2. Funciona con unity? Como se crea un lanzador en unity?

    ResponderEliminar
    Respuestas
    1. Debería funcionar igualmente. Su base es Debian (aunque aveces se les olvide) igual que lo es LMDE.
      Para crear lanzadores en Ubuntu, verás aquí en el blog arriba a la derecha una entrada destacada de las más visitadas, precisamente para esto.

      Saludos

      Eliminar
  3. Muy buen aporte, no entiendo porqué sacan cosas tan necesarias y despues hay que rehacerlas.

    ResponderEliminar
  4. Gracias por el aporte. Me vendrá muy bien.
    En SolusOS también funciona.

    ResponderEliminar
    Respuestas
    1. Gracias. Es en SolusOs donde he hecho la mayor parte del Script.
      Saludos

      Eliminar
    2. No sabía que le eras infiel a LMDE con SolusOs , no me extrañaría que dijeras que haces scripts también en Windows.
      Vamos Frannoe , es una broma , todos somos infieles.

      Un saludo y un gran blog tienes.

      Eliminar
    3. jeje. Cómo dice el dicho todo depende del cristal con que se mire.
      ¿Podría ser que quiera tanto mi LMDE, que evite por todos lo medios probar según que cosas en él y por contra no me importe nada lo que suceda si lo hago en otros?
      ¿Podría ser...? jeje
      Saludos y muchas gracias Felipe

      Eliminar
  5. Yo acabo de instalarlo en Wheezy + XFCE, pero cuando lo ejecuto me devuelve este error:

    Process /usr/bin/Thunar exited with status 1

    Alguna sugerencia para solucionarlo? o será que en XFCE no funciona?.

    Saludos.

    ResponderEliminar
    Respuestas
    1. Buenas noches Oscar:
      Prueba a poner un espacio despues de gksu, a mi me dió problemas, pero, con este pequeño detalle va perfecto en mi lmde xfce.
      Saludos

      Eliminar
    2. Gracias Pedro por responderle.

      Óscar en LMDE-Xfce funciona exactamente igual de bien.
      Asegúrate de tener bien creado el Lanzador como indica Pedro y de tener los paquetes necesarios para la ejecución de éste: zenity, fuse, ntfs-3g

      Saludos

      Eliminar
  6. Sumamente comodo, gracias

    ResponderEliminar
  7. Gracias por tu trabajo altruista, funciona perfectamente.A partir de ahora podré ver pelis en la PS3 ya que sólo admite formato FAT32 para usar memorias USB. Un saludo, Angel.

    ResponderEliminar
  8. Hola,
    He introducido el script en Home/usuario/.gnome2/nautilus-scripts y después para hacerlo funcionar solo tengo que en el USB montado en /media/nombre-usb clico botón derecho del ratón, elijo «scripts» i tengo la opción de «formatear». Clico en formatear i ya tengo el script funcionando.

    Muy buen script, por cierto.

    Saludos,

    ResponderEliminar
    Respuestas
    1. Bueno sí, así se puede utilizar perfectamente. En realidad así es como pensé hacerlo en un principio (más parecido a lo que ya había) pero lo deseché ante la imposibilidad de que al clicar en un pendrive cargado, no pudiera recoger los datos de éste para su posterior formateo.
      En realidad mis conocimientos sobre programación con bash tampoco me dan para mucho más jeje.

      Gracias...
      Saludos

      Eliminar
  9. ya tengo funcionando de maravilla este practico format-usb muchisimas gracias ya no tengo q dar vueltas con gparted para formatear mis pendrives esto si es practico gracias
    saludos

    ResponderEliminar
  10. sepuedenparticionar29 de agosto de 2012, 12:01

    Gracias

    Los pendrives o lápices de memoria Flash también se pueden particionar. En la paǵina http://ubuntuforums.org/showthread.php?t=1734965 se explica cómo hacer eso (y formatear, etc.) para ...
    --1-- ... tener una memoria USB que sirve para 3 cosas: a) Usar Ubuntu (o Mint, ...) en cualquier ordenador (en vivo o Live), b) Instalar Ubuntu, Mint, ... en cualquier PC, c) Usar nuestros ficheros, tanto desde Ubuntu (o Mint, ...) Live (del mismo pendrive, p.e.), Ubuntu (o Mint, ...) instalado, otra distro de Linux, Windows, etc.
    --2-- Y al estar nuestros ficheros aparte del SO (y fichero de persistencia): a) nuestros ficheros personales son manejados por facilidad por cualquier sistema operativo (p.e. usando Ubuntu -O Mint, ...- Live desde el mismo pendrive no hace falta ser root ni buscar en el sistema de archivos), b) los ficheros del SO están seguros (p.e. Windows XP sólo accede a la primera partición, donde están los ficheros personales y no puede tocar el Ubuntu Live, que está en la segunda partición; si todo estuviera en 1 sola partición, en cualquier SO, se podría acceder a todos los ficheros y p.e. al querer borrar un fichero personal podríamos borrar por accidente un archivo del SO).

    La información está parcialmente traducida en http://www.distrotest.es/?p=5805#comment-761

    Saludos

    ResponderEliminar
    Respuestas
    1. Gracias por la info, pero esta herramientas no pretende hacer nada más allá de lo que hace.
      También podemos particionar fácilmente si queremos nuerstros Pendrives o memorias con GParted o La utilidad de Discos,

      Saludos

      Eliminar