Baikal Server und CALDAVZAP

Heute ist Stammtischzeit:
Jeden Donnerstag 20:30 Uhr hier im Chat.
Wer Lust hat, kann sich gerne beteiligen. ;)
  • Jetzt habe ich das upgrade auf baikal 0.4.6 "durchgeführt". Besser wäre "probiert".

    Bei der Installation stürzte mein Firefox ab. Das gibt es auch selten. Nach dem Session Restore sagte baikal/html/admin/install:

    Code
    Upgrading Baïkal from version 0.2.7 to version 0.4.6
    
    
    Errors
    Uncaught exception during upgrade: exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1 duplicate column name: synctoken' in /usr/share/nginx/www/baikal/Core/Frameworks/BaikalAdmin/Controller/Install/VersionUpgrade.php:190 Stack trace: #0 /usr/share/nginx/www/baikal/Core/Frameworks/BaikalAdmin/Controller/Install/VersionUpgrade.php(190): PDO->exec('ALTER TABLE cal...') #1 /usr/share/nginx/www/baikal/Core/Frameworks/BaikalAdmin/Controller/Install/VersionUpgrade.php(61): BaikalAdmin\Controller\Install\VersionUpgrade->upgrade('0.2.7', '0.4.6') #2 /usr/share/nginx/www/baikal/Core/Frameworks/Flake/Core/Render/Container.php(71): BaikalAdmin\Controller\Install\VersionUpgrade->render() #3 /usr/share/nginx/www/baikal/Core/Frameworks/Flake/Controller/Page.php(85): Flake\Core\Render\Container->renderBlocks() #4 /usr/share/nginx/www/baikal/html/admin/install/index.php(83): Flake\Controller\Page->render() #5 {main}
    
    
    
    
    Error Baïkal has not been upgraded. See the section 'Errors' for details.

    [Edit] Zweiter Versuch: Image (vor dem Upgrade zum Glück erstellt) der MicroSD zurück gespielt, Baikal0.4.6 wieder über das alte Baikal kopiert. Diesmal mit Chromium, immerhin ohne Absturz. Aber zunächst reagierte Baikal überhaupt nicht, nachdem ich es über .../baikal/html/admin aufgerufen habe. Dann irgendwann: Gleicher Fehler, siehe oben.

    Mmh... kann das ein Rechteproblem sein? Ich habe den Baikal-Ordner als root drüber kopiert...

    Einmal editiert, zuletzt von Apologus (21. Januar 2017 um 16:45)

  • Kannst Du den alten Zustand mit Baikal 0.2.7 wiederherstellen?

    Dann sollte es so gehen:

    in das Verzeichnis ////www wechseln und Baikal umbenennen

    Code
    cd /usr/share/nginx/www/
    
    
    sudo mv -R baikal baikal027

    In diesem Verzeichnis bleiben, Baikal 0.4.6 herunter laden und entpacken

    Code
    sudo wget https://github.com/fruux/Baikal/releases/download/0.4.6/baikal-0.4.6.zip
    unzip baikal-0.4.6.zip

    Jetzt hast du die ordner baikal (0.4.6) und baikal027

    Setzen der Rechte für den Ordner baikal

    Code
    sudo chown -R www-data:www-data baikal

    In den Ordner baikal027 wechseln und von dort den Ordner Specific kopieren

    Code
    cd baikal027
    sudo cp +R Specific /usr/nginx/www/baikal/html/

    Dann admin aufrufen: https://meinedomain.de/baikal/html/admin

    Einmal editiert, zuletzt von MacNobi (21. Januar 2017 um 19:49)


  • Kannst Du den alten Zustand mit Baikal 0.2.7 wiederherstellen?

    Ja, ich hatte vor allem mit dd ein Image gezogen.


    Setzen der Rechte für den Ordner baikal

    Code
    sudo chown -R www-data:www-data baikal

    Genau das meinte ich. Das hatte ich nicht auf dem Schirm und es steht auch nicht in der Anleitung.



    In den Ordner baikal027 wechseln und von dort den Ordner Specific kopieren

    Code
    cd baikal027
    sudo cp +R Specific /usr/nginx/www/baikal/html/

    Hier stimmen aus wohl zwei Sachen nicht: "-R" statt "+R" und der Ordner "Specific" muss nicht in "html", sondern in den Baikal-Ordner.

    Code
    cd baikal027
    sudo cp -R Specific /usr/nginx/www/baikal/

    So müsste es stimmen.

    Bekommt der Specific-Ordner durch das Kopieren als Root nicht auch Root als Besitzer? Dann müsste man das noch mal ändern, oder?

    Nachdem ich den Specific-Ordner erst an die falsche Stelle kopiert hatte, waren alle User/Kalender weg. Leider hat es Baikal wohl zerschossen, nachdem ich den Ordner an den rechten Platz kopiert habe. Also noch mal von vorne...

    Einmal editiert, zuletzt von Apologus (22. Januar 2017 um 12:46)

  • Zitat

    Hier stimmen aus wohl zwei Sachen nicht: "-R" statt "+R" und der Ordner "Specific" muss nicht in "html", sondern in den Baikal-Ordner.


    Stimmt, war wohl etwas spät gestern...

    Zitat

    Bekommt der Specific-Ordner durch das Kopieren als Root nicht auch Root als Besitzer? Dann müsste man das noch mal ändern, oder?


    Nö, der owner ist/war ja schon www-data, das ändert sich durch das kopieren nicht

    Einmal editiert, zuletzt von MacNobi (22. Januar 2017 um 12:58)

  • Puh, kein Ende...

    Jetzt beschwert sich baikal beim Upgrade:

    Code
    DB file is not writable. Please give write permissions on file '/usr/share/nginx/www/baikal/Specific/db/db.sqlite'

    ... wieder Image zurückspielen und ... was ändern? Ich schaue dann mal die db an.

    [Edit] Der Besitzer hat sich beim Kopieren doch geändert:

    Ursprung mit baikal 0.2.7:

    Code
    -rwxr-xr-x 1 www-data www-data 3905536 Jan 20 17:32 db.sqlite


    Nach dem Umbenennen des Verzeichnisses mit sudo rm:

    Code
    -rwxr-xr-x 1 www-data www-data 3905536 Jan 20 17:32 db.sqlite


    Nach dem Kopieren mit sudo cp:

    Code
    -rwxr-xr-x 1 root root 3905536 Jan 21 13:38 db.sqlite

    Also habe ich den Besitzer mit chown geändert und ... nginx bringt ein Timeout, wenn ich die Admin-Seite aufrufen will.
    Also Neustart des Raspi und dann beim Upgrade wieder ein Fehler von Baikal:

    Code
    Upgrading Baïkal from version 0.2.7 to version 0.4.6
    Errors
    Uncaught exception during upgrade: exception 'PDOException' with message 'SQLSTATE[HY000]: General error: 1 duplicate column name: synctoken' in /usr/share/nginx/www/baikal/Core/Frameworks/BaikalAdmin/Controller/Install/VersionUpgrade.php:190 Stack trace: #0 /usr/share/nginx/www/baikal/Core/Frameworks/BaikalAdmin/Controller/Install/VersionUpgrade.php(190): PDO->exec('ALTER TABLE cal...') #1 /usr/share/nginx/www/baikal/Core/Frameworks/BaikalAdmin/Controller/Install/VersionUpgrade.php(61): BaikalAdmin\Controller\Install\VersionUpgrade->upgrade('0.2.7', '0.4.6') #2 /usr/share/nginx/www/baikal/Core/Frameworks/Flake/Core/Render/Container.php(71): BaikalAdmin\Controller\Install\VersionUpgrade->render() #3 /usr/share/nginx/www/baikal/Core/Frameworks/Flake/Controller/Page.php(85): Flake\Core\Render\Container->renderBlocks() #4 /usr/share/nginx/www/baikal/html/admin/install/index.php(83): Flake\Controller\Page->render() #5 {main}

    Einmal editiert, zuletzt von Apologus (22. Januar 2017 um 13:59)


  • Nur so als Ergänzung bevor du die alten Daten ins neue Baikal schreibst Baikal einfach Mal im webfronted als Admin ausführen. Hat bei mir alle Probleme gelöst.

    Das habe ich jetzt auch ohne Erfolg probiert. Hast Du das Webfrontent nur aufgerufen, oder den ganzen Upgrade-Prozess einmal durchlaufen lassen, bevor Du die alte Datenbank wieder eingespielt hast?
    Sobald die alten Daten eingespielt sind, bleibt baikal hängen.

    Einmal editiert, zuletzt von Apologus (22. Januar 2017 um 20:04)

  • Zitat

    ... wieder Image zurückspielen und

    Warum? Du hast doch 'nur' was in Baikal geändert. Wenn Du baikal (0.4.6) löschst und baikal027 wieder umbenennst (sudo mv ...) ist doch der alte Stand wieder hergestellt.

    Andere Frage: Hast Du einen Sync-Client der die Kalender ex- und auch wieder importieren (.ics Format) kann?
    Dann würde ich 0.4.6 einmal komplett aufsetzen und die Daten so wieder einspielen.


  • Andere Frage: Hast Du einen Sync-Client der die Kalender ex- und auch wieder importieren (.ics Format) kann?
    Dann würde ich 0.4.6 einmal komplett aufsetzen und die Daten so wieder einspielen.

    Ja, so habe ich es jetzt gemacht. Mit Thunderbird scheint alles zu laufen.

    Ich habe jetzt auch die config.js in caldavzap angepasst. Der Login-Screen kommt, aber wenn ich versuche, mich einzuloggen, passiert nichts. Der Login kommt wieder. Die Adresse lautet doch jetzt

    Code
    href: 'https://meine.dyndns.de/baikal/html/cal.php/principals/'


    , oder?

    Gleiches gilt für das Android-Tablet mit "caldav-sync". Mit folgender Adresse bekomme ich nur Authentification Errors:

    Code
    https://meine.dyndns.de/baikal/cal.php/calendars/benutzer/

    :helpnew:

    Einmal editiert, zuletzt von Apologus (23. Januar 2017 um 14:18)

  • Puhh...

    Der Aufruf ist richtig, ich würde allerdings auf

    Zitat

    href: 'https://meine.dyndns.de/baikal/html/dav.php/principals/'


    gehen, da cal.php und card.php zukünftig in Baikal wegfallen und alles (auch Kontakte) über dav.php laufen.
    infcloud nutzt das jetzt schon, heisst du brauchst nur einen Eintrag für alles.

    Zitat

    aber wenn ich versuche, mich einzuloggen, passiert nichts.

    Ich gehe avon aus, das unter baikal/html/admin als Authentifizierung 'digest' eingestellt ist?!
    Dann in der config.js etwas unterhalb von href: true statt false eintragen.

    Zitat

    Das macht alles nur bedingt Spaß, wenn man mit wirklich wichtigen Terminen hantiert...

    Wem sagst Du das? Habe 6 Clients am Start und siehe unten

  • Ich gehe avon aus, das unter baikal/html/admin als Authentifizierung 'digest' eingestellt ist?!
    Dann in der config.js etwas unterhalb von href: true statt false eintragen.

    Ja, das habe ich eingestellt. Hier das ganze File:

    Oben habe ich gerade noch ergänzt, dass auch mein Tablet nicht will. In Thunderbird geht es ja...

    Einmal editiert, zuletzt von Apologus (23. Januar 2017 um 14:24)

  • Oooohhh, ich habe einen Tippfehler in das Kennwort beim Anlegen des Benutzer eingebaut und es geschafft, den Tippfehler in Thunderbird zu wiederholen!
    Entschuldige!

    Mannomann, irgendwie lässt die Konzentration nach. Es wird Zeit, dass ich das zu Ende bekomme. PHP 7 lasse ich erst mal ruhen, bis ich mich erholt habe...

    Vielen Dank!!

    Einmal editiert, zuletzt von Apologus (23. Januar 2017 um 15:45)

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!