对于几乎所有与 Linux 相关的事情,我都是一个完全的新手,但我想尝试在我的 SSD 上安装 Arch Linux。
我的电脑规格是:
- a320m-a pro max
- 锐龙 3 3200g
- 金士顿 240 GB 固态硬盘
- 1 TB HDD 用于存储媒体和文件
- 16 GB 的 RAM。
我是否应该按照安装指南一步一步进行操作?(https://wiki.archlinux.org/title/Installation_guide),或者由于我在 SSD 上安装 Arch Linux,是否需要添加或更改任何内容?
我对技术方面的东西几乎一无所知,但我听说过一个术语,称为“trim”,用于描述固态硬盘 (SSD),我不知道指南中是否有任何额外的步骤。YouTube 上的大多数安装教程都是以使用硬盘的虚拟机为例进行的,因此我无法将它们用于我的安装过程。
另外,我是否应该将磁盘划分为交换分区、EFI 系统和 Linux 文件系统?如果是,每个分区需要多少空间?
我打算将上述硬盘用于媒体和文件。在安装过程中我应该做什么吗?或者它像 Windows 一样可以识别硬盘,我可以毫无问题地使用它?
解释这一切时请使用初学者友好的术语,因为我是个彻头彻尾的菜鸟,技术不够精通。抱歉我的英语不太好;我的主要语言是西班牙语。
答案1
我是否应该按照安装指南一步一步进行操作?(https://wiki.archlinux.org/title/Installation_guide),或者由于我在 SSD 上安装 Arch Linux,是否需要添加或更改任何内容?
没有显著差异,只是 NVMe 磁盘有名称/dev/nvme*
而不是/dev/sd*
。(用于lsblk -S
找出哪个设备文件对应哪个磁盘。)
我对技术方面的东西几乎一无所知,但我听说过一个称为 SSD 的“trim”的术语,我不知道是否可以在指南中添加任何额外步骤。
“Discard” 是通用的 Linux 术语,“Trim” 是 ATA 磁盘使用的命令名称,“Unmap” 是等效的 SCSI 命令,“Deallocate” 是 NVMe 命令,您经常会听到这四个术语互换使用。
在所有情况下,它都会让操作系统指示某些扇区不再“处于使用中”状态(不属于任何文件),以便 SSD 可以自由地用其他内容覆盖该部分闪存。
可以定期调用丢弃/修剪(针对整个磁盘的未使用区域)或立即调用(一旦删除某些内容)。
要按计划使用它,请启用
fstrim.timer
systemd 单元,让系统对所有安装大约每周一次检查文件系统。(使用“systemctl”执行此操作。)有些发行版在安装时会自动启用 fstrim.timer,但其他发行版则不会。如果您想查看它是否正常工作,也可以
fstrim -v
在已挂载的文件系统上手动运行。可以通过文件系统挂载选项(在 fstab 或 rootflags= 内核选项中)启用立即丢弃,但通常不建议启用此功能 - 主要是因为在某些 Linux 文件系统中它是同步的,这意味着删除将等到 TRIM 命令完成,这很慢。(并且由于许多较便宜的 SSD 无法使用“排队 TRIM”,因此速度可能会更慢,这意味着 TRIM 命令不能与常规读取/写入交错,因此在执行丢弃时一切都必须停止。)
fstrim.timer
即使您没有 SSD,也应该启用它,因为高容量 SMR HDD 以非常相似的方式排列数据,并且至少一些制造商的 HDD 会出于相同的原因接受 TRIM 命令。(运行lsblk -D
以检查您的设备是否支持丢弃。)它在虚拟机上也很有用,因为许多虚拟机管理程序使用动态大小的磁盘映像,这些映像会按需增长但通常不会缩小 - 一些 VM 虚拟机管理程序确实识别 TRIM 并将相应的 .vhd/.vmdk 映像区域标记为可用。
另外,我是否应该将磁盘划分为交换分区、EFI 系统和 Linux 文件系统?如果是,每个分区需要多少空间?
UEFI 固件需要一个“EFI 系统分区”。
(除非它启用了 CSM(BIOS 模拟)模式,并且您明确意图以 BIOS 模拟模式启动系统。但是,如果可用,您应始终选择原生 UEFI 启动模式 - 它在新机器上并不像在 10 年前的设备上那样挑剔,而且它很快就会成为仅有的模式可用。)
虽然 EFI 系统分区的要求各不相同(例如,使用 GRUB2 只需几 MB 即可),但我认为一个好的最低基准是微软对 OEM 的建议,即 EFI 系统分区至少为 100 MB,如果是 4K 扇区磁盘,则至少为 260 MB。
如果您打算使用 systemd-boot,通常这意味着将您的内核(和 initramfs)映像直接放入 EFI 系统分区,并且尝试不同的内核会很快耗尽可用空间,因此对于 Arch 用户,我建议使用 500–512 MB。
但是,这已经是最大容量了 – 分配 GB 有点小题大做。
拥有交换分区是可选的,但你可能应该有一个较小的内存(例如,1-2 GB)。(不,它不应该是“RAM 的两倍”不再)您可以使用交换来代替分区文件在您的根文件系统上,但如果您始终能够负担 2 GB,那么分区就更简单了。
在现代系统中,通常会有足够的 RAM,因此很少使用交换空间 - 例如,内核可能偶尔会交换一些后台进程,为页面缓存腾出空间(这更有用)。这对您的 SSD 寿命不会产生明显的影响。
有一种例外情况是,如果您打算使用休眠模式(又称“挂起到磁盘”模式)。这做需要交换,因为 Linux 在那里存储休眠映像。由于映像经过了某种程度的压缩,因此通常选择 3/4 的物理 RAM 大小。然而,实际上,休眠在 Linux 上效果并不好。
Linux“根”分区将包含整个操作系统。操作系统一开始很小,但随着您安装东西,它只会越来越大;仅 /usr 就占用 20 GB 并不罕见(另外还有几 GB 用于 /var/cache,几 GB 用于 /var/log 等)。在小型 SSD 上,使用单个分区来存储整个分区/
可能比将其分成/
和更经济/home
,但这最终由您自己决定。
我打算将上述硬盘用于媒体和文件。安装过程中我应该做什么吗?或者它像 Windows 一样可以识别硬盘,我可以毫无问题地使用它?
如果 HDD 是全新的并且完全空的,您可能不会提示自动“格式化”它(创建分区和文件系统) - 您需要通过 GParted 或 GNOME 磁盘实用程序或 手动执行此fdisk
操作mkfs
。
另外,与 Windows 不同的是,您需要自行决定在何处“安装” HDD(类似/Data
或 的路径/media/hdd
,而不是驱动器号)并将相应的条目添加到/etc/fstab
。 (如果您碰巧使用 GNOME,其磁盘实用程序也可以执行此操作。)
(尽管许多图形文件管理器应用程序可以识别新的文件系统并提供自动挂载功能,但此功能实际上是针对可移动媒体(例如 USB 记忆棒)的,对于内置硬盘来说使用不太方便。)