there are nuances between all the restart commands you have to do what's best for you. This is all MAN info:
To start a systemd service in the current session, issue the start command:
(apache2 is FOR EXAMPLE):
sudo systemctl start apache2.service
Conversely, to stop a systemd service, issue the stop command:
sudo systemctl stop apache2.service
In the above example we started and then stopped the Apache service. It is important to note that systemctl does not require the .service extension when working with service units. The following is just as acceptable:
sudo systemctl start apache2
If the service needs to be restarted, such as to reload a configuration file, you can issue the restart command:
sudo systemctl restart apache2
Similarly, if a service does not need to restart to reload it’s configuration, you can issue the reload command:
sudo systemctl reload apache2
Finally, you can use the reload-or-restart command if you are unsure about whether your application needs to be restarted or just reloaded.
sudo systemctl reload-or-restart apache2
[this might be important]:
Enabling a Service at Boot
The above commands are good for managing a service in a single session, but many services are also required to start at boot. To enable a service at boot:
sudo systemctl enable nginx
To disable the service from starting at boot, issue the disable command:
sudo systemctl disable nginx
Note
The enable command does not start the service in the current session, nor does disable stop the service in the current session. To enable/disable and start/stop a service simultaneously, combine the command with the --now switch:
sudo systemctl enable nginx --now
If the service unit file is not located within one of the known systemd file paths, you can provide a file path to the service unit file you wish to enable:
sudo systemctl enable /path/to/myservice.service
However, this file needs to be accessible by systemd at startup. For example, this means files underneath /home or /var are not allowed, unless those directories are located on the root file system.
my method to restarting modemmanager.service a few times after Windows (yes you read that right) disabled it was do everything until something worked. Probably not the best method but there ya go.