使用Go管理systemd服务

fiei3ece  于 2023-04-18  发布在  Go
关注(0)|答案(2)|浏览(142)

除了os.exec调用一些东西之外,标准库中是否有用于管理systemd服务的东西?我已经看到一些挂钩到dbus或与systemd集成的第三方库,但在这种情况下,我试图尽可能多地利用标准库。

6l7fqoea

6l7fqoea1#

没有标准库,但也许这会有用

https://github.com/coreos/go-systemd

我已经测试了它只是列出所有单位。

package main

import (
    "fmt"

    "github.com/coreos/go-systemd/dbus"
)

func main() {

    systemdConnection, _ := dbus.NewSystemdConnection()

    listOfUnits, _ := systemdConnection.ListUnits()

    for _, unit := range listOfUnits {
        fmt.Println(unit.Name)
    }

    systemdConnection.Close()
}
hlswsv35

hlswsv352#

不可以,标准库中没有系统特定的API。

相关问题