> systemctl list-timers --all
> NEXT LEFT LAST PASSED UNIT ACTIVATES
> Mon 2020-09-07 00:00:00 EEST 8h left Sun 2020-09-06 06:51:21 EEST 8h ago logrotate.timer logrotate.service
> Mon 2020-09-07 00:00:00 EEST 8h left Sun 2020-09-06 06:51:21 EEST 8h ago man-db.timer man-db.service
> Mon 2020-09-07 00:00:00 EEST 8h left Sun 2020-09-06 06:51:21 EEST 8h ago shadow.timer shadow.service
> Mon 2020-09-07 00:23:52 EEST 9h left n/a n/a fstrim.timer fstrim.service
> Mon 2020-09-07 10:20:35 EEST 19h left Sun 2020-09-06 10:20:35 EEST 4h 58min ago systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service
> Thu 2020-09-10 12:31:21 EEST 3 days left Thu 2020-09-03 13:18:13 EEST 3 days ago pamac-mirrorlist.timer pamac-mirrorlist.service
> Sat 2020-10-03 15:00:00 EEST 3 weeks 5 days left Sat 2020-09-05 15:00:26 EEST 24h ago pamac-cleancache.timer pamac-cleancache.service
However, if I do sudo systemctl status fstream.timer I get Unit fstream.timer could not be found., same for systemctl start fstrim.service
FWIW, I installed this via Architect and I initally chose discard as a mount option, but have since learned it quickly degrades the SSD, so I removed it and did sudo systemctl enable fstrim.timer which appeared to have worked.
This is exactly what I did, check my original post, I mention this at the end.
I did it again, just to be sure. It appeared to go through just fine, yet when I do sudo systemctl status fstream.timer I get this Unit fstream.timer could not be found.
That’s because you made a typo. You typed “fstream” instead of “fstrim”.
In addition to that, you cannot get the status for fstrim.service, because fstrim.timer is not a daemon; it’s a script that gets executed at timed intervals and that calls fstrim.service for what it needs to do.
The command is certainly correct. But the option ---now is IMHO not really needed for fstrim as it’s causing an immediate trim. Since the trim is timed to be executed once a week it does not matter when the first trim happens, so why doing it immediately? Hope you don’t mind this comment…
No, if you simply enable it, then the timer will be started upon the next boot, but then it won’t be running yet in the current runtime environment. Hence the --now. It adds the timer to the list of timers that must be started upon the next boot, and it also starts the timer in the running environment. It will however not run fstrim right away.
In that case, if the system was not running at the time that the timer would execute the fstrim operation, the fstrim will be executed upon the next boot.