如何在 Azure 上管理 Ubuntu 服务器 VM 上的文件?
How can I manage files on Ubuntu server VM on Azure?
我已经按照本教程将 LAMP 堆栈部署到 Azure 中的虚拟机:
https://docs.microsoft.com/en-us/azure/virtual-machines/linux/tutorial-lamp-stack
一切都结束了 运行。但是,我想不通如何管理服务器上的文件,and/or copy/upload 文件到服务器。
我可以使用 Azure 云 shell 通过 ssh 进入 VM,但如果我那样做,我似乎无法访问我的本地文件。所以我在本地机器上安装了 Azure CLI,但是当我尝试打开到服务器的 ssh 会话时,我得到 'permission denied (publickey)'.
我查看了安全副本 - scp - 并尝试使用 Putty 和 WinSCP 连接到服务器,但我得到的错误是 'No supported authentication methods available (server sent: publickey)'
我是 Apache 新手,完全不知道如何列出服务器上的文件或管理它们...
使用安全拷贝"scp"时,有一点需要注意。如果您创建 Azure VM 并将用户设置为 azureuser,然后您可以使用命令 scp /path/file azureuser@domainName:/home/azureuser/filename
复制文件。因为你只是有用户"azureuser"的权限,所以无论你使用密码还是ssh public密钥,你都可以从外部复制文件到vm目录/home/azureuser
。
更新
如果使用 ssh public 密钥创建 Azure VM,则需要将密钥存储在要连接 VM 的位置。比如你想连接本地Windows10的虚拟机,key应该存放在目录“C:\Users\charlesx\.ssh
”。这样您就可以连接到 VM,也可以使用 scp 命令。
我使用 PuTTY 和 WinSCP 解决了这个问题。之前我一直使用 Azure Cloudshell 命令创建 VM 并生成 ssh 密钥 - 所以我可以使用 Cloudshell 连接到 VM 但由于我不知道自动生成的密钥存储在哪里,所以我无法连接在我的本地机器上。
我的解决方案是通过 Azure 门户 UI 界面创建 VM。我使用 puTTYgen 在本地计算机上生成 ssh 密钥对,然后在创建 VM 时将 public 密钥输入到 Azure UI 中。在 Azure 中配置 VM 后,我可以使用 PuTTY 连接到它并安装 LAMP 和任何其他命令行工具。
我还使用 WinSCP 将文件复制到我想要的位置 - 我本可以使用 scp 命令行完成它,但我是一个视觉人,能够看到目录结构很有用被创建。所以两者的结合对我来说效果很好。
我已经按照本教程将 LAMP 堆栈部署到 Azure 中的虚拟机: https://docs.microsoft.com/en-us/azure/virtual-machines/linux/tutorial-lamp-stack 一切都结束了 运行。但是,我想不通如何管理服务器上的文件,and/or copy/upload 文件到服务器。
我可以使用 Azure 云 shell 通过 ssh 进入 VM,但如果我那样做,我似乎无法访问我的本地文件。所以我在本地机器上安装了 Azure CLI,但是当我尝试打开到服务器的 ssh 会话时,我得到 'permission denied (publickey)'.
我查看了安全副本 - scp - 并尝试使用 Putty 和 WinSCP 连接到服务器,但我得到的错误是 'No supported authentication methods available (server sent: publickey)'
我是 Apache 新手,完全不知道如何列出服务器上的文件或管理它们...
使用安全拷贝"scp"时,有一点需要注意。如果您创建 Azure VM 并将用户设置为 azureuser,然后您可以使用命令 scp /path/file azureuser@domainName:/home/azureuser/filename
复制文件。因为你只是有用户"azureuser"的权限,所以无论你使用密码还是ssh public密钥,你都可以从外部复制文件到vm目录/home/azureuser
。
更新
如果使用 ssh public 密钥创建 Azure VM,则需要将密钥存储在要连接 VM 的位置。比如你想连接本地Windows10的虚拟机,key应该存放在目录“C:\Users\charlesx\.ssh
”。这样您就可以连接到 VM,也可以使用 scp 命令。
我使用 PuTTY 和 WinSCP 解决了这个问题。之前我一直使用 Azure Cloudshell 命令创建 VM 并生成 ssh 密钥 - 所以我可以使用 Cloudshell 连接到 VM 但由于我不知道自动生成的密钥存储在哪里,所以我无法连接在我的本地机器上。
我的解决方案是通过 Azure 门户 UI 界面创建 VM。我使用 puTTYgen 在本地计算机上生成 ssh 密钥对,然后在创建 VM 时将 public 密钥输入到 Azure UI 中。在 Azure 中配置 VM 后,我可以使用 PuTTY 连接到它并安装 LAMP 和任何其他命令行工具。
我还使用 WinSCP 将文件复制到我想要的位置 - 我本可以使用 scp 命令行完成它,但我是一个视觉人,能够看到目录结构很有用被创建。所以两者的结合对我来说效果很好。