We provide installers to get your server up and running on Windows, and major Linux distributions.
Read first
This package is a command line installer, it requires no GUI. Run it in the PowerShell console
as an administrator. It installs
I, Librarian Local Storage on Windows 10+, and Windows Server 2016+, as
a self-contained application, which will not interfere with your existing server
instance. I, Librarian stores
your data in C:\ILibrarianStorage. Please back up this directory regularly.
The installer also provides a helper PowerShell script
ilstorage, which you can use
to perform some essential functions:
usage: ilstorage help
ilstorage (start|stop|restart|status) (server|php|solr|dns|<empty string>)
ilstorage allow -ip <IP number>
ilstorage dns install -key <activation_key>
ilstorage dns uninstall
ilstorage tls -host <host>
ilstorage upgrade -v <version>
ilstorage uninstall
help - this screen
start - start the service(s)
stop - stop the service(s)
restart - restart or start the service(s)
status - show the status of the service(s)
allow - allow the IP number to access the web storage interface
upgrade - upgrade to the version specified in the -v flag
dns - install, uninstall the dynamic DNS service, activation key required to install
tls - install a new TLS certificate for host
uninstall - uninstall this software DANGER! ALL STORED DATA WILL BE DELETED
Installation
-
First, download our installation package from the link we emailed you, and verify its integrity.
Replace [KEY] with the actual link key:
$ProgressPreference = 'SilentlyContinue'
Invoke-WebRequest https://i-librarian.net/download/[KEY]
-OutFile i-librarian-storage-5.10.4-pro-windows.zip
if((Get-FileHash i-librarian-storage-5.10.4-pro-windows.zip | Select-Object -ExpandProperty Hash).ToLower()
-eq '272e102c286dd5ac84678720811ad070cd74943816aeb9d62f184b8b48f0574c') {
Write-Host 'Package is OK' } else { Write-Host 'Wrong package!' }
-
Extract the archive and run the installer:
Expand-Archive i-librarian-storage-5.10.4-pro-windows.zip
cd i-librarian-storage-5.10.4-pro-windows
.\installer.ps1
-
You will be asked to connect your computer using a static IP, your domain name, or our
dynamic DNS service. If you choose dynamic DNS, your activation code will be required.
Also, if you want to use our dynamic DNS service, you must assign your router's public IP to your
computer in the local network. You can accomplish this in the router firewall, in a section
usually called IP passthrough. In there, assign the computer IP, or the MAC address, and
restart.
-
You will be asked to choose how many GB of RAM to reserve for Apache Solr. Enter preset
default, if you are not sure. The bigger the library, the more RAM is required.
-
Open the storage interface in a web browser at https://[PUBLIC IP/DOMAIN NAME]:38443,
and follow the instructions to connect your server to our network. Please note that you
may need to enable port 38443 (both UDP and TCP) in both your router, and computer firewall
to be able to open the web interface.
-
To access the storage web interface, you must add your client IP to the allowed_ips
list in ilibrarian.ini. Replace [YOUR IP] with the actual IP number:
ilstorage allow -ip [YOUR IP]
Read first
This package installs
I, Librarian Local Storage on the following x64 Linux distributions:
- Ubuntu 22.04 (tested)
- Fedora 36 (tested)
- CentOS 9 Stream with EPEL (tested)
- Rocky Linux 9 with EPEL (tested)
- AlmaLinux 9 with EPEL (should work, not tested)
- Manjaro (tested)
It uses native PHP packages, but will otherwise not interfere with your existing server
instance. The installer places program files in
/opt/i-librarian, configuration files in
/etc/opt/i-librarian, and store data in
/var/opt/i-librarian. Please back up
this directory regularly.
The installer will also install a helper PowerShell script
ilstorage, which you can use
to perform some essential functions:
usage: ilstorage help
ilstorage (start|stop|restart|status) (server|php|solr|dns|<empty string>)
ilstorage allow -ip <IP number>
ilstorage dns install -key <activation_key>
ilstorage dns uninstall
ilstorage tls -host <host>
ilstorage upgrade -v <version>
ilstorage uninstall
help - this screen
start - start the service(s)
stop - stop the service(s)
restart - restart or start the service(s)
status - show the status of the service(s)
allow - allow the IP number to access the web storage interface
upgrade - upgrade to the version specified in the -v flag
dns - install, uninstall the dynamic DNS service, activation key required to install
tls - install a new TLS certificate for host
uninstall - uninstall this software DANGER! ALL STORED DATA WILL BE DELETED
Installation
-
First, download the installation package from the link we emailed you, and verify its integrity.
Replace [KEY] with the actual link key:
wget https://i-librarian.net/download/[KEY] -O i-librarian-storage-5.10.4-pro-linux.tgz
if [ $(sha256sum 'i-librarian-storage-5.10.4-pro-linux.tgz' | awk '{print $1}') =
'0429b2bd504d5ae1f7579441f3234127c8364f8144c7489d7f8565bcdf6c36c3' ]; then
echo 'Package is OK'; else echo 'Wrong package!'; fi
-
Unpack the archive and execute the installer. You must run it using sudo, or as root:
tar xzf i-librarian-storage-5.10.4-pro-linux.tgz
cd i-librarian-storage-5.10.4-pro-linux
sudo bash install.sh
-
You will be asked to connect your computer using a static IP, your domain name, or our
dynamic DNS service. If you choose dynamic DNS, your activation code will be required.
Also, if you want to use our dynamic DNS service, you must assign your router's public IP to your
computer in the local network. You can accomplish this in the router firewall, in a section
usually called IP passthrough. In there, assign the computer IP, or the MAC address, and
restart.
-
You will be asked to choose how many GB of RAM to reserve for Apache Solr. Enter preset
default, if you are not sure. The bigger the library, the more RAM is required.
-
Open the storage interface in a web browser at https://[PUBLIC IP/DOMAIN NAME]:38443,
and follow the instructions to connect your server to our network. Please note that you
may need to enable port 38443 (both UDP and TCP) in both your router, and computer firewall
to be able to open the web interface.
-
To access the storage web interface, you must add your client IP to the allowed_ips
list in ilibrarian.ini. Replace [YOUR IP] with the actual IP number:
ilstorage allow -ip [YOUR IP]
I, Librarian storage server has to meet requirements enumerated below.
We do not provide help with their installation.
1. Apache Solr
Solr is used for the full text search. You should increase its memory allocation in solr.in.sh
to at least 1-2g. Solr also requires Java.
Download Solr
Download OpenJDK
After you install Solr, there are a few steps that are required for I, Librarian to function:
-
Create a Solr core named "template":
su - solr -c "/opt/solr/bin/solr create -c template -n data_driven_schema_configs"
- Add library paths for UTF-8 support in solrconfig.xml inside the config tag.
The exact file paths may differ in your Solr version:
<lib path="/opt/solr/modules/analysis-extras/lib/solr-analysis-extras-9.0.0.jar" />
<lib path="/opt/solr/modules/analysis-extras/lib/lucene-analysis-icu-9.0.0.jar" />
<lib path="/opt/solr/modules/analysis-extras/lib/icu4j-68.2.jar" />
-
Reload the template core:
curl 'http://localhost:8983/api/cores/template/?action=RELOAD'
-
Copy the template conf files to a configsets directory:
mkdir -p /var/solr/data/configsets/template
cp -R /var/solr/data/template/conf /var/solr/data/configsets/template
chown -R solr:solr /var/solr/data/configsets
2. Web server with PHP
Any web sever will do. PHP version 8 is required, with the following extensions:
curl, gd, intl, json, mbstring, sodium, sqlite3, xml, zip.
All data transfer must be encrypted, therefore a TLS certificate is required. The default
self-signed certificate included with Apache will not work for I, Librarian.
You can also use a certificate authority (CA)-signed certificate, if you have one installed.
3. Shared libraries
We use poppler-utils, ghostscript, and zip. They are included in the Windows source package,
and are common libraries on all Linux platforms.
4. Install I, Librarian Storage
I, Librarian source can be installed in these steps, with examples below:
-
Unpack the source package outside the web root directory:
Expand-Archive source.zip -DestinationPath "C:\ILibrarianStorage"
tar xzf source.tgz -C /var/www/i-librarian
-
Make data directory writable by the web server on Linux:
chmod 0777 -R /var/www/i-librarian/data
-
Point the web server to the public directory using a symbolic link, server alias, or virtual
host configuration, example:
Alias /librarian /var/www/i-librarian/public
<Directory /var/www/i-librarian/public>
AllowOverride All
Require all granted
</Directory>
-
To access the storage web interface, you must add your client IP to the allowed_ips
list in ilibrarian.ini. Replace [YOUR IP] with the actual IP number:
(Get-Content "C:\ILibrarianStorage\etc\config\ilibrarian.ini").replace('allowed_ips = "',
'allowed_ips = "[YOUR IP],') | Set-Content "C:\ILibrarianStorage\etc\config\ilibrarian.ini"
sed -i 's/allowed_ips \= "/allowed_ips \= "[YOUR IP],/'
/var/www/i-librarian/config/ilibrarian.ini
-
Open the storage web interface in a web browser at https://[SERVER_IP/DOMAIN_NAME]/librarian,
and follow the instructions to connect your server to our network.