newargv[newargc++] = argv[0];
newargv[newargc++] = "-f"; // stay in foreground
- newargv[newargc++] = "-o";
- newargv[newargc++] = "allow_other";
-
- newargv[newargc++] = "-o";
- newargv[newargc++] = "default_permissions";
-
+ if (g_conf->fuse_allow_other) {
+ newargv[newargc++] = "-o";
+ newargv[newargc++] = "allow_other";
+ }
+ if (g_conf->fuse_default_permissions) {
+ newargv[newargc++] = "-o";
+ newargv[newargc++] = "default_permissions";
+ }
if (g_conf->fuse_big_writes) {
newargv[newargc++] = "-o";
newargv[newargc++] = "big_writes";
}
-
- newargv[newargc++] = "-o";
- newargv[newargc++] = "atomic_o_trunc";
+ if (g_conf->fuse_atomic_o_trunc) {
+ newargv[newargc++] = "-o";
+ newargv[newargc++] = "atomic_o_trunc";
+ }
if (g_conf->fuse_debug)
newargv[newargc++] = "-d";
OPTION(log_to_syslog, OPT_BOOL, false)
OPTION(err_to_syslog, OPT_BOOL, false)
OPTION(log_flush_on_exit, OPT_BOOL, true)
+OPTION(log_stop_at_utilization, OPT_FLOAT, .97) // stop logging at (near) full
OPTION(clog_to_monitors, OPT_BOOL, true)
OPTION(clog_to_syslog, OPT_BOOL, false)
OPTION(client_debug_inject_tick_delay, OPT_INT, 0) // delay the client tick for a number of seconds
// note: the max amount of "in flight" dirty data is roughly (max - target)
OPTION(fuse_use_invalidate_cb, OPT_BOOL, false) // use fuse 2.8+ invalidate callback to keep page cache consistent
+OPTION(fuse_allow_other, OPT_BOOL, true)
+OPTION(fuse_default_permissions, OPT_BOOL, true)
OPTION(fuse_big_writes, OPT_BOOL, true)
+OPTION(fuse_atomic_o_trunc, OPT_BOOL, true)
OPTION(fuse_debug, OPT_BOOL, false)
OPTION(objecter_tick_interval, OPT_DOUBLE, 5.0)
OPTION(objecter_timeout, OPT_DOUBLE, 10.0) // before we ask for a map