SSD 최적화를 위한 "systemctl start fstrim.timer"가 Debian 10에서 작동하지 않습니다.

SSD 최적화를 위한 "systemctl start fstrim.timer"가 Debian 10에서 작동하지 않습니다.

방금 1TB Kingston SSD를 설치했고 HDD를 복제하여(Debian 10 사용) 성능 외에는 아무것도 변경되지 않았습니다. 이 SSD에 대해 TRIM을 설정하고 싶습니다.

그래서 나는 이렇게 했습니다:

$ sudo hdparm -I /dev/sda | grep -i TRIM
           *    Data Set Management TRIM supported (limit 8 blocks)

$ sudo systemctl cat fstrim.service
# /lib/systemd/system/fstrim.service
[Unit]
Description=Discard unused blocks on filesystems from /etc/fstab
Documentation=man:fstrim(8)

[Service]
Type=oneshot
ExecStart=/sbin/fstrim -Av

$ sudo systemctl status fstrim.timer
● fstrim.timer - Discard unused blocks once a week
   Loaded: loaded (/lib/systemd/system/fstrim.timer; enabled; vendor preset: enabled)
   Active: inactive (dead)
  Trigger: n/a
     Docs: man:fstrim

세 번째 명령 fstrim.timer의 출력에서 ​​볼 수 있듯이 fstrim.timer는 비활성 상태이므로 활성화하려면 다음을 수행해야 한다고 생각했습니다.

$ sudo systemctl enable fstrim.service

출력:

The unit files have no installation config (WantedBy=, RequiredBy=, Also=,
Alias= settings in the [Install] section, and DefaultInstance= for template
units). This means they are not meant to be enabled using systemctl.
 
Possible reasons for having this kind of units are:
• A unit may be statically enabled by being symlinked from another unit's
  .wants/ or .requires/ directory.
• A unit's purpose may be to act as a helper for some other unit which has
  a requirement dependency on it.
• A unit may be started when needed via activation (socket, path, timer,
  D-Bus, udev, scripted systemctl call, ...).
• In case of template units, the unit is meant to be enabled with some
  instance name specified.

그리고

$ sudo systemctl start fstrim.timer

출력:

Failed to start fstrim.timer: Unit -.mount is masked.

그래서 무슨 일이 일어나고 있는지 모르겠습니다. 이 문제를 해결하는 방법을 검색했지만 정답을 찾을 수 없습니다. 누군가가 나를 도울 수 있기를 바랍니다. 미리 감사드립니다.

답변1

~처럼ajgringo619나는 이렇게 하라고 조언받았습니다:sudo systemctl unmask fstrim.timer

그런 다음 fstrim.timer를 시작하고 상태를 확인하면 모든 것이 정상입니다.

관련 정보