CMD/BAT - [решено] отключение файла подкачки

Аватара пользователя
super_bitard

CMD/BAT - [решено] отключение файла подкачки

Сообщение super_bitard »

Как отключить файл подкачки?

Disablepagingexecutive не работает. После ребута, в GUI так и остаются цифры о размере файла подкачки, pagefile.sys никуда не исчезает.
Аватара пользователя
Iska

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение Iska »

vbscript:


читать дальше »




Код:

Код: Выделить всё

Option Explicit
Dim strComputer
Dim objSWbemLocator
Dim objSWbemServicesEx
Dim objSWbemObjectEx
strComputer = "."
Set objSWbemLocator    = WScript.CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServicesEx = objSWbemLocator.ConnectServer(strComputer, "root\cimv2")
objSWbemServicesEx.Security_.Privileges.AddAsString "SeCreatePagefilePrivilege", True
For Each objSWbemObjectEx In objSWbemServicesEx.InstancesOf("Win32_ComputerSystem")
    With objSWbemObjectEx
        ' Раскомментировать для Vista и выше:
        '.AutomaticManagedPagefile = False
        '.Put_
    End With
Next
For Each objSWbemObjectEx In objSWbemServicesEx.InstancesOf("Win32_PageFileSetting")
    objSWbemObjectEx.Delete_
Next
Set objSWbemObjectEx   = Nothing
Set objSWbemServicesEx = Nothing
Set objSWbemLocator    = Nothing
WScript.Quit 0





А также на XP есть «pagefileconfig.vbs»:



Код:

Код: Выделить всё

C:\WINDOWS\system32\pagefileconfig.vbs /?
Аватара пользователя
super_bitard

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение super_bitard »

Вообще-то изначально все так и проверял



проверил еще раз как вы хотели:

3.pagefile.sys автоматически удалился сам (можно было не проверять очевидное)

6.pagefile.sys не удалился

9.pagefile.sys не удалился



en_windows_xp_professional_with_service_pack_3_x86_cd_vl_x14-73974.iso



проверялось на разных компьютерах



выше уже выкладывал скрипт удаляющий после перезагрузки - тоже не работает:

reg add "hklm\software\microsoft\windows\currentversion\runonce" /V "delete object" /d "cmd /c del /f /q %systemdrive%\pagefile.sys" /f
Аватара пользователя
super_bitard

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение super_bitard »

Работает, и даже файл подкачки стал удалаямым, но вручную.



Bat-вариант бы, с автоматическим удалением pagefile.sys (ведь при ручном отключений через GUI сам файл тоже удаляется)
Аватара пользователя
super_bitard

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение super_bitard »

super_bitard, этого не было в ТЗ. Ну, так добавьте:



Код:

Код: Выделить всё

Option Explicit
Dim strComputer
Dim objSWbemLocator
Dim objSWbemServicesEx
Dim objSWbemObjectEx
strComputer = "."
Set objSWbemLocator    = WScript.CreateObject("WbemScripting.SWbemLocator")
Set objSWbemServicesEx = objSWbemLocator.ConnectServer(strComputer, "root\cimv2")
objSWbemServicesEx.Security_.Privileges.AddAsString "SeCreatePagefilePrivilege", True
For Each objSWbemObjectEx In objSWbemServicesEx.InstancesOf("Win32_ComputerSystem")
    With objSWbemObjectEx
        ' Раскомментировать для Vista и выше:
        '.AutomaticManagedPagefile = False
        '.Put_
    End With
Next
For Each objSWbemObjectEx In objSWbemServicesEx.InstancesOf("Win32_PageFileSetting")
    objSWbemObjectEx.Delete_
    If objSWbemServicesEx.Get("CIM_DataFile='" & objSWbemObjectEx.Name & "'").Delete()  0 Then
    	WScript.Echo "Can't delete [" & Replace(objSWbemObjectEx.Name, "\\", "\") & "]"
    End If
Next
Set objSWbemObjectEx   = Nothing
Set objSWbemServicesEx = Nothing
Set objSWbemLocator    = Nothing
WScript.Quit 0
Аватара пользователя
seriych

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение seriych »

Я опять чего-то непонимаю?



Код:

Код: Выделить всё

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v PagingFiles /t REG_MULTI_SZ /d "\0" /f

В GUI исчезает, в винде после перезагрузки пропадает... Что я делаю не так?
Аватара пользователя
Iska

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение Iska »

seriych, если вопрос ко мне — то я банально не в курсе.



Если Вам не сложно — проверьте, пожалуйста — не делает ли скрипт опосредованно той же настройки в реестре (вероятнее всего так оно и есть)?
Аватара пользователя
seriych

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение seriych »

Iska,

Реестр правит, на удаление файла ругается. После перезагрузки должна удалить сама винда. Я просто этот ключик реестра применяю уже года полтора. А после перезагрузки выставляю нужный размер.
Аватара пользователя
super_bitard

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение super_bitard »

Действительно vbsка ругается что не может удалить pagefile.sys





Так pagefile.sys почему-то тоже не удаляется, а должен:



reg add "hklm\system\currentcontrolset\control\session manager\memory management" /v "pagingfiles" /t reg_multi_sz /d "\0" /f



reg add "hklm\software\microsoft\windows\currentversion\runonce" /V "delete object" /d "cmd /c del /f /q %systemdrive%\pagefile.sys" /f





При ручном отключении через GUI, система же как-то этот файл удаляет?
Аватара пользователя
seriych

Re: CMD/BAT - [решено] отключение файла подкачки

Сообщение seriych »

Раз в утверждениях обнаружились расхождения — надо выяснять реальное положение вещей.



super_bitard, коль Вы заказчик — то Вам и пробовать.



1. Задайте «ручками» в GUI настройки виртуальной памяти, задав файл подкачки, например, для диска «C:». Перегрузитесь.

2. Удалите «ручками» в GUI использование виртуальной памяти, удалив все файл подкачки для всех дисков. Перегрузитесь.

3. Проверьте, удалился ли файл подкачки на диске «C:». Отпишитесь по результатам.



4. Задайте «ручками» в GUI настройки виртуальной памяти, задав файл подкачки, например, для диска «C:». Перегрузитесь.

5. Опробуйте скрипт из
CMD/BAT - [решено] отключение файла подкачки
. Перегрузитесь.

6. Проверьте, удалился ли файл подкачки на диске «C:». Отпишитесь по результатам.



7. Задайте «ручками» в GUI настройки виртуальной памяти, задав файл подкачки, например, для диска «C:». Перегрузитесь.

8. Опробуйте команду из
CMD/BAT - [решено] отключение файла подкачки
. Перегрузитесь.

9. Проверьте, удалился ли файл подкачки на диске «C:». Отпишитесь по результатам.



Дополнительно укажите Вашу ОС и Service Pack. По отрицательным результатам (по пунктам 6 и 9) можно будет дописать удаление файла подкачки после перезагрузки.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»