![在根分区还是主分区中安装程序?](https://linux22.com/image/845668/%E5%9C%A8%E6%A0%B9%E5%88%86%E5%8C%BA%E8%BF%98%E6%98%AF%E4%B8%BB%E5%88%86%E5%8C%BA%E4%B8%AD%E5%AE%89%E8%A3%85%E7%A8%8B%E5%BA%8F%EF%BC%9F.png)
我是 Linux 的新用户,也是 Windows 的忠实粉丝。几年前我尝试过 Ubuntu(Dapper Drake),非常喜欢它,现在我正在我的全新 SSD 上安装 Xubuntu 13.10 和 Windows7!目前,Windows 仍在安装中,因为我需要它,但 Linux 正在安装中,因为我想使用它!我做了大量研究,之前也尝试过 Linux,但我还是新手,对分区和程序安装有一些疑问。
我的新 SSD 并不大(120GB Samsung 840 EVO),我将使用旧的 800GB HDD 作为辅助驱动器。问题是,我计划尽可能多地使用 Linux;只有在绝对需要时才切换到 Windows7。因此,我将为每个操作系统分配 50:50 的 SSD(60GB 用于 Linux,60GB 用于 Windows)。我还计划将旧的 800GB HDD 分成 3 个分区:一些空间用于额外的 Linux 程序,一些空间用于额外的 Windows 程序,然后是一个共享的 NTFS 分区,用于存储我的所有数据(音乐、视频、文档等)。
总结一下我的空间情况:
- ~60gb SSD + 200gb HDD 用于 Linux..
- ~60gb SSD + 200gb HDD 用于 Windows..
- ~400gb 共享 NTFS..
这让我产生了疑问。虽然我对 Windows 的设置如何工作(60GB C: 驱动器、200GB D: 驱动器等)有相当好的了解,但 Unix/Linux 目录结构对我来说仍然很新,这使这个过程有点令人困惑。我知道可以(并且很常见)将“/”目录和“home”目录分开分区,并且 - 据我所知 - “/”分区用于包含系统特定的程序和数据,而“home”分区包含各种用户的程序和数据。
但是,我也听说,使用 APT 从存储库安装的大多数(如果不是全部)程序都安装在“/”目录中。作为使用音乐/艺术程序和玩游戏的人(这会占用大量空间),这让我相信我需要一个大的“/”分区!
我也读过(来自这里:http://www.control-escape.com/linux/lx-partition.html)“主”目录是“所有用户特定文件(即您的数据)的存储位置。它大致相当于 MS Windows 桌面上的“我的文档”文件夹“。但是,正如我上面提到的,我打算将所有非操作系统特定数据(音乐、文档、视频等)保存在约 400gb 的共享分区上无论如何。这确实让我相信我根本不需要一个大的主分区,我应该专注于为“/”分配尽可能多的空间。而且,我听到其他人声称你只需要大约 10gb 的空间用于你的根分区!?
编辑:另外,我刚刚发现 Steam 和 Wine 等程序占用了“主”目录内的空间。
所以我该怎么做?我基本上有 60gb SSD 和 200gb HDD 空间,仅用于存放 Linux 程序。我的所有数据都将存放到 400gb 共享 NTFS 分区上,那么是否值得为“/”和“home”创建单独的分区?如果我在 60gb SSD 上同时安装了 root 和 home,我如何才能将额外的 200gb HDD 空间用于更多 Linux 程序?我能否以某种方式将 root 扩展到多个驱动器,或者是否有符号链接或将两个驱动器连接在一起的东西?
正如我之前所说,我仍然是一个 Linux 新手,所以可能有些东西我完全误解或忽略了。作为一个在 PC 上进行大量艺术/音乐创作和游戏的人,我往往会很快用掉很多程序空间,尤其是游戏和音乐库每年都在变得越来越大!谢谢你的帮助,我期待着学习更多关于 Linux 的知识!:]
答案1
我主张/
在 SSD 中使用单个分区(60GB,正如您所设想的)保留一切 Ubuntu,包括/home
文件夹。
单独的/home
分区很有用:
(1)当人们计划尝试不同的 Linux 发行版(也称为“distros”)时
或者
(2)当人们可能想重新安装 Ubuntu 而不破坏 中的个人文件和设置时/home
。
第二个原因现在不那么重要了,因为新版本的 Ubuntu 安装过程会检测现有的 Ubuntu 并在安装时保留 /home 文件夹。
另一方面,如果你将 保留/home
为 文件夹,/
则不必担心要分配多少/
以及要分配多少/home
。如果你的程序文件(游戏)占用更多空间,你所要做的就是将你的个人数据移动到硬盘上。
现在您一定在想为什么不放入/home
HDD?
/home
我更喜欢将其放在 SDD 中的唯一原因是/home
,它不仅存储您的个人数据,还存储您对所有程序的个人设置。这包括您对桌面或任何其他程序设置、浏览器书签等所做的更改。当您从 SSD 加载程序但个人设置在 HDD 中时,加载该程序的速度会稍微变慢。将两者保存/
在/home
SSD 中将为您带来最快的加载时间。
在硬盘中保存音乐、视频、保存的游戏等大数据
包含大量数据(如视频)的文件夹可以位于 NTFS 分区中,并带有指向 的符号链接/home
。以下位置对此进行了详细说明:Windows Ubuntu 双启动 - 在操作系统之间共享文件
的其他大型子文件夹/home
可以是硬盘中的分区。例如,如果您在 WINE 中安装了大量 Windows 程序和游戏,隐藏文件夹.wine
就会变得很大。您可以ext4
在硬盘中创建一个分区并将其挂载在/home/[your user name]/.wine
(与 Windows 不同,Linux 中的分区可以作为子文件夹挂载。) Steam 游戏占用大量空间。您的 Steam 游戏位于/home/[your user name]/.local/share/Steam
。请参阅Steam 游戏安装在哪里? 如果需要,您可以在硬盘中创建一个单独的Steam
( ext4
) 分区。这将需要一次性编辑文件/etc/fstab
。请参阅登录时挂载分区?有关如何在登录时挂载分区的更多信息。
我建议将 .wine 作为ext4
分区而不是NTFS
分区中的文件夹的原因是,它NTFS
无法保留 Ubuntu 使用的所有权和文件权限,而这些是 WINE 存储在 .wine 文件夹中的设置和其他文件所需要的。
在NTFS
分区中的系统链接文件夹和ext4
作为子文件夹安装的分区之间,/home
您可以将所有大文件保存在 HDD 中,同时保持系统快速运行,从而充分利用 SSD。
/
如果由于大型游戏和其他程序,SSD 中的分区仍然空间不足,您可以创建一个ext4
分区并移动/usr
到那里。但是,这需要一些规划、仔细思考和执行。如果您需要走这条路,请单独提问。
至于安装/
程序/home
请参阅该过程及其局限性的出色解释:安装在根分区或主分区上的软件简而言之,通过Ubuntu 软件中心,否则命令apt-get
将安装在 中/
。只有“静态二进制”编译的程序才可以安装(而不是复制)在 的子文件夹中/home
并预期可以工作。
更多参考:
答案2
分区和决定把东西放在哪里是一门艺术,而不是一门科学……所以我可以给你一些建议个人因素多于技术因素。
1) 保留/
并/home
分离。这将允许您重新安装另一种 Linux(或 Ubuntu),而无需触及您的数据和配置。我甚至能够让两个不同的 Linux(Ubuntu 和 Mandriva,很久以前)以相同的目录/home
和相同的桌面配置运行……这对于实验非常有用。
2) 现在,60GB 的“/”对于 Linux 来说是一个相当大的分区。在我的笔记本电脑中,我安装了所有可能的照片处理系统、各种视频编码器、各种游戏,如下所示:
(0)samsung-romano:~% df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 88G 9.5G 74G 12% /
但是是的 --- 在你的情况下,我会把/
SSD 放上去(也许用 2*RAM 交换,尽管这存在很多争议) 以及/home
高清版。
另一个选项(需要更多工作但更灵活)是安装 20G 根、2G 交换和/home
SSD 上的其余部分,以及例如 下的 200G HD /data
。安装后,您可以将所有权更改为/data
主要用户,并将增长过多的目录移至那里(并重新链接)。(一种穷人的 LVM)。这样做的好处是,基本系统将非常快速,完全安装在 SSD 上。
最后一个选项是我称之为“fiddler”的选项。您可以拥有多个分区(假设是三个 - YMMV),大约 30G --- 将它们称为p1
、p2
、p3
;其余的放在一个非常大的分区中,安装在您的用户下/data
并chown
分配给您。如果您愿意,您可以有一个额外的交换分区。
现在你可以安装你的 Ubuntu 了p1
,安装全部下的/
这个。然后您可以将您的个人文件(文档、图片等)符号链接到 中的文件夹/data
。
这将允许您在 上安装例如 Ubuntu LTS p1
、在 上安装最新测试版p2
、在 上安装另一个发行版p3
--- 每个发行版都有其主页和配置文件,但您可以在它们之间共享数据……
理想的解决方案是使用像 LVM 这样的动态分区,但它相当复杂...当您决定擦除 Windows 并仅使用 Ubuntu 时,这将非常有用;-)。
附加信息:“程序”去哪儿了?
根分区:此处(在
/
、/usr
等中/usr/share/
)存放来自发行版(官方存储库和 PPA 存储库)的所有软件。请注意,/
和之间的旧分区/usr
在现代 Unix 安装中实际上已不再使用(1)。主分区:在这里,您可以找到所有数据或以普通用户身份安装的软件(不是系统范围的)。例如,这包括“瓶装”的 Wine(因此,在 Wine 下安装的所有软件都将位于 中)
/home
、VirtualBox 中的虚拟机、CrossOver 中的游戏等。根据我的经验,这是系统中真正需要空间的部分。/usr/local
和/或/opt
:这是您要自己编译的程序通常放置的位置。您可能需要这个,因为程序太新或太旧,无法放在存储库中,用于开发或仅用于播放。我在那里有我的旧 CivCTP 副本……我通常移动这些目录使其/home
不受系统(重新)安装的影响。大型游戏:我不知道。我玩过的最大的游戏是 CivCTP,它占用不到半 GB(它安装在我家或 中
/usr/local
)。
(1) 历史上(2),当磁盘空间昂贵时,我们有一个/
分区,其中包含最低限度的软件,用于以独立方式启动系统 ( /
、/bin
、/sbin
、/etc
、/lib
、)。此分区中包含最低限度的软件和系统可能需要写入的所有目录。下面有一个包含所有软件的类似方案;通常是共享和安装的/var
。/tmp
/usr
/usr
只读由一组机器来实现,以节省磁盘空间。
(2) 我说的是 90 年代初期。100MB 磁盘就是一台很大的服务器了。