diff --git a/weed/command/fuse.go b/weed/command/fuse.go index a3b7fb81e..6a6dd8d5d 100644 --- a/weed/command/fuse.go +++ b/weed/command/fuse.go @@ -28,3 +28,7 @@ var cmdFuse = &Command{ To check valid options look "weed mount --help" `, } + +func GetFuseCommandName() string { + return cmdFuse.Name() +} diff --git a/weed/command/fuse_std.go b/weed/command/fuse_std.go index 2cc6fa8ab..bd274f651 100644 --- a/weed/command/fuse_std.go +++ b/weed/command/fuse_std.go @@ -12,6 +12,9 @@ import ( "strings" "syscall" "time" + + "github.com/seaweedfs/seaweedfs/weed/util" + util_http "github.com/seaweedfs/seaweedfs/weed/util/http" ) type parameter struct { @@ -219,6 +222,8 @@ func runFuse(cmd *Command, args []string) bool { } case "fusermount.path": fusermountPath = parameter.value + case "config_dir": + util.ConfigurationFileDirectory.Set(parameter.value) default: t := parameter.name if parameter.value != "true" { @@ -228,6 +233,8 @@ func runFuse(cmd *Command, args []string) bool { } } + util_http.InitGlobalHttpClient() + // the master start the child, release it then finish himself if masterProcess { arg0, err := os.Executable() diff --git a/weed/weed.go b/weed/weed.go index cde071179..f940cdacd 100644 --- a/weed/weed.go +++ b/weed/weed.go @@ -85,8 +85,9 @@ func main() { } return } - - util_http.InitGlobalHttpClient() + if args[0] != command.GetFuseCommandName() { + util_http.InitGlobalHttpClient() + } for _, cmd := range commands { if cmd.Name() == args[0] && cmd.Run != nil { cmd.Flag.Usage = func() { cmd.Usage() }