Archivo de la etiqueta: Windows

Get-SCVMMInventory – Get Inventory of all VM’s in SCVMM (2012 R2/2016 and more)

Entrada actualizada para agregar compatibilidad con SCVMM 2016

Credits are from https://vniklas.djungeln.se/2013/09/29/ Niklas AkerlundGet an inventory of all VM’s from System Center Virtual Machine Manager including the vCPU’s, memory, all VHD´s, IP addresses.  Report to CSV and HTML. Adapted to work with last actuallly SCVMM version 3.2.8224

__________________________

Créditos son de Niklas AkerlundGet https://vniklas.djungeln.se/2013/09/29/

Exportar un inventario de todas las VM’s es SCVMM. Se exporta a CSV y HTML, compatible con la 3.2.8224 /SCVMM 2016 y más.

Get an inventory of all VM’s from System Center Virtual Machine Manager including the vCPU’s, memory, up to 3 VHD´s, up to 4 interfaces and IP addresses.  Report to CSV and HTML. Adapted to work with SCVMM version 3.2.8224. and at least SCVMM 2016 UR7

Thanks to @leleco for the suggestions and collaboration improvements

Example:

Get-SCVMInventory -report

Give a reports for “All Hosts”

Get-SCVMInventory -VMHost SERVER01

Give data from SERVER01 Hyper-v Host.

Publicado también en https://gallery.technet.microsoft.com/scriptcenter/Get-SCVMMInventory-Get-053afdc1


function Get-SCVMInventory
{
    [CmdletBinding()]

    Param
    (

        $VMHostGroup = "All Hosts",
        [Parameter(ValueFromPipeline=$True)][Alias('ClusterName')]
        $VMHostCluster = $null,
        $VMHost = $null,
        [switch]$report,
        [string]$path =".\",
        [string]$CSVFile = "VMdata.csv",
        [string]$HTMLReport = "VMdata.html"
    )

    Begin
    {
        if(!(Get-Module virtualmachinemanager)){
            Import-Module Hyper-V
            Import-Module virtualmachinemanager
        }
        if(Get-SCVMMServer localhost | where ProductVersion -gt 3){
            $isR2 = $true
        }else{
            $isR2 = $false
        }
    }
    Process
    {
         if ($VMHostCluster -eq $null){
            if($VMHost -eq $null){
                $VMHosts = (Get-SCVMHostGroup -Name $VMhostGroup).AllChildHosts
            }else{
                $VMHosts = Get-SCVMHost $VMHost
            }
         }else{
            $VMHosts = (Get-SCVMHostCluster -Name $VMHostCluster).Nodes
         }
            $VMs = $VMHosts | Get-SCVirtualMachine
            $reportArray = @()
            foreach ($VM in $VMs){
                Write-Verbose $VM.Name
                    $vNics = $VM.VirtualNetworkAdapters
                    $VHDConf = $VM.VirtualHardDisks
                    $driveConf = $VM.VirtualDiskDrives
                    if(($vNics[0].IPv4Addresses -ne $null)){
                        Write-Verbose $vNics[0].IPv4Addresses[0]
                        $IPAddress1 = $vNics[0].IPv4Addresses[0]

                    }else{
                        if (!$isR2){
                            if(($vNics[0].IPv4Addresses -ne $null)){
                            $IPAddress1= (Hyper-V\Get-VMNetworkAdapter -ComputerName $VM.HostName -VMName $VM.Name).IPv4Addresses[0]
                            }else{
                                $IPAddress1 = "N/A"
                            }
                        }else{
                            Write-Verbose "NO IP"
                            $IPAddress1 = "N/A"
                        }
                    }
                    if(($vNics[1].IPv4Addresses -ne $null)){
                        Write-Verbose $vNics[1].IPv4Addresses[0]
                        $IPAddress2 = $vNics[1].IPv4Addresses[0]

                    }else{
                        if (!$isR2){
                            if(($vNics[1].IPv4Addresses -ne $null)){
                            $IPAddress2= (Hyper-V\Get-VMNetworkAdapter -ComputerName $VM.HostName -VMName $VM.Name).IPv4Addresses[0]
                            }else{
                                $IPAddress2 = "N/A"
                            }
                        }else{
                            Write-Verbose "NO IP"
                            $IPAddress2 = "N/A"
                        }
                    }
                    if(($vNics[2].IPv4Addresses -ne $null)){
                        Write-Verbose $vNics[2].IPv4Addresses[0]
                        $IPAddress3 = $vNics[2].IPv4Addresses[0]

                    }else{
                        if (!$isR2){
                            if(($vNics[2].IPv4Addresses -ne $null)){
                            $IPAddress3= (Hyper-V\Get-VMNetworkAdapter -ComputerName $VM.HostName -VMName $VM.Name).IPv4Addresses[0]
                            }else{
                                $IPAddress3 = "N/A"
                            }
                        }else{
                            Write-Verbose "NO IP"
                            $IPAddress3 = "N/A"
                        }
                    }
                    if(($vNics[3].IPv4Addresses -ne $null)){
                        Write-Verbose $vNics[3].IPv4Addresses[0]
                        $IPAddress4 = $vNics[3].IPv4Addresses[0]

                    }else{
                        if (!$isR2){
                            if(($vNics[3].IPv4Addresses -ne $null)){
                            $IPAddress4= (Hyper-V\Get-VMNetworkAdapter -ComputerName $VM.HostName -VMName $VM.Name).IPv4Addresses[0]
                            }else{
                                $IPAddress4 = "N/A"
                            }
                        }else{
                            Write-Verbose "NO IP"
                            $IPAddress4 = "N/A"
                        }
                    }
                    if($VM.VMCheckpoints){
                    $Snapshots = "Yes"
                    }else{
                    $Snapshots = "No"
                    }

                    $data = [ordered]@{
                    VMName = $VM.Name
                    vCPUs = $VM.CPUCount
                    
                    MemoryAssignedMB = $VM.MemoryAssignedMB
                    Status = $VM.Status
                    OperatingSystem = $VM.OperatingSystem
                    HostName = $VM.HostName
                     TotalSizeGB = $VM.TotalSize/1GB -as [int]
                    vNics = $vNics.Count                                                         
                    VirtualNetwork1 = $vNics[0].VirtualNetwork
                    MacAddressType1 = $vNics[0].MacAddressType
                    MacAddress1 = $vNics[0].MacAddress
                    VirtualNetworkAdapterType1 = $vNics[0].VirtualNetworkAdapterType
                    VLANEnabled1 = $vNics[0].VlanEnabled
                    VLanID1 = $vNics[0].VlanID 
                    IPAddress1 = $IPAddress1

                    VirtualNetwork2 = $vNics[1].VirtualNetwork
                    MacAddressType2 = $vNics[1].MacAddressType
                    MacAddress2 = $vNics[1].MacAddress
                    VirtualNetworkAdapterType2 = $vNics[1].VirtualNetworkAdapterType
                    VLANEnabled2 = $vNics[1].VlanEnabled
                    VLanID2 = $vNics[1].VlanID 
                    IPAddress2 = $IPAddress2

                    VirtualNetwork3 = $vNics[2].VirtualNetwork
                    MacAddressType3 = $vNics[2].MacAddressType
                    MacAddress3 = $vNics[2].MacAddress
                    VirtualNetworkAdapterType3 = $vNics[2].VirtualNetworkAdapterType
                    VLANEnabled3 = $vNics[2].VlanEnabled
                    VLanID3 = $vNics[2].VlanID 
                    IPAddress3 = $IPAddress3

                    VirtualNetwork4 = $vNics[3].VirtualNetwork
                    MacAddressType4 = $vNics[3].MacAddressType
                    MacAddress4 = $vNics[3].MacAddress
                    VirtualNetworkAdapterType4 = $vNics[3].VirtualNetworkAdapterType
                    VLANEnabled4 = $vNics[3].VlanEnabled
                    VLanID4 = $vNics[3].VlanID 
                    IPAddress4 = $IPAddress4

                    NumberofVHD = $VHDConf.Count
                    VHDName = $VHDConf[0].Name
                    VHDFormatType = $VHDconf[0].VHDFormatType
                    VHDType = $VHDconf[0].VHDType
                    VHDSize = $VHDconf[0].MaximumSize/1GB -as [int]
                    VHDCurrentSize = $VHDconf[0].Size/1GB -as [int]
                    VHDBusType = $driveConf[0].BusType
                    VHDBus = $driveConf[0].Bus
                    VHDLUN = $DriveConf[0].Lun
                    VHDDatastore = $VHDconf[0].Directory

                    VHDName2 = $VHDConf[1].Name
                    VHDFormatType2 = $VHDconf[1].VHDFormatType
                    VHDType2 = $VHDconf[1].VHDType
                    VHDSize2 = $VHDconf[1].MaximumSize/1GB -as [int]
                    VHDCurrentSize2 = $VHDconf[1].Size/1GB -as [int]
                    VHDBusType2 = $driveConf[1].BusType
                    VHDBus2 = $driveConf[1].Bus
                    VHDLUN2 = $DriveConf[1].Lun
                    VHDDatastore2 = $VHDconf[1].Directory

                    VHDName3 = $VHDConf[2].Name
                    VHDFormatType3 = $VHDconf[2].VHDFormatType
                    VHDType3 = $VHDconf[2].VHDType
                    VHDSize3 = $VHDconf[2].MaximumSize/1GB -as [int]
                    VHDCurrentSize3 = $VHDconf[2].Size/1GB -as [int]
                    VHDBusType3 = $driveConf[2].BusType
                    VHDBus3 = $driveConf[2].Bus
                    VHDLUN3 = $DriveConf[2].Lun
                    VHDDatastore3 = $VHDconf[2].Directory

                    StartMemoryGB = $VM.Memory/1024
                    DynamicMemory = $VM.DynamicMemoryEnabled
                    DynamicMemoryDemandMB = $VM.DynamicMemoryDemandMB
                    DynamicMemoryStatus = $VM.DynamicMemoryStatus -as [int]
                    DynamicMemoryMinMB = $VM.DynamicMemoryMinimumMB -as [int]
                    DynamicMemoryMaxGB = $VM.DynamicMemoryMaximumMB/1024 -as [int]
                    HasSnaphots = $Snapshots
                    Owner = $VM.Owner
                    Cloud = $VM.Cloud
                    CreationTime = $VM.CreationTime
                    HasVMAdditions = $VM.HasVMAdditions
                    VMAddition = $VM.VMAddition
                   
            }
            $obj= New-Object -TypeName PSObject -property $data
            $reportArray +=$obj 
            Write-Output $obj
            }

            if($report){
                # $reportArray
                $CSVReport = $path + $CSVFile
                $HTMLReport = $path + $HTMLReport
                $reportArray | Export-Csv -Path $CSVReport -NoTypeInformation -UseCulture
                $reportArray | ConvertTo-HTML | Out-File $HTMLReport
            }
    }
    End
    {
        # Should we clean anything?
    }
}
Anuncios

Banshee en Windows

Luego de la nota vista en http://www.omgubuntu.co.uk/2011/02/banshee-pre-alpha-for-windows-a-quick-run-down/ intentamos bajar el instalador pero no está disponible, así que lo compilamos.

Banshee for Windows

Para ello seguimos el corto link de Banshee http://banshee.fm/download/development/#windows

  • Install Dependencies

    • .NET 3.5 SP1 or higher
    • msysgit with these options:
      • “Run Git from the Windows Command Prompt (only adds git to PATH)”
      • “Always use Windows line endings”
      • Optionally, install TortoiseGit for a GUI git environment
      • Github has a nice guide for getting started with git on Windows.
  • Download and run checkout-banshee.bat

    • This script will clone Banshee from git (and a couple submodules).
    • You can double click it to run it. It will check Banshee out into a banshee subfolder where the script is located.
  • Build Banshee

    • With your favorite IDE (MonoDevelop (FOSS, preferred), VisualStudio, SharpDevelop), openBanshee.sln
    • Or run the build\windows\build-banshee.bat script, which calls msbuild directly
  • Sólo falto agregar  Wix 3.5 desde http://wix.sourceforge.net/downloadv35.html en mi caso baje la version 3.6.1321.0 desde http://wix.sourceforge.net/releases/ (Esto es para crear el paquete MSI)

    Luego de correr los procesos acá descriptos ejecutamos build-installer.js en la carpeta \banshee\build\windows y esto nos generó el instalador Banshee-1.9.3.msi 28 mb en este caso.

    Interesante para usarlo también en Windows

    Share

    Unetbootin

    Unetbootin es una excelente herramienta para convertir imágenes ISO en un Live USB.

    Si usamos Ubuntu y queremos agregarlo a los repositorios.

    https://launchpad.net/~gezakovacs/+archive/ppa

    Tipeamos en la terminal

    sudo add-apt-repository ppa:gezakovacs/ppa

    Luego

    sudo apt-get update

    sudo apt-get install unetbootin

    La Pagina oficial es http://unetbootin.sourceforge.net/ desde alli pueden bajar paquetes para Windows y Linux

    Share

    MS lnk vulnerabilidad – CVE-2010-2568

    Se hace público el exploit de la última (y grave) vulnerabilidad en Windows. Es una forma totalmente nueva de ejecutar código en Windows cuando se inserta un dispositivo extraíble, independientemente de que se hayan tomado todas las medidas oportunas conocidas hasta el momento para impedirlo. El fallo se aprovecha a través de archivos LNK (accesos directos) y supone un duro varapalo para Microsoft, pues los atacantes han conseguido descubrir la manera de eludir todas las medidas que se han tomado contra la ejecución automática en Windows.
    Ya se han hecho públicos todos los detalles y la posibilidad de aprovechar el fallo está al alcance de cualquiera. La situación es, por tanto, muy grave. Se espera pues un incremento de malware que se propague por dispositivos extraíbles puesto que en estos momentos (y hasta que Microsoft saque un parche), todos los Windows, independientemente de que esté actualizados y bien configurados, podrían llegar a ejecutar un fichero de forma “silenciosa” si se inserta un dispositivo extraíble como una llave USB.
    Acá les dejo un video aprovechando este exploit

    Por ahora, la única forma de que la vulnerabilidad no funcione es realizando el siguiente cambio (aunque se perderá funcionalidad, por lo que es conveniente realizar una copia de seguridad para restaurar el valor cuando el problema esté solucionado):

    * Poner en blanco el valor predeterminado (default) de la rama del
    registro:
    HKEY_CLASSES_ROOT\lnkfile\shellex\IconHandler

    * Detener y deshabilitar el servicio “cliente web” (WebClient)

    No está de más recordar que no se deben usar dispositivos extraíbles de dudosa procedencia. Aun así, se deben tomar las precauciones oportunas incluso contra los dispositivos en los que se confíe.
    Lo más probable es que Microsoft publique el parche en cuanto esté disponible, independientemente de su ciclo de actualizaciones. Ahora que el problema es público y puede ser aprovechado por cualquiera, suponemos que muy posiblemente se adelante con respecto a la siguiente tanda de parches (programada para el 10 de agosto) o se retrase levemente con respecto a ésta. Esperamos en cualquier caso que no haya que esperar hasta septiembre para obtener una solución oficial.
    El documento con el Workaround provisorio aqui //How mitigate?http://j.mp/9Zbh6E

    Ultrastar Deluxe Linux

    Leo en TuDeb

    Como compilar Ultrastar

    Acà esta el excelente tutorial del wiki

    Paso 1: Abrir terminal y escribir los siguientes comandos.

    sudo apt-get install fp-compiler fp-units-base fp-units-misc
    fp-units-fcl  fp-utils libsdl1.2-dev libsdl-image1.2-dev
    portaudio19-dev libsqlite3-dev libfreetype6-dev libavcodec-dev
    libavformat-dev libswscale-dev

    Paso 2:

    Respecto a
    fp-units-i386
    en AMD64 no fue necesario

    Tambien instalar las librerias de LUA
    sudo apt-get install liblua50-dev liblua50 liblualib50-dev liblualib50 liblua5.1-dev liblua5.1-0
    Paso 3:
    sudo apt-get install subversion
    Paso 4:
    svn co https://ultrastardx.svn.sourceforge.net/svnroot/ultrastardx/trunk ultrastardx
    al hacer esto debió crearse una carpeta llamada ultrastardx en su carpeta personal para instalar solo debemos entrar en ella desde la terminal.
    cd ~/ultrastardx
    Paso 5: Ahora ya dentro de la carpeta podremos instalar el juego escribiendo lo siguiente en terminal
    ./configure
    y luego
    make
    Paso 6:
    ./game/ultrastardx
    con esto cargara el juego

    Reblog this post [with Zemanta]