77 lines
2.2 KiB
Perl
Executable File
77 lines
2.2 KiB
Perl
Executable File
#!/usr/bin/perl
|
|
#
|
|
|
|
my $mode = shift @ARGV;
|
|
|
|
if ($< == 0 || $> ==0) { die "Don't run as root.\n"; }
|
|
chdir("/home/lj") || die "Can't cd to /home/lj";
|
|
|
|
chdir("/home/ljcode") || die "Can't cd to /home/ljcode";
|
|
unless (-d "LiveJournal") {
|
|
die "directory 'LiveJournal' doesn't exist.\n";
|
|
}
|
|
|
|
print "Dumping SQL...\n";
|
|
system("dumpsql.pl init > LiveJournal/livejournal.sql");
|
|
system("dumpsql.pl data > LiveJournal/livejournal-data.sql");
|
|
system("dumpsql.pl datareplace > LiveJournal/livejournal-datareplace.sql");
|
|
|
|
mkdir "LiveJournal/bin/", 0755;
|
|
mkdir "LiveJournal/cgi-bin/", 0755;
|
|
mkdir "LiveJournal/htdocs/", 0755;
|
|
foreach my $dir (qw(htdocs/files htdocs/temp htdocs/misc htdocs/img
|
|
htdocs/stats htdocs/download htdocs/clients
|
|
logs var))
|
|
{
|
|
mkdir "LiveJournal/htdocs/$dir", 0755;
|
|
open (T, ">LiveJournal/htdocs/$dir/.touch");
|
|
print T "placeholder\n";
|
|
close T;
|
|
}
|
|
|
|
print "Syncing cgi-bin...\n";
|
|
system("rsync -rl --delete --exclude='archive' --exclude='clients' --exclude='ljconfig.pl' /home/lj/cgi-bin/ LiveJournal/cgi-bin/");
|
|
|
|
print "Syncing htdocs...\n";
|
|
system("rsync -rl --delete --exclude='htdocs/dev/' --exclude='img' --exclude='files' --exclude='download' --exclude='temp' --exclude='misc' --exclude='stats' /home/lj/htdocs/ LiveJournal/htdocs/");
|
|
|
|
print "Syncing bin...\n";
|
|
system("rsync -rl --delete --exclude='old' /home/lj/bin/ LiveJournal/bin/");
|
|
|
|
my @now = localtime();
|
|
my $date = sprintf("%04d%02d%02d", $now[5]+1900, $now[4]+1, $now[3]);
|
|
my $append = $date;
|
|
print "Date is: $date\n";
|
|
my $count = 1;
|
|
while (-e "LiveJournal-$append" || -e "LiveJournal-$append.tar.gz") {
|
|
$count++;
|
|
$append = "$date-$count";
|
|
}
|
|
|
|
chdir("LiveJournal");
|
|
|
|
print "Cleaning emacs files.\n";
|
|
system("no-emacs.sh");
|
|
print "Cleaning other files.\n";
|
|
system("rm cgi-bin/pod2html-* cgi-bin/perl.core");
|
|
|
|
chdir("..");
|
|
|
|
unless ($mode eq "lite")
|
|
{
|
|
print "Renaming to LiveJournal-$append...\n";
|
|
rename "LiveJournal", "LiveJournal-$append";
|
|
|
|
print "Tarring...\n";
|
|
system("tar -zcvf LiveJournal-$append.tar.gz LiveJournal-$append");
|
|
|
|
print "Renaming back...\n";
|
|
rename "LiveJournal-$append", "LiveJournal";
|
|
}
|
|
else
|
|
{
|
|
print "Skipping tarball.\n";
|
|
}
|
|
print "Done\n";
|
|
|