Changeset 1034

Show
Ignore:
Timestamp:
03/07/08 01:03:10 (7 months ago)
Author:
rats
Message:

* Fixed #1082: Packages list debian lenny
* Fixed #1086: Errors during installation
* Fixed: 'null' problem in strict perl
* Updated: Russian (thanks to Grundik)
* Updated: Update script; Update to RC3
* Updated: Update script; Update to RC4

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/CHANGELOG

    r1033 r1034  
    22~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
    33 
     42008-03-07 Benedikt Heintel 
     5        - DOCS: 
     6                * Fixed #1082: Packages list debian lenny 
     7        - ENGINE 
     8                * Fixed #1086: Errors during installation 
     9                * Fixed: 'null' problem in strict perl 
     10        - LANGUAGES: 
     11                * Updated: Russian (thanks to Grundik) 
     12        - SETUP: 
     13                * Updated: Update script; Update to RC3 
     14                * Updated: Update script; Update to RC4 
     15 
    4162008-03-04 Benedikt Heintel 
    517        - SETUP: 
    618                * Fixed #824: IMAP SSL Traffic not counted 
    719                * Fixed #1075: ispcp-update fails when upgrading from RC2 
    8                 * Updated: Update to RC3 
     20                * Updated: Update script; Update to RC3 
    921        - DISTS: 
    1022                * Fixed #1074: config Dists opensuse - wrong makefile 
     
    12242008-03-03 Benedikt Heintel 
    1325        - ENGINE: 
    14                 * Added: Engine support for BSB plattforms (different root group) 
     26                * Added: Engine support for BSD plattforms (different root group) 
    1527 
    16282008-03-02 Benedikt Heintel 
  • trunk/configs/dists/centos/ispcp.conf

    r1026 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/configs/dists/fedora/ispcp.conf

    r1026 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/configs/dists/freebsd/ispcp.conf

    r1033 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/configs/dists/gentoo/ispcp.conf

    r1026 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/configs/dists/openbsd/ispcp.conf

    r1033 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/configs/dists/opensuse/ispcp.conf

    r1026 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/configs/dists/redhat/ispcp.conf

    r1026 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/configs/dists/ubuntu/ispcp.conf

    r1026 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/configs/ispcp.conf

    r1026 r1034  
    99# 
    1010 
    11 BuildDate = 20080301 
     11BuildDate = 20080307 
    1212 
    1313Version = 1.0.0 RC4 OMEGA 
  • trunk/docs/Debian/INSTALL

    r1026 r1034  
    8181   /etc/apt/sources.list: 
    8282 
    83     # backports 
    84     deb     http://dotdeb.pimpmylinux.org/          sarge          all 
     83   # backports 
     84   deb     http://dotdeb.pimpmylinux.org/          sarge          all 
    8585 
    8686 
     
    146146        # apt-get install `cat ./docs/Debian/debian-packages-sarge` 
    147147   for Debian Etch please use: 
    148       # apt-get install `cat ./docs/Debian/debian-packages-etch` 
     148      # apt-get install `cat ./docs/Debian/debian-packages-etch` 
    149149   for Debian Lenny/Sid please use: 
    150       # apt-get install `cat ./docs/Debian/debian-packages-lenny` 
     150      # apt-get install `cat ./docs/Debian/debian-packages-lenny` 
    151151 
    152152   Make sure you have added the non-free into your /etc/apt/sources.list: 
     
    158158   /etc/apt/sources.list: 
    159159 
    160     # backports 
    161     deb     http://dotdeb.pimpmylinux.org/          sarge          all 
     160   # backports 
     161   deb     http://dotdeb.pimpmylinux.org/          sarge          all 
    162162 
    163163 
  • trunk/docs/Debian/debian-packages-lenny

    r905 r1034  
    1212courier-maildrop 
    1313courier-pop 
    14 chkrootkit 
    1514diff 
    1615dnsutils 
     
    1817gzip 
    1918iptables 
    20 libapache2-mod-cband 
    2119libapache2-mod-fastcgi 
    2220libberkeleydb-perl 
     
    4038libnet-smtp-server-perl 
    4139libperl5.8 
    42 libsasl2 
     40libsasl2-2 
    4341libsasl2-modules 
    4442libsnmp-session-perl 
     
    7270postgrey 
    7371procmail 
    74 proftpd-mysql 
     72proftpd 
    7573rkhunter 
    7674sasl2-bin 
  • trunk/engine/ispcp_common_methods.pl

    r1033 r1034  
    378378# @param        String  $fname  File Name 
    379379# @param        Mixed   $fuser  Linux User or UserID 
    380 # @param        Mixed   $fgroup Linux Group, GroupID or null 
     380# @param        Mixed   $fgroup Linux Group, GroupID or 'null' 
    381381# @param        int             $fperms Linux Permissions 
    382382# @return       int                             success (0) or error (-1) 
     
    423423                $gid = $fgroup; 
    424424        } 
    425         elsif ($fgroup eq null) { 
     425        elsif ($fgroup eq 'null') { 
    426426                $gid = $udata[3]; 
    427427        } 
     
    463463 
    464464    if (!defined($fname) || ($fname eq '')) { 
    465  
    466         push_el( 
    467                 \@main::el, 
    468                 'get_file()', 
    469                 "ERROR: Undefined input data, fname: |$fname| !" 
    470                ); 
    471  
    472         return (-1, ''); 
    473  
     465        push_el(\@main::el, 'get_file()', "ERROR: Undefined input data, fname: |$fname| !" ); 
     466        return 1; 
    474467    } 
    475468 
    476469    if (! -e $fname) { 
    477  
    478         push_el( 
    479                 \@main::el, 
    480                 'get_file()', 
    481                 "ERROR: File '$fname' does not exist !" 
    482                ); 
    483  
    484         return (-1, ''); 
    485  
     470        push_el(\@main::el, 'get_file()', "ERROR: File '$fname' does not exist !"); 
     471        return 1; 
    486472    } 
    487473 
     
    489475 
    490476    if (!defined($res)) { 
    491  
    492         push_el( 
    493                 \@main::el, 
    494                 'get_file()', 
    495                 "ERROR: Can't open '$fname' for reading !" 
    496                ); 
    497  
    498         return (-1, ''); 
    499  
     477        push_el(\@main::el, 'get_file()', "ERROR: Can't open '$fname' for reading: $!"); 
     478        return 1; 
    500479    } 
    501480 
     
    543522 
    544523    if (!defined($res)) { 
    545         push_el(\@main::el, 'store_file()', "ERROR: Can't open file |$fname| for writing !"); 
     524        push_el(\@main::el, 'store_file()', "ERROR: Can't open file |$fname| for writing: $!"); 
    546525        return -1; 
    547526    } 
     
    583562 
    584563    if (!defined($res)) { 
    585         push_el(\@main::el, 'save_file()', "ERROR: Can't open file |$fname| for writing !"); 
     564        push_el(\@main::el, 'save_file()', "ERROR: Can't open file |$fname| for writing: $!"); 
    586565        return -1; 
    587566 
     
    1016995        if (!defined($rs)) { 
    1017996 
    1018             push_el(\@main::el, 'gen_sys_rand_num()', "ERROR: Couldn't open the pseudo-random characters generator"); 
     997            push_el(\@main::el, 'gen_sys_rand_num()', "ERROR: Couldn't open the pseudo-random characters generator: $!"); 
    1019998 
    1020999            return (-1, ''); 
     
    18751854sub store_conf { 
    18761855 
     1856        if ( defined($_[0]) ) { 
     1857                $file_name = $_[0]; 
     1858        } 
     1859        else { 
     1860                $file_name = $main::cfg_file; 
     1861        } 
     1862 
    18771863    my ($key, $value, $fline, $rs) = (undef, undef, undef, undef); 
    1878  
    18791864    my $rwith = undef; 
    18801865 
    18811866    push_el(\@main::el, 'store_conf()', 'Starting...'); 
    18821867 
    1883     ($rs, $fline) = get_file($main::cfg_file); 
    1884  
     1868    ($rs, $fline) = get_file($file_name); 
    18851869    return 1 if ($rs != 0); 
    18861870 
    18871871    if (scalar(keys(%main::cfg_reg)) > 0) { 
    1888  
    18891872        while (($key, $value) = each %main::cfg_reg) { 
    1890  
    18911873            $rwith = "$key = $value\n"; 
    1892  
    18931874            $fline =~ s/^$key *= *([^\n\r]*)[\n\r]/$rwith/gim; 
    1894  
    1895         } 
    1896  
    1897     } 
    1898  
    1899     $rs = store_file($main::cfg_file, $fline, 'root', null, 0644); 
    1900  
     1875        } 
     1876    } 
     1877 
     1878    $rs = store_file($file_name, $fline, 'root', 'null', 0644); 
    19011879    return 1 if ($rs != 0); 
    19021880 
    1903     $rs = get_conf($main::cfg_file); 
    1904  
     1881    $rs = get_conf($file_name); 
    19051882    return 1 if ($rs != 0); 
    19061883 
    19071884    push_el(\@main::el, 'store_conf()', 'Ending...'); 
    1908  
    19091885    return 0; 
    1910  
    19111886} 
    19121887 
  • trunk/engine/setup/ispcp-setup-methods.pl

    r1033 r1034  
    14881488                                my $rdata = "$main::cfg{'AUTHLIB_CONF_DIR'}/authdaemonrc"; 
    14891489                                $rdata =~ s/authmodulelist="/authmodulelist="authuserdb /gi; 
    1490                                 $rs = save_file($main::cfg{'AUTHLIB_CONF_DIR'}/authdaemonrc, $rdata); 
     1490                                $rs = save_file("$main::cfg{'AUTHLIB_CONF_DIR'}/authdaemonrc", $rdata); 
    14911491                                return $rs if ($rs != 0); 
    14921492 
  • trunk/engine/setup/ispcp-update

    r1033 r1034  
    583583} 
    584584 
     585sub update_conf { 
     586        push_el(\@main::el, 'update_conf()', 'Starting...'); 
     587 
     588        my ($oldconf, $newconf) = ($_[0], $_[1]); 
     589 
     590        if (!defined($oldconf) || !defined($newconf)) { 
     591                push_el(\@main::el, 'update_conf()', 'ERROR: Undefined input data...'); 
     592                return 1; 
     593        } 
     594 
     595    my ($rs, $fline) = get_file($oldconf); 
     596    return 1 if ($rs != 0); 
     597    $rs = get_conf($newconf); 
     598    return 1 if ($rs != 0); 
     599 
     600    my @frows = split(/\n/, $fline); 
     601 
     602    my $i = undef; 
     603 
     604    for ($i = 0; $i < scalar(@frows); $i++) { 
     605            $frows[$i] = "$frows[$i]\n"; 
     606            if (($frows[$i] =~ /$main::cfg_re/)) { 
     607                    # Lines should not match variables that have to be changed 
     608                    if ($1 ne 'BuildDate' && $1 ne 'Version' && $1 ne 'CodeName') { 
     609                            # now overwrite new conf values with old if exists 
     610                            if (defined($main::cfg{$1})) { 
     611                                    $rs = set_conf_val($1, $2); 
     612                                    return $rs if ($rs != 0); 
     613                            } 
     614                    } 
     615            } 
     616    } 
     617 
     618        $rs = store_conf($newconf); 
     619    return 1 if ($rs != 0); 
     620 
     621        push_el(\@main::el, 'update_conf()', 'Ending...'); 
     622        return 0; 
     623} 
     624 
    585625sub patch_ispcp_rc2 { 
    586626        push_el(\@main::el, 'patch_ispcp_rc2()', 'Starting...'); 
     
    619659        } 
    620660 
    621         # copy variables 
    622         my $default_admin_address       = $main::cfg{'DEFAULT_ADMIN_ADDRESS'}; 
    623         my $server_hostname                     = $main::cfg{'SERVER_HOSTNAME'}; 
    624         my $base_server_ip                      = $main::cfg{'BASE_SERVER_IP'}; 
    625         my $base_vhost_name                     = $main::cfg{'BASE_SERVER_VHOST'}; 
    626         my $database_host                       = $main::cfg{'DATABASE_HOST'}; 
    627         my $database_name                       = $main::cfg{'DATABASE_NAME'}; 
    628         my $database_user                       = $main::cfg{'DATABASE_USER'}; 
    629         my $database_password           = $main::cfg{'DATABASE_PASSWORD'}; 
    630         my $mysql_prefix                        = $main::ua{'mysql_prefix'}; 
    631         my $mysql_prefix_type           = $main::ua{'mysql_prefix_type'}; 
    632         my $ftpd_conf_file                      = $main::cfg{'FTPD_CONF_FILE'}; 
    633         my $secondary_dns                       = $main::cfg{'SECONDARY_DNS'}; 
    634         my $mta_mailbox_min_uid         = $main::cfg{'MTA_MAILBOX_MIN_UID'}; 
    635         my $mta_mailbox_uid                     = $main::cfg{'MTA_MAILBOX_UID'}; 
    636         my $mta_mailbox_gid                     = $main::cfg{'MTA_MAILBOX_GID'}; 
    637         my $apache_suexec_min_uid       = $main::cfg{'APACHE_SUEXEC_MIN_UID'}; 
    638         my $apache_suexec_min_gid       = $main::cfg{'APACHE_SUEXEC_MIN_GID'}; 
    639  
    640661        # update ispcp.conf 
    641662        my $cfg_file = '/etc/ispcp/ispcp.conf'; 
    642         $rs = get_conf($cfg_file); 
     663        $rs = update_conf($cfg_file); 
    643664        if ($rs != 0) { 
    644665                exit_werror("failed to get /etc/ispcp/ispcp.conf!"); 
    645666        } 
    646667 
    647         # copy changed variables to new ispcp.conf 
    648         $rs = set_conf_val('DEFAULT_ADMIN_ADDRESS', $default_admin_address); 
    649         return $rs if ($rs != 0); 
    650         $rs = set_conf_val('SERVER_HOSTNAME', $server_hostname); 
    651         return $rs if ($rs != 0); 
    652         $rs = set_conf_val('BASE_SERVER_IP', $base_server_ip); 
    653         return $rs if ($rs != 0); 
    654         $rs = set_conf_val('BASE_SERVER_VHOST', $base_vhost_name); 
    655         return $rs if ($rs != 0); 
    656         $rs = set_conf_val('DATABASE_HOST', $database_host); 
    657         return $rs if ($rs != 0); 
    658         $rs = set_conf_val('DATABASE_NAME', $database_name); 
    659         return $rs if ($rs != 0); 
    660         $rs = set_conf_val('DATABASE_USER', $database_user); 
    661         return $rs if ($rs != 0); 
    662         $rs = set_conf_val('DATABASE_PASSWORD', $database_password); 
    663         return $rs if ($rs != 0); 
    664         $rs = set_conf_val('MYSQL_PREFIX', $mysql_prefix); 
    665         return $rs if ($rs != 0); 
    666         $rs = set_conf_val('MYSQL_PREFIX_TYPE', $mysql_prefix_type); 
    667         return $rs if ($rs != 0); 
    668         $rs = set_conf_val('FTPD_CONF_FILE', $ftpd_conf_file); 
    669         return $rs if ($rs != 0); 
    670         $rs = set_conf_val('SECONDARY_DNS', $secondary_dns); 
    671         return $rs if ($rs != 0); 
    672         $rs = set_conf_val('MTA_MAILBOX_MIN_UID', $mta_mailbox_min_uid); 
    673         return $rs if ($rs != 0); 
    674         $rs = set_conf_val('MTA_MAILBOX_UID', $mta_mailbox_uid); 
    675         return $rs if ($rs != 0); 
    676         $rs = set_conf_val('MTA_MAILBOX_GID', $mta_mailbox_gid); 
    677         return $rs if ($rs != 0); 
    678         $rs = set_conf_val('APACHE_SUEXEC_MIN_UID', $apache_suexec_min_uid); 
    679         return $rs if ($rs != 0); 
    680         $rs = set_conf_val('APACHE_SUEXEC_MIN_GID', $apache_suexec_min_gid); 
    681         return $rs if ($rs != 0); 
    682  
     668        # add new variables to new ispcp.conf 
    683669        $rs = set_conf_val('AWSTATS_ACTIVE', $main::ua{'awstats_on'}); 
    684         return $rs if ($rs != 0); 
    685670        $rs = set_conf_val('AWSTATS_MODE', $main::ua{'awstats_dyn'}); 
    686         return $rs if ($rs != 0); 
    687671        $rs = set_conf_val('PHP_VERSION', $main::ua{'php_version'}); 
    688         return $rs if ($rs != 0); 
    689  
    690         # store into /etc/ispcp/ispcp.conf 
     672 
     673        # save into /etc/ispcp/ispcp.conf 
    691674        $rs = store_conf(); 
    692675        if ($rs != 0) { 
     
    714697    print STDOUT "done\n"; 
    715698 
     699    # Rebuild system configs 
     700    print STDOUT "\tRebuilding system configurations..."; 
     701 
     702        $rs = rebuild_configs(); 
     703 
     704        if ($rs != 0) { 
     705        print STDOUT "failed!\n"; 
     706                exit_werror("Config Rebuild failed."); 
     707        } 
     708 
     709        print STDOUT "done\n"; 
     710 
     711        # Update PMA's config.inc.php 
     712        print STDOUT "\tUpdating PMA's config.inc.php..."; 
     713 
     714        $rs = update_pma(); 
     715 
     716        if ($rs != 0) { 
     717        print STDOUT "failed!\n"; 
     718                exit_werror("Updating PMA's config.inc.php failed."); 
     719        } 
     720 
     721        print STDOUT "\tdone\n"; 
     722 
     723        push_el(\@main::el, 'patch_ispcp_rc2()', 'Ending...'); 
     724        return 0; 
     725} 
     726 
     727sub patch_ispcp_rc3() { 
     728        push_el(\@main::el, 'patch_ispcp_rc3()', 'Ending...'); 
     729 
     730        print STDOUT "\tUpgrading system values ..."; 
     731 
     732        # update ispcp.conf 
     733        my $cfg_file = '/etc/ispcp/ispcp.conf'; 
     734        $rs = update_conf($cfg_file); 
     735        if ($rs != 0) { 
     736                exit_werror("failed to get /etc/ispcp/ispcp.conf!"); 
     737        } 
     738 
     739        # save into /etc/ispcp/ispcp.conf 
     740        $rs = store_conf(); 
     741        if ($rs != 0) { 
     742                print STDOUT "failed!\n"; 
     743                exit_werror("Storing new ispcp.conf failed!"); 
     744        } 
     745        print STDOUT "\tdone\n"; 
     746 
     747        # database upgrade 
     748    print STDOUT "\tUpgrading database structure..."; 
     749 
     750        ($rs, $rdata) = get_file("$main::cfg{'ROOT_DIR'}/engine/setup/ispcp1.0.0rc3-ispcp.sql"); 
     751        return $rs if ($rs != 0); 
     752 
     753        $rdata =~ s/\{DATABASE\}/$main::db_name/gi; 
     754        $rs = store_file("/tmp/db.sql", $rdata, $main::cfg{'ROOT_USER'}, $main::cfg{'ROOT_GROUP'}, 0644); 
     755        return $rs if ($rs != 0); 
     756 
     757        $rs = sys_command("mysql -u\'$main::db_user\' -p\'$main::db_pwd\' < /tmp/db.sql"); 
     758        if ($rs != 0) { 
     759        print STDOUT "failed!\n"; 
     760                exit_werror("SQL Update failed."); 
     761        } 
     762 
     763    print STDOUT "done\n"; 
     764 
    716765    # Rebuild system configs: 
    717766    print STDOUT "\tRebuilding system configurations..."; 
     
    725774 
    726775        print STDOUT "done\n"; 
    727  
    728         # Update PMA's config.inc.php 
    729         print STDOUT "\tUpdating PMA's config.inc.php..."; 
    730  
    731         $rs = update_pma(); 
    732  
    733         if ($rs != 0) { 
    734         print STDOUT "failed!\n"; 
    735                 exit_werror("Updating PMA's config.inc.php failed."); 
    736         } 
    737  
    738         print STDOUT "\tdone\n"; 
    739  
    740         push_el(\@main::el, 'patch_ispcp_rc2()', 'Ending...'); 
    741         return 0; 
    742 } 
    743  
    744 sub patch_ispcp_rc3() { 
    745         push_el(\@main::el, 'patch_ispcp_rc3()', 'Ending...'); 
    746  
    747         # database upgrade 
    748     print STDOUT "\tUpgrading database structure..."; 
    749  
    750         ($rs, $rdata) = get_file("$main::cfg{'ROOT_DIR'}/engine/setup/ispcp1.0.0rc3-ispcp.sql"); 
    751         return $rs if ($rs != 0); 
    752  
    753         $rdata =~ s/\{DATABASE\}/$main::db_name/gi; 
    754         $rs = store_file("/tmp/db.sql", $rdata, $main::cfg{'ROOT_USER'}, $main::cfg{'ROOT_GROUP'}, 0644); 
    755         return $rs if ($rs != 0); 
    756  
    757         $rs = sys_command("mysql -u\'$main::db_user\' -p\'$main::db_pwd\' < /tmp/db.sql"); 
    758         if ($rs != 0) { 
    759         print STDOUT "failed!\n"; 
    760                 exit_werror("SQL Update failed."); 
    761         } 
    762  
    763     print STDOUT "done\n"; 
    764776 
    765777        push_el(\@main::el, 'patch_ispcp_rc3()', 'Ending...'); 
  • trunk/engine/setup/ispcp1.0.0rc2-ispcp.sql

    r1026 r1034  
    2121'PORT_POLICYD-WEIGHT', '12525;tcp;POLICYD-WEIGHT;1;1' 
    2222),( 
    23 'DATABASE_REVISION', '3
     23'DATABASE_REVISION', '1
    2424); 
    2525 
  • trunk/engine/setup/ispcp1.0.0rc3-ispcp.sql

    r1033 r1034  
    1313ALTER DATABASE `ispcp` DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci; 
    1414 
     15-- BEGIN: Regenerate config files: 
     16UPDATE `domain` SET `domain_status` = 'change' WHERE `domain_status` = 'ok'; 
     17UPDATE `subdomain` SET `subdomain_status` = 'change' WHERE `subdomain_status` = 'ok'; 
     18UPDATE `domain_aliasses` SET `alias_status` = 'change' WHERE `alias_status` = 'ok'; 
     19UPDATE `mail_users` SET `status` = 'change' WHERE `status` = 'ok'; 
     20-- END: Regenerate config files 
     21 
    1522COMMIT; 
  • trunk/language-files/ru_RU.po

    r1026 r1034  
    11# 
    2 #, fuzzy 
    32msgid "" 
    43msgstr "" 
     
    65"Report-Msgid-Bugs-To: \n" 
    76"POT-Creation-Date: 2008-03-01 18:49+0100\n" 
    8 "PO-Revision-Date: 2007-07-06 16:03-0500\n" 
    9 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" 
     7"PO-Revision-Date: 2008-03-06 00:51+0300\n" 
     8"Last-Translator: Grundik <grundik@grundik.spb.ru>\n" 
    109"Language-Team: Russian <ru_RU@li.org>\n" 
    1110"MIME-Version: 1.0\n" 
     
    2221msgstr "Russian" 
    2322 
    24 #, fuzzy 
    2523msgid "ispCP Omega a Virtual Hosting Control System" 
    2624msgstr "ispCP - Виртуальная Система Управления Хостингом" 
    2725 
    2826msgid "Administrator login" 
    29 msgstr "
     27msgstr "Администраторативный входа
    3028 
    3129msgid "Login" 
     
    3634 
    3735msgid "Password" 
    38 msgstr "
     36msgstr "Пароль
    3937 
    4038msgid "Please enter your login information" 
     
    4240 
    4341msgid "Secure Connection" 
    44 msgstr "
     42msgstr "Безопасное соединение
    4543 
    4644msgid "Normal Connection" 
    47 msgstr "
     45msgstr "Обычное соединение
    4846 
    4947msgid "Lost password" 
    50 msgstr "
     48msgstr "Восстановление пароля
    5149 
    5250msgid "Retrieving lost passwords is currently not possible" 
    53 msgstr "
     51msgstr "Восстановление паролей недоступно
    5452 
    5553msgid "ispCP - Virtual Hosting Control System" 
     
    5755 
    5856msgid "Password sent" 
    59 msgstr "
     57msgstr "Пароль выслан
    6058 
    6159msgid "ERROR: Password was not sent" 
    62 msgstr "
     60msgstr "Ошибка: пароль не выслан
    6361 
    6462msgid "The password was requested" 
    65 msgstr "
     63msgstr "Пароль запрошен
    6664 
    6765msgid "Back" 
     
    8078msgstr "Секретный код" 
    8179 
    82 msgid "" 
    83 "(To avoid abuse, we ask you to write the combination of letters on the above " 
    84 "picture into the field \"Security code\")" 
    85 msgstr "" 
     80msgid "(To avoid abuse, we ask you to write the combination of letters on the above picture into the field \"Security code\")" 
     81msgstr "(Для предотвращения доступа злоумышлеников, мы просим вас указать текст  на картинке в поле \"Секретный код\")" 
    8682 
    8783msgid "Request password" 
    88 msgstr "
     84msgstr "Запросить пароль
    8985 
    9086msgid "ispCP - Admin/Manage users/Add User" 
    91 msgstr "
     87msgstr "ispCP - Администрирование/Управление пользователями/Добавить пользователя
    9288 
    9389msgid "Administrator" 
     
    9591 
    9692msgid "Incorrect username length or syntax!" 
    97 msgstr "
     93msgstr "Некорректное имя пользователя!
    9894 
    9995msgid "Incorrect password length or syntax!" 
    100 msgstr "
     96msgstr "Некорректный пароль!
    10197 
    10298msgid "Entered passwords do not match!" 
    103 msgstr "
     99msgstr "Пароли не совпадают!
    104100 
    105101msgid "Incorrect email length or syntax!" 
    106 msgstr "
     102msgstr "Некорректный email!
    107103 
    108104msgid "This user name already exist!" 
    109 msgstr "
     105msgstr "Такой пользователь уже есть!
    110106 
    111107msgid "Empty data or wrong field!" 
     
    113109 
    114110msgid "Passwords don't match!" 
    115 msgstr "
     111msgstr "Пароли не совпадают!
    116112 
    117113msgid "Add admin" 
     
    119115 
    120116msgid "Core data" 
    121 msgstr "Данные ядра
     117msgstr "Основные сведения
    122118 
    123119msgid "Repeat password" 
    124 msgstr "
     120msgstr "Повторите пароль
    125121 
    126122msgid "Email" 
     
    134130 
    135131msgid "Last name" 
    136 msgstr "
     132msgstr "Фамилия
    137133 
    138134msgid "Gender" 
    139 msgstr "" 
    140  
    141 #, fuzzy 
     135msgstr "Пол" 
     136 
    142137msgid "Male" 
    143 msgstr "e-mail" 
    144  
    145 #, fuzzy 
     138msgstr "Мужской" 
     139 
    146140msgid "Female" 
    147 msgstr "Вебмыло
     141msgstr "Женский
    148142 
    149143msgid "Unknown" 
     
    178172 
    179173msgid "ispCP - Admin/Manage users/Add reseller" 
    180 msgstr "
     174msgstr "ispCP - Администрирование/Управление пользователями/Добавить дилера
    181175 
    182176msgid "Reseller IP list is empty!" 
    183 msgstr "
     177msgstr "Пустой список IP для дилера!
    184178 
    185179msgid "No." 
     
    190184 
    191185msgid "Label" 
    192 msgstr "
     186msgstr "Метка
    193187 
    194188msgid "Number" 
     
    196190 
    197191msgid "Reseller" 
    198 msgstr "" 
    199  
    200 #, fuzzy 
     192msgstr "Дилер" 
     193 
    201194msgid "Incorrect email syntax!" 
    202 msgstr "Incorrect <i>max e-mail</i> count or syntax!" 
    203  
    204 #, fuzzy 
     195msgstr "Некорректный email!" 
     196 
    205197msgid "Incorrect domains limit!" 
    206 msgstr "Incorrect <i>domain name</i> syntax" 
    207  
    208 #, fuzzy 
     198msgstr "Некорректный лимит доменов!" 
     199 
    209200msgid "Incorrect subdomains limit!" 
    210 msgstr "Incorrect <i>max subdomain</i> count or syntax!" 
    211  
    212 #, fuzzy 
     201msgstr "Некорректный лимит поддоменов!" 
     202 
    213203msgid "Incorrect aliases limit!" 
    214 msgstr "Incorrect <i>max alias</i> count or syntax!" 
    215  
    216 #, fuzzy 
     204msgstr "Некорректный лимит псевдонимов доменов!" 
     205 
    217206msgid "Incorrect FTP accounts limit!" 
    218 msgstr "Incorrect <i>max FTP</i> count or syntax!" 
    219  
    220 #, fuzzy 
     207msgstr "Некорректный лимит FTP аккаунтов!" 
     208 
    221209msgid "Incorrect mail accounts limit!" 
    222 msgstr "Incorrect <i>max e-mail</i> count or syntax!" 
    223  
    224 #, fuzzy 
     210msgstr "Некорректный лимит почтовых аккаунтов!" 
     211 
    225212msgid "Incorrect SQL databases limit!" 
    226 msgstr "Incorrect <i>max mySQL databases</i> count or syntax!" 
    227  
    228 #, fuzzy 
     213msgstr "Некорректный лимит SQL баз!" 
     214 
    229215msgid "Incorrect SQL users limit!" 
    230 msgstr "Incorrect <i>max mySQL users</i> count or syntax!" 
    231  
    232 #, fuzzy 
     216msgstr "Некорректный лимит SQL пользователей!" 
     217 
    233218msgid "Incorrect traffic limit!" 
    234 msgstr "Incorrect <i>max traffic</i> amount or syntax!" 
    235  
    236 #, fuzzy 
     219msgstr "Некорректный лимит трафика!" 
     220 
    237221msgid "Incorrect disk quota limit!" 
    238 msgstr "Incorrect <i>max disk</i> amount or syntax!" 
     222msgstr "Некорректный лимит дискового пространства!" 
    239223 
    240224msgid "You must assign at least one IP number for a reseller!" 
    241 msgstr "Вы должны дать хотя-бы один IP адрес для реселейра" 
     225msgstr "Вы должны дать хотя-бы один IP адрес для дилера" 
    242226 
    243227msgid "Add reseller" 
    244 msgstr "Добавить реселлера" 
    245  
    246 #, fuzzy 
     228msgstr "Добавить дилера" 
     229 
    247230msgid "Domains limit<br><i>(0 unlimited)</i>" 
    248 msgstr "Винтовой лимит [MB]<br><i>(0 - не ограничено)</i>" 
    249  
    250 #, fuzzy 
     231msgstr "Лимит доменов<br><i>(0 - не ограничено)</i>" 
     232 
    251233msgid "Subdomains limit<br><i>(-1 disabled, 0 unlimited)</i>" 
    252 msgstr "Винтовой лимит [MB]<br><i>(0 - не ограничено)</i>" 
    253  
    254 #, fuzzy 
     234msgstr "Лимит поддоменов<br><i>(-1 отключены, 0 - не ограничено)</i>" 
     235 
    255236msgid "Aliases limit<br><i>(-1 disabled, 0 unlimited)</i>" 
    256 msgstr "Винтовой лимит [MB]<br><i>(0 - не ограничено)</i>" 
     237msgstr "Лимит псевдонимов<br><i>(-1 отключены, 0 - не ограничено)</i>" 
    257238 
    258239msgid "Mail accounts limit<br><i>(-1 disabled, 0 unlimited)</i>" 
    259 msgstr "
     240msgstr "Лимит почтовых аккаунтов<br><i>(-1 отключены, 0 - не ограничено)</i>
    260241 
    261242msgid "FTP accounts limit<br><i>(-1 disabled, 0 unlimited)</i>" 
    262 msgstr "
     243msgstr "Лимит FTP аккаунтов<br><i>(-1 отключены, 0 - не ограничено)</i>
    263244 
    264245msgid "SQL databases limit<br><i>(-1 disabled, 0 unlimited)</i>" 
    265 msgstr "
     246msgstr "Лимит SQL баз<br><i>(-1 отключены, 0 - не ограничено)</i>
    266247 
    267248msgid "SQL users limit<br><i>(-1 disabled, 0 unlimited)</i>" 
    268 msgstr "
     249msgstr "Лимит SQL пользователей<br><i>(-1 отключены, 0 - не ограничено)</i>
    269250 
    270251msgid "Traffic limit [MB]<br><i>(0 unlimited)</i>" 
    271 msgstr "
     252msgstr "Лимит трафика<br><i>(0 - не ограничено)</i>
    272253 
    273254msgid "Disk limit [MB]<br><i>(0 unlimited)</i>" 
    274 msgstr "Винтовой лимит [MB]<br><i>(0 - не ограничено)</i>" 
     255msgstr "Лимит дискового пространства [Мб]<br><i>(0 - не ограничено)</i>" 
    275256 
    276257msgid "PHP" 
     
    296277 
    297278msgid "Protected areas" 
    298 msgstr "
     279msgstr "Защищенные области
    299280 
    300281msgid "Webmail" 
     
    311292 
    312293msgid "Logo upload" 
    313 msgstr "Загрузить логотоп" 
     294msgstr "Загрузить логотип" 
    314295 
    315296msgid "yes" 
     
    320301 
    321302msgid "Reseller IPs" 
    322 msgstr "
     303msgstr "IP дилера
    323304 
    324305msgid "Customer ID" 
     
    326307 
    327308msgid "ispCP - Admin/Admin Log" 
    328 msgstr "
     309msgstr "ispCP - Администрирование/Журнал
    329310 
    330311msgid "Log is empty!" 
    331 msgstr "Лог пуст!" 
     312msgstr "Журнал пуст!" 
    332313 
    333314#, php-format 
    334315msgid "%s deleted the full admin log!" 
    335 msgstr "
     316msgstr "%s удалил весь журнал!
    336317 
    337318#, php-format 
    338319msgid "%s deleted the admin log older than two weeks!" 
    339 msgstr "
     320msgstr "%s очистил журнал от записей старше двух недель!
    340321 
    341322#, php-format 
    342323msgid "%s deleted the admin log older than one month!" 
    343 msgstr "
     324msgstr "%s очистил журнал от записей старше месяца!
    344325 
    345326#, php-format 
    346327msgid "%s deleted the admin log older than three months!" 
    347 msgstr "
     328msgstr "%s очистил журнал от записей старше трех месяцев!
    348329 
    349330#, php-format 
    350331msgid "%s deleted the admin log older than six months!" 
    351 msgstr "
     332msgstr "%s очистил журнал от записей старше шесть месяцев!
    352333 
    353334#, php-format 
    354335msgid "%s deleted the admin log older than one year!" 
    355 msgstr "
     336msgstr "%s очистил журнал от записей старше года!