next up previous contents
Next: How to Upgrade Open Up: Open Administration for Schools Previous: Contents



Version Information

Please read this over before trying to do too much!

Overview for Newbies

Each school that is running Open Admin would normally have three virtual for the school office, one for teachers, and one for parents/students. They will live in different directories and be accessible by different people with different rights of access. If installing 2 schools (by running the install-3 script twice), then you would have 6 virtual sites, 3 for each school, etc.

The required files (html files, cgi scripts, configuration settings, and templates for all sites for each school are located in a common folder, normally under the school name. /opt/openadmin/YOURSCHOOL.

The administration or office site has it's files in admin for the HTML files and cgi for the matching cgi scripts. Similarly the teacher site directories are called tadmin and tcgi. So also, padmin and pcgi for the parent site.

If you are limited to having one site only (as some Australian schools are), it can also be configured to run on this single site.

File Locations

Everything is normally arranged:

/opt/openadmin/andrews/admin - for St Andrew's School main admin site
/opt/openadmin/andrews/tadmin - for St Andrew's School teacher site
/opt/openadmin/andrews/padmin - for St Andrew's School parent site

As well as these 6 folders, there are 3 additional folders for:

Together, these 9 folders make up the Open Admin files for a school.

There is also a global.conf configuration file listing all of the schools in a school division, consortium, etc. if more than one installation. If not, then only the version of this file found in the school's etc directory need be used. It contains enrollment codes as well as read only access credentials to read other schools databases to check for withdrawn student info (during enrollment) to simplify data entry.

If more than one school installation is done, the global.conf file should be placed in


so that all school installations may read it, and share data. This is so that withdrawn students from one school can be easily enrolled in another (ie. feeder schools). Even single schools have to add their database name to this file. This is one of the installation problems people have had in the past, and which is now more easily done with the new installation scripts. The location of this directory in set in the admin.conf file and would normally be in your schools etc folder by default.

If you are running the IEP (Special Education) site, you can install those files in:

/opt/openadmin/iep2016/admin - for the special needs website.

The Simple Install - Debian/Ubuntu

  1. Install Linux (Debian). The current version with the 9.00 release is for Debian 8.1 and Ubuntu Server 14.04.3LTS. Older versions of Linux may not work correctly with the new version of the Apache web server and it's method of session management, so upgrade if necessary. For a minimal secure server installation in Debian, turn off the desktop, and print server choice, leaving only the 'Standard System utilities' choice to minimize running software and installation issues. Open Admin installs the software it needs with the install scripts 1 and 2 (outlined below).

  2. Download Open Admin. Untar the download (tar xvzf openadmin-X.XX.tar.gz ) and change to the utility/install-debian directory.

  3. Run the scripts in numeric order from 1 to 3. (You should be running as root and prepend the scripts with ./ (ie. ./ ) Script 1 will install Apache and MySQL/MariaDB and other required apps (via apt-get). Script 2 will install perl modules not available as Debian packages.

    Script 3 does the main OA site installation including the MySQL database creation. Script 3 can be run again to install other schools on the same server. In order to use script 3 you should decide on/enter the following:

    At this point you should be able to log into your new admin site installation, once you have added this website address to your local hosts file (on the workstation used to access the site) or on your DNS server that provides the mapping between the website names and the IP address of the server. You cannot just use the IP address of the server to access the virtual sites on the server, since this will only give you the default website.

    You can then add staff members on the Start/End of Year (EOY) tab, by clicking on 'Add' under the staff management section. By using the staff members userid and password you can then access the teacher site (as soon as you have added the teacher site also, to the hosts file or DNS server).

Other Installation/Update Scripts

  1. The 'removesite' script can be used to remove sites (the reverse of script 3). will do the installation of the special education site, also.

  2. If updating your installation, then use the update script. This will update your installation from as far back as OA 5.25. If you have a version older than that, then manually update the database using files in utility/sql_older to bring it up to the 5.25 level first. Then use the update script.

  3. OA is now installed and accessible using those web addresses (URL's) specified during installation. If you don't yet have these web addresses in your DNS server, you can edit your workstation computer 'hosts' file to map the web addresses to the IP address of the server. Look up the hosts file entry in Wikipedia for more information about the location for your operating system.

    You can use 'ifconfig' program to find the IP address of your server if you do not already know it. If the server address was (a local LAN address) and the web addresses you specified in the install-3 script were, etc. you can then put that into your hosts file:

    Note: Using the URL in your web browser will not work, since virtual sites need the website name (ie. passed in the HTTP header in order to deliver you the correct site. Using any variant of the IP address will only give you the default page for the web server.

Program Requirements

One of the design goals of OA was to make it relatively easy to install and lightweight to run both in hardware and bandwidth demands so that even satellite connections with long latency will work. This has already been demonstrated in many remote schools.

The install 1 and 2 scripts will install all of the required software listed below. Feel free to skim over this material, but it is only for reference purposes. The install 3 script does the installation for a school (to setup your 3 virtual sites).

The size of your logo.gif should be approximately 150-200 pixels high or so (and a reasonable width). Excessive width (more than 300 pixels or so) may cause layout problems on smaller screens. Pick a size that is pleasing when displayed on the main page. This should give a good starting point. A smaller version of the school logo (about 100 pixels high) should be saved and renamed to logotn.gif (Logo Thumbnail) This is the logo visible on the attendance, discipline, report card pages, etc. To conserve bandwidth, these should be as small as possible. The other 2 small image files tabactive.gif, tabmain.gif (total 2k in size) implement the menu system on the admin site. There is now a script to upload these into position on the Start/ End of Year page.

Importing Student / Staff Data

The student information can be uploaded from a CSV spreadsheet file using the import script on the Export page of the main admin site called 'Import Student Records - CSV'. This is the easiest approach. Simply save your spreadsheet student information as a CSV file, first. Make sure that your birthdates are in standard ISO format: yyyy-mm-dd.

There is a matching script that can also import staff information.


You use the 'Configure Open Admin' button on the Start/End of Year Page to configure Open Admin (OA).

This system stores configuration data in a database table 'conf_system' and also writes those values into various files in the /opt/openadmin/YOURSCHOOL/etc folder to be read by scripts. We are gradually moving away from the use of those files to using the database table directly.

The main configuration file is called admin.conf and is read by all scripts from main admin (cgi), teacher (tcgi), and parent (pcgi). Setting correct values is very important since it affects all program operations.

There is also a global configuration file ( nominally located in the school etc folder and called global.conf) that stores information about all of the schools on the local server (normally, that would be all participating schools in the division). This information is used to enable global reporting. This is used by central office for reporting as well as used by the schools to enable school transfers of demographic information. Once a secretary or admin in a school finds the student number of a withdrawn student, they can simply put that number into the normal entry/withdraw input box on the main page to register that student and have all demographic information transferred.

I've located the global config file in the school etc folder, and set the admin.conf configuration file to point to it's location there. This is because most installations are for single schools, not large division installs.

If you are doing a multiple school installation then move this file to a global folder at top level (ie. /opt/openadmin/global). Add all databases to it. Then edit all school admin.conf files so that their $globaldir setting points to this folder.

The Look and Feel of all school sites can be changed by using the 'Set Background Color' and 'Set Logo Files' buttons on the EOY page.

The HTML pages are basically separate from the scripting, so that the look of all school sites can be changed extensively if desired by simply changing the html files and the CSS files. The only issue will be to maintain those elements in the CSS files used by the scripts to control report rendering, etc.

Getting Started on the Browser Side...

From this point on, secretaries may take over, if desired. The following functions are on the Start/End of Year page (There is more about this in the User Documentation under Getting Started).

  1. Add your teachers and other staff members. For a teacher in a split situation (teaching 2 grades in the same classroom), add those 2 grades into the grade area, but with the same homeroom value. For jobsharing teachers, add each one separately with the same homeroom.

    In a middle years or high school (or with any subject specialists who only teach certain subjects such as music or foreign languages), the homeroom and grade fields are normally left blank. The teacher is grouped with students by their subject enrollment in his/her class.

  2. Set School Year See the section on setting the school year including terms and track and their meanings within OA.

  3. Enter school dates that school is not in session, Monday to Friday. This is located on the Start/End of Year page also.

    This includes any school holidays within the year and teacher inservices, etc. (The system automatically assumes that school is not in session on Saturday/Sunday). This should now correctly do attendance calculations, etc. The DayInCycle setting is used to mark those days that actually count in schools using different types of cycles (ie. 6 day cycles) for classes, even though the students may not be in class (ie. due to teacher professional development).

You are now ready to enter attendance, discipline, etc.

Install Appendix B - Setting Up Webname Resolution

You can set these website locations in individual computers in their hosts files so that they can access these sites without any DNS (Domain Name) records being installed on your DNS server (that maps webnames to IP addresses). This can be quite useful in initial testing before any DNS updates have been done. On Linux workstations these are located in /etc/hosts. On Windows workstations (XP) these are found in:


Look on the wikipedia website ( under Hosts file.

The entries in the hosts files look like this for Clifford Wuttunee School: # admin site # teacher site # parent site

Using hosts files will help hide the virtual sites to some degree, since there will not be DNS records for them. However, they have to individually maintained. Also, in terms of security, avoid placing links to admin sites on school web pages. (security by obscurity). The next step up in security is the use of SSL to give encrypted connections to/from websites.

next up previous contents
Next: How to Upgrade Open Up: Open Administration for Schools Previous: Contents