How to Install Access to Memory (AtoM) on Ubuntu Server Latest

Access to Memory (AtoM) is an open-source web-based application that provides tools for managing archival descriptions and digital archives. In this tutorial, we will cover the steps required to install AtoM on an Ubuntu Server Latest.

Prerequisites

Before installing AtoM, you should have the following:

Step 1 – Install AtoM Package Dependencies

Before installing AtoM, we need to ensure that all the necessary packages are installed. Run the following commands to install them:

sudo apt update
sudo apt install -y imagemagick sudo mariadb-server mariadb-client apache2 libapache2-mod-php7.4 php7.4 php7.4-mysql php7.4-imagick php7.4-xml php7.4-mbstring php7.4-gd php7.4-apcu php7.4-zip php7.4-curl

Step 2 – Create a MySQL Database for AtoM

Create a new MySQL database for AtoM, and then create a new MySQL user for AtoM with the user privileges to manage the database.

sudo mysql -u root -p

CREATE DATABASE atom_db;
GRANT ALL PRIVILEGES ON atom_db.* TO 'atom_user' IDENTIFIED BY 'atom_password';
FLUSH PRIVILEGES;
EXIT;

Step 3 – Install Access to Memory

Extract the Access to Memory software package that you downloaded from the official website https://www.accesstomemory.org/ in a directory that Apache can read such as /var/www/html. Then, navigate to the extracted directory and copy the config/atom.conf file to Apache's sites-available directory, and then enable it:

sudo mv /path/to/atom-x.x.x /var/www/html/atom
sudo cp /var/www/html/atom/config/atom.conf /etc/apache2/sites-available/
sudo a2ensite atom.conf

Step 4 – Configure the Apache Virtual Host

Edit the /etc/apache2/sites-available/atom.conf file to match your server requirements. Replace your-server-fqdn with your server's fully qualified domain name, or the IP address of your Ubuntu Server Latest machine to listen on all addresses.

sudo nano /etc/apache2/sites-available/atom.conf

Contents of the atom.conf file:

<VirtualHost *:80>
    ServerName your-server-fqdn

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html/atom

    ErrorLog ${APACHE_LOG_DIR}/atom-error.log
    CustomLog ${APACHE_LOG_DIR}/atom-access.log combined

    <Directory /var/www/html/atom>
        AllowOverride All
        Require all granted

        php_value upload_max_filesize 2G
        php_value post_max_size 2G
    </Directory>

</VirtualHost>

After updating the configuration file, save and exit the editor.

Step 5 – Restart Apache Server

You can restart Apache server to enforce changes by running:

sudo systemctl restart apache2

Step 6 – Install Access to Memory Database Schema

Access to Memory provides the mysql script to create the Access to Memory database schema. To create the schema, execute the following commands:

sudo mysql -u atom_user -p -D atom_db < /var/www/html/atom/plugins/arCreateDatabasePlugin/db/mysql/build/atom-schema.sql
sudo mysql -u atom_user -p -D atom_db < /var/www/html/atom/plugins/arCreateDatabasePlugin/db/mysql/build/atom-default-data.sql

Step 7 – Configure Access to Memory

Create a new configuration file by copying the config/parameters.yml.dist file:

sudo cp /var/www/html/atom/config/parameters.yml.dist /var/www/html/atom/config/parameters.yml

Edit the config/parameters.yml file to match your server configuration with the correct database, server name, and mail settings. Replace your-server-fqdn with your server's fully qualified domain name or IP address.

Save and exit the editor.

Step 8 – Complete Access to Memory Installation

Finally, open your web browser and visit your server's IP address or domain name where you configured atom.conf virtual host in Step 4.

Log in using the default credentials (username: admin, password: admin). After logging in, you can update the Administrator email address and password in the Settings menu.

Congratulations! You have successfully installed Access to Memory on your Ubuntu Server Latest.

If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!

Alternatively, for the best virtual desktop, try Shells!