Writing
Why systemd Stop, Disable, and Mask Are Different
Stopping a service now, preventing automatic startup at boot, and making the service impossible to start are different operational intentions. systemd's stop, disable, and mask reflect those distinctions.
Stopping a service now, preventing automatic startup at boot, and making the service impossible to start are different operational intentions. systemd's stop, disable, and mask reflect those distinctions. Treating them as three spellings of turn it off creates confusion later.
Stop can end the current running instance. Disable removes configured automatic-start links, but whether the service is already running is a separate question. Mask creates a stronger barrier against activation. The correct action depends on the behavior you actually want to prevent.
Suppose you want to stop a heavy service temporarily. Permanently blocking all activation paths may be a larger change than necessary. On the other hand, if another dependency keeps activating the unit, merely disabling boot-time startup may not be enough.
Operational changes should record intent. Stopped now, disabled at boot, and explicitly prohibited from starting are different states. When that intention is visible, the next operator can understand what the machine was meant to do.
Source: official reference.