![检测驱动器何时插入 Hyper-V 主机并自动将其作为直通磁盘附加到 VM](https://linux22.com/image/1494664/%E6%A3%80%E6%B5%8B%E9%A9%B1%E5%8A%A8%E5%99%A8%E4%BD%95%E6%97%B6%E6%8F%92%E5%85%A5%20Hyper-V%20%E4%B8%BB%E6%9C%BA%E5%B9%B6%E8%87%AA%E5%8A%A8%E5%B0%86%E5%85%B6%E4%BD%9C%E4%B8%BA%E7%9B%B4%E9%80%9A%E7%A3%81%E7%9B%98%E9%99%84%E5%8A%A0%E5%88%B0%20VM.png)
我目前正在使用 WS2012R2 文件服务器,它是一台虚拟机。我已经有一个 NAS 存储来备份数据,现在我还想添加一个异地 USB 存储驱动器……
虽然在 Hyper-V 管理器中插入驱动器并添加/删除它并没有太多麻烦,但如果一切都是自动化的就更好了。
我最初的想法是安排任务来检测事件(插入驱动器)。使用 Powershell 脚本,我首先要确保它是我想要的驱动器的序列号(我不希望它对所有驱动器都这样做)
之后,在该脚本中,我将使用带有 -PassThru 的 Add-VMHardDiskDrive cmdlet,这就足够了。
我目前遇到的主要问题是找到事件 ID。我正在 Windows 10 上测试,但最终方案将是 Windows Server 2012 R2(Hyper-V 主机和 VM)。我不认为事件 ID 可能已经改变,但话又说回来。
我会遇到的另一个问题是,在将 USB HDD 连接到的 VM 中,我需要添加另一个脚本来手动移除它(用户必须运行此脚本,没有其他办法)。当然,这需要远程 Powershell 会话,这样我才能在 Hyper-V 主机上运行命令,安全地从 VM 中移除 HDD。同样,PSSession 似乎可以胜任这项工作,而且不会太麻烦。
我想我面临的最大问题是找到一个事件 ID 来检测何时插入 USB HDD。我该如何解决这个问题?我试过事件查看器,但无论如何我都找不到触发的事件。