Geteilte Ordern nicht sichtbar

Hallo zusammen,

ich stehe hier gerade vor folgenden Problem: Verschiedene Benutzer haben Ordner mit einer LDAP-Gruppe geteilt (ca. 30 Leute).
Die meisten sehen die Ordner in ihrem Account, aber manche nur einen Teil der Freigaben.

Ich habe jetzt schon mal einen File-Scan und Repair-Job über die Installation laufen lassen, hat aber keine Änderung gebracht.

Was kann ich noch machen, damit diese Benutzer die Ordner zu sehen bekommen?

Danke & Gruß

Klaus

Version: 18.0.2
Benutzer-Backend: LDAP

Hallo,

der Effekt ist irgendwie seltsam. Entweder machen die Anwender was falsch, oder irgendwas im Freigabeprozess stimmt nicht.

Mitten in der Auflösung der Gruppen scheint der Prozess zu stoppen. Also z.B. die ersten 20 von 30 Benutzern erhalten die Freigabe, der Rest fällt hinten runter.

Es reicht auch nicht, die Freigabe dann wieder aufzuheben und neu zu erstellen.

Ich bin gerade ratlos und die Eltern beschweren sich, dass die Schüler ihre Arbeitsunterlagen nicht abrufen können.

Jemand eine Idee?

Danke & Gruß

Klaus

Inzwischen Version 18.0.3

Eine Lösung habe ich nicht. Aber hier ein paar Ideen:

a.) Funktionalität mit einen eigenen Testbenutzer für die Gruppe testen
b.) Übergangsweise Daten in einen anderen Ordner kopieren und die Gruppe in Gruppe1 und Gruppe2 teilen (hierdurch werden vielleicht evtl. Maximalwerte an Personen erkennbar)
c.) Teilen des Ordners über einen Link, den die Schüler ja in ihr Nextcloud-Account übergangsweise importieren könnten

Gibt es Fehlermeldungen? Hast du irgendwelche Logs? Evtl. Screenshots von Anwendern? Nutzt du neben “Group Folders” weitere Apps, die evtl. relevant sein könnten?

https://apps.nextcloud.com/apps/groupfolders

Hallo,

Tests haben wir inzwischen genug gemacht. Bei manchen hat es geklappt, bei anderen nicht.

Die Gruppen aufteilen geht nicht, es sind Klassenverteiler (da hängt auch Mail und einiges anderes dran), die über LDAP aus dem Schulinformationssystem übernommen werden.

Ich bin froh, dass die Lehrer es geschafft haben, die Freigaben mit den Gruppen einzurichten.

Ich habe mir das mal in der DB angeschaut: Die Freigaben und die Berechtigungen stehen in der Tabelle oc_shares.

Es gibt immer eine Zeile mit dem Gruppennamen und drauf folgt dann die nach Benutzern aufgelöste Gruppe mit einer Referenz auf die erste Zeile.
Die Benutzer, die die Freigabe nicht sehen, fehlen in dieser Auflistung, obwohl Nextcloud sie im Backend als Mitglied der entsprechenden Gruppe anzeigt.

Ich habe mir jetzt eine Reihe von SQL-Statements zusammengestrickt, mit denen ich die fehlende Einträge ergänzen kann.

Gemeldet haben sich so etwa 10 (von 700). Das ging noch. Aber die Dunkelziffer ist sicher höher. Die haben sich dann anders beholfen.

Da hier gerade täglich 500-600 Nutzer aktiv sind, will ich jetzt nicht groß das Debugging einschalten, das zieht den Server noch mehr runter.
Das Log schreibt daher nur Fatal-Errors.

Hallo,

ich habe wahrscheinlich dasselbe Problem. Von den 1100 Usern an meiner Nextcloud bekommen nachgewiesen 10 die Freigaben für ihre Gruppe (=Klasse) nicht angezeigt, obwohl sie in der richtigen Gruppe sind. Wir benutzen TALK und dort tritt dieses Problem nicht auf.

Bei mir tauchen die fehlenden Freigaben allerdings unter “Ausstehende Freigaben” auf. Doch leider ist der Annehmen-Button für die LDAP-User ausgegraut.

Kann mir jemand einen Tipp geben, wie ich dort nachregeln kann?

Vielleicht kann mit Datenbankanfragen (MariaDB) was rausfinden. Vielleicht hat jemand einen Tipp in diese Richtung.

Danke für die schnelle Antwort. Mal sehen, ob Jemand einen Tipp hat.

Ich habe mir folgendes Konstrukt gebaut:

Ein

SELECT group_concat(id) FROM owncloud.oc_share where share_with="9B"

SELECT distinct share_with FROM owncloud.oc_share where parent in ([IDs aus der ersten Abfrage])
liefert mir eine Liste alle SuS, die für die Freigaben dieser Gruppe konfiguriert sind. Die Liste sollte vollständig sein, wenn zumindest bei einer Freigabe die Einträge vollständig sind.

Mit
select * from (SELECT distinct share_with FROM owncloud.oc_share where parent in ([IDs aus der ersten Abfrage])) a LEFT JOIN ( SELECT * FROM owncloud.oc_share where parent = ID aus der Liste]) ON (a.share_with = b.share_with) where b.id is null

sehe ich dann, bei welcher Freigabe ein Benutzer fehlt (dieser ist das Ergebnis der Abfrage).

Dann hole ich mir mit
SELECT * FROM owncloud.oc_share where parent=[ID]
die ID der Benutzereinträge und baue mit mit folgenden Script eine temp. Tabelle (vorher anlegen) zusammen:

set @missing_uid = '[UID]';
set @id_vorlage = [ID aus letzter Abfrage];

insert into oc_share2 select 
  null as id,
  share_type,
  @missing_uid as share_with,
  uid_owner,
  parent, 
  item_type, 
  item_source,
  item_target,
  file_source,
  file_target, permissions, stime, accepted, expiration, token, mail_send, uid_initiator, null as password, share_name, password_by_talk, note, hide_download, label
from oc_share where id = @id_vorlage;

Wenn ich dann alles zusammen habe kommen noch :

update oc_share2 set id=id+[max ID aus oc_share];

insert into oc_share select * from oc_share2;

alter table oc_share2 AUTO_INCREMENT=1;

Damit konnte ich das bisher retten.

Die Arbeit habe ich mir aber nur einmal gemacht, nachdem die Lehrer ihre Freigaben eingerichtet hatten. Dann habe ich sie angewiesen keine neue Freigaben mehr zu erstellen und die bestehenden funktionierenden zu nutzen.

Wo ist denn dieser Button? Den kenne ich bisher noch nicht.

Ich habe gerade noch eine neue Rückmeldung erhalten: Die Benachrichtigungen gehen wohl an die User raus, der Eintrag in der DB aber fehlt.

Kannst Du das bestätigen @MR_Knight_MR

Hab das was gefunden:

Wäre nur schön, wenn sich dem auch jemand annehmen würde.

Bei uns lag es an fehlenden Schreibrechten im Benutzerordner files. Somit konnte der Ordner Shared nicht erstellt werden.