понедельник, 4 марта 2024 г.

WSL2 + 100% CPU load

На одной из машин появилась проблема, что wsl2 + docker-desktop - через пару дней процесс wmmem ест 100% проца, wsl --shutdown из обычной cmd (даже от админа) просто зависает навечно. Процесс wmmem ни через диспетчер задач, ни через taskkill не снять, "недостаточно прав".

Мне помогло wsl --shutdown именно из   powershell консоли, плюс предварительно было сделано (из  PS):

Restart-Service LxssManager

wsl -l -v
и потом на всех
wsl -t (name)
wsl --shutdown

https://thegeekpage.com/vmmem-high-memory-and-cpu-usage/

Судя по всему, виновник - docker desktop.

Most of the time, it happens just after I wake up my laptop from sleep mode.

То есть, или докер, или сон..

Плюс можно попробовать выключить интеграцию интерфейсов в C:\Users<your-username>.wslconfig

[wsl2]
guiApplications=false

Или попробовать поменять лимиты

memory=2GB # Limits VM memory in WSL 2
processors=1 # Makes the WSL 1 VM use two virtual processors

https://learn.microsoft.com/en-us/answers/questions/1191897/high-cpu-usage-for-vmmem

плюс там есть советы перезапуска видеосистемы через Win+Ctrl+Shift+B


https://www.reddit.com/r/bashonubuntuonwindows/comments/zjfa7l/wsl2_vmmem_100_cpu/

https://github.com/microsoft/WSL/issues/6982

пятница, 7 августа 2020 г.

Создаём self-signed certificate

 Например, есть домен, поднимаем ADFS, но проблема - домен вида localdomain.loc. То есть мы не способны сделать нормальный сертификат, .loc невозможно купить. Значит, поднимаем свой RootCA и уже с ним выписываем сертификаты на нужные домены.

Вообще, в винде есть такая служба "центр сертификации", но например если у нас AWS AD то поставить мы не сможем - там нужен юзер уровня domain administrator, но амазон такого не даёт. Но есть варианты через PowerShell.

Создаём корневой сертификат

$rootcert = New-SelfSignedCertificate -CertStoreLocation Cert:\LocalMachine\My -DnsName "RootCA" -TextExtension @("2.5.29.19={text}CA=true") -KeyUsage CertSign,CrlSign,DigitalSignature

Cert:\LocalMachine\My - в данном случае эти имена жёстко заданы, вместо LocalMachine может быть CurrentUser, но это надо идти в документацию.

Добавляем пароль и экспортируем

[System.Security.SecureString]$rootcertPassword = ConvertTo-SecureString -String "password" -Force -AsPlainText

[String]$rootCertPath = Join-Path -Path 'cert:\LocalMachine\My\' -ChildPath "$($rootcert.Thumbprint)"

Export-PfxCertificate -Cert $rootCertPath -FilePath 'RootCA.pfx' -Password $rootcertPassword

Export-Certificate -Cert $rootCertPath -FilePath 'RootCA.crt'

Экспорты будут в текущий каталог, если надо - можно добавить -FilePath c:\....

Основной сертификат

Теперь делаем сам сертификат, выставив срок 3 года (штатно 1 год)

$date_now = Get-Date

$extended_date = $date_now.AddYears(3)

$cert = New-SelfSignedCertificate -certstorelocation cert:\localmachine\my -dnsname localdomain.loc -notafter $extended_date -KeyLength 4096 -KeyExportPolicy Exportable -KeyUsage DigitalSignature,KeyEncipherment -Signer $rootcert

[String]$testCertPath = Join-Path -Path 'cert:\LocalMachine\My\' -ChildPath "$($cert.Thumbprint)"

Export-PfxCertificate -Cert $testCertPath -FilePath c:\localdomain.pfx -Password $rootcertPassword

Если требуется несколько поддоменов - будет так

-dnsname localdomain.loc,www.localdomain.loc


Также, там может понадобиться добавить RootCA в Trusted Root Certification Authorities, как на той машине где создали, так и на всех кто должен доверять этому сертификату. Это можно сделать через import certificate, взять например .crt из тех что мы экспортировали в начале.

Линки

How to Enable Your Users to Access Office 365 with AWS Managed Microsoft AD | AWS Security Blog https://aws.amazon.com/jp/blogs/security/how-to-enable-your-users-to-access-office-365-with-aws-microsoft-active-directory-credentials/

Generating self-signed certificates on Windows | by Rory Braybrook | The new control plane | Medium https://medium.com/the-new-control-plane/generating-self-signed-certificates-on-windows-7812a600c2d8

Практическое руководство. Создание временных сертификатов для использования во время разработки - WCF | Microsoft Docs https://docs.microsoft.com/ru-ru/dotnet/framework/wcf/feature-details/how-to-create-temporary-certificates-for-use-during-development

New-SelfSignedCertificate https://docs.microsoft.com/en-us/powershell/module/pkiclient/new-selfsignedcertificate?view=win10-ps


среда, 12 июня 2019 г.

вторник, 16 октября 2018 г.

1c 7.7 x64

Если вдруг потребуется ещё ставить 1с 7.7 в windows 10 то нужно знать:
1) инсталлятор не работает, нужно распаковывать через stix_w32.exe
2) апдейты - тоже самое
3) чтобы работало получение валют, нужна регистрация v7plus.dll, она лежит там же где 1С база, открываем консоль (cmd) от имени администратора и вводим regsrv32.exe "путь_до_базы/v7plus.dll"
4) нужно найти шрифт EANGNIVC.TTF для левой стороны бланков
5) для 2-мерных кодов с gvinc.ru качаем pdf417 и ставим
6) для работы ключа нужен правильный хасп драйвер, и в рабочей папке 1с запустить hinstall.exe /i (в админской консоли), а также нужен hasp license manager. Может и не заработать, тогда ищем сломанную версию - ключ есть, де-факто лицензия не нарушена.

потом запускаем 1с и при ошибке про сортировку - запускаем конфигуратор и исправляем сортировку.

Налогоплательщик НДС

Если вдруг довелось ставить/переносить налогоплательщик ндс, то довелось столкнуться и с нечеловеческим поведением системы. В частности, на стадии установки полной версии будет ошибка unable to merge new configuration, а после запуска - ошибка что database not found. Такой вот "шикарный" у них софт.
На официальном сайте есть пародия на инструкцию, но полные шаги удалось найти только на сторонних сайтах, например тут
https://hdsystems.ru/Articles/Drugoe/Oshibka-pri-zapuske-programmy-Vozmeshhenie-NDS-nalogoplatelshhik-30-15.html

В случае переноса на другую машину нам нужна папка data, и желательно найти в progam files/common files/borland shared/BDE/idapi32.cfg и скопировать его в подобное место на новой машине - тогда не нужен конфигуратор BDE.

суббота, 17 декабря 2016 г.

Показать принтеры, когда "устройства и принтеры" не отвечает

Начинать лучше с ребута, для винды любая диагностика должна начинаться с этого.

Иногда подвисает список принтеров, что может проявляться в том числе в проблемах запуска ворда. Помогает остановка диспетчера печати в службах, но тогда не получается печатать. Причина обычно в сетевых принтерах, проблемы доступа (старый айпи)

http://sysadmins.ru/topic401107.html

для чистки можно запустить cmd от администратора (пуск - найти - cmd - по ярлку правой кнопкой - запуск от имени администратора)
rundll32 SHELL32,SHHelpShortcuts_RunDLL PrintersFolder

Также какого-то мелкомягкого бога причина может быть в остановленной службе "Службы поддержки Bluetooth"
и иногда помогает
regsvr32 actxprxy.dll
regsvr32 "%ProgramFiles%\Internet Explorer\ieproxy.dll"

там же можно попробовать ввести
printmanagement.msc

Ну и есть такое
del /s "%systemdrive%\users\%username%\AppData\Local\Microsoft\Device Metadata\*.*"

вторник, 22 сентября 2015 г.

wireshark и vlans

Для захвата тэгированного трафика надо включать monitor mode, для некоторых карт в ключ
 HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}\00xx (где 00xx - номер карты, смотреть можно по полю DriverDesc, вместо ControlSet001 лучше сразу открывать CurrentControlSet)
создаём ключи (DWORD)
MonitorMode=1
MonitorModeEnabled=1
и перезагружаемся. Может не помочь, например с картами atheros эти ключи не работают. А у броадкома скорее всего ключи будут
TxCoalescingTicks
PreserveVlanInfoInRxPacket

http://xgu.ru/wiki/VLAN_%D0%B2_Windows
https://wiki.wireshark.org/VLAN
https://wiki.wireshark.org/CaptureSetup/VLAN

Считаем, что подобрали карту, которая умеет прокидывать весь траф. Теперь в wireshark можно сделать фильтр "vlan" - будет показываться тэгированный траф.
"vlan 10" - будет только траф с 10 вланом
"vlan and host 1.2.3.4" - тэгированный траф с указанного хоста
итд

Для сниффинга нужно быть "посередине", или поставить хаб (который hub, да-да), или настроить зеркалирование портов.
Пример зеркалирования для циски
monitor session x source interface fa0/y
monitor session x destination interface fa0/z encapsulation dot1q