为什么 Ubuntu 只为某些品牌启用 TRIM?

Sin*_*ani 4 ssd trim

因此,我一直在阅读有关 SSD 的内容,默认情况下仅对三星和英特尔等某些品牌启用每周 TRIM,但对 Hynix 等其他品牌则不启用。这样做的理由是什么?我是否应该在其他品牌的 SSD 上启用 TRIM,因为性能/寿命可能会受到负面影响?

Win*_*nix 14

当涉及到诸如 TRIM 之类的低级磁盘 I/O 时,Ubuntu 没有太多控制权。这真的取决于 Linux 内核和 SSD 制造商。在运行 TRIM 之前,您必须确保您的 SSD 支持它,否则它可能会成为昂贵的镇纸。

要确定使用:

$ lsblk --discard
NAME        DISC-ALN DISC-GRAN DISC-MAX DISC-ZERO
sdb                0        0B       0B         0
??sdb4             0        0B       0B         0
??sdb2             0        0B       0B         0
??sdb5             0        0B       0B         0
??sdb3             0        0B       0B         0
??sdb1             0        0B       0B         0
sr0                0        0B       0B         0
sda                0        0B       0B         0
??sda4             0        0B       0B         0
??sda2             0        0B       0B         0
??sda5             0        0B       0B         0
??sda3             0        0B       0B         0
??sda1             0        0B       0B         0
nvme0n1          512      512B       2T         0
??nvme0n1p5        0      512B       2T         0
??nvme0n1p3        0      512B       2T         0
??nvme0n1p1        0      512B       2T         0
??nvme0n1p6        0      512B       2T         0
??nvme0n1p4        0      512B       2T         0
??nvme0n1p2        0      512B       2T         0
??nvme0n1p7        0      512B       2T         0
Run Code Online (Sandbox Code Playgroud)

DISC-GRAN DISC-MAX列包含非零值时,使用 TRIM 是安全的。如果您不确定此显示中的哪个磁盘,您可以使用以下方法获取型号名称和编号:

$ lsblk -o NAME,FSTYPE,LABEL,MOUNTPOINT,SIZE,MODEL
NAME        FSTYPE  LABEL                  MOUNTPOINT          SIZE MODEL
sdb                                                           14.4G STORE N GO      
??sdb4      iso9660 Ubuntu 18.04 LTS amd64 /media/rick/Ubunt   1.4G 
??sdb2                                                           1M 
??sdb5      ext4    casper-rw              /media/rick/caspe   6.4G 
??sdb3      vfat    usbboot                                    244M 
??sdb1      ntfs    usbdata                /media/rick/usbda   6.4G 
sr0                                                           1024M DVD+/-RW DW316  
sda                                                          931.5G HGST HTS721010A9
??sda4      ntfs    WINRETOOLS                                 450M 
??sda2                                                         128M 
??sda5      ntfs    Image                                     11.4G 
??sda3      ntfs    HGST_Win10             /mnt/d              919G 
??sda1      vfat    ESP                                        500M 
nvme0n1                                                        477G Samsung SSD 960 PRO 512G
??nvme0n1p5 ext4    NVMe_Ubuntu_16.0       /                  44.6G 
??nvme0n1p3                                                     16M 
??nvme0n1p1 ntfs                                               450M 
??nvme0n1p6 swap    Linux Swap             [SWAP]              7.9G 
??nvme0n1p4 ntfs    NVMe_Win10             /mnt/c            414.9G 
??nvme0n1p2 vfat                           /boot/efi            99M 
??nvme0n1p7 ntfs    Shared_WSL+Linux       /mnt/e                9G 
Run Code Online (Sandbox Code Playgroud)

所以在这种情况下,SSD 是三星 Pro 960,它确实支持 TRIM 命令。

有关更多详细信息,请参阅这篇Arch Linux 文章