Cómo copiar archivos bloqueados que estan siendo usados

Esta sección contiene tutoriales paso a paso, informes y opiniones. En ocasiones instrucciones generales.
Avatar de Usuario
Enigma
Administrador del Sitio
Administrador del Sitio
Mensajes: 1268
Registrado: 20 Oct 2013, 16:26
Genero: Mujer
Profesion: Webmaster CEO SEO
Ubicacion: Matrix
Navegador: Chrome
Contactar:

Cómo copiar archivos bloqueados que estan siendo usados

Mensaje sin leer por Enigma » 02 Mar 2016, 15:22

Cómo copiar archivos bloqueados que estan siendo usados

Todos los usuarios del ordenador vemos videos, y estoy seguro que les ha pasado más de una vez que ven un video o archivo que quieren conservar, o una serie de videos,canciones, imágenes, archivos temporales flash que quieren coleccionar, y al querer guardarlo les aparece una advertencia de Windows de que el archivo está en uso y no pueden ni moverlo ni copiarlo. Aquí les traigo una solución muy simple para copiar archivos bloqueados en Windows.

El error, como lo ven en la imagen de arriba, dice lo siguiente:

No se puede mover (archivo): Está siendo usado por otra persona o programa. Cierre todos los programas que puedan estar utilizando este archivo e inténtelo de nuevo. Tanto para Windows XP en versiones superiores

Imagen

Esto ocurre cuando un archivo está bloqueado pero no necesariamente porque esté en uso, sino también por protección. El caso más conocido es el archivo temporal que generan los exploradores de internet cuando vemos un video. El video se descarga a nuestro ordenador, pero no podemos moverlo normalmente, porque “está en uso”, y si cerramos el explorador para que deje de estar en uso, el archivo, por ser temporal, se elimina automáticamente.

Un método para copiar estos archivos es haciendo una “copia de sombra” (shadow copy) del disco duro, y así lograremos tener acceso a cualquier archivo bloqueado. Lo puedes hacer a través de la consola de DOS, o también usar el programa llamado Shadow Copy de Runtime, con el que con un solo clic podremos copiar cualquier archivo copiado en Windows.

¿Cómo lo puedo hacer?
Lo primero es tener las carpetas en donde se encuentran los temporales, en otro post (sección de video) les indiqué la URL de dónde se encuentran la mayoría de archivos de Streaming de video temporales que se descargan mientras se ven esos videos o archivos multimedia.

No solo para videos se puede hacer, sino también para otro tipo de archivos en uso como por ejemplo, podemos copiarnos la carpeta de correo: outlook.pst aunque esté abierto el correo. Su uso no se limita unicamente al correo: es posible copiar cualquier archivo o carpeta completa aunque esté en uso.

¿Cuál es la solución?
El procedimiento es conocido como Shadow Copy y es un servicio nativo de Windows 2003 cuya utilidad está dirigida a proteger carpetas compartidas que están en uso por usuarios, y ante posibles errores de usuarios realiza copias periódicas al objeto de no perder datos por manipulaciones incorrectas como por ejemplo borrados accidentales.

XP también es capaz de usarlo indirectamente con NTBackup, pero en principio está restringido solo a un servicio y por desgracia, solo para que lo use NTBackup.

El servicio encargado se llama Instantáneas de Volumen y generalmente si no se usa, se mantiene desactivado

¿Qué es Volume Shadow Copy?
Este servicio esta presente en Windows desde la primera versión de XP, es el servicio responsable de crear copias de seguridad periódicas de nuestro equipo, con objeto de poder realizar una restauración del sistema, es lo que normalmente conocemos como "punto de restauración del sistema".

Este servicio (VSS) crea copias ocultas (shadow copy) de cada uno de los bloques de 16k que recibe una variación y/o cambio de estado en la partición NTFS del disco duro. Este servicio realiza las copias de seguridad ocultas cada vez que ocurre una variación en el sistema como fruto de la instalación y/o actualización de un software / aplicación. Se puede decir que la frecuencia de realización de esta copias puede sucederse al menos con la periodicidad de cada dos semanas en Windows 7/8, esto se da por las actualizaciones del Sistema Windows.

La utilización del disco duro suele variar de un Sistema Operativo a otro, por ejemplo en Windows Vista se reserva el 15% de la capacidad total del disco, sin embargo en Windows 7/8 este tamaño es de aproximadamente 5%. Esto por supuesto, también depende de la actividad (cambios) que se detecten en el disco duro del Sistema.

En Windows 8, se ha introducido el "Historial de archivos" donde algunos, con cierto grado de exactitud, han creído que el servicio de copias ocultas de Windows había evolucionado hacia esa nueva característica, nada mas lejos de la realidad, pues el servicio (VSS) sigue siendo el mismo, lo único es que ahora hay una nueva funcionalidad del Sistema Operativo que aprovecha ese servicio.

En particular, unas de las curiosidades que tienen los VSC (Volume Shadow Copy) es que el sistema AV (Antivirus) no tiene acceso a dichas particiones por lo que los ficheros con Malware que añadimos al volumen son indetectables. Sin embargo, si accedemos al volumen y ejecutamos el fichero, el sistema AV en tiempo real detectaría el "Malware" para evitar eso, he encontrado un pequeño truco, consiste en montar el volumen oculto (VSC) como si fuera una unidad de red, evitando así el Análisis por parte del Sistema Antivirus.

Para manipular estos volúmenes ocultos hace falta algunas herramientas y/o comandos, a continuación analizamos algunas de las herramientas mas interesantes que he encontrado al respecto

No obstante, en Windows 8, el servicio de Volume Shadow Copy se encuentra activo y funcionando por defecto. Esto en parte se debe a que se tiene activado el sistema de protección del Sistema, o lo que es lo mismo, el servicio de "creación de puntos de restauración".

Hay un programa que gestiona ese servicio y se llama ShadowCopy y su versión al momento de redactar este post es la versión V2.02 y es de la casa RUNTIME que es la que también gestiona aplicaciones de recuperación de archivos eliminados.

Su tamaño es:0.92 MB
Su costo es NADA, o sea gratuito
Sus requerimientos de sistema son: Windows XP, 2003, Vista, Windows 7, Windows 8, Windows 10

Imagen

Copia todos los archivos - incluso si están bloqueados por Windows
ShadowCopy es un sencillo programa que copia todos los archivos de un lugar a otro. Aparte de los administradores de archivos habituales, como el Explorador de Windows, copia todos los archivos incluidos los archivos bloqueados y abiertos. Esto es posible mediante el uso de volumen de Microsoft servicios de la sombra (VSS).

Copia todo el sistema
Se pueden copiar fácilmente el contenido de un disco duro completo a otro disco. Si copia, por ejemplo, C: \ a D: \, que incluso será capaz de arrancar desde esa unidad. Desde ShadowCopy es capaz de tranferring todos los archivos del sistema tendrá un clon casi exacto.

Consejos ShadowCopy:
Es necesario para que la nueva partición activa (en Administración de discos de Windows).
También podría ser necesario para establecer una nueva ID del disco mediante DriveImage XML .
Es probable que tenga que reactivar Windows y otros programas protegidos contra copia.
Automatizar ShadowCopy

ShadowCopy se puede ejecutar desde la línea de comandos, por lotes o programador de tareas. Los interruptores disponibles son:

Código: Seleccionar todo

Switch / Descripción	 
/s	copiar subdirectorios	 
/j	analizar los cruces	 
/i	ignorar los errores	 
/y	sobrescribir archivos existentes	 
/r	sobrescribir los archivos de sólo lectura	


Enlace:

Código: Seleccionar todo

http://www.runtime.org/shadow-copy.htm
Enlace Directo:

Código: Seleccionar todo

http://www.runtime.org/shadowcopysetup.exe
Tutorial Paso a paso

Paso 01
Para el ejemplo quise descargar un video que fue posteado en una web de series y películas online.
(Pueden ver este otro procedimiento aqui viewtopic.php?f=35&t=506&p=1007#p1007)

Imagen

Al ubicar el directorio donde éste se almacena nos damos cuenta que se almacena en la caché de Google chrome llamado "Peper Data" (depende del navegador) y en la subcarpeta "Shockwave Flash" para los videos online o similares

Ruta de la carpeta: (XXXXX es el nombre del usuario en Windows 7)

Código: Seleccionar todo

C:\Users\XXXXXXXXXXXXXX\AppData\Local\Google\Chrome\User Data\Default\Pepper Data\Shockwave Flash
Paso 02
Si intentamos copiar el archivo nos dirá Windows que no se puede copiar porque está en uso, así que tendremos que echar mano de Shadow Copy para poderlo hacer... Lo instalamos y lo ejecutamos.

Imagen

Paso 03
Configuramos el programa llenando los datos pertinentes (vamos sean un poco intuitivos, no sean pelmazos) para poder capturar ese video.
Llenamos los datos:
Elige la carpeta donde está el archivo que quieres copiar o mejor dicho, donde está el archivo temporal, copia la ruta y pégala en Copy from
En File Mask, déjalo así tal cual está (*.*) o si lo prefieres copia el nombre completo del a rchivo temporal (puedes verificar porque tiene muchos megas e inclusive muchos Gigas de tamaño)

Imagen

Paso 04
Es importante que Verifiques que el servicio de Instantáneas de Volumen esté iniciado o por lo menos esté en modo manual, porque de lo contrario no podrás hacerlo.

Ejecutamos (con Win+R) el comando siguiente:

Código: Seleccionar todo

Services.msc
Imagen

Buscamos el servicio de Instantáneas de Volumen y hacemos doble clic sobre él

Imagen

Imagen

Si no hay inconveniente y quieres hacer esto todos los días, podemos ponerlo en Automático

Imagen

Presionamos el botón INICIAR y esperamos a que esté en ejecución el servicio

Imagen

Paso 05
En el campo COPY TO, ponemos la carpeta donde queremos copiar el archivo que queremos guardar, generalmente lo hace en el escritorio, pero podemos generar una sub carpeta para no poner todo tan desordenado como muchos imbéciles hacen...

Hecho el paso anterior, le damos al botón de COPY que tiene el programa y esperamos unos minutos.
Nota: Este programa copia el archivo y se necesita espacio en el disco duro para poder hacerlo y también consume muchos recursos del sistema, procesador, paginación y memoria RAM así que no toquen nada mientras se copia el archivo si su PC es de esas ratas.

Imagen

Paso 06
Luego de unos minutos, podremos ver en el programa que efectivamente se ha copiado el archivo, esto lo vemos en la barra de Status del programa que nos indica que se han copiado los archivos y su tamaño en MB, GB correspondientes...

Podemos ver la carpeta en donde efectivamente se han copiado los archivos temporales,en mi caso como ejemplo, la carpeta LOL

Imagen

Imagen

ya solo resta cambiar el nombre del archivo y su extensión correspondiente:
.MP4 /.FLV /.MP3

Eso es todo... Ya podremos guardar el archivo donde queramos.


[hr]

¿COMO IMPLEMENTARLO EN XP DE UNA MANERA GENERICA en Windows XP?
Es necesario tener en el Path el programa vshadow.exe (290 KB's) y posteriormente
usar un script que describiré a continuacion. La unica manera de obtener ese
fichero es bajarse el SDK del Volume Shadow Copy Service:

Código: Seleccionar todo

http://www.microsoft.com/downloads/details.aspx?FamilyID=0B4F56E4-0CCC-4626-826A-ED2C4C95C871&displaylang=en
Por desgracia ocupa 23 megas.

Una vez instalado, debemos localizar el programa vshadow.exe del cual nos
dejará dos versiones: una para XP y otra para W2003. Debemos copiar la de XP,
por ejemplo a una carpeta que esté accesible en el path, por ejemplo a \windows\system32

Una vez copiado, el resto del SDK no nos hace falta ya que son herramientas para desarrolladores.


CREACION DEL SCRIPT DE COPIA
Con notepad por ejemplo, o con cualquier editor, creamos un fichero llamado copyshadow.cmd
con el siguiente contenido (delimitado por las lineas de guiones, sin copiar estas):

Código: Seleccionar todo

setlocal

if NOT "%CALLBACK_SCRIPT%"=="" goto :IS_CALLBACK

set SOURCE_DRIVE_LETTER=%~d1
set SOURCE_RELATIVE_PATH=%~pnx1
set DESTINATION_PATH=%2

set CALLBACK_SCRIPT=%~dpnx0
set TEMP_GENERATED_SCRIPT=GeneratedVarsTempScript.cmd

%~dp0\vshadow.exe -script=%TEMP_GENERATED_SCRIPT% -exec=%CALLBACK_SCRIPT% %SOURCE_DRIVE_LETTER%

del /f %TEMP_GENERATED_SCRIPT%

@goto :EOF

:IS_CALLBACK
setlocal

call %TEMP_GENERATED_SCRIPT%

copy "%SHADOW_DEVICE_1%\%SOURCE_RELATIVE_PATH%" %DESTINATION_PATH%
----------------------------------------


Posteriormente la manera de ejecutarlo en una ventana de comandos (cmd.exe) es:

copyshadow origen destino

siendo "origen" un archivo o carpeta y el mismo criterio para "destino"
Si el origen o destino tuviese caracteres especiales, como espacios en blanco,
deberan encerrarse entre comillas. Por ejemplo:

copyshadow "carpeta origen 1" "c:\pruebas de copia"

en este caso, copiará todo el contenido de "carpeta origen 1" que cuelga de la
carpeta en donde estemos situados en ese momento a la carpeta "c:\pruebas de copia"



Volver a “Soporte IT”