die "host $fex is not resolvable - check /etc/resolv.conf\n";
}
+# $fexupdate = '/root/bin/fexupdate';
+# die "found $fexupdate\n" if -x $fexupdate;
+
$opt_p = 80;
if (open $xinetd,$xinetd) {
unless (getpwnam('fex')) {
print "creating user fex\n";
- system 'useradd -s /bin/bash -c "File EXchange" -m fex';
+ system 'groupadd --system fex 2>/dev/null || groupadd fex';
+ my @g = getgrnam('fex') or die "$0: cannot groupadd fex\n";
+ my $gid = $g[2];
+ if (getpwuid($gid)) {
+ system "useradd -s /bin/bash -c 'File EXchange' -g $gid -m fex"
+ } else {
+ system "useradd -s /bin/bash -c 'File EXchange' -u $gid -g $gid -m fex"
+ }
exit $? if $?;
}
exit unless /^y/i;
}
+# old bug fix
+if (-d "$FEXHOME/htdocs/locale") {
+ chmod 0755,"$FEXHOME/htdocs/locale";
+ chmod 0755,grep { -d $_ } glob("$FEXHOME/locale/*/htdocs");
+}
+
print "Installing:\n";
$pecl = "$FEXHOME/perl/Encode/ConfigLocal.pm";
"1;\n";
close $pecl;
print $pecl,"\n";
- chownr('fex:root',"$FEXHOME/perl");
+ chownr('fex:0',"$FEXHOME/perl");
}
@save = (
mkdir "$FEXHOME/spool",0700 or die "cannot mkdir $FEXHOME/spool - $!\n";
mkdir "$FEXHOME/spool/.error",0700;
}
+foreach my $dir (qw'.dkeys .ukeys .akeys .skeys .gkeys .xkeys .locks') {
+ mkdir "$FEXHOME/spool/$dir",0700;
+}
+
chownr('fex',"$FEXHOME/spool/.");
# fex-VM?
chownr('fex',"$FEXHOME/locale/$locale");
$hl = "$FEXHOME/htdocs/locale/$locale";
symlink "$FEXHOME/locale/$locale/htdocs",$hl unless -l $hl;
+ chownr('fex',"$FEXHOME/htdocs/locale/$locale");
} else {
push @nlocales,"./install $1\n";
}
system qw'crontab -u fex fex.cron';
}
- chownr('fex:root',$FEXHOME,"$FEXHOME/spool/.");
+ chownr('fex:0',$FEXHOME,"$FEXHOME/spool/.","$FEXHOME/htdocs/.");
chmodr('go-r',"$FEXHOME/lib","$FEXHOME/cgi-bin","$FEXHOME/spool/.");
print "\n";