39 }; |
39 }; |
40 my $addr = inet_ntoa($ip); |
40 my $addr = inet_ntoa($ip); |
41 my $hostname_long = hostname_long(); |
41 my $hostname_long = hostname_long(); |
42 |
42 |
43 my $user = "root"; |
43 my $user = "root"; |
44 my $path = "/root/Config/Hosts/$hostname_long"; |
44 my $path = "/root/Configs/Hosts/$hostname_long"; |
45 my $ssh_cmd = "mkdir -m 0700 -p $path"; |
45 my $ssh_cmd = "mkdir -m 0700 -p $path"; |
46 |
46 |
47 sshopen2("$user\@$host", *READER, *WRITER, "$ssh_cmd") || die "ssh: $!"; |
47 sshopen2("$user\@$host", *READER, *WRITER, "$ssh_cmd") || die "ssh: $!"; |
48 close(READER); close(WRITER); |
48 close(READER); close(WRITER); |
49 |
49 |
50 open(CONF, $CONFIG) or die "$ME: Can't open $CONFIG: $!\n"; |
50 open(CONF, $CONFIG) or die "$ME: Can't open $CONFIG: $!\n"; |
51 |
51 |
52 my @cmd = ( |
52 my @cmd = ( |
53 qw(rsync --rsh), |
53 qw(rsync --rsh), "ssh -x", |
54 "ssh -x", |
|
55 qw(--compress --numeric-ids |
54 qw(--compress --numeric-ids |
56 --delete --delete-excluded |
55 --delete --delete-excluded |
57 --archive --relative) |
56 --archive --relative) |
58 ); |
57 ); |
59 push @cmd, "--verbose" if $opt_verbose; |
58 push @cmd, "--verbose" if $opt_verbose; |
60 |
59 |
61 # get exclusion list |
|
62 while (<CONF>) { |
60 while (<CONF>) { |
63 chomp; |
61 chomp; |
64 /^!(.*)\s*/ or next; |
62 /^!(.*)\s*/ or next; |
65 push @cmd, "--exclude", $1; |
63 push @cmd, "--exclude", $1; |
66 } |
64 } |