diff --git a/configure/CONFIG b/configure/CONFIG
index 3e4fbd0d41a9c592cacc9c21ddbf234134c162de..d747a382e60dadbc5f0dbe3563f3333bcc147dba 100644
--- a/configure/CONFIG
+++ b/configure/CONFIG
@@ -24,7 +24,6 @@ include $(TOP)/configure/E3/CONFIG_REQUIRE
 include $(TOP)/configure/E3/CONFIG_E3_PATH
 include $(TOP)/configure/E3/CONFIG_E3_MAKEFILE
 include $(TOP)/configure/E3/CONFIG_EPICS
-include $(TOP)/configure/E3/CONFIG_SUDO
 include $(TOP)/configure/E3/CONFIG_EXPORT
 
 
diff --git a/configure/E3/CONFIG_EXPORT b/configure/E3/CONFIG_EXPORT
index 2ac43c12d2a289e0335d27c1bb0acd6beddbf245..e5ab2181f4b2ab128afac228d7d67b20d64d7f67 100644
--- a/configure/E3/CONFIG_EXPORT
+++ b/configure/E3/CONFIG_EXPORT
@@ -22,7 +22,6 @@ EXPORT_VARS+=$(filter E3_REQUIRE_%,$(.VARIABLES))
 EXPORT_VARS+=QUIET
 EXPORT_VARS+=$(filter %_DEP_VERSION,$(.VARIABLES))
 EXPORT_VARS+=$(filter WITH_%,$(.VARIABLES))
-EXPORT_VARS+=$(filter SUDO%,$(.VARIABLES))
 
 export_version=$(eval export $1)
 $(eval $(foreach v,$(EXPORT_VARS),$(call export_version,$v)))
diff --git a/configure/E3/CONFIG_SUDO b/configure/E3/CONFIG_SUDO
deleted file mode 100644
index 61232bc64da48d113e8f20368ad01699403d3f24..0000000000000000000000000000000000000000
--- a/configure/E3/CONFIG_SUDO
+++ /dev/null
@@ -1,39 +0,0 @@
-# IF EPICS_BASE is not WRITABLE, SUDO and SUDOBASH should be used 
-# SUDO_INFO 1 : SUDO is needed (NOT writable)
-# SUDO_INFO 0 : SUDO is not needed
-SUDO_INFO := $(shell test -w $(EPICS_BASE) 1>&2 2> /dev/null; echo $$?)
-SUDO_CMD := $(shell which sudo)
-
-# For CentOS, devtoolset-{7,8} has -E option within sudo shell
-# So we have to remove -E option as well if we would like to use devtoolset
-#
-ifeq "$(SUDO_INFO)" "1"
-ifneq (,$(findstring devtoolset,$(SUDO_CMD)))
-SUDO = $(SUDO_CMD)
-else
-SUDO = $(SUDO_CMD) -E
-endif
-SUDOBASH := $(SUDO) bash -c
-else
-SUDO :=
-SUDOBASH = bash -c
-endif
-
-
-# Valid for only Development Mode, because we clone/remove them
-# See RULES_DEV
-# E3_MODULE_SRC_PATH_INFO 1 : the directory is not there
-# E3_MODULE_SRC_PATH_INFO 0 : the directory is there
-E3_MODULE_SRC_PATH_INFO := $(shell test -d $(E3_MODULE_SRC_PATH) 1>&2 2> /dev/null; echo $$?)
-
-ifeq "$(E3_MODULE_SRC_PATH_INFO)" "1"
-INIT_E3_MODULE_SRC = 1
-endif
-
-
-
-VARS_EXCLUDES+=SUDO
-VARS_EXCLUDES+=SUDOBASH
-VARS_EXCLUDES+=SUDO_INFO
-VARS_EXCLUDES+=SUDO_CMD
-VARS_EXCLUDES+=E3_MODULE_SRC_PATH_INFO
diff --git a/configure/E3/RULES_DEV b/configure/E3/RULES_DEV
index 62e6459a171830dda5f086d8399edce8a4028336..636780bbe15ca664bc179892fb111e3f079ebccb 100644
--- a/configure/E3/RULES_DEV
+++ b/configure/E3/RULES_DEV
@@ -10,8 +10,12 @@ devinit: git-submodule-sync
 	git clone $(E3_MODULE_DEV_GITURL) $(E3_MODULE_SRC_PATH)
 	cd $(E3_MODULE_SRC_PATH) && git checkout $(EPICS_MODULE_TAG)
 
+# E3_MODULE_SRC_PATH_INFO 1 : the directory is not there
+# E3_MODULE_SRC_PATH_INFO 0 : the directory is there
+E3_MODULE_SRC_PATH_INFO := $(shell test -d $(E3_MODULE_SRC_PATH) 1>&2 2> /dev/null; echo $$?)
 
-ifeq "$(INIT_E3_MODULE_SRC)" "1"
+# Note that this is re-defined in CONFIG_MODULE_DEV, which is included if you do a `make dev*`.
+ifeq "$(E3_MODULE_SRC_PATH_INFO)" "1"
 
 devbuild: nonexists
 devclean: nonexists
diff --git a/configure/E3/RULES_E3 b/configure/E3/RULES_E3
index 75ab7e57a185ee91e26812c2db299e19b27baaf4..8a9108e5a61765016ab1b215e1aa2b3e00624096 100644
--- a/configure/E3/RULES_E3
+++ b/configure/E3/RULES_E3
@@ -32,13 +32,13 @@ help:
 install: requireconf install_module
 
 install_module: build db
-	$(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) install'
+	$(QUIET) $(E3_MODULE_MAKE_CMDS) install
 
 ## Uninstall the current module
 uninstall: conf
 #ifeq (,$(strip $(wildcard $(E3_SITEMODS_PATH)/*) $(wildcard $(E3_SITEAPPS_PATH)/*) $(wildcard $(E3_SITELIBS_PATH)/*)))
 ifeq (,$(strip $(wildcard $(E3_SITEMODS_PATH)/*)))
-	$(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) uninstall'
+	$(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall
 else
 	$(error Cannot run 'make uninstall': please manually uninstall everything in $(E3_SITEMODS_PATH))
 endif
@@ -46,7 +46,7 @@ endif
 # We should be able to force an uninstall of require if we need to; this should not be done without some care and thought, however!
 ## Uninstall, including deleting siteMods directory.
 forceuninstall: conf
-	$(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) uninstall'
+	$(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall
 
 ## Build current module.
 build: conf checkout 
diff --git a/configure/E3/RULES_EPICS b/configure/E3/RULES_EPICS
index 608df6b05ec2c3803a3ec8f377ec80aa2987b91a..f1347c465cc3827551587fad19f951e6db1a76b3 100644
--- a/configure/E3/RULES_EPICS
+++ b/configure/E3/RULES_EPICS
@@ -8,8 +8,8 @@
 # epics:
 #        $(QUIET)echo "EPICS_BASE=$(EPICS_BASE)"       > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/RELEASE
 #        $(QUIET)echo "INSTALL_LOCATION=$(M_IOCSTATS)" > $(TOP)/$(E3_MODULE_SRC_PATH)/configure/CONFIG_SITE   
-#        $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH)"
+#        $(MAKE) -C $(E3_MODULE_SRC_PATH)
 
 #epics-clean:
-#        $(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH) clean"
+#        $(MAKE) -C $(E3_MODULE_SRC_PATH) clean
 
diff --git a/configure/E3/RULES_REQUIRE b/configure/E3/RULES_REQUIRE
index 31d915b64f9a1c5a69b53c7326361596bf9c011f..6d720d7dd6700bd7e1edc870d70ce09c79b41c08 100644
--- a/configure/E3/RULES_REQUIRE
+++ b/configure/E3/RULES_REQUIRE
@@ -25,23 +25,23 @@ E3_REQUIRE_CONF_FILES := $(filter-out $(FILE_FILTER), $(wildcard $(TOP)/configur
 .PHONY: e3-site-conf  e3-site-path requireconf
 
 requireconf: e3-site-path e3-site-conf e3-require-path
-	$(QUIET) $(SUDO) install    -m 755 $(wildcard $(E3_MODULE_SRC_PATH)/App/tools/*.tcl)  $(E3_REQUIRE_TOOLS)/
-	$(QUIET) $(SUDO) install    -m 644 $(E3_MODULE_SRC_PATH)/App/tools/driver.makefile    $(E3_REQUIRE_TOOLS)/
-	$(QUIET) $(SUDO) install    -m 755 $(E3_SHELL_FILES)             $(E3_REQUIRE_BIN)/
-	$(QUIET) $(SUDO) install    -m 644 $(E3_IOC_CFG_FILES)           $(E3_REQUIRE_BIN)/
-	$(QUIET) $(SUDO) install    -m 644 $(E3_REQUIRE_CONF_FILES)      $(E3_REQUIRE_CONFIG)/
+	$(QUIET) install    -m 755 $(wildcard $(E3_MODULE_SRC_PATH)/App/tools/*.tcl)  $(E3_REQUIRE_TOOLS)/
+	$(QUIET) install    -m 644 $(E3_MODULE_SRC_PATH)/App/tools/driver.makefile    $(E3_REQUIRE_TOOLS)/
+	$(QUIET) install    -m 755 $(E3_SHELL_FILES)             $(E3_REQUIRE_BIN)/
+	$(QUIET) install    -m 644 $(E3_IOC_CFG_FILES)           $(E3_REQUIRE_BIN)/
+	$(QUIET) install    -m 644 $(E3_REQUIRE_CONF_FILES)      $(E3_REQUIRE_CONFIG)/
 
 
 e3-require-path:
-	$(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_TOOLS)
-	$(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_BIN)
-	$(QUIET) $(SUDO) install -d -m 755 $(E3_REQUIRE_CONFIG)	
+	$(QUIET) install -d -m 755 $(E3_REQUIRE_TOOLS)
+	$(QUIET) install -d -m 755 $(E3_REQUIRE_BIN)
+	$(QUIET) install -d -m 755 $(E3_REQUIRE_CONFIG)	
 
 
 e3-site-path:
-	$(QUIET) $(SUDO) install -d -m 755 $(E3_SITELIBS_PATH)
-	$(QUIET) $(SUDO) install -d -m 755 $(E3_SITEMODS_PATH)
-	$(QUIET) $(SUDO) install -d -m 755 $(E3_SITEAPPS_PATH)
+	$(QUIET) install -d -m 755 $(E3_SITELIBS_PATH)
+	$(QUIET) install -d -m 755 $(E3_SITEMODS_PATH)
+	$(QUIET) install -d -m 755 $(E3_SITEAPPS_PATH)
 
 
 e3-site-conf:
diff --git a/configure/modules/CONFIG b/configure/modules/CONFIG
index c94e975f25722df266c3ce38f7090cef6aa135e0..db96806171c3be9e16c746a8ada1deb12924e59b 100644
--- a/configure/modules/CONFIG
+++ b/configure/modules/CONFIG
@@ -2,7 +2,6 @@
 
 include $(EPICS_BASE)/configure/CONFIG_BASE_VERSION
 include $(REQUIRE_CONFIG)/CONFIG_REQUIRE
-include $(REQUIRE_CONFIG)/CONFIG_SUDO
 include $(REQUIRE_CONFIG)/CONFIG_CELL
 include $(REQUIRE_CONFIG)/CONFIG_E3_PATH
 include $(REQUIRE_CONFIG)/CONFIG_E3_MAKEFILE
diff --git a/configure/modules/CONFIG_CELL b/configure/modules/CONFIG_CELL
index d21f799a1d7f101909ef59824566a5b877fed57f..2cdcbf1cf1ef4096d7e2ccc056048ef9c6102f2e 100644
--- a/configure/modules/CONFIG_CELL
+++ b/configure/modules/CONFIG_CELL
@@ -14,7 +14,4 @@ E3_CELL_PATH=$(TOP)/cellMods
 -include $(TOP)/configure/CONFIG_CELL.local
 E3_MODULES_PATH=$(E3_CELL_PATH)
 
-# If we are doing cellinstall, we should not use SUDO. This is a local install.
-SUDO=
-
 endif
diff --git a/configure/modules/CONFIG_EXPORT b/configure/modules/CONFIG_EXPORT
index c33a94d3bd0789bb8d1d103ab568479b02adf8a5..8ed09578dd9a3b5145e074be7938870de99ff4a8 100644
--- a/configure/modules/CONFIG_EXPORT
+++ b/configure/modules/CONFIG_EXPORT
@@ -23,7 +23,6 @@ EXPORT_VARS+=$(filter E3_REQUIRE_%,$(.VARIABLES))
 EXPORT_VARS+=QUIET
 EXPORT_VARS+=$(filter %_DEP_VERSION,$(.VARIABLES))
 EXPORT_VARS+=$(filter WITH_%,$(.VARIABLES))
-EXPORT_VARS+=$(filter SUDO%,$(.VARIABLES))
 EXPORT_VARS+=$(filter %_EXTERNAL,$(.VARIABLES))
 
 export_version=$(eval export $1)
diff --git a/configure/modules/CONFIG_SUDO b/configure/modules/CONFIG_SUDO
deleted file mode 100644
index 146ebccb2345162fa83ca2cffa8104d7df5a7726..0000000000000000000000000000000000000000
--- a/configure/modules/CONFIG_SUDO
+++ /dev/null
@@ -1,45 +0,0 @@
-# IF EPICS_BASE is not WRITABLE, SUDO and SUDOBASH should be used 
-# SUDO_INFO 1 : SUDO is needed (NOT writable)
-# SUDO_INFO 0 : SUDO is not needed
-SUDO_INFO := $(shell test -w $(EPICS_BASE) 1>&2 2> /dev/null; echo $$?)
-SUDO_CMD := $(shell which sudo)
-
-# For CentOS, devtoolset-{7,8} has -E option within sudo shell
-# So we have to remove -E option as well if we would like to use devtoolset
-#
-ifeq "$(SUDO_INFO)" "1"
-ifneq (,$(findstring devtoolset,$(SUDO_CMD)))
-SUDO = $(SUDO_CMD)
-else
-SUDO = $(SUDO_CMD) -E
-endif
-SUDOBASH = $(SUDO) bash -c
-else
-SUDO :=
-SUDOBASH = bash -c
-endif
-
-
-ifneq (,$(findstring devtoolset,$(SUDO_CMD)))
-SUDO2 := $(SUDO_CMD) bash -c
-else
-SUDO2 := $(SUDO_CMD) -E bash -c
-endif
-
-# Valid for only Development Mode, because we clone/remove them
-# See RULES_DEV
-# E3_MODULE_SRC_PATH_INFO 1 : the directory is not there
-# E3_MODULE_SRC_PATH_INFO 0 : the directory is there
-E3_MODULE_SRC_PATH_INFO := $(shell test -d $(E3_MODULE_SRC_PATH) 1>&2 2> /dev/null; echo $$?)
-
-ifeq "$(E3_MODULE_SRC_PATH_INFO)" "1"
-INIT_E3_MODULE_SRC = 1
-endif
-
-
-VARS_EXCLUDES+=SUDO2
-VARS_EXCLUDES+=SUDO
-VARS_EXCLUDES+=SUDOBASH
-VARS_EXCLUDES+=SUDO_INFO
-VARS_EXCLUDES+=SUDO_CMD
-VARS_EXCLUDES+=E3_MODULE_SRC_PATH_INFO
diff --git a/configure/modules/RULES_CELL b/configure/modules/RULES_CELL
index 585a7ed116f2f7154a13d96e6cc828096069f602..02f2e20f459f199b343f8e05a8ab30d04140e0d9 100644
--- a/configure/modules/RULES_CELL
+++ b/configure/modules/RULES_CELL
@@ -5,8 +5,7 @@ cellinstall: install_module versions fix_permissions
 
 ## Remove the module from the local directory $(E3_CELL_PATH)
 celluninstall: conf
-	$(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) uninstall'
-	#$(SUDO) rm -rf $(E3_MODULES_PATH)
+	$(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall
 
 ## Print relevant environment variables for the local install
 cellvars: vars
diff --git a/configure/modules/RULES_DEV b/configure/modules/RULES_DEV
index 88d3b4f850df79600996523671d3bef1d5d49670..5a4a7ff2149d5209b2c51c1873aed52eccbcd64b 100644
--- a/configure/modules/RULES_DEV
+++ b/configure/modules/RULES_DEV
@@ -58,7 +58,7 @@ devrebuild: rebuild
 devuninstall: uninstall
 devdistclean: clean
 	$(QUIET)echo "Removing $(E3_MODULE_SRC_PATH) ......... "
-	$(SUDO) rm -rf $(E3_MODULE_SRC_PATH)
+	rm -rf $(E3_MODULE_SRC_PATH)
 devepics: epics
 devepics-clean: epics-clean
 devepics-distclean: epics-distclean
diff --git a/configure/modules/RULES_DKMS b/configure/modules/RULES_DKMS
index 9498c642c3611fcad904826f82a12f9ce299865f..2c418b941b974a7144f44096806f4aafc42411d5 100644
--- a/configure/modules/RULES_DKMS
+++ b/configure/modules/RULES_DKMS
@@ -3,21 +3,21 @@
 
 
 dkms_build:
-	$(SUDO) $(DKMS) build $(DKMS_ARGS)
+	$(DKMS) build $(DKMS_ARGS)
 
 
 dkms_remove:
-	$(SUDO) $(DKMS) remove $(E3_MODULE_NAME)/$(E3_MODULE_VERSION) --all
-	$(SUDO) rm -rf /usr/src/$(E3_MODULE_NAME)-$(E3_MODULE_VERSION)
+	$(DKMS) remove $(E3_MODULE_NAME)/$(E3_MODULE_VERSION) --all
+	rm -rf /usr/src/$(E3_MODULE_NAME)-$(E3_MODULE_VERSION)
 
 
 dkms_install:
-	$(SUDO) $(DKMS) install $(DKMS_ARGS)
-	$(QUIET)$(SUDO) depmod
+	$(DKMS) install $(DKMS_ARGS)
+	$(QUIET) depmod
 
 dkms_uninstall:
-	$(SUDO) $(DKMS) uninstall $(DKMS_ARGS)
-	$(QUIET)$(SUDO) depmod	
+	$(DKMS) uninstall $(DKMS_ARGS)
+	$(QUIET) depmod	
 
 .PHONY: dkms_build dkms_install dkms_remove dkms_uninstall
 
diff --git a/configure/modules/RULES_E3 b/configure/modules/RULES_E3
index fdd73a5f89690a878cd8112f3440e69ede869b71..be8d31be0f0c9d869efd8fe35bcd3fa03f216a22 100644
--- a/configure/modules/RULES_E3
+++ b/configure/modules/RULES_E3
@@ -32,11 +32,11 @@ help:
 install: install_module install_links vlibs
 
 install_module: build db
-	$(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) install'
+	$(QUIET) $(E3_MODULE_MAKE_CMDS) install
 
 ## Uninstall the current module
 uninstall: conf
-	$(QUIET) $(SUDOBASH) '$(E3_MODULE_MAKE_CMDS) uninstall'
+	$(QUIET) $(E3_MODULE_MAKE_CMDS) uninstall
 
 ## Build current module
 build: conf checkout prebuild
diff --git a/configure/modules/RULES_E3_SITELIBS b/configure/modules/RULES_E3_SITELIBS
index 636f73f26d7be134ea361216517fe195e469bef9..7a46a1dbdef0fdf8c8668bfb5ed0712a3a596348 100644
--- a/configure/modules/RULES_E3_SITELIBS
+++ b/configure/modules/RULES_E3_SITELIBS
@@ -5,16 +5,16 @@
 
 # GNU find 
 install_links: $(INSTALLED_EPICS_BASE_ARCHS) hdrs
-#	$(SUDO) ln -snf $(E3_MODULES_INSTALL_LOCATION_INC) $(E3_MODULES_INSTALL_LOCATION_INC_LINK)
-#	$(SUDO) ln -snf $(E3_MODULES_INSTALL_LOCATION_DB)  $(E3_MODULES_INSTALL_LOCATION_DB_LINK)
-#	$(SUDO) ln -snf $(E3_MODULES_INSTALL_LOCATION_BIN) $(E3_MODULES_INSTALL_LOCATION_BIN_LINK)
-#	$(SUDO) ln -snf $(E3_MODULES_INSTALL_LOCATION_LIB) $(E3_MODULES_INSTALL_LOCATION_LIB_LINK)
-#	$(SUDO) ln -sf  $(E3_MODULES_INSTALL_LOCATION_DBD) $(E3_MODULES_INSTALL_LOCATION_DBD_LINK)
-#	$(SUDO) find $(E3_SITELIBS_PATH) -xtype l -delete 
+#	ln -snf $(E3_MODULES_INSTALL_LOCATION_INC) $(E3_MODULES_INSTALL_LOCATION_INC_LINK)
+#	ln -snf $(E3_MODULES_INSTALL_LOCATION_DB)  $(E3_MODULES_INSTALL_LOCATION_DB_LINK)
+#	ln -snf $(E3_MODULES_INSTALL_LOCATION_BIN) $(E3_MODULES_INSTALL_LOCATION_BIN_LINK)
+#	ln -snf $(E3_MODULES_INSTALL_LOCATION_LIB) $(E3_MODULES_INSTALL_LOCATION_LIB_LINK)
+#	ln -sf  $(E3_MODULES_INSTALL_LOCATION_DBD) $(E3_MODULES_INSTALL_LOCATION_DBD_LINK)
+#	find $(E3_SITELIBS_PATH) -xtype l -delete 
 
 
 $(INSTALLED_EPICS_BASE_ARCHS):
-#	$(SUDO) mkdir -p $(E3_SITELIBS_PATH)/$@
-#	$(SUDO) ln -sf $(E3_MODULES_INSTALL_LOCATION)/lib/$@/$(E3_MODULES_LIBNAME) $(E3_SITELIBS_PATH)/$@/$(E3_MODULES_LIBLINKNAME)
+#	mkdir -p $(E3_SITELIBS_PATH)/$@
+#	ln -sf $(E3_MODULES_INSTALL_LOCATION)/lib/$@/$(E3_MODULES_LIBNAME) $(E3_SITELIBS_PATH)/$@/$(E3_MODULES_LIBLINKNAME)
 
 
diff --git a/configure/modules/RULES_EPICS b/configure/modules/RULES_EPICS
index 5e7fa501c4eb9da9e1e8a164b150ded1cb1a9037..f7dac66e307723441d0be314c998d09d346f31dd 100644
--- a/configure/modules/RULES_EPICS
+++ b/configure/modules/RULES_EPICS
@@ -4,7 +4,7 @@
 .PHONY: epics-clean epics-distclean
 
 epics-clean:
-	$(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH) clean"
+	$(MAKE) -C $(E3_MODULE_SRC_PATH) clean
 
 epics-distclean:
-	$(SUDOBASH) "$(MAKE) -C $(E3_MODULE_SRC_PATH) distclean"
+	$(MAKE) -C $(E3_MODULE_SRC_PATH) distclean
diff --git a/configure/modules/RULES_KMOD b/configure/modules/RULES_KMOD
index 484c4585d7d5820135917ea2bbd77070b15abd9f..711f69d76a4736556b49a70755c56e7ac051f4f5 100644
--- a/configure/modules/RULES_KMOD
+++ b/configure/modules/RULES_KMOD
@@ -5,7 +5,7 @@ modules:
 
 # Always SUDO is needed
 modules_install:
-        sudo -E bash -c "$(MAKE) -C $(E3_KMOD_SRC_PATH) $@"
+        $(SUDO2) "$(MAKE) -C $(E3_KMOD_SRC_PATH) $@"
 
 modules_clean: 
         $(MAKE) -C $(E3_KMOD_SRC_PATH) clean