Javítás: A Távoli asztali szolgáltatások jelenleg foglalt

Egyes esetekben a felhasználók nem tudnak bejelentkezni a Windows Servert futtató RDS farm gazdagépekre a beépített RDP-kliens (mstsc.exe) használatával a következő hibával:

The task you are trying to do can't be completed because Remote Desktop Services is currently busy. Please try again in a few minutes. Other users should still be able to log on.

Ebben az esetben az RDS gazdagép adminisztrátora sok elakadt felhasználói munkamenetet láthat a névvel(4)felhasználónevek helyett ésSzétkapcsoltállapotát a Feladatkezelő Felhasználók lapján.

A probléma a Windows Server összes jelenlegi verziójában előfordul: 2012 R2, 2016, 2019 és 2022.

Bővebben:A Microsoft Remote Desktop alkalmazás használata a távoli számítógép eléréséhez

A hiba több okból is megjelenhet:

  • Hiba a Remote Desktop Services működésében;
  • Hiba a csrss.exe folyamatban;
  • Felhasználói profillal vagy profsvc szolgáltatással kapcsolatos probléma;
  • Kifogy a RAM vagy a merevlemez-terület az RDS gazdagépen;
  • Helytelen csoportházirend-beállítások.

Sajnos nincs olyan hivatalos Microsoft-megoldás, amely teljesen megoldaná a problémát. Csak annyit tehet, hogy megszabadul a tünetektől.

A hibaelhárítás szinte mindig magában foglalja a problémás felhasználói RD-munkamenet visszaállítását vagy az RDS-kiszolgáló újraindítását, de bizonyos esetekben a probléma továbbra is fennáll. Tanulmányozzuk a megoldásokat a legegyszerűbbtől kezdve

Tartalom:

Ellenőrizze az RDS gazdagép teljesítményét és a rendelkezésre álló erőforrásokat

Mivel ez a hiba a RAM vagy a szabad lemezterület hiánya miatt fordulhat elő, ellenőrizze, hogy a kiszolgáló elegendő erőforrással rendelkezik-e. Ellenőrizze, hogy van-e elegendő szabad RAM és merevlemez-terület, ahol az operációs rendszer telepítve van (legalább 1 GB szabadnak kell lennie), tisztítsa meg az RDS felhasználói profilokat a régi fájlokból, és törölje a régi (nem használt) felhasználói profilokat. Ezenkívül ellenőrizze az eseménynaplóban a kritikus hibákat a Remote Desktop Services és a User Profile Service (profsvc) segítségével.

Ha van elég szabad forrás, lépjen a következő lehetőségre.

Állítsa vissza a Hung Remote Desktop Sessions alkalmazást RDS-en

Először is próbálja meg megtalálni és alaphelyzetbe állítani annak a felhasználónak a munkamenetét, aki nem tud bejelentkezni az RDS-kiszolgálóra a következő hibával:Remote Desktop Service is currently busyKeressen egy felhasználót a Feladatkezelő Felhasználók lapján, és kattintson a gombraJelentkezzen kia helyi menüben. A legtöbb esetben ez megoldja a problémát, de előfordulhat, hogy a Feladatkezelőben több lefagyott munkamenetet is találhat a(z) (4) névvel a felhasználónév helyett. Egy felfüggesztett RDS-felhasználói munkamenetben általában 4 futó folyamat van:

  • Client Server Runtime Process (csrss.exe)
  • Desktop Windows Manager (dwm.exe)
  • Windows Logon Application (winlogon.exe)
  • Windows bejelentkezési felhasználói felület

Próbáljon meg visszaállítani minden függő (4) RDS-munkamenetet a Feladatkezelővel a fent leírtak szerint. Ha ez nem segít, manuálisan le kell állítania a futó folyamatokat ezekben a munkamenetekben.

  1. Nyisson meg egy emelt szintű parancssort, és futtassa a parancsot:query session
    A parancs megjeleníti az összes felhasználó és munkameneteik listáját az RDS gazdagépen. A kimenetben 3 oszlopra van szükségünk: SESSIONNAME, USERNAME és ID. Keresse meg a(4)felhasználó és a megfelelő azonosító, ebben a példában ez az2. azonosító. Meg kell ölnöd acsrss.exefolyamat, amely ebben a munkamenetben fut;
  2. Futtassa a parancsot:query process /id 2
    A parancs megjeleníti a munkamenetben futó összes folyamatot a megadott azonosítóval. Meg kell találnunk a csrss.exe folyamat PID-jét. Az én esetemben a PID az5140. Meg kell ölni ezt a folyamatot.
  3. Öld meg a csrss.exe folyamatot a PID segítségével:taskkill /F /PID 5140

Amikor a csrss.exe folyamat befejeződik, a felhasználó munkamenetében lévő összes többi folyamat automatikusan leáll. Ez lehetővé teszi a felfüggesztett RDS felhasználói munkamenetek leállítását anélkül, hogy újra kellene indítania a szervert.

Csináld ezt minden (4) felhasználónál, ha van köztük néhány.

Azt javasoljuk, hogy korlátozza a felhasználói munkamenetek maximális időtartamát a csoportházirend-objektum vagy az adatgyűjtés beállításaiban található RDS időtúllépések beállításával. Ez automatikusan leállítja a felfüggesztett felhasználói munkameneteket.

Továbbá, ha megbízhatatlan hivatkozásokon dolgozik, javasoljuk, hogy állítsa be a csoportházirend-objektumotÁllítsa be az életben tartási kapcsolati intervallumothogy1 perc(Számítógép konfigurációja -> Felügyeleti sablonok -> Windows-összetevők -> Távoli asztali szolgáltatások -> Távoli asztali munkamenetgazda -> Kapcsolatok).

Ölj meg egy távoli asztali felhasználói munkamenetet a parancssorral

Ha nem tudott kijelentkezni egy felhasználóról, megpróbálhatja visszaállítani az RDS felhasználói munkamenetet a parancssorból:

  1. Nyissa meg a parancssort rendszergazdaként, és futtassa a parancsot:query session
  2. Fejezze be a felhasználó munkamenetét a SESSIONNAME vagy az azonosítójával. Például:
    reset session rdp-tcp#16
    vagy:
    reset session 3

Ezt minden problémás RDS felhasználónál meg kell tenni. Most megpróbálhat bejelentkezni, a probléma meg kell oldódnia.

Ha az RDS-kiszolgáló még a helyi rendszergazdai fiókkal sem teszi lehetővé a bejelentkezést, távolról lekérheti a számítógépen lévő felhasználói munkamenetek listáját.

qwinsta /server:mun-rds01

Ezután távolról befejezheti a felfüggesztett munkamenetet:

reset session rdp-tcp#16 /server:mun-rds01

Ellenőrizze a licencbeállításokat az RDS-állomáson

Győződjön meg arról, hogy az RDSH gazdagépen konfigurált licenckiszolgáló és licenctípus (CAL Per User/CAL Per Device) megfelelő.

„Az Ön által végrehajtott feladat nem fejezhető be, mert a Remote Desktop Services jelenleg foglalt” hibaüzenetet kaptam, majd az RDSH szerepkör telepítése után elfelejtettem megadni a Remote Desktop Licensing szerepkört futtató kiszolgáló címét. Ebben az esetben két RDP-felhasználó a szokásos módon csatlakozott, a harmadik pedig szembesült ezzel a hibával.

Az RDS licenccel rendelkező szerver címe megadható:

Tiltsa le az RDP Max Connection Limit beállítást a csoportházirend-objektumban

A csoportházirendek segítségével korlátozhatja az egyidejű (egyidejű) RDS-kapcsolatok számát. Alapértelmezés szerint ez a házirend nincs konfigurálva. Ez azt jelenti, hogy a kapcsolatok maximális számát nem korlátozza az RDSH gazdagép.

A gpresult segítségével ellenőrizze, hogy a házirend engedélyezve van-e, és milyen értéke van.

  1. Futtassa a következő parancsot az emelt szintű parancssorban:gpresult /H c:gpresult.html
  2. Nyissa meg a C meghajtó gyökerében található gpresult.html fájlt. Ez egy elterjedt .html fájl, amely a böngészővel nyitható meg (az Internet Explorer alapértelmezés szerint le van tiltva a modern Windows buildekben, és érdemes az MS Edge-t használni.);
  3. Keresse meg a megnevezett csoportházirend-objektum-beállítástKorlátozza a kapcsolatok számátalattSzámítógép konfigurációja -> Felügyeleti sablonok -> Windows-összetevők -> Távoli asztali szolgáltatások -> Távoli asztali munkamenet hostConnectionsvagy típusKorlátozza a kapcsolatok számátkeresni az oldalon.

Ha nincs ilyen házirend, akkor nem alkalmazzák, és nincs korlátozás az egyidejű kapcsolatok számára. Ha van házirend, és az egyidejű kapcsolatok számát jelzi, módosítsa az értékét a kívánt számra. A csoportházirend-beállítást a helyi csoportházirend-szerkesztővel konfigurálhatja (gpedit.msc), és ha a házirend tartományi csoportházirend-objektumokon keresztül van beállítva, szerkessze a tartományi csoportházirend-szerkesztővel (gpmc.msc). Miután megtette, ne felejtse el futtatni agpupdate /forceparancsot az új csoportházirend-beállítások azonnali alkalmazásához.

Egyéb módok az elfoglalt RDP-szolgáltatással kapcsolatos problémák megoldására

Ha van elég szabad erőforrás a gazdagépen, nincs hiba az RDP naplókban, a felhasználó munkamenetének visszaállítása valamiért nem segített, és nem tudja azonnal újraindítani az RDSH szervert, akkor próbálja meg a következő lehetőségeket:

  • Győződjön meg arról, hogy az RDS gazdagép nincs leeresztő módban, ami megakadályozza, hogy a felhasználók új RDP kapcsolatokat hozzanak létre:chglogon.exe /QUERY. Ha a parancs a következőt adja vissza: „Az új felhasználói bejelentkezések LETILTVA, de a meglévő munkamenetekhez való újracsatlakozás ENGEDÉLYEZVE van”, kapcsolja ki a leürítési módot:chglogon.exe /enable
  • Törölje a pipát aÁllandó bittérképes gyorsítótáropciót az RDP kapcsolat beállításainálmstsc.exeügyfél. Próbálja meg használni a56 kbps modemüzemmód a teljesítmény optimalizálásához;
  • Indítsa újra a Távoli asztal szolgáltatást a következő parancsokkal:net stop termserviceésnet start termservice. Vagy indítsa újra a szolgáltatást távolról a PowerShell segítségével:Get-Service termservice –ComputerName mun-rdsh1 | Restart-Service
  • Ölj meg mindenkittstheme.exefolyamatok;
  • Javasoljuk, hogy telepítse az összes legújabb frissítést a Windows verziójához. Használja a szabványos Windows Update eszközöket vagy a PSWindowsUpdate PowerShell modult.
  • Windows Server 2012 R2 rendszeren a 20499-es eseményazonosító megjelenhet az Eseménynaplóban „A Távoli asztali szolgáltatások túl sokáig tartott a felhasználói konfiguráció betöltéséhez a kiszolgálóról...“. A probléma megoldásához adja hozzá afQueryUserConfigFromLocalMachineregisztrációs bejegyzés:
    REG ADD "HKLMSYSTEMCurrentControlSetcontrolTerminal ServerWinstationsRDP-Tcp" /v fQueryUserConfigFromLocalMachine /t REG_DWORD /d 1 /f
    REG ADD "HKLMSoftwarePoliciesMicrosoftWindows NTTerminal Services" /v fQueryUserConfigFromLocalMachine /t REG_DWORD /d 1 /f
  • Ha a Citrix telepítve van a Windows gazdagépen, és sok a leválasztott munkamenet a VDA kiszolgálón, a hibát aSeTokenDoesNotTrackSessionObjectregisztrációs bejegyzés:
    REG ADD "HKLMSYSTEMCurrentControlSetControlSession ManagerKernel" /v SeTokenDoesNotTrackSessionObject /t REG_DWORD /d 1 /f
  • Ellenőrizze a felhasználói profil szolgáltatást (profsvc) naplók. Ha felhasználói profillemezt (UPD) vagy FSLogix profilt használ a Windows Server rendszeren, ellenőrizze, hogy a profilfájlokat tartalmazó fájlkiszolgáló elérhető-e, és nem tapasztal teljesítménybeli problémákat. Ha az UPD-t Windows Server 2019/2016 rendszeren használja, hozza létre aDeleteUserAppContainersOnLogoffrendszerleíró paraméter, amely kijavítja a problémákat számos Windows Defender tűzfalszabállyal, amelyek az UWP Windows Store-alkalmazásokhoz generálódnak minden alkalommal, amikor egy felhasználó bejelentkezik. Ennek leírását a Rossz RDS-teljesítmény a Windows Server 2016/2019 rendszeren felhasználói profillemezekkel című cikkben találja.

Related Posts