Как удалить профиль пользователя в Windows 10
При добавлении новой учетной записи в Windows – автоматически создается профиль для учетной записи, который содержит различные ваши настройки для этого пользователя. Все эти настройки профиля хранятся в папке с именем созданного вами пользователя на локальном диске С:\ в папке “Пользователи” (C:\Users\). В сегодняшней статье мы покажем как удалить профиль настроек пользователя без удаления самой учетной записи.
Очень часто начинают лезть ошибки системы, а разобраться в них не выходит долгое время, а если входишь в систему под другим пользователем – всё работает как часы. Можно конечно, ковыряться и дальше в настройках профиля пользователя, искать корень проблемы, а можно – сохранить всё нужное с папки профиля => удалить эту папку и создать профиль пользователя заново. Своего рода сброс настроек профиля учетной записи. В папке профиля хранятся настройки браузеров, заставки системы, настройки других программ, рабочий стол, документы и т.д. Желательно, перед удалением скопировать папку и по надобности вытянуть нужное. Вы не можете удалить профиль пользователя под которым вошли в систему, сначала нужно создать другую учетную запись с правами администратора или включить встроенную, после чего зайти под ней и удалить профиль нужного пользователя. Также данная статья будет интересна тем, у кого на компьютере ранее было много пользователей и сейчас от них остался хлам.
Делаем копию папки профиля пользователя.
1.Открываем проводник, заходим на диск С:\ в папку “Пользователи” => нажимаем на учетную запись (профиль которой вы собираетесь удалить) правой клавишей мыши и выбираем “Копировать”;

2.Выбираем любой диск и любую папку в которую можно вставить копию (в нашем примере будем делать копию на диск D) => нажимаем в пустом месте данного диска или папки правой клавишей мыши и выбираем “Вставить”.


По окончанию копирования – копия профиля пользователя будет создана, теперь можно удалять
Удаляем профиль пользователя. (Первый способ)
1.Как уже говорилось выше, нужно зайти в Windows под другой учетной записью с правами администратора. Создайте нового пользователя с правами администратора или проще временно включите встроенную учетную запись администратора, и зайдите в систему под ней;

2. В строке поиска напишите SystemPropertiesAdvanced и нажмите Enter (вместо этого можно зайти в проводник => нажать на “этот компьютер” в левой панели правой клавишей мыши и выбрать “Свойства” => в открывшемся окне на левой панели выбрать “Дополнительные параметры системы”);

3. Во вкладке “Дополнительно” возле “Профили пользователей” нажмите на “Параметры”;

4.Левой клавишей мыши нажимаем на пользователя, которого хотим удалить (чтобы выделить учетную запись) и нажимаем ниже “Удалить”;

5.Подтверждаете удаление профиля нажав на “Да”;

Профиль выбранной вами учетной записи был удален, можете закрывать “Профили пользователей”. Теперь когда вы зайдете в систему Windows под учетной записью профиль которой удалили – профиль для нее будет заново создан с новыми настройками.
Удаляем профиль пользователя. (Второй способ).
В этом способе будем удалять профиль пользователя через проводник и реестр. Перед работой с реестром всегда рекомендуется создавать точку для восстановления системы.
1.Выполните первый пункт из способа выше. Теперь открываем редактор реестра: один из способов – в строке поиска написать regedit и выбрать его из найденных результатов;

2.В левой колонке нужно перейти к разделу HKEY_LOCAL_MACHINE \SOFTWARE \Microsoft \Windows NT \CurrentVersion \ProfileList Когда вы отроете раздел ProfileList (нажав на стрелку рядом) то в нём каждый раздел будет означать какого-то пользователя, нажмите на любой раздел и в правой колонке в параметре ProfileImagePath увидите путь к профилю.

3. В моем примере имя пользователя, профиль которого нужно удалить aserg, в разделе ProfileList выбираем каждый раздел по очереди, когда в параметре ProfileImagePath найдем aserg – это тот раздел, который отвечает за эту учетную запись. Нажимаем на него правой клавишей мыши и из открывшегося меню выбираем “Удалить”;

4.Подтверждаете удаление выбранного профиля, нажав на “Да” и закрываем редактор реестра;

5.Открываем проводник => заходим на диск С:\ в папку Пользователи (C:\Users\) => нажимаем на папку профиля пользователя, которого вы собрались удалить, правой клавишей мыши и из открывшегося меню выбираем “Удалить”;

6.Подтверждаем удаление нажав на “Да”, во время удаления папки профиля может появится запросу удаления несколько раз, всегда нажимайте “Да”;

7.В идеале папка полностью удалится, если удалилась не полностью – перезагрузите компьютер, снова зайдите на диск С:\ в папку Пользователи и выберите удалить папку профиля.

Всё профиль пользователя был удален, теперь когда вы зайдете под данным пользователем еще раз в систему – профиль с настройками для него будет заново создан. На сегодня всё, если есть дополнения – пишите комментарии! Удачи Вам
Как очистить папку C:\Users от лишних доменных профилей(папок)?
Итак имею:
C:\Usrers\admin
C:\Usrers\user1
C:\Usrers\user2
. и тд.
необходимо удалить все папки профилей кроме admin.
Сделать это надо использую gpo.
Пытался через PS удалить пишет отказано в доступе. Через explorer написало мол ntuser.dat используется system и поэтому фиг тебе а не удаление.
$users = Get-Content c:\users.txt $folder = Get-ChildItem c:\Users | Where-Object $compare = Compare-Object $users $folder $compare | foreach-object
Вообщем как удалить все папки пользователя кроме одной (а лучше нескольких) нужных?
PS написать что все компы в домене
- Вопрос задан более трёх лет назад
- 8089 просмотров
1 комментарий
Оценить 1 комментарий
Илья лук @8889996 Автор вопроса
Блин забыл написать что все компы в домене
Решения вопроса 0
Ответы на вопрос 3
Developer, ex-admin
Надо запускать с повышенными привилегиями.
Ответ написан более трёх лет назад
Нравится 1 1 комментарий
Илья лук @8889996 Автор вопроса
Однако не помогает.
Алексей @skazi_premiere
Верстаем как умеем 😉 HTML/CSS/JS
Руками лучше такое не делать есть оснастка же для этих целей. Управление пользователями. Либо гуглим How to delete Windows user profile with PowerShell? и попадаем на technet где уже есть решение.
UPD: естественно все делаем от учетки с правами локального админа на станции.
UPD2: Ссылка из статьи и код ниже
[cmdletbinding()] param( [parameter(ValueFromPipeline=$true,ValueFromPipelineByPropertyName=$true)] [string[]]$ComputerName = $env:computername, [parameter(mandatory=$true)] [string]$UserName ) Begin <> Process < foreach($Computer in $ComputerName) < Write-Verbose "Working on $Computer" if(Test-Connection -ComputerName $Computer -Count 1 -ea 0) < $Profiles = Get-WmiObject -Class Win32_UserProfile -Computer $Computer -ea 0 foreach ($profile in $profiles) < $objSID = New-Object System.Security.Principal.SecurityIdentifier($profile.sid) $objuser = $objsid.Translate([System.Security.Principal.NTAccount]) $profilename = $objuser.value.split("\")[1] if($profilename -eq $UserName) < $profilefound = $true try < $profile.delete() Write-Host "$UserName profile deleted successfully on $Computer" >catch < Write-Host "Failed to delete the profile, $UserName on $Computer" >> > if(!$profilefound) < write-Warning "No profiles found on $Computer with Name $UserName" >> else < write-verbose "$Computer Not reachable" >> > end <>
Пример использования Remove-UserProfile.ps1 -ComputerName PC1, PC2, PC3 -UserName LocalUser2
Перепишите под себя получение имен профилей и готово.
Удаление старых профилей пользователей в Windows

24.01.2023

itpro

PowerShell, Windows 10, Windows 11, Windows Server 2019, Windows Server 2022, Групповые политики

комментариев 30
Администраторы время от времени должны удалять старые профили пользователей (уволенные пользователи, неактивные пользователи, и т.д.) в каталоге C:\Users на рабочих станциях и серверах Windows. Чаще всего с задачей очисткой профилей пользователей Windows сталкиваются на терминальных серверах RDS (Remote Desktop Services).
Основная проблема терминальных серверов – постоянный рост размеров каталогов профилей пользователей на диске. Частично эта проблема решается политиками квотирования размера профиля пользователя с помощью FSRM или NTFS квот, использованием профилей типа FSLogix или User Profile Disk, перемещаемыми папками и т.д. Но при большом количестве RDS пользователей в папке C:\Users со временем накапливается огромное количество каталогов с неиспользуемыми профилями пользователей.
Как вручную удалить профиль пользователя в Windows?
В Windows вы можете вручную удалить профиль пользователя через панель управления.

- Откройте Advanced System Settings (команда SystemPropertiesAdvanced ) ->User Profiles ->Settings;
- В этом окне перечислен список всех профилей пользователей (локальных и доменных), которые хранятся на этом компьютере. Размер каждого профиля пользователя на диске указан в столбце Size.
- Выберите пользователя, чей профиль нужно удалить и нажмите кнопку Delete.
В Windows 11/10 и Windows Server 2022/2019 вы можете удалить профили пользователей с диска через приложение Settings. Перейдите в раздел Accounts -> Access work and school (или выполните команду быстрого доступа ms-settings:otherusers ). Выберите пользователя и нажмите Remove чтобы удалить его данные с компьютера.

При корректном удалении профиля пользователя с диска будет удален каталог профиля в C:\Users и запись о пользователе в реестре.
Многие начинающиеся администраторы пытаются вручную удалить каталог с профилем пользователя из папки C:\Users. В этом случае нужно обязательно вручную удалить информацию о профиле из реестра Windows:

- Откройте редактор реестра regedit.exe ;
- Перейдите в ветку HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
- Для каждого пользователя, выполнившего локальный вход в систему (этот метод входа должен быть разрешен пользователю настройками параметра Allow log on locallyвGPO), создается отдельная ветка с SID пользователя в качестве имени;
- Вы можете найти раздел реестра, соответствующий пользователю по SID, или можете вручную просмотреть содержимое всех вложенных разделв, пока не найдете раздел, в котором значение ProfileImagePath указывает на каталог с профилем пользователя на диске (например, C:\Users\kbuldogov );
- Удалите данный раздел реестра, чтобы завершить корректное удаление профиля.
Также вы можете удалить профиль конкретного пользователя с помощью PowerShell:
Get-CimInstance -Class Win32_UserProfile | Where-Object < $_.LocalPath.split(‘\’)[-1] -eq 'kbuldogov' >| Remove-CimInstance
Эта команда удалит как каталог на диске, так и ссылку на профиль пользователя kbuldogov в реестре HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList.
Эта команда будет работать как в Windows PowerShell, так и в новых версиях PowerShell Core 6.x,7.x
Можно удалить профиль пользователя на удаленном компьютере с помощью PowerShell Remoting и командлета Invoke-Command:
$compname=»wks21s32″
$user = «kbuldogov»
Invoke-Command -ComputerName $compname -ScriptBlock param($user)
Get-CimInstance -Class Win32_UserProfile | Where-Object < $_.LocalPath.split(‘\’)[-1] -eq $user >| Remove-CimInstance
> -ArgumentList $user
Групповая политика для автоматической очистки старых профилей
В Windows есть специальный параметр групповой политики для автоматического удаления старых профилей пользователей старше xx дней. Вы можете включить этот параметр с помощью локального редактора GPO ( gpedit.msc ) или с помощью консоли управления доменными GPO ( gpmc.msc ). В этом примере на назначим политику автоматической очистки профилей на хосты в ферме RDS, которые вынесены в отдельный контейнер (Organizational Unit) Active Directory.
Прежде чем применять политику удаления старых профилей ко всем хостам, настоятельно рекомендуем проверить ее на тестовом сервере. Выведите один из серверов RDSH в режим обслуживания и протестируйте политику на нем.
- Найдите OU с компьютерами/серверами, на который вы хотите применить политику очистки старых профилей пользователей. Щелкните по OU и выберите Create a GPO in this domain and Link it here;

- Укажите имя политики и отредактируйте GPO;
- Перейдите в раздел Конфигурация компьютера ->Административные шаблоны -> Система ->Профили пользователей (Computer Configuration -> Administrative Templates -> System -> User Profiles);
- Откройте параметр “Удалять при перезагрузке системы профили пользователей по истечении указанного числа дней” (Delete user profiles older than a specified number days on system restart);
- Включите политику и укажите через сколько дней профиль пользователя считается неактивным и “Служба профилей пользователей Windows” можно автоматически удалить такой профиль при следующей перезагрузке. Обычно тут стоит указать не менее 45-90 дней;

- После применения новых настроек групповых политк, служба User Profile Services на ваших серверах Windows будет автоматически удалять старые профили пользователей. Удаление выполняется при перезагрузке сервера.
При использовании этой политики нужно быть уверенным, что при выключении/перезагрузке сервера нет проблем с системным временем (время не сбивается), иначе могут быть удалены профили активных пользователей.
Другой недостаток — вы не можете запретить удаление определенных профилей, например, локальных учетных записей, администраторов и т.д.
В версиях до Windows 11/10 и Windows Server 2022/2019 эта политика работала некорректно. Дело в том, что неактивноть профиля пользователя ранее определялась по дате именения файла NTUSER.dat. При установке обновлений Windows, служба Trusted Installer может менять дату изменения файла NTUSER.dat в профиле каждого пользователя. В результате служба Win32_UserProfile считает, что профиль использовался недавно.
В современных версиях Windows эта политика проверяет активность профиля пользователей по параметрам LocalProfileUnloadTimeLow и LocalProfileUnloadTimeHigh в ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\ .

Вы можете получить значения параметров реестра LocalProfileLoadTimeLow и LocalProfileUnloadTimeHigh в привычном формате времени с помощью скрипта:
$profilelist = Get-ChildItem "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList" foreach ($p in $profilelist) < try < $objUser = (New-Object System.Security.Principal.SecurityIdentifier($p.PSChildName)).Translate([System.Security.Principal.NTAccount]).value >catch > Remove-Variable -Force LTH,LTL,UTH,UTL -ErrorAction SilentlyContinue $LTH = '' -f (Get-ItemProperty -Path $p.PSPath -Name LocalProfileLoadTimeHigh -ErrorAction SilentlyContinue).LocalProfileLoadTimeHigh $LTL = '' -f (Get-ItemProperty -Path $p.PSPath -Name LocalProfileLoadTimeLow -ErrorAction SilentlyContinue).LocalProfileLoadTimeLow $UTH = '' -f (Get-ItemProperty -Path $p.PSPath -Name LocalProfileUnloadTimeHigh -ErrorAction SilentlyContinue).LocalProfileUnloadTimeHigh $UTL = '' -f (Get-ItemProperty -Path $p.PSPath -Name LocalProfileUnloadTimeLow -ErrorAction SilentlyContinue).LocalProfileUnloadTimeLow $LoadTime = if ($LTH -and $LTL) < [datetime]::FromFileTime("0x$LTH$LTL") >else < $null >$UnloadTime = if ($UTH -and $UTL) < [datetime]::FromFileTime("0x$UTH$UTL") >else < $null >[pscustomobject][ordered]@ < User = $objUser SID = $p.PSChildName Loadtime = $LoadTime UnloadTime = $UnloadTime >>

PowerShell скрипт для удаления старых профилей пользователей в Windows
Вы можете удалять профили неактивных или заблокированных пользователей с помощью скрипта PowerShell.
Сначала попробуем подсчитать размер профиля каждого пользователя в папке C:\Users c помощью простого скрипта из статьи “Вывести размер папок с помощью PowerShell”:
gci -force ‘C:\Users\’-ErrorAction SilentlyContinue | Where < !($_.Attributes -match " ReparsePoint") >| ? < $_ -is [io.directoryinfo] >| % $len = 0
gci -recurse -force $_.fullname -ErrorAction SilentlyContinue | % < $len += $_.length >
$_.fullname, ‘ GB’ -f ($len / 1Gb)
$sum = $sum + $len
>
“Общий размер профилей”,’ GB’ -f ($sum / 1Gb)
Итого суммарный размер всех профилей пользователей в каталоге C:\Users около 22 Гб.

При расчете размера профиля пользователя скрипт игнорирует символические ссылки в Windows.
Теперь выведем список пользователей, профиль которых не использовался более 60 дней. Для поиска можно использовать значение атрибута профиля LastUseTime.
У меня на терминальном сервере оказалось 143 профиля неактивных пользователей (общим размером около 10 Гб).

Следующий PowerShell скрипт выведет список подробную информацию о профилях пользователей, которые не обновлялись более 60 дней. Скрипт сконвертирует SID пользователя в имя, посчитает размер профиля каждого пользователя и выведет все в таблице:
$allprofilesinfo = @() $OldProfiles=Get-WMIObject -class Win32_UserProfile | Where Foreach ($OldProfile in $OldProfiles) GB" -f ((gci –force $OldProfile.localpath –Recurse -ErrorAction SilentlyContinue| measure Length -s).sum / 1Gb) > $allprofilesinfo += $userinfo > $allprofilesinfo

Чтобы удалить все эти профили достаточно добавить перенаправить список на команду Remove-WmiObject (перед использование скрипта удаления желательно несколько раз перепроверить его вывод с помощью параметра –WhatIf ):
Как мы уже упомянули выше, при установке некоторых обновлений Windows, служба Trusted installer может менять дату изменения файла NTUSER.dat в профиле каждого пользователя.
На скриншоте выше видно, что все профили были изменены примерно в одно и тоже время. Проверьте дату последней установки обновлений в Windows:
gwmi win32_quickfixengineering |sort installedon |select InstalledOn -Last 1
Get-WUHistory | Select-Object -First 20
Скорее всего она совпадет с датой изменения профилей. Поэтому в старых версиях Windows можно получить список неактивных профилей с помощью другого скрипта, который проверяет атрибуту lastwritetime каталога пользователя:
Чтобы не удалять профили некоторых пользователей, например, специальные аккаунты System и Network Service, учетную запись локального администратора, пользователей с активными сессиями, список аккаунтов-исключений), нужно модифицировать скрипт следующим образом:
#Список аккаунтов, чьи профили нельзя удалять
$ExcludedUsers =»Public»,»zenoss»,»svc»,”user_1”,”user_2”
$LocalProfiles=Get-WMIObject -class Win32_UserProfile | Where
foreach ($LocalProfile in $LocalProfiles)
if (!($ExcludedUsers -like $LocalProfile.LocalPath.Replace(«C:\Users\»,»»)))
$LocalProfile | Remove-WmiObject
Write-host $LocalProfile.LocalPath, «профиль удален” -ForegroundColor Magenta
>
>
Вы можете настроить запуск этого скрипта через shutdown скрипт групповой политики или по расписанию заданием планировщика. (перед настройкой автоматического удаления профилей внимательно протестируйте скрипт в своей среде!).
Можно модифицировать скрипт, чтобы автоматически удалять пользователи всех пользователей, которые добавлены в определенную группу AD. Например, вы хотите автоматически удалять профили уволившихся пользователей. Просто добавьте такие учетные записи в группу DisabledUsers и выполните на сервере скрипт:
$users = Get-ADGroupMember -Identity DisabledUsers | Foreach
$profiles = Get-WmiObject Win32_UserProfile
$profiles | Where | Foreach
Дополнительно вы можете использовать еще один PowerShell скрипт для очистки временных файлов и кэша в профилях активных пользователей RDS
Предыдущая статья Следующая статья
Как удалить папку пользователя в Windows 10
Удалять можно папки только тех пользователей, которые более не нужны в системе и подлежат удалению в принципе.
Способ 1: Приложение «Параметры»
Удалить папку пользователя в расположении C:\Users можно вместе с профилем из соответствующего раздела приложения «Параметры».
- Откройте приложение «Параметры» и перейдите в раздел «Учетные записи» → «Семья и другие пользователи».
- Выберите пользователя, папку которого хотите удалить, и нажмите кнопку «Удалить».

- Если при этом появится окно «Удалить учетную запись и данные», нажмите в нем одноименную кнопку.

- Перейдите в «Проводнике» по пути C:\Users и убедитесь, что папка удалена. Если она осталась, кликните по ней правой кнопкой мыши и выберите из контекстного меню «Удалить».

Для удаления профиля пользователя вместе с папкой в Windows 10 можно использовать оснастку «Учетные записи пользователей». Чтобы ее открыть, выполните в вызванном нажатием клавиш Win + R окошко быстрого запуска команду control userpasswords2 .
Затем выберите ненужного пользователя и нажмите кнопку «Удалить».

Способ 2: Ручное удаление
Удалить каталог ставшего ненужным пользователя можно и в ручном режиме, но в этом случае сначала необходимо обязательно вручную удалить информацию о профиле из реестра Windows.
- Запустите «Редактор реестра» командой regedit , выполненной в диалоговом окошке быстрого запуска приложений, вызванном нажатием Win + R.

- Перейдите в раздел HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList . Это раздел содержит список каталогов, в качестве которых используется идентификатор (SID). Открывайте каждый каталог по очереди и смотрите значение параметра «ProfileImagePath».

- Если в качестве значения параметра указан путь к удаляемой папке, кликните по этой папке правой кнопкой мыши и выберите из контекстного меню опцию «Удалить».

- Перейдите в «Проводнике» по пути C:\Users и удалите папку пользователя.

Удаление следует выполнять с правами администратора.
Способ 3: Консоль «PowerShell»
Удалить каталог пользователя вместе с его профилем можно с помощью консоли «PowerShell».
-
Откройте от имени администратора консоль «PowerShell» из контекстного меню кнопки «Пуск».

Эта команда удалит не только папку профиля, но и соответствующий раздел в системном реестре.
Способ 4: Загрузочные диски
Используйте этот способ, если удалить папку пользователя не удается в работающей системе. Для выполнения этой задачи подойдет любой LiveCD на базе WinPE или Linux с файловым менеджером на борту. Например, WinPE 11-10-8 Sergei Strelec.
- Скачайте подходящий LiveCD с сайта разработчика и запишите его на флешку средствами Rufus или аналогичной программы. Подробнее:
Как пользоваться Rufus
Программы для записи образа на флешку - Загрузите компьютер с флешки с LiveCD, откройте встроенный проводник или иной файловый менеджер, перейдите в папку C:\Users и удалите профильную папку пользователя из контекстного меню или нажатием клавиши Del.
После удаления каталога пользователя из-под LiveCD рекомендуется выполнить очистку реестра, но делать это не обязательно.
