我想将大型操作系统安装 ISO 直接下载到我的数据存储中。我以前能够通过 SSH 连接到 ESXi 终端,并将wget
大型文件直接下载到数据存储中,但现在似乎wget
无法再处理https
链接了 ( wget: not an http or ftp url
)。
我想知道其他人如何处理这个问题。我知道我可以将文件下载到我的笔记本电脑并使用数据存储浏览器上传它,但这是一个两步过程(更不用说当我不在现场并通过 VPN 访问 ESX 时效率极低)。
在此先感谢您的任何建议!
答案1
大约在 ESXi 6.7 中,嵌入式 busybox wget 终于开始支持 https。
所以最后,您可以在 ESXi 中进行 https 下载。
耶!
这是来自 ESXi 6.7 Update 2。
[root@ESXi-X9SRI-3F:/tmp] wget https://www.example.org
Connecting to www.example.org (93.184.216.34:443)
index.html 100% |******************************************************************************************| 1270 0:00:00 ETA
[root@ESXi-X9SRI-3F:/tmp] wget --help
BusyBox v1.29.3 (2018-11-02 15:37:50 PDT) multi-call binary.
Usage: wget [-c|--continue] [--spider] [-q|--quiet] [-O|--output-document FILE]
[--header 'header: value'] [-Y|--proxy on/off] [-P DIR]
[-S|--server-response] [-U|--user-agent AGENT] URL...
Retrieve files via HTTP or FTP
--spider Only check URL existence: $? is 0 if exists
-c Continue retrieval of aborted transfer
-q Quiet
-P DIR Save to DIR (default .)
-S Show server response
-O FILE Save to FILE ('-' for stdout)
-U STR Use STR for User-Agent header
-Y on/off Use proxy
[root@ESXi-X9SRI-3F:/tmp] vmware -l
VMware ESXi 6.7.0 Update 2
而 6.5U2 仍然不支持它(我认为 ESXi 6.7 也不支持,但我没有可以支持它的盒子了):
[root@ESXi-X10SRH-CF:/tmp] wget https://www.example.org
wget: not an http or ftp url: https://www.example.org
[root@ESXi-X10SRH-CF:/tmp] wget --help
BusyBox v1.22.1 (2018-07-23 19:34:04 PDT) multi-call binary.
Usage: wget [-csq] [-O FILE] [-Y on/off] [-P DIR] [-U AGENT] URL...
Retrieve files via HTTP or FTP
-s Spider mode - only check file existence
-c Continue retrieval of aborted transfer
-q Quiet
-P DIR Save to DIR (default .)
-O FILE Save to FILE ('-' for stdout)
-U STR Use STR for User-Agent header
-Y Use proxy ('on' or 'off')
[root@ESXi-X10SRH-CF:/tmp] vmware -l
VMware ESXi 6.5.0 Update 2
答案2
希望您在现有的 VMware 设置上有一个正在运行的客户系统...这是一个快捷选项。如果是 Linux,您可以使用 wget/curl。如果是 Windows,只需正常下载即可。
我通常将 .ISO 文件下载到 vCenter 服务器,然后从那里上传到数据存储区。这很容易,因为我的 vCenter 通常是 Windows 服务器,所以任何复杂的下载身份验证方法都很容易处理。
wget
做存在于 ESXi 中,所以最好的选择可能是将您需要的 .ISO 文件放到不需要 https 下载的位置;http 或普通 ftp。
另请参阅:ESXi 5.0 上有 cURL?
答案3
只需通过启用 SSL 的 wget 的另一个系统对文件下载操作进行 SSH 代理即可。请注意,默认 ESXi 防火墙策略会阻止传出 SSH,因此需要先允许它。从 ESXi shell:
esxcli network firewall ruleset set -r sshClient -e true
ssh proxyhost curl -s https://server/path/file.iso >/vmfs/volumes/vmfs_name/path/file.iso
esxcli network firewall ruleset set -r sshClient -e false
答案4
你没有提到笔记本电脑的操作系统。假设它是 Windows,你可以使用温SCP。
登录到您的 ESXi 主机,深入您的数据存储,并使用 Commander 样式或可选的 Windows 资源管理器样式界面执行文件复制。
如果你正在寻找命令行选项,你可以使用Putty 安全复制客户端。
我同时使用 - GUI 进行一次性文件复制,并使用命令行将文件复制到多个 ssh 主机。