Ребят помогите установит пакеты. Проблема описана в самом низу не могу найти а то что скачивается выбивает ошибки
Отличный howto. Спасибо !
От меня незначительные добавления к мануалу:
глава 10
следующие две строки устарели
wget http://launchpadlibrarian.net/11564361/dcc-server_1.3.42-5_i386.deb
wget http://launchpadlibrarian.net/11564359/dcc-common_1.3.42-5_i386.deb
можно сходить на http://www.dcc-servers.net/dcc/ выбрать там актуальныю для вас версию пакета, скачать и затем выполнить
dpkg -i dcc-common_ваша_версия.deb
dpkg -i dcc-server_ваша_версия.deb
обратите внимание на файл /etc/default/spamassassin
должно быть:
[.....]
ENABLED=1
[.....]
строка
sa-update —no-gpg
правильно написать так:
sa-update --nogpg
а если это первый запуск,то лучше вот так:
sa-update --channel updates.spamassassin.org --nogpg
по поводу автоматического обновления правил:
команду в cron я бы указал так:
sa-update --nogpg && /etc/init.d/spamassassin restart
т.к. правила нужно не только обновить, но и перечитать
Дельные замечания, жалко, что это только второе за все время существования данной темы!
Спасибо, исправим, давно собирался это сделать еще ряд замечаний войдут в новую редакцию.
Ребят помогите найти пакеты ато проба установит эти пакеты дает ошибки
dpkg -i dcc-common_1.3.42-5_i386.deb
Выбор ранее не выбранного пакета dcc-common.
(Чтение базы данных... на данный момент установлено 49081 файлов и каталогов.)
Распаковывается пакет dcc-common (из файла dcc-common_1.3.42-5_i386.deb)...
Настраивается пакет dcc-common (1.3.42-5) ...
Adding system group: dcc.
Adding group `dcc' (GID 114) ...
Done.
Adding system user: dcc.
Adding system user `dcc' (UID 105) ...
Adding new user `dcc' (UID 105) with group `dcc' ...
Not creating home directory `/var/lib/dcc'.
read: 65: Illegal option -n
Warning, no random device found, password might be insecure
read: 65: Illegal option -n
Warning, no random device found, password might be insecure
Updating DCC map.
Пользователь решил продолжить мысль 17 Января 2011, 14:52:10:
Инструкция устарела и в вот этом месте
11 Предупреждения при превышении квоты
Для того чтобы получать сообщения об превышении квоты почтовых ящиков пользователей сделаем так:
cd /usr/local/sbin/
wget
http://puuhis.net/vhcs/quota.txtmv quota.txt quota_notify
chmod 755 quota_notify
Файла по этому месту нету. поэтому вот он как выглядит целиком (замените yourdomain.tld вашим)
nano /usr/local/sbin/quota_notify
#!/usr/bin/perl -w
# Author <jps@tntmax.com>
#
# This script assumes that virtual_mailbox_base in defined
# in postfix's main.cf file. This directory is assumed to contain
# directories which themselves contain your virtual user's maildirs.
# For example:
#
# -----------/
# |
# |
# home/vmail/domains/
# | |
# | |
# example.com/ foo.com/
# |
# |
# -----------------
# | | |
# | | |
# user1/ user2/ user3/
# |
# |
# maildirsize
#
use strict;
my $POSTFIX_CF = "/etc/postfix/main.cf";
my $MAILPROG = "/usr/sbin/sendmail -t";
my $WARNPERCENT = 80;
my @POSTMASTERS = ('postmaster@yourdomain.tld');
my $CONAME = 'My Company';
my $COADDR = 'postmaster@yourdomain.tld';
my $SUADDR = 'postmaster@yourdomain.tld';
my $MAIL_REPORT = 1;
my $MAIL_WARNING = 1;
#get virtual mailbox base from postfix config
open(PCF, "< $POSTFIX_CF") or die $!;
my $mboxBase;
while (<PCF>) {
next unless /virtual_mailbox_base\s*=\s*(.*)\s*/;
$mboxBase = $1;
}
close(PCF);
#assume one level of subdirectories for domain names
my @domains;
opendir(DIR, $mboxBase) or die $!;
while (defined(my $name = readdir(DIR))) {
next if $name =~ /^\.\.?$/; #skip '.' and '..'
next unless (-d "$mboxBase/$name");
push(@domains, $name);
}
closedir(DIR);
#iterate through domains for username/maildirsize files
my @users;
chdir($mboxBase);
foreach my $domain (@domains) {
opendir(DIR, $domain) or die $!;
while (defined(my $name = readdir(DIR))) {
next if $name =~ /^\.\.?$/; #skip '.' and '..'
next unless (-d "$domain/$name");
push(@users, {"$name\@$domain" => "$mboxBase/$domain/$name"});
}
}
closedir(DIR);
#get user quotas and percent used
my (%lusers, $report);
foreach my $href (@users) {
foreach my $user (keys %$href) {
my $quotafile = "$href->{$user}/maildirsize";
next unless (-f $quotafile);
open(QF, "< $quotafile") or die $!;
my ($firstln, $quota, $used);
while (<QF>) {
my $line = $_;
if (! $firstln) {
$firstln = 1;
die "Error: corrupt quotafile $quotafile"
unless ($line =~ /^(\d+)S/);
$quota = $1;
last if (! $quota);
next;
}
die "Error: corrupt quotafile $quotafile"
unless ($line =~ /\s*(-?\d+)/);
$used += $1;
}
close(QF);
next if (! $used);
my $percent = int($used / $quota * 100);
$lusers{$user} = $percent unless not $percent;
}
}
#send a report to the postmasters
if ($MAIL_REPORT) {
open(MAIL, "| $MAILPROG");
select(MAIL);
map {print "To: $_\n"} @POSTMASTERS;
print "From: $COADDR\n";
print "Subject: Daily Quota Report.\n";
print "DAILY QUOTA REPORT:\n\n";
print "----------------------------------------------\n";
print "| % USAGE | ACCOUNT NAME |\n";
print "----------------------------------------------\n";
foreach my $luser ( sort { $lusers{$b} <=> $lusers{$a} } keys %lusers ) {
printf("| %3d | %32s |\n", $lusers{$luser}, $luser);
print "---------------------------------------------\n";
}
print "\n--\n";
print "$CONAME\n";
close(MAIL);
}
#email a warning to people over quota
if ($MAIL_WARNING) {
foreach my $luser (keys (%lusers)) {
next unless $lusers{$luser} >= $WARNPERCENT; # skip those under quota
open(MAIL, "| $MAILPROG");
select(MAIL);
print "To: $luser\n";
map {print "BCC: $_\n"} @POSTMASTERS;
print "From: $SUADDR\n";
print "Subject: WARNING: Your mailbox is $lusers{$luser}% full.\n";
print "Reply-to: $SUADDR\n";
print "Your mailbox: $luser is $lusers{$luser}% full.\n\n";
print "Once your e-mail box has exceeded your monthly storage quota\n";
print "your monthly billing will be automatically adjusted.\n";
print "Please consider deleting e-mail and emptying your trash folder to clear some space.\n\n";
print "Contact <$SUADDR> for further assistance.\n\n";
print "Thank You.\n\n";
print "--\n";
print "$CONAME\n";
close(MAIL);
}
}
Меняем ему права
chmod 755 quota_notify