Usb 从U盘上携带并操作整个开发盒。可行吗?

Usb 从U盘上携带并操作整个开发盒。可行吗?,usb,vmware,portability,xen,Usb,Vmware,Portability,Xen,最近,我一直在考虑投资一个有价值的USB笔驱动器(类似的东西),在虚拟机上安装操作系统并开始开发 我的想法是,我希望能够携带我的开发箱,作为.Net开发的Windows发行版和RoR、Perl等东西的Linux发行版,这样我就能够在需要的地方携带它们……无论是工作、学校、家里的不同计算机等等 我正在考虑这样做也是为了备份的目的…即备份我几乎单一的虚拟机文件到一个外部硬盘,而不是例行更新我的正常窗口框。我还考虑在源代码控制下提交VM框(这是否可行?) 那么,我做得对吗?你建议我试着实现这个吗 在从

最近,我一直在考虑投资一个有价值的USB笔驱动器(类似的东西),在虚拟机上安装操作系统并开始开发

我的想法是,我希望能够携带我的开发箱,作为.Net开发的Windows发行版和RoR、Perl等东西的Linux发行版,这样我就能够在需要的地方携带它们……无论是工作、学校、家里的不同计算机等等

我正在考虑这样做也是为了备份的目的…即备份我几乎单一的虚拟机文件到一个外部硬盘,而不是例行更新我的正常窗口框。我还考虑在源代码控制下提交VM框(这是否可行?)

那么,我做得对吗?你建议我试着实现这个吗

在从USB笔驱动器运行的虚拟机上安装开发箱的可行性如何?

查看MojoPac:


铁杆玩家使用它来随身携带魔兽世界——它应该可以很好地满足您的开发需求,至少在Windows上是这样。将cygwin与之配合使用,以满足unix开发人员的需要。

希望您讨论的是解释语言项目。我无法想象在虚拟机上编译任何大小的C/C++,更不用说运行USB驱动器的虚拟机了。

我经常使用Xen,但在驱动器上还包括一个裸机可引导内核。这在制作基于live CD的内容时特别有用

坏的一面是虚拟机映像上的膨胀,使它可以跨多台机器启动。。因此,您通常只需要构建一个非常精简的半虚拟化内核。。您还必须包括一个拥有一切的设备,包括厨房水槽(根据您的需要,即您是否需要音频或令牌环等?)

我通常带着两支棍子,一支有Xen+a补丁的Linux2.6.26,另一支有我的各种来宾映像,它们随时可以启动。Debian或Ubuntu的debootstrapped副本是创建前者的一个很好的起点

如果没有别的,那就是修补它的乐趣。抱歉有点以GNU/Linux为中心,但这是我唯一使用的:)当我不得不找到一条奇怪的路径升级我的发行版时,我开始胡乱处理这个问题,这比当前的发行版晚了两年。因此,我捆绑了一个来宾,安装了我想要的,并将GRUB指向我根文件系统的新LV。在里面,我刚刚安装了我的旧/家用LV,然后就离开了。

这是在USB拇指驱动器上显示的

永远不要运行磁盘密集型应用程序 直接针对存储在 拇指驱动器

USB ThumbDrive使用闪存,在发生损坏和损坏之前,它们的最大写入次数为。前一篇链接文章的作者发现它的写入量在10000到100000之间,但如果您使用的是磁盘密集型应用程序,这可能是一个问题


因此,如果您这样做,请使用一种积极的备份策略来备份您的工作。类似地,如果在运行开发套件时,它可以作为临时工作区写入本地硬盘,这将是理想的。

我完全同意您的观点。我希望自己做这件事

但如果您还不知道,这不仅仅是驱动器大小的问题,信不信由你USB闪存驱动器可能比旋转的磁盘驱动器慢得多

如果计划直接从USB驱动器运行虚拟机,这可能是一个大问题

我曾尝试在32GB海盗幸存者上运行4GB Windows XP虚拟机,但虚拟机几乎无法使用!同时,将4GB虚拟机复制到硬盘上的速度也相当慢——大约需要10分钟才能将其复制到硬盘上

如果您有一个esata端口,我强烈建议您选择像这样或那样的高速esata选项

与其他USB驱动器相比,这些驱动器的读写速度远高于ESata。如果没有ESata端口,您仍然可以将其用作USB。不过,如果您没有ESata端口,您可以在线购买PCI-to-ESata卡,甚至为您的笔记本电脑购买ESata ExpressCard


编辑:附带说明,您会发现USB闪存驱动器使用FAT而不是NTFS。您不想使用NTFS,因为它会在磁盘上进行更多的读写操作,并且驱动器在死亡之前只能进行有限的读写操作。但是通过使用FAT,您将被限制为最大2GB的文件大小,这可能是您的VM的一个问题。如果是这种情况,您可以将VM磁盘拆分为2GB块。还要确保每天备份虚拟机,以防驱动器达到最大写入次数。:)

我曾经这样做过,发现编译速度太慢了,不值得这么做

请记住,与随机写入性能的硬盘驱动器(将大量小文件写入已经有大量文件的分区)相比,USB闪存驱动器的速度非常慢(可能慢10到100倍)


使用GNU工具的典型构建过程将创建许多小文件——一个简单的配置脚本创建数千个小文件,然后再次删除它们,以便在开始编译之前测试环境。您可能需要等待很长时间。

重新标记以添加Xen,因为相同的方法适用于这两者。+1虚拟机或任何运行任何固态的操作系统从虚拟机到cygwin都是/可能是一场噩梦。。你可以试一下,但你应该避开……写周期问题现在已经降到了百万分之低——这是更好的,但在这种情况下仍然是一个问题。我发现整个最大写量恐慌的故事被夸大了。最大擦除/写入周期计数为“每个块”,正常的驱动器将进行磨损平衡。更重要的是,如果一个闪光块确实死了并磨损了Leveli