Skip to main content

Terminal Services

No se puede establecer impresora por defecto en sesiones de Terminal Services

Sucedió que en un servidor de TS (Terminal Services) un día cualquiera, los nuevos usuarios que iniciaban sesión en escritorio remoto, no se les establecía la impresora por defecto. Al tratar de establecerla manualmente tampoco funcionaba.

Este problema se debe que falta la siguiente llave en el registro de Windows: HKEY_CURRENT_USER\Software\Microsoft\Windows NT\CurrentVersion\Windows.

Para solucionarlo hay que hacer lo siguiente:

  • Desde un equipo que tenga el mismo sistema operativo instalado que el servidor de Terminal Services, copiar el directorio %SystemDrive%\Documents and Settings\Default User al servidor de Terminal Services en la misma ubicación, reemplazando este directorio en el servidor de Terminal Services.
  • Eliminar del servidor de Terminal Services los perfiles de usuarios a los que no se les establecía la impresora por defecto y volverlos a crear para corregirles el problema.

Nota:Recuerde que el directorio Default User está oculto por defecto.

Eso es todo. Como apunte personal, sin entrar en detalles, parece que eso del Default User se parece mucho al /etc/skel de Linux

Esta solución y apuntes llegaron de la mano del siguiente KB: http://support.microsoft.com/kb/929270

Cerrar remotamente sesión de Terminal Services usando archivo batch

Tengo un un usuario que usa escritorio remoto para conectarse a la aplicación de gestión comercial de la empresa. Esa aplicación, con este usuario y ejecutando ciertos procesos se bloquea; lo que me obliga a mi como sysadmin a cerrarle la sesión en el Administrador de Servicios de Terminal Server en el servidor cada vez que le sucede esto.

Esta vez y con la ayuda de dos comandos disponibles en Windows 2000 ó superior, me he escrito un batch que le proporcioné al usuario para que desde su equipo cierre su sesión de Terminal Server sin necesidad de mi intervención. Los comandos a saber son qwinsta y rwinsta.

Para comprender mejor como funciona el script aquí van estos datos:

  • Servidor de Terminal Services: 192.168.1.21
  • Nombre de inicio de sesión del usuario: Cartera

El script es el siguiente:

@echo off
for /f "skip=1 tokens=3" %%i in ('qwinsta Cartera /SERVER:192.168.1.21') do (
    rwinsta /server:192.168.1.21 %%i
)

Fácil, ¿si ó no?

Referencias de ayuda

Mamaaaaá!, mi impresora de red no se redirige en las sesiones de Terminal Services

Para que las impresoras de red se redirijan en las sesiones de Terminal Services hay que hacer lo siguiente:

  1. OBLIGATORIO: El servidor de TS debe tener los controladores de la impresora. Si el servidor no tiene estos controladores, por más que le grite a su santa madresita, éste no verá la impresora cuando se inicie una sesión de TS.
  2. En el computador cliente de TS comparta la impresora de red.
  3. En el computador cliente de TS ejecute:
    NET USE LPT[X] \\nombre_cliente_TS\nombre_impresora_compartida /Persistent:Yes
    Por ejemplo:
    NET USE LPT3 \\pc-mio\impresora /Persistent:Yes
  4. En el computador cliente de TS instale nuevamente la impresora (si, si, le van a quedar dos impresoras) pero configúrela para que haga uso del puerto LPT3 (ó el puerto LPT que haya elegido en el paso anterior)
  5. Eso es todo, inicie sesión en el servidor de TS y si cumplió el primer paso de este breve documento, entonces deberá ver la impresora, sino, vuelva y grite (pero más duro): Mamaaaá!, mi impresora de red no se redirige en las sesiones de Terminal Services
Syndicate content