我经常听到这个词,我有点困惑。
它只是一个基于一个操作系统构建的可以模拟另一个操作系统的软件应用程序吗?
当有人编写虚拟机代码时,他们基本上是开始制作操作系统,但他们不是直接访问硬件,而是调用他们需要的适当的陷阱指令吗?但是这样您就无法模拟某些受保护的操作(例如中断),对吧?
除了我能够从 Windows 中远程连接并运行 Linux 桌面之外,还有其他原因这可能有用吗?
什么是“虚拟机监视器”?
Java 虚拟机的意义何在,为什么不做其他语言所做的事情呢?
干杯
我有一个 WCF 服务在“http://localhost:12345/ServiceName”上运行。我还有一个在 Windows 8 Public Beta 中的 hyper-v 下运行的虚拟机。有什么方法可以从虚拟机连接到此服务吗?我似乎无法在 hyper-v 管理器中设置桥接网络连接。另一种方法是让 WCF 服务绑定到 Win8 计算机名称或 IP,但我不知道如何从 VM 端找出该端点。WCF 服务可以按照任何需要的方式进行更改...
任何帮助将非常感激!
非常感谢,乔恩
我在这里有一个问题。我心里似乎有些复杂。希望我能把自己说清楚。:)
是否可以?
使用虚拟机备份作为恢复 MySQL 数据库的方法是否正确?这样做有什么危险吗?我自己的感觉是,虚拟机备份/快照位于操作系统而不是数据库级别,因此可能无法以正确的方式备份数据库。有人对此有什么建议吗?
我的公司在 VMware 中使用 Vagrant 进行开发。其他人(10 人以上)的设置运行顺利,但我遇到了一个我们谁都无法解决的令人困惑的问题。
添加 vagrant box 之后,vagrant box add sgvm http://files.vagrantup.com/precise64_vmware.box我尝试使用 启动 vagrant vagrant up seatgeek --provider=vmware_fusion。这会引发此错误:
An error occurred while executing `vmrun`, a utility for controlling
VMware machines. The command and output are below:
Command: ["start", "/Users/jack/Sites/sg/seatgeek-vm/.vagrant/machines/seatgeek/vmware_fusion/f2e2bebf-e1cb-4bc1-862b-9cb957e13065/precise64.vmx", "nogui", {:notify=>[:stdout, :stderr]}]
Stdout: 2014-02-06T09:20:29.661| ServiceImpl_Opener: PID 20276
Error: The operation was canceled
Stderr:
Run Code Online (Sandbox Code Playgroud)
我联系了 VMware 支持。他们说他们不能支持它,但他们会确认它vmrun工作正常。他们要求我运行vmrun -T fusion start并验证输出是否符合预期。据此,他们说这是一个 Vagrant 问题。我尝试联系 Vagrant 支持人员,但他们没有回应。
任何人都知道可能会导致这种情况的原因是什么?或者关于我应该调查的其他事情的想法?
我们将应用程序从物理服务器迁移到 Azure VM(一台 Web 服务器、一台数据库服务器),并且它在大部分情况下运行良好。
昨晚,由于某种待定原因,Web 服务器离线,导致出现中断,当它恢复时,连接字符串开始失败...所有错误都是找不到网络路径的类型。
我知道虚拟机的内部 IP 可以在我的关联组内更改,但我没有看到很多关于我应该使用哪个 IP 或名称的直接答案。
现在我的连接字符串如下所示:
Server=MyDatabaseServerName;Database=xxxx;User ID=xxxx;Password=xxxx;
Run Code Online (Sandbox Code Playgroud)
我觉得也许 MyDatabaseServerName 暂时将错误的 IP 解析为错误,也许我应该使用我的 cloudapp.net 名称,如下所示:
Server=xxx.cloudapp.net, 1433;Database=xxxx;User ID=xxxx;Password=xxxx;
Run Code Online (Sandbox Code Playgroud)
...但我担心它会一路传到互联网并返回。
那么去这里最安全的方法是什么?
我一直在使用 WSL 在 VSCode 中调试 C,使用 Windows 商店中的 Ubuntu。
但是,因为我的学校项目必须能够在提供的虚拟机(在本例中为 Lubuntu)上运行,所以如果我可以通过与虚拟机的连接在 Windows 上调试我的代码,将会有很大帮助。
我没有找到任何关于此的好的教程,因此我尝试使用该ip addr show命令并使用 ssh 连接到结果地址,但无济于事。
实现这一目标的最佳方法是什么?
我正在尝试从ubuntu-1904Google Cloud 上运行的常规 VM 实例(即)上的私有 GCP 容器注册表中提取 docker 容器,但出现以下错误:
user@test ~ $ sudo docker pull example.io/docker-dev/name:v01
Error response from daemon: unauthorized: You don't have the needed permissions to perform this operation, and you may have invalid credentials. To authenticate your request, follow the steps in: https://cloud.google.com/container-registry/docs/advanced-authentication
Run Code Online (Sandbox Code Playgroud)
我按照这些说明进行操作,即运行该gcloud auth configure-docker命令,该命令会输出一条成功消息。
但是,docker pull再次运行该命令时,我得到完全相同的错误。
一些可能有助于提供反馈的额外测试:
docker run hello-world拉取并运行hello-world映像)docker pull example.io/docker-dev/name:v01在本地计算机(Mac)而不是 vm 实例上测试了相同的命令 ( ) 并且运行良好。virtual-machine docker google-cloud-platform google-container-registry docker-compose
我在Hyper-V虚拟机 (Windows 10) 中设置了一个开发环境。使用 Visual Studio 2019 作为我的 IDE 和 Xamarin(一个monodroid项目)。由于 Hyper-V 设计师做出的决定,我的物理设备无法“直通”。我也尝试使用变通方法,不幸的是,该设备没有显示(甚至在Device Manager)来宾计算机中。
最初我无法看到设备(在 IDE 中),但是,经过一些研究和工作,我设法让设备显示出来。我用它来“欺骗”adb在来宾上运行以查看设备(连接到我的物理机)。主机192.168.1.13在端口上运行带有 IP 的脚本6037(adb daemon运行于5037,这是默认值)。来宾机器运行脚本,remotehost设置为主机 IP,具有相同的端口。根据文档,我相信这种配置很好。
不幸的是,即使我能够部署到我的设备,调试器也无法连接,我收到 Cannot start debugging: Cannot connect to 127.0.0.1:29300: No connection could be made because the target machine actively refused it 127.0.0.1:29301
Couldn't connect debugger. You can see more details in Xamarin Diagnostic output and the full exception on logs. …
我想澄清一下,Azure VM 是严格的 IaaS 还是 PaaS,具体取决于创建者/用户的责任量。
我已经看到多个不同的网站说 VM 只是 IaaS,因为您需要一个操作系统,而其他人说如果在创建时指定了特定的操作系统,VM 可以是 PaaS。
社区可以提供的任何见解都将非常有帮助,谢谢!