[evolvis-commits] r10754: Test homedir before dealing with ssh keys?==?UTF-8?Q?↵
mirabilos at evolvis.org
mirabilos at evolvis.org
Thu Feb 24 17:54:52 CET 2011
Author: mirabilos
Date: 2011-02-24 17:54:52 +0100 (Thu, 24 Feb 2011)
New Revision: 10754
Modified:
trunk/gforge_base/evolvisforge-5.1/gforge/deb-specific/ssh_dump_update.pl
Log:
Test homedir before dealing with ssh keys
Modified: trunk/gforge_base/evolvisforge-5.1/gforge/deb-specific/ssh_dump_update.pl
===================================================================
--- trunk/gforge_base/evolvisforge-5.1/gforge/deb-specific/ssh_dump_update.pl 2011-02-24 16:54:51 UTC (rev 10753)
+++ trunk/gforge_base/evolvisforge-5.1/gforge/deb-specific/ssh_dump_update.pl 2011-02-24 16:54:52 UTC (rev 10754)
@@ -26,7 +26,7 @@
my ($username, $ssh_keys, $ssh_dir);
-if($verbose){print("\n\n Processing Users\n\n")};
+if($verbose){print("\n\n Processing Users keys creation\n\n")};
while ($ln = pop(@ssh_array)) {
($username, $uid, $ssh_key) = split(":", $ln);
@@ -39,21 +39,27 @@
$ssh_dir = "$homedir_prefix/$username/.ssh";
- if (! -d $ssh_dir) {
- mkdir $ssh_dir, 0755;
+ if($verbose){print ("Processing $username\n")};
+
+ if (-d "$homedir_prefix/$username"){
+ if (! -d $ssh_dir) {
+ mkdir $ssh_dir, 0755;
+ system("chown $uid:$uid $ssh_dir");
+ }
+
+ if($verbose){print("Writing authorized_keys for $username: ")};
+
+ write_array_file("$ssh_dir/authorized_keys", @user_authorized_keys);
+ system("chown $uid:$uid $homedir_prefix/$username");
system("chown $uid:$uid $ssh_dir");
+ system("chmod 0644 $ssh_dir/authorized_keys");
+ system("chown $uid:$uid $ssh_dir/authorized_keys");
+
+ if($verbose){print ("Done\n")};
+ } else {
+ if($verbose){print ("Not yet done, waiting for home creation\n")};
}
- if($verbose){print("Writing authorized_keys for $username: ")};
-
- write_array_file("$ssh_dir/authorized_keys", @user_authorized_keys);
- system("chown $uid:$uid $homedir_prefix/$username");
- system("chown $uid:$uid $ssh_dir");
- system("chmod 0644 $ssh_dir/authorized_keys");
- system("chown $uid:$uid $ssh_dir/authorized_keys");
-
- if($verbose){print ("Done\n")};
-
undef @user_authorized_keys;
}
undef @ssh_array;
@@ -69,7 +75,7 @@
push @ssh_array, $new_list;
}
-if($verbose){print("\n\n Processing Users\n\n")};
+if($verbose){print("\n\n Processing Users keys deletion\n\n")};
while ($ln = pop(@ssh_array)) {
($username, $uid) = split(":", $ln);
@@ -78,6 +84,8 @@
$ssh_dir = "$homedir_prefix/$username/.ssh";
+ if($verbose){print ("Processing $username\n")};
+
if (-d $ssh_dir) {
if($verbose){print("Resetting authorized_keys for $username: ")};
More information about the evolvis-commits
mailing list