Filtered by category Subsystems Documentation, 1 - 10 of 84 Postings (all
Created by Maurizio Martignano, last modified by Maurizio Martignano 12 Oct 2019, at 07:30 PM
Windows-OpenACS (vers. 4.4.9 - October 2019) is a Windows 64 port of OpenACS 5.9.1 and the latest snapshot of NaviServer and is available at Spazio IT .
This port installs and runs on the following systems:
- Windows 10,
- Windows Server 2012 R2,
- Windows Server 2016 and
- Windows Server 2019.
Created by Ryan Gallimore, last modified by Gustaf Neumann 26 Sep 2019, at 08:27 PM
OPENACS_SERVICE_NAME=service1 # Name your service
useradd -g web $OPENACS_SERVICE_NAME mkdir /var/lib/aolserver
# Download latest tarball:
>> wget [URL to latest tarball]
>> tar xzvf [tarball.tar.gz]
>> mv [tarball_dir] $OPENACS_SERVICE_NAME
# OR, checkout from CVS. Replace oacs-5-4 with the branch of your choice.
>> cvs -d:pserver:email@example.com/cvsroot checkout -r oacs-5-4 acs-core
>> mv openacs-4 $OPENACS_SERVICE_NAME
chown -R $OPENACS_SERVICE_NAME.web /var/lib/aolserver/$OPENACS_SERVICE_NAME chmod -R 770 /var/lib/aolserver/$OPENACS_SERVICE_NAME
# PostgreSQL 8.x
service postgresql stop yum -y remove postgresql # Download the PG rpm
# Initialize the Cluster
service postgresql initdb
# Start the service
service postgresql start
# Start pg on boot
chkconfig postgresql on
# Change postgresql.conf
Try the AOLServer 4.5 page. The archive download works well
(but uses sources from 2006).
# Daemontools should now be installed, so let's set it up to start, stop and restart AOLServer
ln -s /var/lib/aolserver/$OPENACS_SERVICE_NAME/etc/daemontools $OPENACS_SERVICE_NAME
# Daemontools will no scan the etc/daemontools directory and find the run script.
Read this for more information on Daemontools commands
# Modify the etc/daemontools/run script for your ip, user and group. Note the -b IP:PORT flag that # must be added for privileged ports.
# Modify etc/config.tcl to match your hostname and IP. aolserver director should be /usr/local/aolserver
# avoid pid not found errors in the log
chown -R $OPENACS_SERVICE_NAME.web /usr/local/aolserver/log
chmod -R 775 /usr/local/aolserver/log
# Start the server!
svc -u /service/$OPENACS_SERVICE_NAME
# Watch the log for errors:
tail -f /var/lib/aolserver/$OPENACS_SERVICE_NAME/log/error.log
If successful, call up the site URL and install the data model.
Created by Gustaf Neumann, last modified by Gustaf Neumann 25 Sep 2019, at 11:53 AM
NaviServer is a fork of AOLserver. While the goal of the AOLserver community is stability (no code changes unless necessary), NaviServer is targeted toward further development and extensions (implementing new features required by state of the art web server environments, see NEWS ).
Using NaviServer with OpenACS
Created by Gustaf Neumann, last modified by Gustaf Neumann 25 Sep 2019, at 11:40 AM
Libthread is the standard Tcl thread library developed by Zoran Vasiljevic and provides optional functionality for OpenACS. Threads created by the Tcl thread library are executed in an event loop, which makes it easy to send commands to such threads. xotcl-core provides support for the the thread library and uses it for example for background delivery of large files. Also the chat package uses libthread when it is installed. The xotcl-request-monitor depends on libthread.
The advantage of libthead over NaviServer/AOLserver threads is that the threads created by libthread are waiting in an event loop for incoming requests, which eases some types of applications.
In case, NaviServer was installed via install-ns, one can skip the section installation steps. Also the provided configuration script is already set up correctly for usage. The instruction below is for cases, where install-ns was not used.
1. Get and install libthread:
download libthread e.g. from
untar it and go to you platform specific directory (eg. thread2.8.2/unix)
# cd unix
# ../configure --enable-threads \
use --prefix --exec-prefix --with-naviserver with the path pointing to the directory, where NaviServer is installed.
The setup for AOLserver is similar, but different paths are used.
You should now have installed libthread2.8.2.so (check for /usr/local/ns/lib/thread*/libthread* )
2) Adjusting the AOLserver/NaviServer configuration file to use libthread
Open the configuration file
restart nsd and check the error log, whether libthread was loaded successfully.
Created by OpenACS community, last modified by Gustaf Neumann 25 Sep 2019, at 11:16 AM
the free, open-source, multi-threaded, scalable, Tcl-enabled, web/application server used by some of the world's busiest websites, such as AOL.com, Mapquest.com, Netscape.com, and Moviefone.com. Other sites that run on AOLserver: http://panoptic.com/wiki/aolserver/Sites_That_Run_On_AOLserver
What others say about AOLserver
Using AOLserver with OpenACS
Notes on upgrading AOLserver 4.5.1 ( or greater )
- All the ns_cache* API is from AOLserver 4.5.1 on, part of the core, therefore loading nscache.so in your config file is not longer required. Doing otherwise could lead to syntax errors while doing some calls to the API.
Created by OpenACS community, last modified by Gustaf Neumann 17 Sep 2019, at 10:05 AM
Prerequisites to installing OpenACS
You will need a computer with at least these minimum specifications:
- 256MB RAM (much more if you will be running Oracle)
- 1GB free space on the computer's hard disk (much more if you will be running Oracle)
- a compatible, Unix-like operating system en:os-nix installed.
All of the software mentioned is open-source and available without direct costs, except for Oracle. You can obtain a free copy of Oracle for development purposes (see: en:oracle-install).
All of the required software is installed on various version of recent Linux versions, when you are using naviserver-openacs. The sections below are if we want to go your own way and for legacy issues.
Each version of OpenACS only works with certain versions of the component software. Determine which versions you will be using by reviewing the en:openacs-compatibility-matrix.
These components in-turn depend on other software and parts of the OS. Here is a list of minimum required versions. For production systems, use the latest stable release:
- GNU/Linux. The installation assumes a Linux kernel of 2.2.22 or newer, or 2.4.14 or newer.
- glibc 2.2 or newer. You need recent versions of these libraries for Oracle to build and work properly. For Unicode support, you need glibc 2.2 or newer. glibc should be included in your operating system distribution.
- GNU Make 3.76.1 or newer and gcc. PostgreSQL and AOLserver require gmake/gcc to compile.
OpenACS has a variety of packages that may require other software to be installed. Review the individual package documentation for other requirements. Also, OpenACS is commonly deployed with other related applications. For your convenience, here is a short list of some of these:
- tclwebtest - a tool for testing web interfaces via tcl scripts.
- ns_pam - provides PAM capabilities for AOLserver. You need this if you want OpenACS users to authenticate through a PAM module (such as RADIUS).
- pam_radius - provides RADIUS capabilities for PAM. You need this if you want to use RADIUS authentication via PAM in OpenACS.
- ns_ldap - provides LDAP capabilities for AOLserver. You need this if you want to use LDAP authentication in OpenACS.
- OpenFTS - Adds full-text-search to PostgreSQL and includes a driver for AOLserver. You need this if you want users to be able to search for any text on your site. For PostgreSQL 7.4.x and higher, full text search is also available via tsearch2.
- Analog - examines web server request logs, looks up DNS values, and produces a report. You need this if you want to see how much traffic your site is getting.
- Balance - "a simple but powerful generic tcp proxy with round robin load balancing and fail-over mechanisms." You need this or something equivalent if you are running a high-availability production site and do not have an external load balancing system.
- Daemontools -You need this if you want AOLserver and qmail to run "supervised," meaning that they are monitored and automatically restarted if they fail. An alternative would be to run the services from inittab.
- qmail - You need this (or a different Mail Transport Agent) if you want your web server to send and receive email.
- ucspi-tcp - listens for incoming TCP connections and hands them to a program. We use it instead of inetd, which is insecure. You need this if you are running qmail.
- DocBook (docbook-xml, docbook-xsl, libxslt, xsltproc) - for writing or editing docbook style documentation.
- search uses these utilities to index file contents: http://wagner.pp.ru/~vitus/software/catdoc/ and http://poppler.freedesktop.org/ based on xpdf.
Created by Markus Moser, last modified by Markus Moser 29 Jul 2019, at 06:28 PM
A package for OpenACS exists in the Arch User Repository: https://aur.archlinux.org/packages/openacs/
Several AUR helper applications exist for automating compiling and installing AUR packages. In case you are not familiar with installing AUR packages, read the documentation on the Arch Linux Wiki: https://wiki.archlinux.org/index.php/AUR_helpers
Let's start with installing postgres. Postgres is automatically pulled in as a dependency of openacs, but you should verify before installing openacs that everything is working. In case anything goes wrong with your postgres installation, OpenACS will run into errors when trying to setup the database after installation.
➤ sudo pacman -S postgresql
Let's start the service and check if it runs correctly.
➤ sudo systemctl start postgresql
➤ sudo systemctl status postgresql
● postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; disabled; vendor preset: disabled)
Active: active (running) since ....
A fresh installation of postgres might require to run initdb first:
➤ sudo -u postgres -i
[postgres]➤ initdb --locale en_US.UTF-8 -E UTF8 -D '/var/lib/postgres/data'
Now let's install OpenACS.
Needless to say, you can replace yaourt (which is deprecated) in the following command with your preferred AUR helper application.
➤ yaourt -S openacs
In case you are wondering, this will also take care of dependencies.
After the installation we can start it conveniently with systemd:
➤ sudo systemctl start openacs
➤ sudo systemctl status openacs
Before you start the OpenACS (5.9.1 release) bootstrap installer for the first time on a system running Postgres 11, make sure the following change from the cvs is applied: http://cvs.openacs.org/browse/OpenACS/openacs-4/packages/acs-kernel/sql/postgresql/postgresql.sql?r1=1.51&r2=1.52
Have fun with OpenACS!
Created by Gustaf Neumann, last modified by Gustaf Neumann 14 May 2019, at 10:28 AM
This page describes how to install OpenACS with NaviServer on Unix-like systems (e.g. Linux, macOS, Solaris, OmniOS) by compiling all but PostgreSQL from scratch, guided by script that collects the components from various sources, compiles it, etc.
The installation is done in two steps:
- install-ns.sh : Install NaviServer and its components for a PostgreSQL installation from scratch by obtaining the relevant sources and compiling it. The script assumes PostgreSQL to be already installed (or obtainable via package managers), and installs all other components by obtaining it from the source repositories and compiling it from scratch (e.g. Tcl, tcllib, tDOM, libthread, nsf/XOTcl 2).
- install-oacs.sh : Install OpenACS from CVS/git. This script configures a (pre-installed) PostgreSQL installation for
OpenACS, adds hstore, installs OpenACS core, basic OpenACS packages, xowiki, xowf and optionally dotlrn from CVS/git and generates a config file and startup files (for Ubuntu and Fedora Core). The script assumes a pre-existing NaviServer installation, installed e.g. via install-ns.sh
These install scripts are frequently updated when new components are released or problems are detected (commit log ).
If you open the links above, use save-as in the browser to save the files. Alternatively, download the files as .zip file or clone the repository via GitHub .
git clone https://github.com/gustafn/install-ns
The scripts work under a typical Linux installation (e.g. Ubuntu, Fedora Core) as well as on Mac OS X or on OmniOS. The scripts are tested with PostgreSQL 9.1, 9.2, 9.3, 9.4 and 9.5 on Ubuntu 12.04, 13.04, 14.04, 16.04, 18.04, Raspbian GNU/Linux 9.4 (stretch), Fedora Core 18 and CentOS 7.
On a a fresh Ubuntu installation, you should be able to download the two scripts from this page and install OpenACS with NaviServer in the following steps:
bash install-ns.sh build
bash install-oacs.sh build
After running both scripts in the default configuration you will see e.g.
Congratulations, you have installed OpenACS with NaviServer on your machine.
You might start the server manually with
sudo /usr/local/ns/bin/nsd -t /usr/local/ns/config-oacs-5-9-1.tcl -u nsadmin -g nsadmin
One can start the server manually with the mentioned command.
On Fedora/CentOS or on Ubuntu installations starting with 15.04, systemd is used. The generated startup file for RedHat/Fedora is in /lib/systemd/system/oacs-5-9.service. The startup commands for systemd are
sudo systemctl status oacs-5-9-1
sudo systemctl start oacs-5-9-1
sudo systemctl stop oacs-5-9-1
Remember, when a new systemd service is installed, systemd requires the following command to re-scan its service files:
sudo systemctl daemon-reload
To start OpenACS automatically on every new start of the machine, issue the following command:
sudo systemctl enable oacs-5-9-1
Alternatively, some older Ubuntu versions (up to 15.04) use upstart. For upstart, the the generated startup file is in /etc/init/oacs-5-9-1.conf. The service can be started/managed with the following commands
sudo initctl status oacs-5-9-1
sudo initctl start oacs-5-9-1
sudo initctl stop oacs-5-9-1
When the service is running, one can use use OpenACS by browsing to http://localhost:8000/ (when the browser and server is running on the same host). The relevant files are stored under the following locations: