Tool-Free Installation Of Bugzilla On Solaris 9
This is not a substitute for reading the documentation. I just found that building things (like mysql and the DBD:: modules) from scratch incredibly painful and it turns out if you use the right components you don't have to re-invent the wheel.
Note deviations for Solaris 10 listed at the end of the article.
- Get blastwave's pkg-get
- pkgadd -d ./pkg-get.pkg
- vi /opt/csw/etc/pkg-get.conf to taste (I usually select the second mirror, as the primary sometimes get unusably busy when a linux kernel is released)
- cp /var/pkg-get/admin-fullauto /var/pkg-get/admin
- /opt/csw/bin/pkg-get -i textutils mysql4 mysql4bench mysql4client mysql4devel mysql4rt mysql4test perl apache wget ncftp gmake gcc2 pm_timedate
- export PATH=/opt/csw/bin:/bin:/usr/sbin:/sbin:/opt/csw/gcc2/bin
- groupadd -g 80 apache
- useradd -g apache -u 80 -s /bin/false -d /opt/csw/apache apache
- /opt/csw/mysql4/share/quick_start-csw
- /etc/rc3.d/S40cswmysql start
- /opt/csw/mysql4/bin/mysqladmin password $YOUR-MYSQL-ADMIN-PASSWORD
- ln -s /opt/csw/bin/gmake /opt/csw/bin/make
- perl -MCPAN -eshell (and then configure CPAN)
- perl -MCPAN -e 'install "MIME::Parser"'
- perl -MCPAN -e 'install "Template"' (for the optional stuff, select no -- the resulting installation may be slower, but the build is an order of magnitude less complex)
- get the bugzilla package and expand it into /opt/csw/apache/htdocs/bugzilla
- mkdir org
- for i in *.pl *.cgi ; do mv $i org ; sed -e 's|/usr/bin/perl|/opt/csw/bin/perl|' < org/$i > $i ; done
- ./checksetup.pl --check-modules
- ./checksetup.pl
- vi localconfig (edit db_pass value)
- /opt/csw/mysql4/bin/mysql -u root -p
mysql> GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES, CREATE TEMPORARY TABLES, DROP, REFERENCES ON bugs.* TO bugs@localhost IDENTIFIED BY '$db_pass';
mysql> FLUSH PRIVILEGES;
- ./checksetup.pl
- vi /opt/csw/apache/conf/httpd.conf (change the group and user the webserver runs as to apache; also add this block to the end:)
<Directory /opt/csw/apache/htdocs/bugzilla>
AddHandler cgi-script .cgi
Options +Indexes +ExecCGI
DirectoryIndex index.cgi
AllowOverride Limit
</Directory>
- /etc/rc3.d/S50cswapache restart
...and that should get you going.
Solaris 10 Deviations
- you don't need to create the apache user and group as the user/group webservd is pre-created for you.
- It is probably better to use the svcs enable command to start mysqld instead of using the rc3.d script. The quick_start-csw script will exit with the correct syntax.
- When editing /opt/csw/apache/conf/httpd.conf, change the user and group for the webserver to webservd.