How to install POPFile in minimal CentOS 6.5.
Running POPFile uses some additional software.
So you need to install it before install POPFile.
The required software are Perl and certain Perl modules.
1. Perl
2. certain Perl modules
Following is how to install Perl and certain Perl modules.
(1) Check out Required Perl modules.
The current list of modules that you may need to install includes the following: says;
DBI
DBD::SQLite
Digest::base
Digest::MD5
HTML::Tagset
MIME::Base64
MIME::QuotedPrint
Date::Parse (all platforms except Windows)
HTML::Template
Encode (if you want Japanese/Korean language support)
IO::Socket::Socks (if you want to use a SOCKS proxy)
IO::Socket::SSL (if you want to use SSL)
Net::SSLeay (if you want to use SSL)
SOAP::Lite (if you want to use XMLRPC)
(2) Install Perl itself first.
Perl has some its modules being required of POPFile.
[root@localhost ~]# yum install perl
Installed:
perl.x86_64 4:5.10.1-136.el6
Dependency Installed:
perl-Module-Pluggable.x86_64 1:3.90-136.el6 perl-Pod-Escapes.x86_64 1:1.04-136.el6 perl-Pod-Simple.x86_64 1:3.13-136.el6 perl-libs.x86_64 4:5.10.1-136.el6
perl-version.x86_64 3:0.77-136.el6
(3) Check whether or not Required Perl modules are in your CentOS 6.5 sytem.
The following commands can display the versions of installed modules.
If not installed the module in your system, the version is not displayed.
These results are about My PC CentOS 6.5 64bit edition with Perl installed.
<Installed>
Digest::base
[root@localhost ~]# perl -M-Digest::base -e 'print $Digest::base::VERSION'
1.16
Digest::MD5
[root@localhost ~]# perl -M-Digest::MD5 -e 'print $Digest::MD5::VERSION'
2.39
MIME::Base64
[root@localhost ~]# perl -M-MIME::Base64 -e 'print $MIME::Base64::VERSION'
3.08
MIME::QuotedPrint
[root@localhost ~]# perl -M-MIME::QuotedPrint -e 'print $MIME::QuotedPrint::VERSION'
3.08
Encode (if you want Japanese/Korean language support)
[root@localhost ~]# perl -M-Encode -e 'print $Encode::VERSION'
2.35
<Not Installed>
(a) DBI
(b) DBD::SQLite
(c) HTML::Tagset
(d) Date::Parse (all platforms except Windows)
(e) HTML::Template
(f) IO::Socket::Socks (if you want to use a SOCKS proxy)
(g) Net::SSLeay (if you want to use SSL)
(h) IO::Socket::SSL (if you want to use SSL)
(i) SOAP::Lite (if you want to use XMLRPC)
Perl modules in this list "NOT INSTALLED", need to be added in your system.
(4) Install POPFile Required Perl modules using YUM.
(a) DBI
[root@localhost ~]# yum install perl-DBI(b) DBD::SQLite
Installed:
perl-DBI.x86_64 0:1.609-4.el6
Complete!
[root@localhost ~]# yum install perl-DBD-SQLite(c) HTML::Tagset
Installed:
perl-DBD-SQLite.x86_64 0:1.27-3.el6
Complete!
[root@localhost ~]# yum install perl-HTML-Tagset(d) Date::Parse (all platforms except Windows)
Installed:
perl-HTML-Tagset.noarch 0:3.20-4.el6
Complete!
[root@localhost ~]# yum install perl-DateTime-Format-DateParse(e) HTML::Template
Installed:
perl-DateTime-Format-DateParse.noarch 0:0.04-1.1.el6
Dependency Installed:
perl-Class-Singleton.noarch 0:1.4-6.el6 perl-DateTime.x86_64 1:0.5300-2.el6
perl-List-MoreUtils.x86_64 0:0.22-10.el6 perl-Params-Validate.x86_64 0:0.92-3.el6
perl-TimeDate.noarch 1:1.16-11.1.el6
Complete![root@localhost ~]# yum deplist perl-DateTime-Format-DateParse | grep Date::Parse
dependency: perl(Date::Parse)
dependency: perl(Date::Parse) >= 2.27
This module is in EPEL repository.
[root@localhost ~]# yum localinstall http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
[root@localhost ~]# yum install perl-HTML-Template(f) IO::Socket::Socks (if you want to use a SOCKS proxy)
Installed:
perl-HTML-Template.noarch 0:2.9-10.el6
Complete!
I can not find this module in yum repository.
This is for SOCKS proxy. I do not need this module.
(g) Net::SSLeay (if you want to use SSL)
[root@localhost ~]# yum install perl-Net-SSLeay(h) IO::Socket::SSL (if you want to use SSL)
Installed:
perl-Net-SSLeay.x86_64 0:1.35-9.el6
Complete!
[root@localhost ~]# yum install perl-IO-Socket-SSL(i) SOAP::Lite (if you want to use XMLRPC)
Installed:
perl-IO-Socket-SSL.noarch 0:1.31-2.el6
Dependency Installed:
perl-Net-LibIDN.x86_64 0:0.12-3.el6
Complete!
[root@localhost ~]# yum install perl-SOAP-Lite
Installed:
perl-SOAP-Lite.noarch 0:0.710.10-3.el6
Dependency Installed:
perl-Email-Date-Format.noarch 0:1.002-5.el6 perl-MIME-Lite.noarch 0:3.027-2.el6
perl-MIME-Types.noarch 0:1.28-2.el6 perl-MailTools.noarch 0:2.04-4.el6
perl-URI.noarch 0:1.40-2.el6
Complete!
Done ! POPFile required Perl and its modules are installed.
Following is how to install POPFile itself.
(5) Download POPFile.
I selected the Newest version for Cross-platform.
[root@localhost popfile-v1.1.3]# wget http://getpopfile.org/downloads/popfile-1.1.3.zip
[root@localhost popfile-v1.1.3]# ls
popfile-1.1.3.zip
(6) Install POPFile.
To install POPFile is only to extract the downloaded ZIP file.
First, I installed unzip to extract a ZIP file.
[root@localhost software]# yum install unzip
Installed:
unzip.x86_64 0:6.0-1.el6
I extracted the downloaded POPFile ZIP file.
[root@localhost popfile-v1.1.3]# unzip popfile-1.1.3.zip
[root@localhost popfile-v1.1.3]# ls
Classifier bayes.pl license popfile-1.1.3.zip v1.1.3.change
POPFile black.gif otto.gif popfile.pck v1.1.3.change.nihongo
Proxy favicon.ico otto.png popfile.pl
Services insert.pl pipe.pl skins
UI languages pix.gif stopwords
(7) Start POPFile once to get a configuration file.
I stated POPFile, and then stop it using key CTRL and C simultaneously.
POPFile made a configuration file.
[root@localhost popfile-v1.1.3]# perl ./popfile.pl
POPFile Engine loading
Loading...
{core: config history mq logger}
{classifier: wordmangle bayes}
{interface: xmlrpc html}
{proxy: smtp pop3 nntp}
{services: imap}
POPFile Engine v1.1.3 starting
Initializing...
{core: config history logger mq}
{classifier: bayes wordmangle}
{interface: html xmlrpc}
{proxy: nntp pop3 smtp}
{services: imap}
Starting...
{core: config history logger mq}
{classifier: bayes wordmangle}
{interface: html}
{proxy: pop3}
{services:}
POPFile Engine v1.1.3 running
Here Push CTRL and C simultaneously.
^C
POPFile Engine v1.1.3 stopping
Stopping...
{classifier: bayes wordmangle}
{core: config history logger mq}
{interface: html}
{proxy: pop3}
{services:}
POPFile Engine v1.1.3 terminated
The file "popfile.cfg" is POPFile configuration file.
[root@localhost popfile-v1.1.3]# ls
Classifier favicon.ico pipe.pl popfile1386720000.log
POPFile insert.pl pix.gif skins
Proxy languages popfile-1.1.3.zip stopwords
Services license popfile.cfg v1.1.3.change
UI messages popfile.db v1.1.3.change.nihongo
bayes.pl otto.gif popfile.pck
black.gif otto.png popfile.pl