Загрузка данных


"=== WINDOWS ==="
Get-CimInstance Win32_OperatingSystem |
  Select-Object Caption, Version, BuildNumber

Get-CimInstance Win32_ComputerSystem |
  Select-Object Manufacturer, Model,
    @{N="RAM_GB";E={[math]::Round($_.TotalPhysicalMemory/1GB,1)}}

"=== DISK C ==="
Get-Volume -DriveLetter C |
  Select-Object DriveLetter,
    @{N="Size_GB";E={[math]::Round($_.Size/1GB,1)}},
    @{N="Free_GB";E={[math]::Round($_.SizeRemaining/1GB,1)}}

"=== CPU AND VIRTUALIZATION ==="
Get-CimInstance Win32_Processor |
  Select-Object Name, NumberOfCores, NumberOfLogicalProcessors,
    VirtualizationFirmwareEnabled,
    VMMonitorModeExtensions,
    SecondLevelAddressTranslationExtensions

"=== BITLOCKER STATUS — NO RECOVERY KEY SHOWN ==="
Get-BitLockerVolume -MountPoint C: |
  Select-Object MountPoint, VolumeStatus, ProtectionStatus,
    EncryptionMethod, LockStatus

"=== PENDING REBOOT ==="
[pscustomobject]@{
  ComponentServicing = Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\RebootPending"
  WindowsUpdate      = Test-Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\WindowsUpdate\Auto Update\RebootRequired"
}

"=== WSL ==="
wsl --status
wsl --version
wsl --list --verbose

"=== WINDOWS FEATURES ==="
@(
  "Microsoft-Windows-Subsystem-Linux",
  "VirtualMachinePlatform",
  "Microsoft-Hyper-V-All"
) | ForEach-Object {
  Get-WindowsOptionalFeature -Online -FeatureName $_ -ErrorAction SilentlyContinue |
    Select-Object FeatureName, State
}

"=== TAILSCALE ==="
Get-Service Tailscale -ErrorAction SilentlyContinue |
  Select-Object Name, Status, StartType

$ts = "$env:ProgramFiles\Tailscale\tailscale.exe"
if (Test-Path $ts) {
  & $ts version
} else {
  "tailscale.exe not found at standard path"
}

"=== OPENSSH SERVER ==="
Get-WindowsCapability -Online |
  Where-Object Name -Like "OpenSSH.Server*" |
  Select-Object Name, State

Get-Service sshd -ErrorAction SilentlyContinue |
  Select-Object Name, Status, StartType