feat($gocron-node): *nix平台默认禁止以root用户运行任务节点

pull/21/merge
ouqiang 2017-08-06 01:00:41 +08:00
parent 6e8622e4f3
commit b509fcec55
1 changed files with 25 additions and 7 deletions

View File

@ -5,15 +5,33 @@ package main
import ( import (
"github.com/ouqiang/gocron/modules/rpc/server" "github.com/ouqiang/gocron/modules/rpc/server"
"os" "flag"
"runtime"
"os"
"fmt"
) )
const AppVersion = "1.1"
func main() { func main() {
var addr string var serverAddr string
if (len(os.Args) < 2) { var allowRoot bool
addr = "0.0.0.0:5921" var version bool
} else { flag.BoolVar(&allowRoot, "allow-root", false, "./gocron-node -allow-root")
addr = os.Args[1] flag.StringVar(&serverAddr, "s", "0.0.0.0:5921", "./gocron-node -s ip:port")
flag.BoolVar(&version, "v", false, "./gocron-node -v")
flag.Parse()
if version {
fmt.Println(AppVersion)
os.Exit(0)
} }
server.Start(addr)
if runtime.GOOS != "windows" && os.Getuid() == 0 && !allowRoot {
fmt.Println("Do not run gocron-node as root user")
os.Exit(1)
}
server.Start(serverAddr)
} }