Systemd启动后如何启动到程序/脚本

我尝试编写一个分布式OVA设备的networking/环境configuration器,类似于Github Enterprise所做的,请参阅https://github-images.s3.amazonaws.com/enterprise/Enterprise-QS-Virtualbox-Console.png 。 我使用CoreOS和Systemd作为init系统。 自动login被取消激活,我目前的做法是编写一个.service单元来设置networking,然后重新启动这些configuration。 这样做的原因是,在系统启动期间,我有足够的权限来更改networking,而不必让用户login。 缺点是这个过程基本挂起/停止系统启动。

我的问题是如何configurationSystemd(在CoreOS中),以便在启动后为用户提供交互式程序/脚本,并且用户不能“转义”该程序/脚本?

如果你想做的networkingconfiguration是一举,你可以检查出点火 。 它在systemd初始化之前运行,这意味着你可以在第一次启动时写出你的networking单元。

至于把SSH用户放到安装程序/configuration器中,你可以使用ForceCommand来运行一个包含你的安装程序的容器。 最好的做法是将其locking到特定的用户。 更多信息: https : //stackoverflow.com/questions/33713680/ssh-force-command-execution-on-login-even-without-shell

让我知道这是如何工作的!