/l3/users/andrew/nt-lnet/linux1.linux.nt/user :1 :2 :3 :4 :5 :6 :7 :8 :9 :10 :11 :12 :13 :14 :15 :16 :17 :18 :19 :20 :21 :22 :23 :24 :25 :26 :27 |
|
#apt-cache search milter
amavisd-new - Interface between MTA and virus scanner/content filters amavisd-new-milter - Interface between sendmail-milter and amavisd-new clamav-base - base package for clamav, an anti-virus utility for Unix clamav-milter - antivirus scanner for sendmail dcc-milter - Distributed Checksum Clearinghouse - sendmail milter plugin libbobcat1 - run-time (shared) Bobcat library libbobcat1-dev - headers and documentation for the Bobcat library libmail-milter-perl - Perl extension modules for mail filtering via milter libmilter-dev - Sendmail Mail Filter API (Milter) libmilter0 - Sendmail Mail Filter API (Milter) libmilter0-dbg - Sendmail Mail Filter API (Milter) libsendmail-milter-perl - Interface to Sendmail's Mail Filter API libsendmail-pmilter-perl - A Perl implementation of the Sendmail Milter protocol sendmail-doc - powerful, efficient, and scalable Mail Transport Agent spamass-milter - milter for filtering mail through spamassassin spfmilter - A simple milter for performing SPF checks |
#apt-get install libmail-milter-perl
Чтение списков пакетов... Готово Построение дерева зависимостей... Готово Будут установлены следующие дополнительные пакеты: libsendmail-milter-perl НОВЫЕ пакеты, которые будут установлены: libmail-milter-perl libsendmail-milter-perl обновлено 0, установлено 2 новых пакетов, для удаления отмечено 0 пакетов, и 139 пакетов не обновлено. Необходимо скачать 155kБ архивов. После распаковки объем занятого дискового пространства возрастёт на 557kB. Хотите продолжить [Д/н]? Получено:1 http://debian.org.ua etch/main libsendmail-milter-perl 0.18-7 [83,2kB] Получено:2 http://debian.org.ua etch/main libmail-milter-perl 0.06-1 [72,0kB] Получено 155kB за 4s (36,6kB/c) Выбор ранее не выбранного пакета libsendmail-milter-perl. (Чтение базы данных... на данный момент установлено 87790 файлов и каталогов.) Распаковывается пакет libsendmail-milter-perl (из файла .../libsendmail-milter-perl_0.18-7_i386.deb)... Выбор ранее не выбранного пакета libmail-milter-perl. Распаковывается пакет libmail-milter-perl (из файла .../libmail-milter-perl_0.06-1_all.deb)... Настраивается пакет libsendmail-milter-perl (0.18-7) ... Настраивается пакет libmail-milter-perl (0.06-1) ... |
#cat /var/log/messages
Jan 12 11:36:37 tex kernel: Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2 Jan 12 11:36:37 tex kernel: ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Jan 12 11:36:37 tex kernel: usbcore: registered new driver usbfs Jan 12 11:36:37 tex kernel: usbcore: registered new driver hub Jan 12 11:36:37 tex kernel: USB Universal Host Controller Interface driver v3.0 Jan 12 11:36:37 tex kernel: e1000: 0000:01:01.0: e1000_probe: (PCI:33MHz:32-bit) 00:07:e9:3c:2c:38 Jan 12 11:36:37 tex kernel: e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection Jan 12 11:36:37 tex kernel: SCSI subsystem initialized Jan 12 11:36:37 tex kernel: ICH5: IDE controller at PCI slot 0000:00:1f.1 Jan 12 11:36:37 tex kernel: PCI: Enabling device 0000:00:1f.1 (0005 -> 0007) ... Jan 13 20:46:03 tex kernel: 0MB HIGHMEM available. Jan 13 20:46:03 tex kernel: 1007MB LOWMEM available. Jan 13 20:46:03 tex kernel: found SMP MP-table at 000ff780 Jan 13 20:46:03 tex kernel: DMI 2.3 present. Jan 13 20:46:03 tex kernel: ACPI: PM-Timer IO Port: 0x408 Jan 13 20:46:03 tex kernel: ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) Jan 13 20:46:03 tex kernel: Processor #0 15:2 APIC version 20 Jan 13 20:46:03 tex kernel: ACPI: LAPIC (acpi_id[0x02] lapic_id[0x81] disabled) Jan 13 20:46:03 tex kernel: ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1]) Jan 13 20:46:03 tex kernel: ACPI: LAPIC_NMI (acpi_id[0x02] dfl dfl lint[0x1]) |
#tail -f /var/log/mail.log
Oct 27 00:30:52 host1 mimedefang.pl[12632]: MDLOG,k9QLUjUu012722,mail_in,,,<user@host1.wdw.linux.nt>,<user@host1.andrew.linux.nt>,re Oct 27 00:30:52 host1 mimedefang.pl[12632]: filter: k9QLUjUu012722: drop_with_warning=1 Oct 27 00:30:52 host1 mimedefang-multiplexor[12628]: stats 1161898252.192 EndFilter slave=0 nslaves=1 nbusy=0 numRequests=1 Oct 27 00:30:52 host1 sm-mta[12722]: k9QLUjUu012722: Milter delete (noop): header: X-Spam-Score Oct 27 00:30:52 host1 sm-mta[12722]: k9QLUjUu012722: Milter change: header Content-Type: from multipart/mixed; boundary="=-xh4UO9LpSI8Fxk1ut2YH" to multipart/mixed; boundary="=-xh4UO9LpSI8Fxk1ut2YH" Oct 27 00:30:52 host1 sm-mta[12722]: k9QLUjUu012722: Milter change: header MIME-Version: from 1.0 to 1.0 Oct 27 00:30:52 host1 sm-mta[12722]: k9QLUjUu012722: Milter message: body replaced Oct 27 00:30:52 host1 sm-mta[12722]: k9QLUjUu012722: Milter add: header: X-Scanned-By: MIMEDefang 2.57 on 192.168.17.2 Oct 27 00:30:52 host1 mimedefang[12663]: k9QLUjUu012722: Filter time is 5088ms Oct 27 00:30:52 host1 sm-mta[12759]: k9QLUjUu012722: to=<user@host1.andrew.linux.nt>, delay=00:00:05, xdelay=00:00:00, mailer=local, pri=31715, dsn=2.0.0, stat=Sent ... Oct 27 00:34:48 host1 mimedefang.pl[12632]: MDLOG,k9QLYiSY014035,mail_in,,,<user@host1.wdw.linux.nt>,<user@host1.andrew.linux.nt>,fg Oct 27 00:34:48 host1 mimedefang.pl[12632]: filter: k9QLYiSY014035: drop_with_warning=1 Oct 27 00:34:48 host1 mimedefang-multiplexor[12628]: stats 1161898488.296 EndFilter slave=0 nslaves=1 nbusy=0 numRequests=2 Oct 27 00:34:48 host1 mimedefang[12663]: k9QLYiSY014035: Filter time is 3164ms Oct 27 00:34:48 host1 sm-mta[14035]: k9QLYiSY014035: Milter delete (noop): header: X-Spam-Score Oct 27 00:34:48 host1 sm-mta[14035]: k9QLYiSY014035: Milter change: header Content-Type: from multipart/mixed; boundary="=-9192bybEGhb/6vTRAIIz" to multipart/mixed; boundary="=-9192bybEGhb/6vTRAIIz" Oct 27 00:34:48 host1 sm-mta[14035]: k9QLYiSY014035: Milter change: header MIME-Version: from 1.0 to 1.0 Oct 27 00:34:48 host1 sm-mta[14035]: k9QLYiSY014035: Milter message: body replaced Oct 27 00:34:48 host1 sm-mta[14035]: k9QLYiSY014035: Milter add: header: X-Scanned-By: MIMEDefang 2.57 on 192.168.17.2 Oct 27 00:34:48 host1 sm-mta[14064]: k9QLYiSY014035: to=<user@host1.andrew.linux.nt>, delay=00:00:03, xdelay=00:00:00, mailer=local, pri=31715, dsn=2.0.0, stat=Sent |
#cd /usr/src/mimedefang-2.57/
|
#make -h
ÐÑполÑзование: make [ÐÐЦÐÐ Ignored for compatibility. -B, --always-make Unconditionally make all targets. -C DIRECTORY, --directory=DIRECTORY Change to DIRECTORY before doing anything. -d Print lots of debugging information. --debug[=FLAGS] Print various types of debugging information. -e, --environment-overrides Environment variables override makefiles. -f FILE, --file=FILE, --makefile=FILE Read FILE as a makefile. ... Turns off -k. -t, --touch Touch targets instead of remaking them. -v, --version Print the version number of make and exit. -w, --print-directory Print the current directory. --no-print-directory Turn off -w, even if it was turned on implicitly. -W FILE, --what-if=FILE, --new-file=FILE, --assume-new=FILE Consider FILE to be infinitely new. --warn-undefined-variables Warn when an undefined variable is referenced. This program built for i486-pc-linux-gnu Report bugs to <bug-make@gnu.org> |
#make mrproper
make: *** Нет правила для сборки цели `mrproper'. Останов. |
#make distclean
rm -f *~ *.o mimedefang mimedefang-multiplexor md-mx-ctrl rm -f config.log config.status Makefile config.cache config.h mimedefang.pl \ examples/init-script \ mimedefang-filter.5 mimedefang-multiplexor.8 mimedefang-protocol.7 \ mimedefang-notify.7 \ mimedefang.8 mimedefang.pl.8 md-mx-ctrl.8 watch-mimedefang \ redhat/mimedefang-init redhat/mimedefang-spec redhat/mimedefang-sysconfig |
#./configure --help
`configure' configures this package to adapt to many kinds of systems. Usage: ./configure [OPTION]... [VAR=VALUE]... To assign environment variables (e.g., CC, CFLAGS...), specify them as VAR=VALUE. See below for descriptions of some of the useful variables. Defaults for the options are specified in brackets. Configuration: -h, --help display this help and exit --help=short display options specific to this package --help=recursive display the short help of all the included packages -V, --version display version information and exit ... Some influential environment variables: CC C compiler command CFLAGS C compiler flags LDFLAGS linker flags, e.g. -L<lib dir> if you have libraries in a nonstandard directory <lib dir> CPPFLAGS C/C++ preprocessor flags, e.g. -I<include dir> if you have headers in a nonstandard directory <include dir> CPP C preprocessor Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. |
#./configure --with-quarantinedir=/var/spool/MD-Quarantine
checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for ar... ar ... NVCC 'nvcc' NO (not found) CLAMD 'clamd' NO (not found) File::Scan NO TROPHIE 'trophie' NO (not found) Found Mail::SpamAssassin. You may use spam_assassin_* functions Did not find Anomy::HTMLCleaner. Do not use anomy_clean_html() Found HTML::Parser. You may use append_html_boilerplate() Note: SpamAssassin, File::Scan, HTML::Parser and Anomy::HTMLCleaner are detected at run-time, so if you install or remove any of those modules, you do not need to re-run ./configure and make a new mimedefang.pl. |
#perl -MCPAN -e shell
Module Bryar::DataSource::FlatFile::Dated (S/SI/SIMON/Bryar-2.6.tar.gz) Module Business::BancaSella::Ric::File (E/EB/EBRUNI/Business-BancaSella-0.12.tar.gz) Module Business::BancaSella::Ric::FileFast (E/EB/EBRUNI/Business-BancaSella-0.12.tar.gz) Module Business::BancaSella::Ris::File (E/EB/EBRUNI/Business-BancaSella-0.12.tar.gz) Module Business::BancaSella::Ris::FileFast (E/EB/EBRUNI/Business-BancaSella-0.12.tar.gz) Module Business::Shipping::DataFiles (D/DB/DBROWNING/Business-Shipping-DataFiles-1.02.tar.gz) Module Buzznet::Profile (K/KW/KWOOLERY/Buzznet-API-0.01.tar.gz) Module CC::File (R/RA/RATL/CtCmd-1.06.tar.gz) Module CDB_File (M/MS/MSERGEANT/CDB_File-0.95.tar.gz) Module CDB_File::BiIndex (M/MI/MIKEDLR/CDB_File-BiIndex-0.030.tar.gz) ... Module DNS::ZoneFile::Record (M/MA/MATTBM/DNS-ZoneFile-0.92.tar.gz) Module DWH_File (S/SU/SUMUS/DWH_File-0.24.tar.gz) Module DWH_File::Aware (S/SU/SUMUS/DWH_File-0.24.tar.gz) Module DWH_File::Cache (S/SU/SUMUS/DWH_File-0.24.tar.gz) Module DWH_File::Cached (S/SU/SUMUS/DWH_File-0.24.tar.gz) Module DWH_File::ClassPool (S/SU/SUMUS/DWH_File-0.21.tar.gz) Module DWH_File::ID_Mill (S/SU/SUMUS/DWH_File-0.24.tar.gz) Module DWH_File::Kernel (S/SU/SUMUS/DWH_File-0.24.tar.gz) Module DWH_File::Reference (S/SU/SUMUS/DWH_File-0.24.tar.gz) Module DWH_File::Registry::Class (S/SU/SUMUS/DWH_File-0.24.tar.gz) |
#./configure --with-quarantinedir=/var/spool/MD-Quarantine
checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for ar... ar ... NVCC 'nvcc' NO (not found) CLAMD 'clamd' NO (not found) File::Scan NO TROPHIE 'trophie' NO (not found) Found Mail::SpamAssassin. You may use spam_assassin_* functions Did not find Anomy::HTMLCleaner. Do not use anomy_clean_html() Found HTML::Parser. You may use append_html_boilerplate() Note: SpamAssassin, File::Scan, HTML::Parser and Anomy::HTMLCleaner are detected at run-time, so if you install or remove any of those modules, you do not need to re-run ./configure and make a new mimedefang.pl. |
#perl -MCPAN -e shell
Module Mail::IspMailGate::Filter::VirScan (J/JW/JWIED/Mail-IspMailGate-1.1013.tar.gz) Module Meta::Pdmt::Cvs::Scanner (V/VE/VELTZER/Meta-0.08.tar.gz) Module ModPerl::CScan (P/PG/PGOLLUCCI/mod_perl-2.0.2.tar.gz) Module Module::Install::Admin::ScanDeps (A/AU/AUDREYT/Module-Install-0.64.tar.gz) Module Module::ScanDeps (S/SM/SMUELLER/Module-ScanDeps-0.68.tar.gz) Module Module::ScanDeps::DataFeed (S/SM/SMUELLER/Module-ScanDeps-0.68.tar.gz) Module Net::CDDBScan (D/DS/DSHULTZ/Net-CDDBScan-2.01.tar.gz) Module Net::Nessus::ScanLite (J/JP/JPB/Net-Nessus-ScanLite-0.01.tar.gz) Module Net::Scan::Fork (M/MC/MCANTONI/Net-Scan-Fork-0.01.tar.gz) Module Net::Scan::Ftp::Anonymous (M/MC/MCANTONI/Net-Scan-Ftp-Anonymous-0.01.tar.gz) ... /usr/bin/make test -- OK Running make install Installing /usr/local/share/perl/5.8.8/File/Scan.pm Installing /usr/local/man/man3/File::Scan.3pm Writing /usr/local/lib/perl/5.8.8/auto/File/Scan/.packlist Appending installation info to /usr/local/lib/perl/5.8.8/perllocal.pod /usr/bin/make install -- OK cpan> quit Terminal does not support GetHistory. Lockfile removed. |
#./configure --with-quarantinedir=/var/spool/MD-Quarantine
checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ANSI C... none needed checking for ar... ar ... NVCC 'nvcc' NO (not found) CLAMD 'clamd' NO (not found) File::Scan YES TROPHIE 'trophie' NO (not found) Found Mail::SpamAssassin. You may use spam_assassin_* functions Did not find Anomy::HTMLCleaner. Do not use anomy_clean_html() Found HTML::Parser. You may use append_html_boilerplate() Note: SpamAssassin, File::Scan, HTML::Parser and Anomy::HTMLCleaner are detected at run-time, so if you install or remove any of those modules, you do not need to re-run ./configure and make a new mimedefang.pl. |
#make
gcc -g -O2 -Wall -Wstrict-prototypes -pthread -D_POSIX_PTHREAD_SEMANTICS -DPERL_PATH=\"/usr/bin/perl\" -DMIMEDEFANG_PL=\"/usr/local/bin/mimedefang.pl\" -DRM=\"/bin/rm\" -DVERSION=\"2.57\" -DSPOOLDIR=\"/var/spool/MIMEDefang\" -DQDIR=\"/var/spool/MD-Quarantine\" -DCONFDIR=\"/etc/mail\" -c -o mimedefang.o mimedefang.c mimedefang.c: In function ‘rcptto’: mimedefang.c:970: warning: pointer targets in passing argument 2 of ‘writestr’ differ in signedness mimedefang.c:972: warning: pointer targets in passing argument 2 of ‘writestr’ differ in signedness mimedefang.c:974: warning: pointer targets in passing argument 2 of ‘writestr’ differ in signedness mimedefang.c:976: warning: pointer targets in passing argument 2 of ‘writestr’ differ in signedness mimedefang.c:978: warning: pointer targets in passing argument 2 of ‘writestr’ differ in signedness mimedefang.c: In function ‘header’: mimedefang.c:1033: warning: pointer targets in passing argument 2 of ‘writestr’ differ in signedness mimedefang.c:1035: warning: pointer targets in passing argument 2 of ‘writestr’ differ in signedness ... gcc -g -O2 -Wall -Wstrict-prototypes -D_POSIX_PTHREAD_SEMANTICS -DPERL_PATH=\"/usr/bin/perl\" -DMIMEDEFANG_PL=\"/usr/local/bin/mimedefang.pl\" -DRM=\"/bin/rm\" -DVERSION=\"2.57\" -DSPOOLDIR=\"/var/spool/MIMEDefang\" -DQDIR=\"/var/spool/MD-Quarantine\" -DCONFDIR=\"/etc/mail\" -c -o md-mx-ctrl.o md-mx-ctrl.c md-mx-ctrl.c: In function ‘percent_decode’: md-mx-ctrl.c:71: warning: pointer targets in passing argument 1 of ‘sscanf’ differ in signedness md-mx-ctrl.c: In function ‘buildCmd’: md-mx-ctrl.c:176: warning: pointer targets in passing argument 1 of ‘percent_encode’ differ in signedness md-mx-ctrl.c:176: warning: pointer targets in passing argument 2 of ‘percent_encode’ differ in signedness md-mx-ctrl.c: In function ‘doCmd’: md-mx-ctrl.c:239: warning: pointer targets in passing argument 1 of ‘percent_decode’ differ in signedness gcc -g -O2 -Wall -Wstrict-prototypes -o md-mx-ctrl md-mx-ctrl.o -lnsl test "" != "1" && strip md-mx-ctrl |
#make install
mkdir -p /etc/mail && chmod 755 /etc/mail if test "no" = "yes" -a ! -f "/etc/mail/mimedefang-ip-key" ; then \ /usr/bin/perl ./gen-ip-validator.pl > /etc/mail/mimedefang-ip-key ;\ fi if test "defang" != "" ; then \ chown "defang" /etc/mail/mimedefang-ip-key > /dev/null 2>&1 || true; \ mkdir -p /var/spool/MIMEDefang > /dev/null 2>&1 || true; \ chown "defang" /var/spool/MIMEDefang || true; \ chmod 700 /var/spool/MIMEDefang || exit 1; \ mkdir -p /var/spool/MD-Quarantine > /dev/null 2>&1 || true; \ ... if test -f /etc/mail/sa-mimedefang.cf ; then \ /usr/bin/install -c -m 644 SpamAssassin/spamassassin.cf /etc/mail/sa-mimedefang.cf.example || exit 1; \ else \ /usr/bin/install -c -m 644 SpamAssassin/spamassassin.cf /etc/mail/sa-mimedefang.cf || exit 1; \ fi \ fi Please create the spool directory, '/var/spool/MIMEDefang', if it does not exist. Give it mode 700 or 750, and make it owned by the user and group you intend to run MIMEDefang as. Please do the same with the quarantine directory, '/var/spool/MD-Quarantine'. |
#tail -f /var/log/mail.log
Oct 27 00:38:03 host1 spamd[14706]: spamd: result: . -1 - ALL_TRUSTED,AWL scantime=0.3,size=1802,user=user,uid=1000,required_score=5.0,rhost=localhost,raddr=127.0.0.1,rport=/home/user/.evolution/cache/tmp/spamd-socket-path-WTOflx,mid=<1161909044.15091.41.camel@host1.wdw.linux.nt>,autolearn=ham Oct 27 00:38:03 host1 spamd[14677]: prefork: child states: I Oct 27 00:38:03 host1 spamd[14706]: spamd: got connection over /home/user/.evolution/cache/tmp/spamd-socket-path-WTOflx Oct 27 00:38:03 host1 spamd[14706]: spamd: checking message <1161909282.15091.42.camel@host1.wdw.linux.nt> for user:1000 Oct 27 00:38:04 host1 spamd[14706]: spamd: clean message (-1.3/5.0) for user:1000 in 0.2 seconds, 1802 bytes. Oct 27 00:38:04 host1 spamd[14706]: spamd: result: . -1 - ALL_TRUSTED,AWL scantime=0.2,size=1802,user=user,uid=1000,required_score=5.0,rhost=localhost,raddr=127.0.0.1,rport=/home/user/.evolution/cache/tmp/spamd-socket-path-WTOflx,mid=<1161909282.15091.42.camel@host1.wdw.linux.nt>,autolearn=ham Oct 27 00:38:04 host1 spamd[14677]: prefork: child states: I Oct 27 00:42:01 host1 mimedefang-multiplexor[22441]: stats 1161898921.551 StartSlave slave=0 nslaves=1 nbusy=0 reason="Bringing slaves up to minSlaves (1)" Oct 27 00:42:12 host1 mimedefang[22502]: MIMEDefang alive. slavesReservedForLoopback=-1 AllowNewConnectionsToQueue=0 doRelayCheck=0 doHeloCheck=0 doSenderCheck=0 doRecipientCheck=0 Oct 27 00:42:12 host1 mimedefang[22502]: Multiplexor alive - entering main loop ... Oct 27 00:42:53 host1 mimedefang.pl[22442]: MDLOG,k9QLglAG022693,mail_in,,,<user@host1.wdw.linux.nt>,<user@host1.andrew.linux.nt>,f Oct 27 00:42:53 host1 mimedefang.pl[22442]: filter: k9QLglAG022693: drop_with_warning=1 Oct 27 00:42:53 host1 mimedefang-multiplexor[22441]: stats 1161898973.582 EndFilter slave=0 nslaves=1 nbusy=0 numRequests=1 Oct 27 00:42:53 host1 mimedefang[22502]: k9QLglAG022693: Filter time is 5417ms Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter delete (noop): header: X-Spam-Score Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter change: header Content-Type: from multipart/mixed; boundary="=-Wd2sA7zLeZpNM3DzYCf3" to multipart/mixed; boundary="=-Wd2sA7zLeZpNM3DzYCf3" Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter change: header MIME-Version: from 1.0 to 1.0 Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter message: body replaced Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter add: header: X-Scanned-By: MIMEDefang 2.57 on 192.168.17.2 Oct 27 00:42:53 host1 sm-mta[22734]: k9QLglAG022693: to=<user@host1.andrew.linux.nt>, delay=00:00:05, xdelay=00:00:00, mailer=local, pri=31714, dsn=2.0.0, stat=Sent |
#ls /var/spool/MD-Quarantine/
|
#tail -f /var/log/mail.log
Oct 27 00:42:53 host1 mimedefang.pl[22442]: MDLOG,k9QLglAG022693,mail_in,,,<user@host1.wdw.linux.nt>,<user@host1.andrew.linux.nt>,f Oct 27 00:42:53 host1 mimedefang.pl[22442]: filter: k9QLglAG022693: drop_with_warning=1 Oct 27 00:42:53 host1 mimedefang-multiplexor[22441]: stats 1161898973.582 EndFilter slave=0 nslaves=1 nbusy=0 numRequests=1 Oct 27 00:42:53 host1 mimedefang[22502]: k9QLglAG022693: Filter time is 5417ms Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter delete (noop): header: X-Spam-Score Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter change: header Content-Type: from multipart/mixed; boundary="=-Wd2sA7zLeZpNM3DzYCf3" to multipart/mixed; boundary="=-Wd2sA7zLeZpNM3DzYCf3" Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter change: header MIME-Version: from 1.0 to 1.0 Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter message: body replaced Oct 27 00:42:53 host1 sm-mta[22693]: k9QLglAG022693: Milter add: header: X-Scanned-By: MIMEDefang 2.57 on 192.168.17.2 Oct 27 00:42:53 host1 sm-mta[22734]: k9QLglAG022693: to=<user@host1.andrew.linux.nt>, delay=00:00:05, xdelay=00:00:00, mailer=local, pri=31714, dsn=2.0.0, stat=Sent ... Oct 27 00:45:31 host1 spamd[14706]: spamd: got connection over /home/user/.evolution/cache/tmp/spamd-socket-path-WTOflx Oct 27 00:45:31 host1 spamd[14706]: spamd: checking message <1161909765.15091.44.camel@host1.wdw.linux.nt> for user:1000 Oct 27 00:45:31 host1 spamd[14706]: spamd: clean message (-1.3/5.0) for user:1000 in 0.3 seconds, 1801 bytes. Oct 27 00:45:31 host1 spamd[14706]: spamd: result: . -1 - ALL_TRUSTED,AWL scantime=0.3,size=1801,user=user,uid=1000,required_score=5.0,rhost=localhost,raddr=127.0.0.1,rport=/home/user/.evolution/cache/tmp/spamd-socket-path-WTOflx,mid=<1161909765.15091.44.camel@host1.wdw.linux.nt>,autolearn=ham Oct 27 00:45:31 host1 spamd[14677]: prefork: child states: I Oct 27 00:45:31 host1 spamd[14706]: spamd: got connection over /home/user/.evolution/cache/tmp/spamd-socket-path-WTOflx Oct 27 00:45:31 host1 spamd[14706]: spamd: checking message <1161909890.15091.46.camel@host1.wdw.linux.nt> for user:1000 Oct 27 00:45:31 host1 spamd[14706]: spamd: clean message (-1.3/5.0) for user:1000 in 0.2 seconds, 1823 bytes. Oct 27 00:45:31 host1 spamd[14706]: spamd: result: . -1 - ALL_TRUSTED,AWL scantime=0.2,size=1823,user=user,uid=1000,required_score=5.0,rhost=localhost,raddr=127.0.0.1,rport=/home/user/.evolution/cache/tmp/spamd-socket-path-WTOflx,mid=<1161909890.15091.46.camel@host1.wdw.linux.nt>,autolearn=ham Oct 27 00:45:32 host1 spamd[14677]: prefork: child states: I |
#ls /var/spool/MD-Quarantine/
|
Jan 12 11:36:37 tex kernel: Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2 Jan 12 11:36:37 tex kernel: ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx Jan 12 11:36:37 tex kernel: usbcore: registered new driver usbfs Jan 12 11:36:37 tex kernel: usbcore: registered new driver hub Jan 12 11:36:37 tex kernel: USB Universal Host Controller Interface driver v3.0 Jan 12 11:36:37 tex kernel: e1000: 0000:01:01.0: e1000_probe: (PCI:33MHz:32-bit) 00:07:e9:3c:2c:38 Jan 12 11:36:37 tex kernel: e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection Jan 12 11:36:37 tex kernel: SCSI subsystem initialized Jan 12 11:36:37 tex kernel: ICH5: IDE controller at PCI slot 0000:00:1f.1 Jan 12 11:36:37 tex kernel: PCI: Enabling device 0000:00:1f.1 (0005 -> 0007) Jan 12 11:36:37 tex kernel: ACPI: PCI Interrupt 0000:00:1f.1[A] -> GSI 18 (level, low) -> IRQ 169 Jan 12 11:36:37 tex kernel: ICH5: chipset revision 2 Jan 12 11:36:37 tex kernel: ICH5: not 100%% native mode: will probe irqs later Jan 12 11:36:37 tex kernel: ide0: BM-DMA at 0xffa0-0xffa7, BIOS settings: hda:DMA, hdb:pio Jan 12 11:36:37 tex kernel: ide1: BM-DMA at 0xffa8-0xffaf, BIOS settings: hdc:DMA, hdd:pio Jan 12 11:36:37 tex kernel: hda: SAMSUNG SP40A2H, ATA DISK drive Jan 12 11:36:37 tex kernel: ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 Jan 12 11:36:37 tex kernel: hdc: DV-516E, ATAPI CD/DVD-ROM drive Jan 12 11:36:37 tex kernel: ide1 at 0x170-0x177,0x376 on irq 15 Jan 12 11:36:37 tex kernel: ACPI: PCI Interrupt 0000:00:1d.0[A] -> GSI 16 (level, low) -> IRQ 177 Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.0: UHCI Host Controller Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 1 Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.0: irq 177, io base 0x0000c800 Jan 12 11:36:37 tex kernel: usb usb1: configuration #1 chosen from 1 choice Jan 12 11:36:37 tex kernel: hub 1-0:1.0: USB hub found Jan 12 11:36:37 tex kernel: hub 1-0:1.0: 2 ports detected Jan 12 11:36:37 tex kernel: hda: max request size: 128KiB Jan 12 11:36:37 tex kernel: hda: 78242976 sectors (40060 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(100) Jan 12 11:36:37 tex kernel: hda: cache flushes supported Jan 12 11:36:37 tex kernel: hda: hda1 hda2 < hda5 hda6 hda7 hda8 hda9 > Jan 12 11:36:37 tex kernel: hdc: ATAPI 48X DVD-ROM drive, 256kB Cache, UDMA(33) Jan 12 11:36:37 tex kernel: Uniform CD-ROM driver Revision: 3.20 Jan 12 11:36:37 tex kernel: ACPI: PCI Interrupt 0000:00:1d.1[B] -> GSI 19 (level, low) -> IRQ 185 Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.1: UHCI Host Controller Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 2 Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.1: irq 185, io base 0x0000cc00 Jan 12 11:36:37 tex kernel: usb usb2: configuration #1 chosen from 1 choice Jan 12 11:36:37 tex kernel: hub 2-0:1.0: USB hub found Jan 12 11:36:37 tex kernel: hub 2-0:1.0: 2 ports detected Jan 12 11:36:37 tex kernel: ACPI: PCI Interrupt 0000:00:1d.2[C] -> GSI 18 (level, low) -> IRQ 169 Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.2: UHCI Host Controller Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 3 Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.2: irq 169, io base 0x0000d000 Jan 12 11:36:37 tex kernel: usb usb3: configuration #1 chosen from 1 choice Jan 12 11:36:37 tex kernel: hub 3-0:1.0: USB hub found Jan 12 11:36:37 tex kernel: hub 3-0:1.0: 2 ports detected Jan 12 11:36:37 tex kernel: ACPI: PCI Interrupt 0000:00:1d.3[A] -> GSI 16 (level, low) -> IRQ 177 Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.3: UHCI Host Controller Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.3: new USB bus registered, assigned bus number 4 Jan 12 11:36:37 tex kernel: uhci_hcd 0000:00:1d.3: irq 177, io base 0x0000d400 Jan 12 11:36:37 tex kernel: usb usb4: configuration #1 chosen from 1 choice Jan 12 11:36:37 tex kernel: hub 4-0:1.0: USB hub found Jan 12 11:36:37 tex kernel: hub 4-0:1.0: 2 ports detected Jan 12 11:36:37 tex kernel: ACPI: PCI Interrupt 0000:00:1d.7[D] -> GSI 23 (level, low) -> IRQ 193 Jan 12 11:36:37 tex kernel: ehci_hcd 0000:00:1d.7: EHCI Host Controller Jan 12 11:36:37 tex kernel: ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 5 Jan 12 11:36:37 tex kernel: ehci_hcd 0000:00:1d.7: debug port 1 Jan 12 11:36:37 tex kernel: ehci_hcd 0000:00:1d.7: irq 193, io mem 0xffa7fc00 Jan 12 11:36:37 tex kernel: ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 Jan 12 11:36:37 tex kernel: usb usb5: configuration #1 chosen from 1 choice Jan 12 11:36:37 tex kernel: hub 5-0:1.0: USB hub found Jan 12 11:36:37 tex kernel: hub 5-0:1.0: 8 ports detected Jan 12 11:36:37 tex kernel: ata_piix 0000:00:1f.2: MAP [ P0 -- P1 -- ] Jan 12 11:36:37 tex kernel: ACPI: PCI Interrupt 0000:00:1f.2[A] -> GSI 18 (level, low) -> IRQ 169 Jan 12 11:36:37 tex kernel: ata1: SATA max UDMA/133 cmd 0xE800 ctl 0xE402 bmdma 0xD800 irq 169 Jan 12 11:36:37 tex kernel: ata2: SATA max UDMA/133 cmd 0xE000 ctl 0xDC02 bmdma 0xD808 irq 169 Jan 12 11:36:37 tex kernel: ata1: SATA port has no device. Jan 12 11:36:37 tex kernel: scsi0 : ata_piix Jan 12 11:36:37 tex kernel: ata2: SATA port has no device. Jan 12 11:36:37 tex kernel: scsi1 : ata_piix Jan 12 11:36:37 tex kernel: Attempting manual resume Jan 12 11:36:37 tex kernel: EXT3-fs: INFO: recovery required on readonly filesystem. Jan 12 11:36:37 tex kernel: EXT3-fs: write access will be enabled during recovery. Jan 12 11:36:37 tex kernel: kjournald starting. Commit interval 5 seconds Jan 12 11:36:37 tex kernel: EXT3-fs: hda1: orphan cleanup on readonly fs Jan 12 11:36:37 tex kernel: EXT3-fs: hda1: 1 orphan inode deleted Jan 12 11:36:37 tex kernel: EXT3-fs: recovery complete. Jan 12 11:36:37 tex kernel: EXT3-fs: mounted filesystem with ordered data mode. Jan 12 11:36:37 tex kernel: Real Time Clock Driver v1.12ac Jan 12 11:36:37 tex kernel: 00:08: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A Jan 12 11:36:37 tex kernel: Linux agpgart interface v0.101 (c) Dave Jones Jan 12 11:36:37 tex kernel: parport: PnPBIOS parport detected. Jan 12 11:36:37 tex kernel: parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] Jan 12 11:36:37 tex kernel: pci_hotplug: PCI Hot Plug PCI Core version: 0.5 Jan 12 11:36:37 tex kernel: input: PC Speaker as /class/input/input1 Jan 12 11:36:37 tex kernel: agpgart: Detected an Intel 865 Chipset. Jan 12 11:36:37 tex kernel: agpgart: Detected 16252K stolen memory. Jan 12 11:36:37 tex kernel: agpgart: AGP aperture is 128M @ 0xf0000000 Jan 12 11:36:37 tex kernel: Floppy drive(s): fd0 is 1.44M Jan 12 11:36:37 tex kernel: FDC 0 is a National Semiconductor PC87306 Jan 12 11:36:37 tex kernel: shpchp: Standard Hot Plug PCI Controller Driver version: 0.4 Jan 12 11:36:37 tex kernel: hw_random hardware driver 1.0.0 loaded Jan 12 11:36:37 tex kernel: ACPI: PCI Interrupt 0000:00:1f.5[B] -> GSI 17 (level, low) -> IRQ 201 Jan 12 11:36:37 tex kernel: input: PS/2 Generic Mouse as /class/input/input2 Jan 12 11:36:37 tex kernel: ts: Compaq touchscreen protocol output Jan 12 11:36:37 tex kernel: mice: PS/2 mouse device common for all mice Jan 12 11:36:37 tex kernel: intel8x0_measure_ac97_clock: measured 55207 usecs Jan 12 11:36:37 tex kernel: intel8x0: clocking to 48000 Jan 12 11:36:37 tex kernel: Adding 1952960k swap on /dev/hda5. Priority:-1 extents:1 across:1952960k Jan 12 11:36:37 tex kernel: EXT3 FS on hda1, internal journal Jan 12 11:36:37 tex kernel: loop: loaded (max 8 devices) Jan 12 11:36:37 tex kernel: device-mapper: 4.6.0-ioctl (2006-02-17) initialised: dm-devel@redhat.com Jan 12 11:36:37 tex kernel: kjournald starting. Commit interval 5 seconds Jan 12 11:36:37 tex kernel: EXT3 FS on hda8, internal journal Jan 12 11:36:37 tex kernel: EXT3-fs: mounted filesystem with ordered data mode. Jan 12 11:36:37 tex kernel: kjournald starting. Commit interval 5 seconds Jan 12 11:36:37 tex kernel: EXT3 FS on hda6, internal journal Jan 12 11:36:37 tex kernel: EXT3-fs: mounted filesystem with ordered data mode. Jan 12 11:36:37 tex kernel: kjournald starting. Commit interval 5 seconds Jan 12 11:36:37 tex kernel: EXT3 FS on hda9, internal journal Jan 12 11:36:37 tex kernel: EXT3-fs: mounted filesystem with ordered data mode. Jan 12 11:36:37 tex kernel: kjournald starting. Commit interval 5 seconds Jan 12 11:36:37 tex kernel: EXT3 FS on hda7, internal journal Jan 12 11:36:37 tex kernel: EXT3-fs: mounted filesystem with ordered data mode. Jan 12 11:36:39 tex kernel: NET: Registered protocol family 10 Jan 12 11:36:39 tex kernel: lo: Disabled Privacy Extensions Jan 12 11:36:39 tex kernel: IPv6 over IPv4 tunneling driver Jan 12 11:36:40 tex kernel: ACPI: Power Button (FF) [PWRF] Jan 12 11:36:40 tex kernel: ACPI: Sleep Button (CM) [SLPB] Jan 12 11:36:40 tex kernel: lp0: using parport0 (interrupt-driven). Jan 12 11:36:40 tex kernel: ppdev: user-space parallel port driver Jan 12 11:36:43 tex lpd[4045]: restarted Jan 12 11:36:48 tex kernel: [drm] Initialized drm 1.0.1 20051102 Jan 12 11:36:48 tex kernel: ACPI: PCI Interrupt 0000:00:02.0[A] -> GSI 16 (level, low) -> IRQ 177 Jan 12 11:36:48 tex kernel: [drm] Initialized i915 1.4.0 20060119 on minor 0 Jan 12 11:37:20 tex shutdown[4313]: shutting down for system halt Jan 13 20:46:03 tex syslogd 1.4.1#18: restart. Jan 13 20:46:03 tex kernel: klogd 1.4.1#18, log source = /proc/kmsg started. Jan 13 20:46:03 tex kernel: Linux version 2.6.17-2-686 (Debian 2.6.17-9) (waldi@debian.org) (gcc version 4.1.2 20060901 (prerelease) (Debian 4.1.1-13)) #1 SMP Wed Sep 13 16:34:10 UTC 2006 Jan 13 20:46:03 tex kernel: BIOS-provided physical RAM map: Jan 13 20:46:03 tex kernel: BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) Jan 13 20:46:03 tex kernel: BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) Jan 13 20:46:03 tex kernel: BIOS-e820: 00000000000e6000 - 0000000000100000 (reserved) Jan 13 20:46:03 tex kernel: BIOS-e820: 0000000000100000 - 000000003ef30000 (usable) Jan 13 20:46:03 tex kernel: BIOS-e820: 000000003ef30000 - 000000003ef40000 (ACPI data) Jan 13 20:46:03 tex kernel: BIOS-e820: 000000003ef40000 - 000000003eff0000 (ACPI NVS) Jan 13 20:46:03 tex kernel: BIOS-e820: 000000003eff0000 - 000000003f000000 (reserved) Jan 13 20:46:03 tex kernel: BIOS-e820: 00000000fecf0000 - 00000000fecf1000 (reserved) Jan 13 20:46:03 tex kernel: BIOS-e820: 00000000fed20000 - 00000000feda0000 (reserved) Jan 13 20:46:03 tex kernel: 0MB HIGHMEM available. Jan 13 20:46:03 tex kernel: 1007MB LOWMEM available. Jan 13 20:46:03 tex kernel: found SMP MP-table at 000ff780 Jan 13 20:46:03 tex kernel: DMI 2.3 present. Jan 13 20:46:03 tex kernel: ACPI: PM-Timer IO Port: 0x408 Jan 13 20:46:03 tex kernel: ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled) Jan 13 20:46:03 tex kernel: Processor #0 15:2 APIC version 20 Jan 13 20:46:03 tex kernel: ACPI: LAPIC (acpi_id[0x02] lapic_id[0x81] disabled) Jan 13 20:46:03 tex kernel: ACPI: LAPIC_NMI (acpi_id[0x01] dfl dfl lint[0x1]) Jan 13 20:46:03 tex kernel: ACPI: LAPIC_NMI (acpi_id[0x02] dfl dfl lint[0x1])
Время первой команды журнала | 00:31:40 2006-10-27 | |||||||||||||||||||||||||||
Время последней команды журнала | 00:45:49 2006-10-27 | |||||||||||||||||||||||||||
Количество командных строк в журнале | 20 | |||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 5.00 | |||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | |||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 0.24 | |||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 1.41 | |||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.
Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
$ l s-l bash: l: command not found |
Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
$ test 5 -lt 4 |
Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
$ find / -name abc find: /home/devi-orig/.gnome2: Keine Berechtigung find: /home/devi-orig/.gnome2_private: Keine Berechtigung find: /home/devi-orig/.nautilus/metafiles: Keine Berechtigung find: /home/devi-orig/.metacity: Keine Berechtigung find: /home/devi-orig/.inkscape: Keine Berechtigung ^C |
Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
# id uid=0(root) gid=0(root) Gruppen=0(root) |
Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
$ vi ~/.bashrc
|
Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
$ patch ~/.bashrc |
Для того чтобы получить краткую справочную информацию о команде, нужно подвести к ней мышь. Во всплывающей подсказке появится краткое описание команды.
Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.
Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.
Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора
Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.
Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.
Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:
$ whoami
user
$ #^ Интересно, кто я?в журнале это будет выглядеть так:
$ whoami
user
Интересно, кто я? |
Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:
$ whoami
user
$ cat > /dev/null #^ Интересно, кто я?
Программа whoami выводит имя пользователя, под которым мы зарегистрировались в системе. - Она не может ответить на вопрос о нашем назначении в этом мире.В журнале это будет выглядеть так:
$ whoami user
|
Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=
1 2 3 4Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.
LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008