X-Git-Url: http://git.annexia.org/?a=blobdiff_plain;f=virt-what.in;h=ad82e224af50962f1aaee861b4260b4c2fcaa71b;hb=26b2c9c5156e85a4d7b566c22cb8f13c741e3530;hp=3dac91a7ca1a125bab9a9ead381f67f1d10adaea;hpb=ed11e2d298ec7466fac656a38a2cefd386130420;p=virt-what.git diff --git a/virt-what.in b/virt-what.in index 3dac91a..ad82e22 100644 --- a/virt-what.in +++ b/virt-what.in @@ -1,6 +1,6 @@ #!/bin/sh - # @configure_input@ -# Copyright (C) 2008-2019 Red Hat Inc. +# Copyright (C) 2008-2022 Red Hat Inc. # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -114,8 +114,13 @@ dmi=$(LANG=C dmidecode 2>&1) arch=$(uname -m | sed -e 's/i.86/i386/' | sed -e 's/arm.*/arm/') # Check for Alibaba Cloud -if echo "$dmi" | grep -q 'Manufacturer: Alibaba Cloud'; then - echo "alibaba_cloud" +if echo "$dmi" | grep -q 'Manufacturer: Alibaba'; then + # Check for Alibaba Cloud ECS Bare Metal (EBM) Instance + if [ "x$root" = "x" ] && ( { echo -e "GET /latest/meta-datainstance/instance-type HTTP/1.0\r\nHost: 100.100.100.200\r\n\r" >&3; grep -sq 'ebm' <&3 ; } 3<> /dev/tcp/100.100.100.200/80 ) 2>/dev/null ; then + echo "alibaba_cloud-ebm" + else + echo "alibaba_cloud" + fi fi # Check for VMware. @@ -174,6 +179,13 @@ if [ -e "${root}/proc/1/environ" ] && echo lxc fi +if [ -e "${root}/proc/1/environ" ] && + tr '\0' '\n' < "${root}/proc/1/environ" | grep -q '^container=zone$' && + [ -e "${root}/proc/version" ] && + grep -q 'BrandZ virtual linux' < "${root}/proc/version"; then + echo illumos-lx +fi + # Check for Linux-VServer if test -e "${root}/proc/self/status" \ && cat "${root}/proc/self/status" | grep -q "VxID: [0-9]*"; then @@ -227,11 +239,8 @@ if echo "$dmi" | grep -q 'Vendor: Parallels'; then fi # Check for Nutanix AHV. -# This is sufficiently different from KVM and has Viridian extensions, -# so skip the KVM test. if echo "$dmi" | grep -q 'Manufacturer: Nutanix'; then echo nutanix_ahv - skip_qemu_kvm=true fi # Check for oVirt/RHEV. @@ -242,6 +251,16 @@ if echo "$dmi" | grep -q 'Product Name: RHEV Hypervisor'; then echo rhev fi +# Google Cloud +if echo "$dmi" | grep -q 'Product Name: Google Compute Engine'; then + echo google_cloud +fi + +# Red Hat's hypervisor. +if echo "$dmi" | grep -q 'Manufacturer: Red Hat'; then + echo redhat +fi + # Check for Xen. if [ "$cpuid" = "XenVMMXenVMM" ] &&