4 votos

Cierre compartido sesiones de carpeta remota

Introducción:

Tengo un script que copia algunos de los datos desde el servidor local (Servidor) a otro servidor (B) a través de una ruta de acceso UNC, el recurso compartido en el Servidor B, fue creado para un disco duro externo que se cambia todos los días, después de que el disco duro externo se intercambia el disco duro nuevo se monta utilizando el comando mountvol, la letra asignada es la misma, pero como usted ya sabe el Nombre de Volumen para cada disco es diferente.

El problema que yo tengo (paso a paso):

Si abro el Explorador en el Servidor B, e ir a la ruta de acceso UNC, lo que significa que en el Servidor hay una sesión desde el Servidor B para mi de Usuario (X), en el cmd me realice utilizando otra cuenta de Usuario (Y) por ejemplo:

dir \\path"

y puedo ver los archivos, por lo que en este momento hay 2 sesiones desde el mismo equipo y los diferentes usuarios.

Curiosidad: la sesión para el Usuario Y permanecerá hasta que en la línea de comandos escribir otro comando, o la ventana de cmd pierde el foco - en lugar de cerrar la sesión después de que el comando dir se ha terminado.

Con la curiosidad de arriba, la 2ª sesión para el Usuario Y puede ser ignorado en este caso, esto nos deja una sesión en el Servidor para que el Usuario X

Voy a Servidor B, desmontar el disco duro utilizando mountvol (se Puede hacer en el Equipo de Gestión también), cambie el disco duro y, a continuación, montar el disco duro nuevo.

Vuelvo a Un servidor, en la ventana de cmd me vuelva a ejecutar el comando DIR con cualquier cuenta de Usuario de X o Y, y me sale:

The system cannot find the file specified.

Si voy a la abierta ventana del explorador y de actualización de la ventana, los archivos no aparecen también.

  • He encontrado en internet que después de reiniciar el explorador de proceso en el Servidor B, entonces los archivos compartidos se vuelva visible, es decir, la eliminación de las sesiones en el Servidor (todas las sesiones?), otro truco es solo para eliminar la sesión en el Servidor B.

Posible Solución --> quiero su ayuda :)

Desde el script (secuencia de comandos por lotes) es automática y no quiero comprobar si hay cualquier francesa sesión desde el Servidor B en el Servidor, me gustaría forzar el cierre de todos los colgando sesiones para un recurso compartido en el Servidor, PERO me gustaría hacerlo desde mi script en el Servidor B, la "red de sess(de iones de litio(s))" es de carácter local.

Si usted tiene alguna otra sugerencia, con esto quiero decir otra posible solución, por favor hágamelo saber. Gracias.

Información Técnica:

Server A: Windows Server 2008 R2 Enterprise SP1
Server B: Windows Server 2003 Enterprise SP2

Notas: Corrígeme si me equivoco, pero creo que:

  1. Actualizar la vista en la Ventana del Explorador para una ruta de acceso UNC no funciona ya que el Nombre del Volumen es diferente, desmontaje y montaje de nuevo (con el mismo HDD), hace que la actualización para funcionar normalmente. Es este quizás una seguridad de funcionamiento? o es esto un error? o me estoy perdiendo algo?

  2. Después de la ejecución de directorios para una ruta de acceso unc y recuperar la lista de archivos debe cerrar de inmediato la sesión, ya que no hay ninguna más "procesamiento" con ella.

  3. Después de ejecutar la dir para una ruta de acceso unc, las sesiones se queda abierto, pero cuando haga clic en otro equipo con windows (la ventana de cmd pierde el foco) de la sesión desaparece.

1voto

kce Puntos 9227

Este es un gran ejemplo de cómo PowerShell puede ser muy superior a la de algunos de los nativos lote de herramientas de secuencias de comandos. Puede utilizar la Nueva-PSDrive cmdlet para asignar una unidad de disco en el Servidor B. La unidad sólo se conservará para esta particular sesión de PowerShell así que si se ejecuta un script nuevo y/o sesión de PowerShell de la unidad de asignación ya no se almacenan en caché. También se puede simplemente eliminar la unidad y recrearse con Quitar-PSDrive dependiendo de su caso de uso.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: