Server support

From UA Libraries Digital Services Planning and Documentation
Revision as of 08:43, 30 June 2017 by Jlderidder (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

In order to remediate item-level metadata, the metadata librarians each need to have access to the web server.

Thus, each one has their own home area and log in credentials, and each home area needs to be set up with softlinks that provide access to the directories they need to easily view (currently, this is only the XSL directory for the staging area of Acumen: /srv/www/htdocs/acumen/staging/assets/xsl). Additionally, the "www" group must be assigned to each user, to enable them to overwrite existing metadata in the web directories.

Also, each metadata librarian needs to be able to search for, modify, and/or extract metadata for remediation. Thus, each one needs to have scripts that enable them to do this work, and they also need to be able to transfer large quantities of files to and from their working area on the Windows Share drive. This requires Mount Points, one per user, as each has different permissions. These mount points are incorporated into the version of scripts each metadata librarian has in his or her home area.

See: Setting_Up_Metadata_Librarian_Work_Area (added 6/30/17)


As of 3/10/15, all these tasks are the responsibility of the Head of Metadata & Digital Services, as well as developing the necessary Linux server software the metadata librarians need. Should the home area, login, and group access need to be set up by someone else, please consult with a system administrator from Web Services or OIT.

When setting up a new metadata librarian, it's simplest to copy the scripts and subdirectories from an existing metadata librarian's home area, then change the mount point in each script (that references one) to the mount point that has the correct permissions for the new metadata librarian (you'll have to create that mount point; see Mount Points.


Oh, and we have local schemas (as well as exhibit tests, free software, images for icons used in browse, and more, online in /srv/www/htdocs/digital/ which can be accessed online here:

As of 3/10/15, the current setup for each metadata librarian on the libcontent server includes the following:

Within the home area , the following scripts:

  • changeDate (this will either add or change the recordChangeDate field in the MODS in a specified directory)
  • fixMODS (a search-and-replace script for MODS that places the revised ones in a specified directory, requiring a tab-delimited text input file)
  • getPurlsCN_txt (obtains PURLs in text form, incorporating input of a list of identifiers with call numbers on the same line)
  • getPurlsCN_xml (obtains PURLs in xml form, incorporating input of identifiers with call numbers on the same line)
  • getPurls_txt (obtains PURLs in text form, incorporating input of a list of identifiers)
  • getPurls_xml (obtains PURLs in xml form, incorporating input of identifiers)
  • (for use ONLY with Electronic Theses and Dissertations (ETDs)
  • (for use ONLY with non-ETD MODS)

and the following subdirectories:

  • MODS (MODS are placed here in dated subdirectories for transformation and distribution to Acumen)
  • ModsEditor
  • output (for output of errors and results of running fixMODS)

NOTE: Within the MODS directory, the metadata librarian will create subdirectories named for the date, such as 20150224. Within these subdirectories, he or she will place the MODS (and sometimes PDFs and associated ETD supplementary content) that need to be distributed to the web.

NOTE 2: Additional options for obtaining PURLS are available. See For_Getting_PURLS.

Within the ModsEditor directory, there are 3 scripts:

  • findName (will locate and copy MODS from Acumen that have a namePart element value specified as an argument in quotes on the commandline)
  • findRegEx (will locate and copy MODS from Acumen that have an element value specified in tab-delimited input file -- one regex per line -- with optional tag field in second column and optional collection number in third column)
  • getMods (will locate and copy MODS from Acumen based on commandline (collection ID, item ID or range of items) or a tab-delimited text file with one entry per line)

And on the ETD server (

Each metadata librarian home directory contains two softlinks:

lrwxrwxrwx 1 root     root     12 Apr 19  2013 etd_deposits -> /srv/uploads/
lrwxrwxrwx 1 malexand users     9 Apr 19  2013 working -> /srv/etds/

and two subdirectories:

  • samples
  • scripts

Within the samples directory are two sets of sample files, where we worked out how to transform the originals to MODS.

Within the scripts directory are the following:

  • moveContent (looks for zip files in the FTP directory, and collects them up into a directory named for the day's date)
  • processEtds (pulls zip files from selected directory, unzips, counts, checks, creates a manifest, assigns identifiers and PURLs, determines embargo release date, and inserts information into the InfoTrack.bornDigital database table for content management)
  • partial (processes already unzipped files in a selected area -- same process as above)

For more information, see Electronic Theses and Dissertations.

To enable access to the FTP'd content, the home area for the FTP access ( /home/ftpaccess/ ) is actually a softlink to /srv/uploads which belongs to group "user" (as do all the metadata librarians). When the zip files are opened, they are opened to dated directories in /srv/etds/ (which also belongs to group "user"). This is where the preprocessing takes place.