⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pl.pm

📁 老外写的linux下的文件备份软件
💻 PM
📖 第 1 页 / 共 4 页
字号:
#!/bin/perl#my %lang;#use strict;# --------------------------------$Lang{Start_Archive} = "Zacznij Archiwizacj臋";$Lang{Stop_Dequeue_Archive} = "Zatrzymaj/Odkolejkuj Archiwizacj臋";$Lang{Start_Full_Backup} = "Zacznij Pe艂n膮 Kopi臋 Bezpiecze艅stwa";$Lang{Start_Incr_Backup} = "Zacznij Inkrementacyjn膮 Kopi臋 Bezpiecze艅stwa";$Lang{Stop_Dequeue_Backup} = "Zatrzymaj/Odkolejkuj Kopi臋 Bezpiecze艅stwa";$Lang{Restore} = "Przywr贸膰";$Lang{Type_full} = "pe艂ny";$Lang{Type_incr} = "inkrementacyjny";# -----$Lang{Only_privileged_users_can_view_admin_options} = "Tylko uprzywilejowani u偶ytkownicy mog膮 ogl膮da膰 opcje administracyjne";$Lang{H_Admin_Options} = "Serwer BackupPC: Opcje Administracyjne";$Lang{Admin_Options} = "Opcje Administracyjne";$Lang{Admin_Options_Page} = <<EOF;\${h1(qq{$Lang{Admin_Options}})}<br>\${h2("Kontrola Serwera")}<form name="ReloadForm" action="\$MyURL" method="get"><input type="hidden" name="action" value=""><table class="tableStnd">  <tr><td>Wczytaj ponownie konfiguracj臋 serwera:<td><input type="button" value="Reload"     onClick="document.ReloadForm.action.value='Reload';              document.ReloadForm.submit();"></table></form><!--\${h2("Konfiguracja Serwera")}<ul>  <li><i>Inne opcje mog膮 by膰 tu ... . tzn,</i>  <li>Edytuj Konfiguracj臋 Serwera</ul>-->EOF$Lang{Unable_to_connect_to_BackupPC_server} = "Nie mo偶na po艂膮czy膰 si臋 z serwerem BackupPC",            "Ten skrypt CGI (\$MyURL) nie mo偶e po艂膮czy膰 si臋 z BackupPC"          . " serwer na \$Conf{ServerHost} porcie \$Conf{ServerPort}.  B艂膮d"          . " to: \$err.",            "Mo偶liwe ,偶e serwer BackupPC nie jest uruchomiony albo 偶e wyst臋puje "          . " b艂膮d w konfiguracji.  Prosz臋 powiadomi膰 o tym swojego Administratora.";$Lang{Admin_Start_Server} = <<EOF;\${h1(qq{$Lang{Unable_to_connect_to_BackupPC_server}})}<form action="\$MyURL" method="get">Serwer BackupPC na <tt>\$Conf{ServerHost}</tt> porcie <tt>\$Conf{ServerPort}</tt>nie dzia艂a (mo偶e tylko go wy艂膮czy艂e艣, albo po prostu nie wlaczy艂e艣).<br>Czy chcesz go w艂膮czy膰?<input type="hidden" name="action" value="startServer"><input type="submit" value="Uruchom Serwer" name="ignore"></form>EOF# -----$Lang{H_BackupPC_Server_Status} = "Status Serwera BackupPC";$Lang{BackupPC_Server_Status_General_Info}= <<EOF;\${h2(\"Informacje Og贸lne Serwera\")}<ul><li> PID serwera to \$Info{pid},  na ho艣cie \$Conf{ServerHost},     wersja \$Info{Version}, w艂膮czony \$serverStartTime.<li> WYgenerowanie statusu : \$now.<li> Ostatnie 艂adowanie konfiguracji : \$configLoadTime.<li> Nast臋pne kolejkowanie : \$nextWakeupTime.<li> Inne Informacje:    <ul>        <li>\$numBgQueue oczekuj膮cych 偶膮da艅 kopii bezpiecze艅stwa od czasu ostatniego zaplanowanego dzia艂ania,        <li>\$numUserQueue oczekujacych 偶膮da艅 kopii bezpiecze艅stwa od uzytkownik贸w,        <li>\$numCmdQueue oczekuj膮cych polece艅 do wykonania,        \$poolInfo        <li>Ostatni obszar systemu plik贸w to \$Info{DUlastValue}%            (\$DUlastTime), dzisiejsza maksymalna warto艣膰 to \$Info{DUDailyMax}% (\$DUmaxTime)            a wczorajszy by艂 \$Info{DUDailyMaxPrev}%.    </ul></ul>EOF$Lang{BackupPC_Server_Status} = <<EOF;\${h1(qq{$Lang{H_BackupPC_Server_Status}})}<p>\$generalInfo\${h2("Aktualnie Dzia艂aj膮ce Prace")}<p><table class="tableStnd" border cellspacing="1" cellpadding="3"><tr class="tableheader"><td> Host </td>    <td> Typ </td>    <td> U偶ytkownik </td>    <td> Pocz膮tek </td>    <td> Polecenie </td>    <td align="center"> PID </td>    <td align="center"> Xfer PID </td>    </tr>\$jobStr</table><p>\${h2("B艂臋dy kt贸re wymagaj膮 uwagi")}<p><table class="tableStnd" border cellspacing="1" cellpadding="3"><tr class="tableheader"><td align="center"> Host </td>    <td align="center"> Typ </td>    <td align="center"> U偶ytkownik </td>    <td align="center"> Ostatnia pr贸ba </td>    <td align="center"> Detale </td>    <td align="center"> Czas </td>    <td> Ostatni b艂膮d (inny ni偶 brak po艂膮czenia(pingu)) </td></tr>\$statusStr</table>EOF# --------------------------------$Lang{BackupPC__Server_Summary} = "BackupPC: Wyci膮g Hostow";$Lang{BackupPC__Archive} = "BackupPC: Archiwum";$Lang{BackupPC_Summary} = <<EOF;\${h1(qq{$Lang{BackupPC__Server_Summary}})}<p><ul><li>Ten status zosta艂 wygenerowany o \$now.<li>Ostatni obszar systemu plik贸w to \$Info{DUlastValue}%    (\$DUlastTime), dzisiejsza maksymalna warto艣膰 to \$Info{DUDailyMax}% (\$DUmaxTime)    a wczorajszy by艂 \$Info{DUDailyMaxPrev}%.</ul></p>\${h2("Hosty z bezb艂臋dnie wykonan膮 kopi膮 bezpiecze艅stwa ")}<p>Jest \$hostCntGood host贸w kt贸re zostaly zabezpieczone, na ca艂kowita liczb臋:<ul><li> \$fullTot pe艂nych kopi bezpiecze艅stwa na pe艂n膮 sum臋 \${fullSizeTot}GB     (przed kompresj膮),<li> \$incrTot inkrementalnych kopi bezpiecze艅stwa na pe艂n膮 sume \${incrSizeTot}GB     (przed kompresj膮).</ul></p><table class="sortable" id="host_summary_backups" border cellpadding="3" cellspacing="1"><tr class="tableheader"><td> Host </td>    <td align="center"> U偶ytwkonik </td>    <td align="center"> #Pe艂ny </td>    <td align="center"> Pe艂ny Wiek (dni) </td>    <td align="center"> Pe艂ny Rozmiar (GB) </td>    <td align="center"> Pr臋dko艣膰 (MB/s) </td>    <td align="center"> #Inkr </td>    <td align="center"> Wiek Inkr (dni) </td>    <td align="center"> Ostatnia kopia bezpiecze艅stwa (dni) </td>    <td align="center"> Status </td>    <td align="center"> Ostatnia pr贸ba </td></tr>\$strGood</table><br><br>\${h2("Hosty bez wykonanej kopii bezpiecze艅stwa")}<p>Jest \$hostCntNone host贸w bez kopii bezpiecze艅stwa.<p><table class="sortable" id="host_summary_nobackups" border cellpadding="3" cellspacing="1"><tr class="tableheader"><td> Host </td>    <td align="center"> U偶ytkonik </td>    <td align="center"> #Pe艂ny </td>    <td align="center"> Pe艂ny Wiek (dni </td>    <td align="center"> Pe艂ny Rozmiar (GB) </td>    <td align="center"> Pr臋dko艣膰 (MB/s) </td>    <td align="center"> #Inkr </td>    <td align="center"> Wiek Inkr (dni) </td>    <td align="center"> Ostatnia kopia bezpiecze艅stwa (dni) </td>    <td align="center"> Status </td>    <td align="center"> Ostatnia pr贸ba </td></tr>\$strNone</table>EOF$Lang{BackupPC_Archive} = <<EOF;\${h1(qq{$Lang{BackupPC__Archive}})}<script language="javascript" type="text/javascript"><!--    function checkAll(location)    {      for (var i=0;i<document.form1.elements.length;i++)      {        var e = document.form1.elements[i];        if ((e.checked || !e.checked) && e.name != \'all\') {            if (eval("document.form1."+location+".checked")) {                e.checked = true;            } else {                e.checked = false;            }        }      }    }    function toggleThis(checkbox)    {       var cb = eval("document.form1."+checkbox);       cb.checked = !cb.checked;    }//--></script>Jest \$hostCntGood host贸w kt贸re maj膮 kopie bezpiecze艅stwa na sum臋 \${fullSizeTot}GB<p><form name="form1" method="post" action="\$MyURL"><input type="hidden" name="fcbMax" value="\$checkBoxCnt"><input type="hidden" name="type" value="1"><input type="hidden" name="host" value="\${EscHTML(\$archHost)}"><input type="hidden" name="action" value="Archive"><table class="tableStnd" border cellpadding="3" cellspacing="1"><tr class="tableheader"><td align=center> Host</td>    <td align="center"> Uzytkownik </td>    <td align="center"> Rozmiar Kopii Bezpiecze艅stwa </td>\$strGood\$checkAllHosts</table></form><p>EOF$Lang{BackupPC_Archive2} = <<EOF;\${h1(qq{$Lang{BackupPC__Archive}})}Przyst臋puje do archiwizacji nast臋puj膮cych host贸w <ul>\$HostListStr</ul><form action="\$MyURL" method="post">\$hiddenStr<input type="hidden" name="action" value="Archive"><input type="hidden" name="host" value="\${EscHTML(\$archHost)}"><input type="hidden" name="type" value="2"><input type="hidden" value="0" name="archive_type"><table class="tableStnd" border cellspacing="1" cellpadding="3">\$paramStr<tr>    <td colspan=2><input type="submit" value="Start the Archive" name="ignore"></td></tr></form></table>EOF$Lang{BackupPC_Archive2_location} = <<EOF;<tr>    <td>Lokalizacja Archiwum</td>    <td><input type="text" value="\$ArchiveDest" name="archive_device"></td></tr>EOF$Lang{BackupPC_Archive2_compression} = <<EOF;<tr>    <td>Kompresja</td>    <td>    <input type="radio" value="0" name="compression" \$ArchiveCompNone>None<br>    <input type="radio" value="1" name="compression" \$ArchiveCompGzip>gzip<br>    <input type="radio" value="2" name="compression" \$ArchiveCompBzip2>bzip2    </td></tr>EOF$Lang{BackupPC_Archive2_parity} = <<EOF;<tr>    <td>Procent parytetowanych danych (0 = wy艂膮czone, 5 = typowe)</td>    <td><input type="numeric" value="\$ArchivePar" name="par"></td></tr>EOF$Lang{BackupPC_Archive2_split} = <<EOF;<tr>    <td>Rozdziel wyj艣cie na </td>    <td><input type="numeric" value="\$ArchiveSplit" name="splitsize">Megabytes</td></tr>EOF# -----------------------------------$Lang{Pool_Stat} = <<EOF;        <li>Pula to \${poolSize}GB zawiera \$info->{"\${name}FileCnt"} plik贸w            oraz \$info->{"\${name}DirCnt"} katalog贸w (zaj臋艂o \$poolTime),        <li>Hashowanie puli daje \$info->{"\${name}FileCntRep"} powtarzaj膮cych si臋            plik贸w z najd艂u偶szym 艂ancuchem \$info->{"\${name}FileRepMax"},        <li>Nocne czyszczenie usun臋艂o \$info->{"\${name}FileCntRm"} plik贸w o            rozmiarze \${poolRmSize}GB (zaj臋艂o \$poolTime),EOF# --------------------------------$Lang{BackupPC__Backup_Requested_on__host} = "BackupPC: Kopia rz膮dana na \$host";# --------------------------------$Lang{REPLY_FROM_SERVER} = <<EOF;\${h1(\$str)}<p>Odpowied藕 serwera to : \$reply<p>Wr贸膰 do <a href="\$MyURL?host=\$host">strony domowej \$host</a>.EOF# --------------------------------$Lang{BackupPC__Start_Backup_Confirm_on__host} = "BackupPC: Potwierdzony start kopii na \$host";# --------------------------------$Lang{Are_you_sure_start} = <<EOF;\${h1("Are you sure?")}<p>Zamierzasz zacza膰 kopie \$type na \$host.<form name="Confirm" action="\$MyURL" method="get"><input type="hidden" name="host" value="\$host"><input type="hidden" name="hostIP" value="\$ipAddr"><input type="hidden" name="doit" value="1"><input type="hidden" name="action" value="">Czy napewno chcesz tego ?<input type="button" value="\$buttonText"  onClick="document.Confirm.action.value='\$In{action}';           document.Confirm.submit();"><input type="submit" value="No" name="ignore"></form>EOF# --------------------------------$Lang{BackupPC__Stop_Backup_Confirm_on__host} = "BackupPC: Zatrzymaj potwierdzon膮 kopie na \$host";# --------------------------------$Lang{Are_you_sure_stop} = <<EOF;\${h1("Czy jeste艣 pewien ?")}<p>Zamierzasz zatrzyma膰 wykonywanie kopii na  \$host;<form name="Confirm" action="\$MyURL" method="get"><input type="hidden" name="host"   value="\$host"><input type="hidden" name="doit"   value="1"><input type="hidden" name="action" value="">Prosze nie zaczynac nowej kopii przez<input type="text" name="backoff" size="10" value="\$backoff"> godzin.<p>Czy naprawd臋 tego chcesz ?<input type="button" value="\$buttonText"  onClick="document.Confirm.action.value='\$In{action}';           document.Confirm.submit();"><input type="submit" value="No" name="ignore"></form>EOF# --------------------------------$Lang{Only_privileged_users_can_view_queues_} = "Tylko uprzywilejowani u偶ytwkonicy mog膮 przegl膮da膰 kolejki";# --------------------------------$Lang{Only_privileged_users_can_archive} = "ylko uprzywilejowani u偶ytwkonicy mog膮 archiwizowa膰.";# --------------------------------$Lang{BackupPC__Queue_Summary} = "BackupPC: Podsumowanie kolejki";# --------------------------------$Lang{Backup_Queue_Summary} = <<EOF;\${h1("Podsumowanie kolejki kopii bezpiecze艅stwa")}<br><br>\${h2("Podsumowanie kolejki uzytkownika")}<p>Nast臋puj膮cy u偶ytkonicy s膮 w kolejce:</p><table class="tableStnd" border cellspacing="1" cellpadding="3" width="80%"><tr class="tableheader"><td> Host </td>    <td> Czas do </td>    <td> U偶ytkownik </td></tr>\$strUser</table>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -