0

我有一台用于开发的机器,里面有两个 7200 RPM 160 GB SATA HD。

到目前为止,我在网上找到的信息似乎有点矛盾,关于我应该在哪些驱动器上安装哪些东西(操作系统、交换文件、程序、解决方案/源代码/其他数据)来获得最受益于这种情况。

有些人建议为操作系统和/或交换设置一个单独的分区,有些人不介意。有人说程序应该与操作系统在同一个物理驱动器上,数据在另一个上,有些相反。与交换和操作系统相同。

我将安装 Vista 64 位作为我的操作系统,并定期使用 Visual Studio 2008、VMWare Workstation、SQL Server 管理工作室等(相当标准的开发工具)。

所以我问你——你会怎么做?

4

9 回答 9

2

如果它们都通过同一个磁盘控制器,那么无论您采用哪种方式,性能方面都不会有太大差异;如果你要做很多虚拟机,我会为操作系统和交换/程序和数据拆分一个驱动器,然后将所有虚拟机保留在另一个驱动器上。

如果主机出现故障或升级,将所有虚拟机都放在一个独立的驱动器上,您可以将该驱动器无缝地移动到另一台机器上。

于 2008-10-04T01:40:38.437 回答
2

如果驱动器在您的 BIOS 中支持 RAID 配置,您应该执行以下操作之一:

RAID 1(镜像) - 由于这是一台开发机器,这将让您拥有容错能力,让您放心,您的代码是安全的(以及环境,因为它们很难放在一起)。您可以获得更好的读取性能,因为它可以从两个/任何一个驱动器读取。但是,您不会在写入方面获得任何性能提升。

RAID 0 - 这里没有容错,但这是最快的配置,因为您可以读取和注销两个驱动器。如果您只想要尽可能快的性能并且您知道您的代码在其他地方(源代码控制)是安全的,那就太好了。

不要担心多个分区或操作系统/数据配置,因为在开发机器上你无论如何都需要它,而且你不应该运行繁重的多用户数据库或任何东西(如服务器)。

但是,如果您的 BIOS 不支持 RAID 配置,那么您可能会考虑在两个驱动器上进行操作系统/数据拆分,以平衡它们的使用(但正如您所提到的,将程序保留在系统驱动器上,因为它有助于缓存)。由您决定将交换文件放在哪里(操作系统会给您转储文件,但数据驱动器的利用率可能较低)。

于 2008-10-04T01:41:51.587 回答
1

我建议如果 160gb 的总容量可以满足您的需求(为操作系统、应用程序和源代码提供足够的空间,这取决于您打算在上面放什么),那么您应该将驱动器镜像到 RAID 1 中,除非您有将数据备份到的服务器、外部硬盘驱动器、在线备份解决方案或将数据副本保存在多个物理驱动器上的其他方式。

如果您需要使用所有驱动器容量,我建议将第一个驱动器用于操作系统和应用程序,将第二个驱动器用于数据。纯粹是因为,如果您在某个时候更换计算机,第一个驱动器上的操作系统对您没有多大好处,并且大多数应用程序都必须重新安装,但您可以随身携带整个数据驱动器。

至于划分操作系统,一个很大的缺点是没有给分区足够的空间,最终您可能需要使用分区软件从驱动器上的另一个分区窃取一些空间。为 OS 分区分配一定数量的空间似乎永远不会失败,在安装后你有几个 gigs 可用空间,所以你认为你很好,但随着时间的推移,事情在那个分区上堆积,你用完了的空间。

考虑到这一点,我仍然通常使用操作系统分区,因为它在重新加载系统时很有用,您可以格式化该分区以清除操作系统但保留其余数据。防止空间累积过快的方法是更改​​我的文档文件夹的位置,更改 temp 和 tmp 等项目的环境变量。但是,有些东西只是拒绝将他们的数据放在系统分区以外的任何地方。我以前用10gb,现在我用20gb。

当你的交换文件根据需要增长和缩小时,划分你的交换空间对于减少驱动器碎片很有用。这又是一个猜测你需要多少交换的问题。这在很大程度上取决于您拥有的内存量以及一次将运行多少东西。

于 2008-10-04T01:55:15.037 回答
1

将一个驱动器标记为您的仓库,将您所有的源代码、数据、资产等放在那里并定期备份。您会希望它稳定且易于恢复。如果需要,您甚至可以将“我的文档”切换到此处。

另一个驱动器应包含操作系统、驱动程序和所有应用程序。这使得每 18-24 个月擦除驱动器和重新安装操作系统变得容易且安全,就像您在使用 Windows 时所做的那样。

如果你想提高性能,有人说把交换放在仓库驱动器上。这将提高操作系统性能,但会缩短驱动器的使用寿命。

实际上,这一切都取决于您的目标。如果您需要更高的性能,那么您可以平衡活动水平。如果您需要更高的安全性,那么您可以使用 RAID 并对其进行镜像。我的组合提供了易于维护的合理级别的数据安全性和最小的位腐烂问题。

您最活跃的文件将是注册表、页面文件和正在运行的应用程序。如果您正在处理大量数据,那么这些文件也将非常活跃。

于 2008-10-04T02:38:45.853 回答
1

对于建议 RAID 的海报 - 160GB 可能还可以,但我会犹豫是否更大。驱动器中的软错误会降低 RAID 的整体可靠性。有关详细信息,请参阅这些文章:

http://alumnit.ca/~apenwarr/log/?m=200809#08 http://permabit.wordpress.com/2008/08/20/are-fiber-channel-and-scsi-drives-more-reliable /

您无法相信您在互联网上阅读的所有内容,但推理对我来说是有道理的。

抱歉,我实际上无法回答您的问题。

于 2008-10-04T02:43:02.053 回答
1

我通常运行一个带有两个驱动器的盒子。一种用于操作系统、交换、典型程序和应用程序,另一种用于虚拟机、“大型”应用程序(例如,Adobe CS 套件,基本上在启动时会大量撞击磁盘的任何东西)。

但我也运行一个便宜的文件服务器(只是一台旧机器,在 RAID1 中有 coupla 数百 gig 的磁盘空间),我用它来存储与我的各种项目相关的任何内容。我发现这是一个比将所有内容都存储在我的主开发盒上更好的解决方案,而且成本不高,让我可以在某个地方运行网络服务器、我的个人版本控制等。

虽然我承认,它确实没有做太多我不能在我的机器上做的事情。我发现这是一个很好的解决方案,因为它通过强制我将所有工作保存在一个可以轻松备份、复制到其他地方等的地方来帮助防止我在工作站的文件系统中随意传播东西。我可以把它留在所有地方晚上没有巨额电费(它在负载下使用 <50W)所以它可以用一个小脚本将自己备份到一个远程站点,我可以通过 SSH 从外部连接到它(所以我可以随时 SCP 任何我需要的东西)。

但真正最重要的好处是我在我的工作站上没有存储任何价值(至少没有任何不在服务器上的东西)。这意味着如果它坏了,或者如果我想使用我的笔记本电脑等,一切都可以随时访问。

于 2008-10-04T02:52:39.213 回答
0

我会将操作系统和所有应用程序放在第一个磁盘(1 个分区)上。然后,将来自 SQL 服务器的数据(以及任何其他溢出数据)放在第二个磁盘(1 个分区)上。这就是我设置机器的方式,而没有关于您正在构建的任何其他细节。还要确保你有备份,这样你就不会丢失工作。镜像两个驱动器(如果您具有 RAID 功能)甚至可能是值得的,因此如果/当其中一个驱动器发生故障时,您不会失去任何进展。此外,每天备份到外部磁盘。当你不小心删除了错误的东西时,RAID 不会拯救你。

于 2008-10-04T01:56:09.810 回答
0

一般来说,我会尝试拆分将要进行大量 I/O 的事情(例如,如果您在 VS 上的自动保存相当频繁地关闭)将其视为一种 I/O 多线程

于 2008-10-04T02:05:39.633 回答
0

通过将我的虚拟机放在单独的磁盘上,我观察到了显着的加速。每当 Windows 在 VM 中做一些愚蠢的事情时(例如,再次索引),它并不会严重地破坏我的 Mac 磁盘。

另一个问题是,当许多工具(想到 Visual Studio)在非主磁盘上时,它们会以令人沮丧的方式中断。

将第二张磁盘用于大的随机事物。

于 2008-10-04T02:34:43.773 回答