summaryrefslogtreecommitdiffstats
path: root/geo-replication/src/peer_add_secret_pub.in
diff options
context:
space:
mode:
Diffstat (limited to 'geo-replication/src/peer_add_secret_pub.in')
-rw-r--r--geo-replication/src/peer_add_secret_pub.in17
1 files changed, 15 insertions, 2 deletions
diff --git a/geo-replication/src/peer_add_secret_pub.in b/geo-replication/src/peer_add_secret_pub.in
index aed93991e58..8bfecce9b09 100644
--- a/geo-replication/src/peer_add_secret_pub.in
+++ b/geo-replication/src/peer_add_secret_pub.in
@@ -1,20 +1,33 @@
#!/bin/bash
if [ "$1" == "" ]; then
+ user="root"
home_dir=`getent passwd root | cut -d ':' -f 6`;
else
+ user=$1
home_dir=`getent passwd $1 | cut -d ':' -f 6`;
fi
-if [ "$home_dir" == "" ]; then
+if [ "$user" == "" ]; then
echo "Invalid User";
exit 1;
fi
+if [ "$home_dir" == "" ]; then
+ echo "Invalid home dir";
+ exit 1;
+fi
+
if [ ! -d $home_dir/.ssh ]; then
mkdir $home_dir/.ssh;
chmod 700 $home_dir/.ssh;
- chown root:root $home_dir/.ssh;
+ chown $user:$user $home_dir/.ssh;
+fi
+
+if [ ! -d $home_dir/.ssh/authorized_keys ]; then
+ touch $home_dir/.ssh/authorized_keys;
+ chmod 600 $home_dir/.ssh/authorized_keys;
+ chown $user:$user $home_dir/.ssh/authorized_keys;
fi
cat "$GLUSTERD_WORKING_DIR"/geo-replication/common_secret.pem.pub >> $home_dir/.ssh/authorized_keys;