昨天我得到了新的工作站,其特点是:
- 120 GB - OCZ Vertex3 MAX IOPS
- 300 GB - Western Digital Velociraptor(10k RPM,平均寻道时间约 4ms)
- 2x2TB 三星 Ecogreen F4
该系统将运行 Ubuntu,主要目的是进行大量 Java 开发。有时我必须在 Windows VM 中开发 Java;为此,我需要快速的 VM。我阅读了很多关于 SSD 磨损的文章,也许将 Eclipse 工作区放在 SSD 上不是一个好主意,因为构建时会进行大量的写入。也许工作区(以及 /home)可以在速度非常快的 Velociraptor 上找到更好的位置。
我应该如何对整个系统进行分区才能获得最大的收益?我愿意听取任何建议。LVM 也可能是一种选择。也许在 SSD 上为一个 VirtualBox 映像放置第三个分区是个好主意。
目前我正在思考:
- SSD:2GB /boot,剩余空间为/
- Velociraptor:横跨整个驱动器的 LVM。
- 150GB /家庭
- /virtualMachines 或类似文件的剩余空间
- 三星硬盘(两者都使用 LVM 还是每个使用一个卷组? - 后者在数据安全性方面会更好,因为如果大卷组中的一个驱动器发生故障,所有内容都会丢失)
- 数据、档案等的分区
答案1
如果关注可靠性、磨损均衡以及写入速度和读取速度之间的差异,还有另一种选择:
我有一个阿卡德9010我用来运行 Linux 的电池供电 RAM 驱动器。安装它的成本将高于普通 SSD,但您可以获得一些优势:
- 读取速度快,写入速度也快。SSD 的读取速度非常快,但写入速度稍慢。
- 无需磨损均衡。
- 无需担心 SSD 上满盘写入速度比空盘慢
- 内置电池可满足约一天的电源需求,您还可以使用外置壁式电源为内存驱动器供电(除了内置备用电池)。
- 设备内置的 SD 卡解决了比电池寿命更长的数据存储问题:一旦电源关闭,电池电压达到某个低水平,RAM 驱动器就会将内存内容备份到内置于 RAM 驱动器前面的 64 GB 紧凑型闪存卡中,然后在通电时,它将 SD 卡数据复制回 RAM 驱动器中的 RAM。
直接回答部分问题,如何在 SSD(或 RAM 驱动器)上安排分区:
我把除了/home
RAM 驱动器之外的所有东西/home
都放在硬盘驱动器上。Slackware64 大约需要 5 GB,因此在 32 GB RAM 驱动器中,我有很多额外的空间用于开发。
您不必在 中完成工作/home
,尽管这是正常的“Linux 方式”,而是考虑在 Linux 树中创建一个目录,例如/java
或 ,/projects
该目录将位于您的 RAM 驱动器上,设置权限和所有权,以便您的用户能够使用该目录并将您的项目放在 SSD/RAM 驱动器上以提高速度。将您的操作系统/工具/源代码放在 RAM 驱动器上,在那里工作,然后使用关机脚本将您的日常工作复制到硬盘驱动器上。
作为一项应急措施,我编写了几个简单的脚本,用于备份 RAM 驱动器(或 SSD)上的重要用户创建文件,以防万一。像您的/etc/fstab
和/etc/X11/xorg.conf
这样的文件可能很难完全正确迅速地(特别是如果您在 fstab 中有一堆 mp3 播放器,或者在 xorg.conf 中有复杂的监视器设置,等等,在这些文件中),如果您在任何时候遇到 SSD/RAM 混乱的问题。
我还有一对脚本,用于将 RAM 驱动器上的每个文件备份/恢复到硬盘驱动器上的目录中,以防万一。我提到这些脚本是因为另一个答案提到了 SSD(或 RAM 驱动器)的可靠性问题。如果出现问题,这些脚本为我提供了额外的备份和轻松恢复措施。如果您愿意,可以设置一个 chron 作业来每天备份几次,无论如何这不是一个坏主意。
所以我做的是:
/
在 SSD 上/work
(/java
或/projects
其他)用于您的工作区,在 SSD 上/home
在硬盘上/usr/scripts
(为用户编写脚本而创建)- 将用户配置文件从 SSD 备份到硬盘的脚本
- 脚本将 RAM 驱动器完全复制到硬盘驱动器。
根据其网站,RAM 驱动器的访问时间为 0.01 毫秒。它比 HD 快得多,但不是两倍(正如之前有人说的那样)。
答案2
SSD 不如 HDD 可靠,最好将其用作临时/页面/临时文件,而不是启动文件。既然您有 Velociraptor,SSD 就没有必要了。
在办公室,我使用 SSD 作为主磁盘,并在 Windows XP 上开发 C# 应用程序,Visual Studio 可以快速构建和运行以调试我的项目。我还在 Hyper-V 环境中使用 SSD 作为页面/交换/临时文件,以便让 HDD 喘口气。如果您需要更高的性能,请使用埃博斯特缓存最常用的文件,它还可以减少硬盘的使用,尤其是在网络服务器上。