Macos 如何在虚拟机上开发?

Macos 如何在虚拟机上开发?,macos,ubuntu,ssh,virtual-machine,sublimetext3,Macos,Ubuntu,Ssh,Virtual Machine,Sublimetext3,我想在运行Ubuntu的虚拟机上编辑源代码。我使用ssh来保存我的本机mac密钥绑定,例如复制和粘贴。我可以将终端数据路由到主机端的sublime吗?我可以在vm中调用sublime编辑器并将其用于X11转发吗 我只是在寻找一个通用的工作流,在这里我可以继续使用我学会喜欢的密钥绑定和编辑器。您可以使用Samba share来实现这一点。假设您正在运行windows。 我就是这样做的 或者,您也可以选择您有几个选项: 您可以安装Samba用于SMB网络共享,或安装NetTalk用于AFP网络共享,

我想在运行Ubuntu的虚拟机上编辑源代码。我使用ssh来保存我的本机mac密钥绑定,例如复制和粘贴。我可以将终端数据路由到主机端的sublime吗?我可以在vm中调用sublime编辑器并将其用于X11转发吗


我只是在寻找一个通用的工作流,在这里我可以继续使用我学会喜欢的密钥绑定和编辑器。

您可以使用Samba share来实现这一点。假设您正在运行windows。 我就是这样做的


或者,您也可以选择您有几个选项:

您可以安装Samba用于SMB网络共享,或安装NetTalk用于AFP网络共享,正如Ahmed Daou在回答中所建议的那样。可能是设置后最灵活的解决方案。如果你想要得到幻想,你也可以安装avahi守护程序,这样你就可以从Finder浏览到网络文件,就像你可以共享任何其他文件一样;否则,您可以使用连接到服务器。。。从Finder的Go菜单

你可以用scp往返。为SSH安装一个公私密钥对,这样您就不必每次都输入密码,即使您使用密码短语,您的Mac也会在其密钥链中记住它。退出升华时,保存的文件将复制回VM

升华打开脚本示例:

正如您所建议的,您可以使用X11并运行Linux版本。在Mac上安装XQuartz,然后使用-X选项打开到VM的SSH会话,例如SSH-X myvm.local。然后在终端窗口中,从它所在的任何目录运行./sublime_text,如果安装Ubuntu/Debian软件包,它似乎位于/opt/sublime_text/sublime_text中。它将在Mac上的X窗口中打开。
您可以将Samba轻松地用于OP似乎拥有的Mac客户端,也可以安装NetTalk进行本机Mac文件共享,尽管从OS版本10.10开始,OS X默认更喜欢SMB文件共享。
#!/bin/bash

serverAddress="username@myvm.local"
if [[ ! $1 ]]; then
    echo "usage: sublime_open <remoteFilename> [username@serverAddress] [serverPort]"
    exit 1
fi
[[ $2 ]] && serverAddress="$2"
[[ $3 ]] && serverPort="-P $3" || serverPort=
scp $serverPort $serverAddress:"$1" /tmp/myfile.txt
/Applications/"Sublime Text.app"/Contents/MacOS/"Sublime Text" /tmp/myfile.txt
scp $serverPort /tmp/myfile.txt $serverAddress:"$1"
rm /tmp/myfile.txt &> /dev/null