ILIAS-7-Install-Tutorial for Ubuntu 20.04
ILIAS-Upgrades
Strategy - do not skip a major release
- Do not skip a major release
- That means:
- If you come from 5.4 and your goal is 7.x, first upgrade to 6
Preperations
ILIAS > 5.4 (6, 7, ...)
- If you run the PlugIn ctrlmainmenu, be aware that this PlugIn will not be available for ILIAS 6 or higher. So write down your menu structure and reconstruct is the the ILIAS menu editor that came with 5.4.
ILIAS > 6 (7, ...)
- Only one client per installation! This means:
- In the directory ilias/data can not be more than one client
- If there are more, you have to set up for each client a seperate installation
- eg.Â
- /opt/iliasdata1
- /opt/iliasdata2
- /var/www/html/ilias1
- /var/www/html/ilias2
- eg.Â
ILIAS-Versions <=6
- ILIAS <= 6: Disable a possibly activated cache in ilias/setup/setup.php ->Client-Settings or in ilias/data/client123/client.ini.php.Â
- Otherwise you could run in the problem that the plugins will not update/get activated as you expected
Check disk size and folder size
- Disksize:
df -h /
- Foldersize:
du -sh /var/www/html/ilias
du -sh /opt/iliasdata
Check plugins
- If you need to run a plugin (Etherpad, BBB), you should only uprade ILIAS if the current plugin supports the new version. You should update the specific plugins like described in the chapter Updates and then have a look in the file plugin.php:
- ilias_min_version = "5.3.0";
- ilias_max_version = "5.4.999";
- This means, the plugin can not be used for ILIAS 6 or higher. In this case, you have tp wait wait until the new version is available.
- I do NOT recommend to uninstall all plugins before upgrading
- Uninstall only PlugIns that does not collect userdataÂ
- E.g. if you uninstall Etherpadlite-PlugIn, hundreds of pads could disapear
- Uninstall only PlugIns that does not collect userdataÂ
- Examples for upgrading to ILIAS 8:
cd /var/www/html/ilias
- BBB
cd /var/www/html/ilias/Customizing/global/plugins/Services/Repository/RepositoryObject/BigBlueButton
git stash
git pull
git branch -r
git checkout release_8
- Be aware: After choosing release_8 your ILIAS 7 installation will stop working unless it gets upgraded to the version 8 that fits with the plugin (and so on)!
- Etherpadlite
cd /var/www/html/ilias/Customizing/global/plugins/Services/Repository/RepositoryObject/EtherpadLite
- Have a lool at:
- https://github.com/ILIAS-Verein/EtherpadLite
git remote set-url origin https://github.com/ILIAS-Verein/EtherpadLite.gitÂ
git remote -v
git fetch origin
- Flashcards
- ??
- If ILIAS 7.x is installed and you Upgrade a Plugin which is only suitayble for another version (8.x), your ILIAS installation will imediately STOP WORKING if you still run 7.x!
- So this should be done when your ILIAS is in maintenance mode :)
- Deactivate all PlugIns before proceeding in ILIAS
- Consider to uninstall all plugins that do not contain userdata or such you will rarly use
- Do NOT upgrade until all plugin in ./Customizing/global/plugin are capable to run with your desired ILIAS version. Your update process will fail!
PHP-Versions
- You need to run the PHP version that suits to the new ILIAS version
- Checkout this site (there is a list with the needed PHP versions)
Composer Version
- We installed once composer with apt install composer
- In Ubuntu 20.04 this gives version Composer 1.10.1 which is OK for ILIAS 7 (or 6, but I am not sure)
- For ILIAS 8, the Composer 1.10.1 version leads to something like this:
- PHP Fatal error: Â Uncaught Error: Call to undefined function mb_strtolower() in /var/www/html/ilias/libs/composer/vendor/simplesamlphp/composer-module-installer/src/SimpleSamlPhp/Composer/ModuleInstaller.php:94
- So I decided to upgrade the composer version to a version > 2, using this website: https://medium.com/techvblogs/update-composer-in-ubuntu-4138e36205eb
- I think what I did was:
apt-get remove composer -y
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --install-dir=/usr/bin --filename=composer
- For ILIAS 8:
composer self-update --2
- For ILIAS 7 (not testet):
composer self-update --1
- I think what I did was:
Backups
Backup the database
- Disable ILIAS:
nano /var/www/html/ilias/data/CLIENTNAME/client.ini.php
access = "1"
- Copy also the database credentials from this file
touch /opt/scripts/dbclone
chmod +x /opt/scripts/dbclone
nano /opt/scripts/dbclone
- Insert this and chance first lines:
1 | #!/bin/bash |
- Run the script:
/opt/scripts/dbclone
Test the new Database
- Change the database name in
/var/www/html/ilias/data/info/client.ini.php
to thename ildb_clone
for to test if the database would do its job. - Rename the database name in the client.ini.php to the originally name and start the upgrade process
Backup the Client Files
- Since ILIAS 7.x, a new file storage concept has been implemented. That means, that after migrating your files due the upgrade process there would be no go back to ILIAS < 7.Â
- Backup your client data:
- Backup all from /var/www/html/ilias/data/clientname
- Backup all from /opt/iliasdata/clientname
Upgrade ILIAS
Select a branch and get the new ILIAS version
cd /var/www/html/ilias
git stash
git pull
- Have a look at the current branch:
git branch
- List all available branches:
git branch -r
- Choose a branch (here release 6):Â
git checkout release_6
- Till ILIAS 6:
- cd /var/www/html/ilias
composer install --no-dev
- Go to
ilias/Setup/setup.php
to perform database updates - Enable the client
- Since ILIAS 7.x or higher:
cd /var/www/html/ilias
composer install --no-dev
- Delete all plugin folder thet composer do not like (error code 255). Better than deletion is to move them to another folder outside. Plugin directorys nromally do not contain userdata.
- You are done when you red in green: OK All static artifacts are build!
php setup/setup.php update
- Or try:
php setup/setup.php migrate --no-plugins
- Or try:
php setup/setup.php migrate
- Or try:
php setup/setup.php migrate --no-plugins
- If the files are not converted to the new storage yet, try:
php setup/cli.php migrate --run ilFileObjectMigrationAgent.ilFileObjectToStorageMigration --steps 100
- Repeat the step until everything is migrated. Raise steps value, eg. 5000.
- Or try:
- <= ILIAS 6: Login to ILIAS and perform language updates in
Administration->Languages
andAdministration>PlugIns
- Activate plugins, maybe you have to do an db update first (all in Administration->plugins)
- Download a new online help file https://docu.ilias.de/goto_docu_cat_3255.html
- Next page: Troubleshooting!