オープンソース eラーニング
  • ログイン

階層リンク ナビゲーション

タブ

機能

  • m.mainzer | m.mainzer | 05. Jan 2019, 14:06
    編集日: 05. Jan 2019, 14:08 - by m.mainzer | m.mainzer
    Anwender bat mich um IT-Support

    Hallo zusammen,

    ich wurde von einem reinen Anwender um Hilfe gebeten.
    Erst einmal die Geschichte drum rum. Dem Anwender wurde irgendwann mal von jemandem eine ILIAS Version auf einem Webhoster zur Nutzung zur Verfügung gestellt. Irgendwann hat man ihm die Domain übertragen... und ILIAS ist anscheinend nie wirklich gewartet und upgedated. Durch irgendeine Umstellung bei dem Webhoster läuft jetzt ILIAS nicht mehr richtig. Ich gehe eher mal davon aus, dass hier irgendwelche PHP-Version beim Hoster aktualisiert wurden oder die Datenbanken geändert wurden.

    Egal wie... er kann ILIAS nicht mehr nutzen :-(

    Jetzt bat er mich um Hilfe.

    Mein Problem: Ich weiß nicht, welche Version damals installiert und / oder nie weiter upgedatet wurden. Kann man das irgendwie einsehen, da ich noch Zugriff per Weboberfläche auf die Datenbank habe und auf die FTP-Files. Gibt es irgendwo eine Datei, in der ich die installierte Version auslesen könnte, ohne mich auf der Oberfläche anzumelden zu können / müssen?

    Dann könnte ich evtl. ein Update von Version nach Version machen - falls das auf FTP-Ebene / Datenbank-Ebene von Hand möglich ist.

    Ich habe auch mal unter https://docu.ilias.de/goto_docu_pg_116869_1719.html?lang=de nachgeschaut, welche Versionen es mal gab und wann die exisiterten. Evtl. hätte ich hier von Datei-Erstellungsdaten auf die Version schließen können. Aber ich unterschiedliche gefunden :-( Irgendwelche Daten zwischen 2009, 2010, 2011, 2012 und vermutlich finde ich noch mehr Jahreszahlen da drin :-( So komm ich auch nicht weiter, es sei denn, ich könnte mir genaue eine Datei als Anhaltspunkt anschauen. Dazu müsste ich aber auch wissen, welche ich schauen sollte.

    Wenn alles nichts bringt... dann könnte ich Ilias neu aufsetzen und versuchen die Fragen und Antworten von Tests und die Kurse auf die neue Datenbank zu bringen - sofern sich hier die Struktur nicht geändert hätte. Aber auch hier habe ich gesehen, dass in der neuen Version Datenbanktabelle hinzugekommen sind... ob welche weggefallen sind, weiß ich natürlich nicht (noch nicht).

    Vielleicht könntet ihr mir hier einen Tipp geben, welche Tabellen man kopieren sollte, um das zu testen.

    Nun gut... alles ziemlich uncool gelaufen und ich soll jetzt den Karren aus dem Dreck ziehen.
    Vielleicht könnt ihr mir dabei etwas helfen, da ihr sicher ILIAS-sicherer seid als ich :-)

    Alternativ-Ideen werden natürlich auch gerne probiert.

    Ein direktes Update wie in anderen Content-Managment-Systemen ist bei ILIAS aber nicht vorgesehen, oder hab ich hier was übersehen? Als Beispiel nehm ich mal Joomla oder ähnliches, da werden einem die Updates direkt angezeigt und man installiert sie nur. Das ist aber hier - und vor allem aber auch in den alten Versionen - (noch) nicht vorgesehen gewesen, oder? Wäre das mal eine Idee für auf die Feature-Wunschliste. Das würde es solchen Anwendern zumindest helfen, die Software auf dem aktuellen Stand zu halten... ob er das dann macht, ist ja ein anderes Thema, aber es wäre zumindest einfacher :-)

    Naja... ich hoffe, ihr könnt und wollt mir helfen.
    Ich wünsche euch noch ein schönes Wochenende.

  • rbaumgartner | rbaumgartner | 07. Jan 2019, 08:46
    Re: Anwender bat mich um IT-Support
    Die ILIAS-Version kannst du in der Datei 'include/inc.ilias_version.php' (relativ zum ILIAS-Installationsverzeichnis) auslesen, dort werden die Konstanten ILIAS_VERSION und ILIAS_VERSION_NUMERIC gesetzt.

    Das Vorgehen beim Update ist hier beschrieben, allerdings setzt dies eine Installation mit Git voraus. Das Ganze geht natürlich auch ohne Git, wird dann aber etwas mühsamer:
    https://docu.ilias.de/goto.php?target=lm_367&client_id=docu#upgrading-ilias

    Ob ein Update möglich ist, ist dann u.a. abhängig von den konkreten Versionen von ILIAS und PHP. Allenfalls könnte das Update auch auf einer anderen Maschine gemacht werden, nur so als Idee.
  • m.mainzer | m.mainzer | 11. Jan 2019, 02:25
    編集日: 11. Jan 2019, 02:26 - by m.mainzer | m.mainzer
    Re (2): Anwender bat mich um IT-Support
    Hallo,

    zunächst einmal vielen Dank für die Antwort.
    Das macht ja schon ein bisschen mehr Zuversicht, dass nicht alles verloren ist.

    Also (installierte) Version habe ich die Version 4.2.2 herausgefunden.
    \(define("ILIAS_VERSION", "4.2.2 2011-12-31");\)
    Kann ich davon eigentlich direkt auf die aktuell Release updaten oder muss ich erst auf 4.4.0 updaten? Habe irgendwo sowas gesehen, dass man nicht von überall auf die aktuell Version updaten könnte. (ehrlich gesagt, finde ich gerade auch nicht mehr die Informationsquelle, wo ich das mit Version 4.4.0 gesehen habe... - Sorry, etwas nachlässig von mir, dass nicht direkt zu notieren)

    Da git zur Verfügung steht, würde ich mir mit dem folgenden Befehl die aktuelle Version holen, wenn ich das richtig versteh:
    \(git clone https://github.com/ILIAS-eLearning/ILIAS.git ilias\)

    Ich habe dann ein Verzeichnis ilias, wo die "neue" Version abgelegt ist.

    Da ich mit Git nicht so viel mache...
    muss ich jetzt noch den folgenden Befehl ausführen:
    \(git pull\)

    Quelle: https://docu.ilias.de/ilias.php?ref_id=3274&obj_id=32446&cmd=layout&cmdClass=illmpresentationgui&cmdNode=6h&baseClass=ilLMPresentationGUI

    Der Webserver zeigt noch auf ein anderes Verzeichnis, wo das "alte" System noch installiert ist.
    Reicht es theoretisch jetzt aus, die Verzeichnisse zu ändern - sprich dem Webserver zu sagen, dass das die Daten jetzt aus dem Verzeichnis ilias geladen werden müssten und das könnte schon reichen oder muss ich noch die ganzen Befehle durchziehen, die man für ein Update machen muss...
    \(cd /opt/ilias/www/htdocs/ilias rm *.php *.xml *.dtd *.css rm -r classes content css docs images include java lang layouts libs rm -r modules setup sql src sso templates xml assessment chat tracking rm -r survey syntax_highlight course payment webservice ilinc link rm -r cron Services calendar Modules tar -xzf (...) funktioniert bei mir nicht, wie in der Beschreibung, da ich kein Verzeichnis ilias/src/tarballs/ilias-5.2.13.tar.gz finde cd /tmp/ilias cp -p * /opt/ilias/www/htdocs/ilias/ cp -rp classes cron docs include lang libs /opt/ilias/www/htdocs/ilias/ cp -rp Modules payment Services setup src sso templates /opt/ilias/www/htdocs/ilias/ cp -rp webservice xml /opt/ilias/www/htdocs/ilias/ anschließend noch die ilias.ini.php ins Root-Verzeichnis von Ilias verschieben und die Setup.php ausführen. Dann müsste man fertig sein?\)

    Wenn ich noch etwas beachten muss, wäre es schön, wenn du mir noch kurz Anweisung gibst... möchte halt nicht, die alten Daten verlieren, nur weil zu voreilig irgendwas gemacht habe.
    Oder habe ich etwas übersehen?

    nochmals vielen Dank für die bisherige Hilfe

  • rbaumgartner | rbaumgartner | 11. Jan 2019, 15:30
    編集日: 11. Jan 2019, 15:35 - by rbaumgartner | rbaumgartner
    Re: Re (2): Anwender bat mich um IT-Support
    Da ich das System nicht kenne, kann ich leider nur sehr allgemein Auskunft geben:
    • Ein Update von 4.2 auf 5.3 würde ich nicht empfehlen. Ich persönlich würde zunächst auf 4.4, dann auf 5.0 und schliesslich auf 5.3 aktualisieren. Das sind Updateschritte von denen ich weiss, dass sie grundsätzlich funktionieren.
    • Die einzelnen ILIAS-Versionen unterstützen nicht alle PHP-Versionen. Allenfalls musst du die Updates z.T. mit einer älteren PHP-Version durchführen (sprich PHP 5.5). ILIAS unterstützt z.B. PHP 7.0 erst ab Version 5.2. Das geht m.M.n. nur auf einem anderen System wo die genaue PHP-Version kontrolliert werden kann.
    • Wenn du dir die neue Version mit Git in ein separates Verzeichnis herunterlädst, musst du nachher auch noch das Verzeichnis 'data' und das File 'ilias.ini.php' ins neue Installationsverzeichnis kopieren (oder verschieben wenn zu wenig Platz vorhanden ist). Allenfalls muss auch noch das Verzeichnis 'Customizing' übernommen werden (enthält z.B. Plugins).
    • Unbedingt vor dem Update ein Backup der Datenbank anlegen. Für MySQL geht das z.B. mit 'mysqldump' (genaue Parameter sind abhängig von deinem System).
    PS: Die TeX-Funktion hier im Forum ist für die Auszeichnungssprache "TeX" (https://de.wikipedia.org/wiki/TeX) gedacht, nicht für allgemeine Codeausschnitte. Dies macht deinen letzten Post leider nur schwer lesbar.
  • m.mainzer | m.mainzer | 11. Jan 2019, 17:14
    Re (2): Re (2): Anwender bat mich um IT-Support
    Hallo,

    vielen Dank - auch für den TEX-Hinweis - bei mir sah das zunächst nicht ganz so unlesbar aus :-( Dafür Sorry.

    Problem ist, ich kann keine PHP 5.2 mehr aktivieren, beim Hoster... lediglich PHP 5.6 funktioniert noch.

    Wenn ich das richtig sehe, müsste ich auf der Seite
    https://docu.ilias.de/ilias.php?ref_id=1719&obj_id=56995&cmd=layout&cmdClass=illmpresentationgui&cmdNode=6h&baseClass=ilLMPresentationGUI
    die Tar.gz oder die ZIP downloaden, "drüberkopieren", die setup ausführen. Das funktioniert auch mit PHP 5.6, wenn ich das richtig seh :-)

    Verbessere mich, wenn ich das falsch verstehe bitte.

    Ich denke dir für die Hinweise und Erläuterungen bislang.

    Gruß
  • rbaumgartner | rbaumgartner | 15. Jan 2019, 08:46
    Re: Re (2): Re (2): Anwender bat mich um IT-Support
    Das Update sollte grundsätzlich mit PHP 5.6 funktionieren, ja.

    Ich würde git verwenden für das Update und nicht die neuen ILIAS-Releases aus dem Archiv "drüberkopieren". Das ist m.M.n. sauberer.

    Angenommen, ILIAS ist im Verzeichnis 'ilias' installiert, dann würde ich wie folgt vorgehen (ohne Gewähr, wie gesagt kenne ich die Serverumgebung nicht):

    # Verzeichnis 'ilias' in 'ilias.bak' umbenennen
    mv ilias ilias.bak
    # ILIAS 4.4 im Verzeichnis 'ilias' auschecken
    git clone -b release_4-4 https://github.com/ILIAS-eLearning/ILIAS.git ilias
    # Daten aus 'ilias.bak' nach 'ilias' kopieren
    cp -a ilias.bak/data ilias.bak/ilias.ini.php ilias/
    # -> ILIAS-Update im Setup unter /setup/setup.php durchführen
    # ILIAS 5.0 im Verzeichnis 'ilias' auschecken
    git -C ilias checkout release_5-0
    # -> ILIAS-Update im Setup unter /setup/setup.php durchführen
    # ILIAS 5.3 im Verzeichnis 'ilias' auschecken
    git -C ilias checkout release_5-3
    # -> ILIAS-Update im Setup unter /setup/setup.php durchführen

    Nicht vergessen unbedingt auch ein Backup der Datenbank zu erstellen. Falls bei einem der ILIAS-Updates etwas schiefgeht, können die bereits durchgeführten Datenbank-Migrationen nicht rückgängig gemacht werden.

    Ich hoffe das hilft dir weiter.
  • m.mainzer | m.mainzer | 19. Jan 2019, 01:29
    編集日: 19. Jan 2019, 01:47 - by m.mainzer | m.mainzer
    Re (2): Re (2): Re (2): Anwender bat mich um IT-Support

    Hallo,

    bin gerade erst dazu gekommen, deinen Hinweisen nachzugehen.
    Aktuell habe ich GIT 4.4. aufgespielt und die Datenbank gesichert.

    Anschließend das CP ausgeführt und dann das Setup.php

    Das Login habe ich in der ilias.ini.php wieder auf homer123 (gehasht) gesetzt, da ich das damals festgelegte nicht mehr kannte.

    Ich habe die ganzen Datenbankupdates durchgeführt für den Client.

    Wenn ich mich im Client einloggen möchte, erhalte ich folgende Fehlermeldung:

    Fatal error: Mail directory is not readable/writable by webserver: /www/htdocs/ilias/Hilfsverzeichnis/Data_Verzeichnis/CLIENTID/mail in /www/htdocs/ilias_software/ilias/Services/Init/classes/class.ilErrorHandling.php on line 141

    Kannst du mir hier nochmal kurz helfen... ansonsten scheint es auf den ersten Blick mit PHP 5.6 ein gangbarer Weg zu sein :-)
    Bis dato... 1000 Dank für die Unterstützung bis hier her.

    Es sieht so aus, als sei die Arbeit nicht ganz verloren gegangen und mit deiner Hilfe scheinbar zukünftig weiter nutzbar!!!

  • m.mainzer | m.mainzer | 20. Jan 2019, 21:46
    Re: Re (2): Re (2): Re (2): Anwender bat mich um IT-Support
    Ich habe mich mal dran gegeben.

    Also... temporär habe ich jetzt das o.a. Verzeichnis nicht auf www-data als Owner gesetzt sondern auf meinen FTP-user.
    Ist das so richtig bzw. so gewünscht oder sollte dem www-data-User evtl. mehr Rechte gegeben werden als 755 ?

    Wäre sehr dankbar darüber, wenn mich kurz jemand aufklärt, was wirklich richtig ist, damit wir kein Sicherheitsproblem bekommen.

    Danke
  • m.mainzer | m.mainzer | 20. Jan 2019, 22:35
    編集日: 20. Jan 2019, 23:49 - by m.mainzer | m.mainzer
    Re (2): Re (2): Re (2): Re (2): Anwender bat mich um IT-Support
    so... ich nochmal.

    habe jetzt auf 5.0 upgedatet (mit dem mail-Verzeichnis auf Berechtigung auf dem FTP-User) und habe alle Datenbank-Updates durchgezogen.
    Jetzt muss ich diese noch apply-en und erhalte folgende Meldung:
    Could not create the client salt for bcrypt password hashing.

    Wenn ich nach dem Fehler bei Ilias suche, erhalte ich folgende Seite:
    https://docu.ilias.de/goto_docu_wiki_1357_Secure_Password_Storage.html?lang=de

    Leider wird dort nicht erklärt, wo und wie ich die Passworte von md5-Hash auf ein besseres Passwort-Speichern ändern kann... und ich finde es auch nicht direkt im System :-(

    ==================================

    Da ich ja nicht warten konnte :-(
    Naja... bis zum Checkout von 5.3 bin ich gekomme, so wie beschrieben.
    Dann musste ich die DB-Updates machen und dann wurde mir ein Fehler beschrieben, der mir sagte, es ist etwas unvorhersehbares passiert, was zum Fehler führte und ich soll bitte die zuvor lauffähige Version wieder installieren.

    The database update script has been interrupted unexpectedly in a previous run. This can cause an inconsistent state of your system. We highly recommend to re-install your latest backup and to run the migration again. (Step 4532)
    To avoid this problem, please check your max_execution_time and memory_limit settings in your php.ini. Also take fewer steps in each run, to reduce the resources needed by the system.

    Was kann ich machen?

    Im Clienten einloggen kann ich leider aktuell auch nicht mehr :-(
  • wolfganghuebsch | wolfganghuebsch | 21. Jan 2019, 11:00
    Re: Re (2): Re (2): Re (2): Re (2): Anwender bat mich um IT-Support
    Moin!
    Ist es möglich einen Dump der Datenbank zu machen? Und den Inhalt des Client-Verzeichnisses (ilias/data/clientname und iliasdata/clientname) zu speichern? Dann einen Server (z.B. Ubuntu) aufsetzen, ILIAS als aktuelle Version installieren, dann den alten Client dorthin importieren. Auf dem alten Server alles löschen und reimportieren.

    In dem Szenario könnte man mit VirtualBox arbeiten und hätte den Vorteil, Snapshots erstellen zu können.

    Beste Grüße

    Wolfgang
  • wolfganghuebsch | wolfganghuebsch | 21. Jan 2019, 11:01
    Re (2): Re (2): Re (2): Re (2): Re (2): Anwender bat mich um IT-Support
    Und noch eine Anmerkung: Dabei den alten Server mit der alten Technik aufgeben und einen neuen aktuellen wählen. Geht vielleicht schneller?
  • rbaumgartner | rbaumgartner | 21. Jan 2019, 15:12
    Re: Re (2): Re (2): Re (2): Re (2): Anwender bat mich um IT-Support
    引用文 (m.mainzer)
    The database update script has been interrupted unexpectedly in a previous run. This can cause an inconsistent state of your system. We highly recommend to re-install your latest backup and to run the migration again. (Step 4532)
    To avoid this problem, please check your max_execution_time and memory_limit settings in your php.ini. Also take fewer steps in each run, to reduce the resources needed by the system.

    Was kann ich machen?

    Es ist ein Fehler in einem Updateschritt aufgetreten. Mehr Informationen können normalerweise dem Logfile entnommen werden (genauer Pfad ist abhängig von der Installation).

    Wenn ich die Meldung richtig interpretiere, dann war der letzte erfolgreiche Updatestep 4532, d.h. der Fehler tratt im darauf folgenden Step mit der Nr. 4533 auf. In diesem Schritt wird die Tabelle 'chatroom_sessions' gelöscht (siehe https://github.com/ILIAS-eLearning/ILIAS/blob/release_5-3/setup/sql/dbupdate_04.php#L6968). Kann es sein, dass diese Tabelle vor dem Update auf 5.3 gar nicht (mehr) existiert?

    Um eine konsistente Installation zu garantieren bleibt jedenfalls nichts anderes, als die Datenbank zu löschen, diese aus dem Backup wiederherzustellen und das Update erneut zu versuchen. Wenn das Update bis ILIAS 5.2 soweit erfolgreich war, würde ich dieses mal nur bis dahin aktualisieren und dann analysieren warum der Updateschritt fehlschlägt.