la première règle pour migrer vers systemd
À ce stade, en 2015, il est fort probable que quelqu'un l'ait déjà fait.
systemd existe depuis quelques années. Et il y a eu toute une industrie artisanale de personnes écrivant des fichiers d'unité et les publiant. GitHub, en particulier, semble attirer des référentiels de collections d'unités de service.
En effet, une simple recherche sur le WWW autossh.service
(en tant que phrase) apparaît:
une unité modèle
Cela dit, comme je l'ai souligné à plusieurs endroits sur StackExchange seul, ce type de migration n'est pas un processus mécaniste, et parfois, simplement la traduction robotique de tout ce que l'on a vers un fichier d'unité fait mal ou du moins mal. Dans ce cas, autossh
est haletant positivement pour être manipulé avec une unité de modèle , qu'il est instancié en unités de service réelles, paramétrées par le nom cible. Alors /etc/systemd/system/autossh@.service
, ayez:
[Unité]
Description = Service AutoSSH pour un tunnel inverse à partir de% i
Après = network.target
[Un service]
Utilisateur = autossh
EnvironmentFile = / etc /% p /% i.conf
ExecStart = / usr / bin / autossh -M 0 -q -N $ SSH_USER @% i $ SSH_OPTIONS
[Installer]
WantedBy = multi-user.target
Créez un fichier nommé /etc/autossh/other_server.example.conf
avec, au minimum:
SSH_USER = joe
Tous les contrôles habituels s'appliquent alors:
systemctl enable autossh@other_server.example
- Activer le démarrage automatique d'une instance au démarrage.
systemctl start autossh@other_server.example
- Démarrez manuellement cette instance immédiatement.
systemctl status autossh@other_server.example
- Voir son statut.
Et oui, la première règle s'applique même à cela. En cherchant, on peut constater que j'ai été battu à cela, par un peu moins de quinze jours, par Greg Freemyer à OpenSUSE.