From 41b79d0cb97b37d45396aa9d5e201168919708e0 Mon Sep 17 00:00:00 2001 From: corochoone Date: Mon, 6 Feb 2017 17:32:30 +0400 Subject: [PATCH] Fix loss of the owner / group / permissions of the configuration file while overwriting it With use "mv" command, configuration file owner, group and permission will become "root: root" with default permissions. This can lead to access problem, because a services will cannot access to the configuration file. For example, "named", will cannot restart, because required user "named" access to own configuration file. "Cat" command, will be overwrite config file too, but it saves owner / group / permissions original file. --- bin/v-change-sys-service-config | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/bin/v-change-sys-service-config b/bin/v-change-sys-service-config index d6977459..c6de294e 100755 --- a/bin/v-change-sys-service-config +++ b/bin/v-change-sys-service-config @@ -104,7 +104,8 @@ if [ "$update" = 'yes' ] && [ "$restart" != 'no' ]; then service $service restart >/dev/null 2>&1 if [ $? -ne 0 ]; then for config in $dst; do - mv -f $config.vst.back $config + cat $config.vst.back > $config + rm -f $config.vst.back done check_result $E_RESTART "$service failed to start with new config" fi