CODA Setup with AlmaLinux9.4

Installation of CODA3.10 edit

CODA (CEBAF Online Data Acquistion) is a framework for high-speed data acquisition developed initially at JLab.

In Luter 345, the CODA setup is managed using GitHub, and can be found here:

http://github.com/brash99/coda.git

From the coda user account created on the installed AlmaLinux system, one can install the entire CODA system (including the appropriate Java libraries, all of the VME submodule readout codes, databases, etc.) using a script located in the coda home directory:

cd

./coda3_install

This will create a folder /home/coda/coda which contains all of the required software.

In order to set up the environment variables properly, one needs to add the following line to /home/coda/.bashrc

source /home/coda/coda/coda_scripts/setupCODA3.bash

As mentioned in the previous section on AlmaLinux9.4 installation, one may need also to edit a few files to change the machine name as required. These changes are detailed in:

/home/coda/coda/machine_name_occurences

GitHub Configuration edit

All of the required GitHub configuration is specified in /home/coda/.ssh/config. In order to push changes to the origin GitHub repository, one needs also to install the appropriate RSA public and private keys, id_rsa_github.pub and id_rsa_github, which also reside in /home/coda/.ssh/

Passwordless SSH Configuration edit

It is necessary to set up passwordless SSH login from the installation machine (jlabcoda) to the VME Linux controller (jlabvme).

1. Generate RSA keys for the jlabcoda account with ssh-keygen -t rsa (choose no password and the default location, which will be /home/coda/.ssh)

2. Login via ssh to jlabvme as the root user, with:

ssh root@jlabvme

(Note, you will have to specify the password until you have things set up as in Step 3 below)

3. Add the generated RSA key (/home/coda/.ssh/id_rsa.pub) to the authorized_keys file with:

cd .ssh

scp coda@jlabcoda:~/.ssh/id_rsa.pub junk

cat junk >> authorized_keys

4. Log out of jlabvme, and then test that you can ssh from the coda account on jlabcoda to the root account on jlabvme with 'ssh root@jlabvme' again.

rm junk