Own-/Nextcloud Userpflege: automatisch funktioniert nicht -> selfmade

nextcloud
owncloud

#1

Hallo Liste,

da es noch kein OwnCloud / Nextcloud Thema gibt, habe ich mal das passendste ausgewählt.

Ich möchte meine Cloud (seit gestern Nextcloud) von alten Usern bereinigen. Dazu gibt es eine Variable
’ldapUserCleanupInterval’ => 51,
in der config.php, die eigentlich dafür sorgen soll, dass alle 51 Minuten 50 (diese Anzahl ist nicht einstellbar) LDAP-Benutzer überprüft werden, ob sie noch auf dem LDAP existent sind, und wenn nicht, sie als “gelöscht” markiert werden (anschließend kann man sie dann löschen).
Dies funktioniert bei mir überhaupt nicht. Nutzt das jemand, funktioniert es bei Euch? Im Netz habe ich nichts dazu gefunden.

Nun habe ich das owncloud-datenverzeichnis (bei mir /owncloud-data) in eine liste gepackt, meines Erachtens die einzige Möglichkeit, alle Nutzernamen zu bekommen:

ls /owncloud-data/ | grep -v "\." > /tmp/userlist

und dann den check-user-Befehl drauf losgelassen:

for i in `cat /tmp/userlist` ; do sudo -u www-data php occ ldap:check-user $i; done

Nun kann man die als gelöscht markierten Benutzer anschauen:

sudo -u www-data php occ ldap:show-remnants | cut -d "|" -f 2 | grep -v ^+ | grep -v ownCloud | cut -b 2- >> /tmp/zuloeschendeuser
cat /tmp/zuloeschendeuser

und nach einer Überprüfung löschen.

for i in `cat /tmp/zuloeschendeuser`; do sudo -u www-data php occ user:delete $i; done

freue mich auf Anmerkungen,

viele Grüße,

Max


Nextcloud: Erfahrungen bzgl. Schülernutzung
#2

Hi Max :),

schön, dass wir immer dieselben Probleme oder auch Lösungen haben. Scheinbar kein anderer :slight_smile:
Ich habe hier mal geschrieben, wie ich das jetzt jedes Jahr machen würde:
http://www.linuxmuster.net/wiki/anwenderwiki:owncloud:schuljahreswechsel

Ich vermute, unsere Skripte machen dasselbe. oops, dein Skript löscht natürlich mehr user. Nämlich auch, die, die es nach check-user gefunden hat.

Ich habe von der owncloud/nextcloud internen Sache gar nichts gewusst.

Möchte noch mehr Themen anschneiden, die mich nachdenklich stimmen, wie gut nextcloud wirklich in eine Schullösung passt:

Userpflege: Datenübernahme

Hier las ich, dass man Daten übernehmen muss, sonst sind sie weg (z.B. lehrer A teilt sein geschriebenes Curriculum mit den Kollegen -> weg?), klar gibt es dafür eine Kommandozeile:
https://docs.nextcloud.com/server/11/admin_manual/configuration_server/occ_command.html#file-operations

Eigentlich kann das nicht unsere (administrative) Aufgabe sein, sich um die Inhalte zu kümmern. Beim Tausch-Ordner ist halt zwar der User weg, aber die Dateien bleiben im Tauschordner oder man holt sich Daten aus dem Backup zurück. Bei Cloud ist das wesentlich schwieriger…das ist z.B. beim Kalender wesentlich komplizierter.

Achso, der naheliegende Workaround: Alles gehört einem Admin, der es mit den Lehrern teilt, nennt Nextcloud “Persistent file shares” führt das Sharing konzept etwas ad absurdum, aber es ist vermutlich praktikabel. Wenn der Ordner dann für private Daten eines Lehrers mißbraucht wird, dann leben die dort auch ewig.

Userpflege: usernamen ändern, domäne ändern

Eher selten: Wer den usernamen am server ändert, der wird auch bei der cloud neu anfangen müssen. Auch selten: Wer die Domäne auf dem Server ändert (so wie ich gerade), der kann auch auf die Nase fliegen. User werden neu angelegt und die haben natürlich nix mehr.

Userpflege: Teilen mit Klassen

Während es bei den Tauschverzeichnissen die Möglichkeit gibt, Lehrer aus den Klassen am SJ-Ende rauszuschmeißen, müssen Lehrer, wenn sie etwas mit der “8a” geteilt haben, am Ende des Jahres selbst dafür sorgen, dass dies nicht mehr so ist.
(Oder hast du da Kommandozeilenparameter gefunden, die shares der User zu manipulieren?)

Viele liebe Grüße,
Tobias


#3

Hi Max,

i don’t get it.

Hab ich probiert, ebenso mein Skript.
Ich bin der Überzeugung, occ würde die user löschen, auch wenn sie laut LDAP nicht mehr im System wären.
Stattdessen kommt:

user:delete <uid>


                                     
  [OC\User\NoUserException]          
  taste is not a valid user anymore  
                                     

für alle user ??häh??

also, vllt. hatte ich die eben schon gelöscht, aber deren Verzeichnisse sind ja weiterhin da.
Also ich muss wohl noch die Verzeichnisse von hand löschen, wenn sie aus LDAP erstmal raussind.
Ob sie jetzt noch in der Datenbank sind, ist mir unklar.

VG, Tobias


#4

Hallo Tobias,

diese Meldung kommt auch bei mir, wenn ich einen user von Hand in occ lösche. Lässt man sich anschließend die remnants anzeigen, ist der soeben gelöschte user wieder dabei. Das war früher bei der owncloud nicht der Fall. Google zeigt für das Problem eine opended issue:

Viele Grüße

Wilfried


#5

HI Max,

ist zwar nicht Userpflege, aber irgendwie schon:

Kalender in Nextcloud/Owncloud pflegen

Ich pflege für meine Kollegen zwei Kalender “öffentlich” und “intern” und jetzt beim Schuljahreswechsel fällt mir auf, dass ich jedes Jahr die Kalender bereinigen muss, d.h. alte Daten rausschmeißen muss, weil die Pflege sonst unglaublich viel langsamer wird.
Beispiel: Ich habe ca. 100 Einträge im Kalender fürs nächste Schuljahr, einen weiteren hinzuzufügen kostet über das webinterface in meiner konstellation ca. 3 Sek. Zeit. Wenn ich in einen Kalender, der schon Termine zweier Schuljahre enthält (ca. 180 Einträge) hinzufüge, kostet das ca. 18 Sek. Zeit.
Das Hinzufügen ist zwar irrelevant, aber ich vermute, dass auch das Lesen des Kalenders immer langsamer wird.

VG, Tobias


#6

Hallo Tobias,

nein, occ löscht bei mir nicht mehr vorhandene LDAP-User nicht, auch wenn es behauptet wird. Deshalb hatte ich den Umweg über das script gemacht. Ich glaube, die Ordner der Nutzer musste ich dann auch nochmal von Hand löschen. Das war aber alles unter OC. Unter NC habe ich noch nichts probiert. Aber die Userpflege ist noch sehr lästig.

Dein Issue mit den Kalendern ist auch seltsam. 180 Einträge sollten nicht die Welt sein, oder?

LG
Max


#7

Hallo Tobias,

da hänge ich auch gerade. Ich habe dazu

gefunden, verstehe aber nur Bahnhof, wie ich das richten kann.

Vll. hst Du eine Idee?

LG
Max


#8

Hi Max,

ich kann auch nur lesen und für mich steht da: ist ein Bug, “blizzz” hat einen bugfix, keiner hat ihn angeguckt, er wurde bisher nicht akzeptiert, er müsste sowieso auf 12 backgeportet werden, was so viel heißt, wenn ihn überhaupt jemand anschaut und er akzeptiert wird, kommt das in Version 13 wieder … oder so ähnlich.
So lange würde ich die User drin lassen, denn die home-verzeichnisse von hand löschen könnte bedeuten, dass selbst mit bugfix die karteileichen in der datenbank bleiben werden.

Wie gesagt: mir schwant, dass die userpflege nicht so passend für Schulen sind, wie es sophomorix kann.
(Sophomorix händelt user aus dem ldap, und man kann selbst restdaten von gelöschten usern noch finden und anderen usern zuordnen. DAs würde mit owncloud nicht klappen (muss vllt. auch nicht))

VG, Tobias


#9

Hallo!

So, es hat mich so genervt, dass ich 1000 Benutzer in der NC habe, dass ich auf Version 13beta3 gegangen bin und schwupps :slight_smile: Die LDAP-Benutzer lassen sich löschen.
Das habe ich gleich mal mit dem script ganz oben ausgeführt, jetzt bin ich die in LDAP gesperrten und gelöschten los. Mal schaun, ob ich doch noch auf den Snapshot zurück muss (ich hoffe, nicht), weil ich irgendwas verhakelt hab…

LG
Max


#10

welches meinst du. das hier?

vg, Tobias


#11

Ja. Das.
Man sollte die zuloeschendeuser aber nochmal durchsuchen…
Aber ich habe mich (vielleicht) zu früh gefreut. Er sagt zwar “User deleted” und zeigt sie nicht mehr in der NC an, aber über die shell sehe ich die User immer noch als “remnants” und ihre Daten sind auch noch da (bäh).
Da muss ich nochmal ran.

LG
Max


#12

Hallo Max,

geht denn in Version 13 wenigtens wieder das händische Löschen als OCC?

Viele Grüße

Wilfried


#13

Hallo!

wenn ich die Ausgabe von ldap:check-user ganz genau gelesen hätte… Die machen da " um den Namen. Damit gings bei mir, sogar die Order der User sind verschwunden…

Hurra!
hoffentlich habe ich mich nicht wieder zu früh gefreut…

LG
Max


#14

Hi Max,

erstmal: kudos, again.
Hab jetzt auf nextcloud 13 ge-uppt und tatsäclhich funktioniert das Löschen.

ich hab die Wikiseite aktualisiert: http://www.linuxmuster.net/wiki/anwenderwiki:owncloud:schuljahreswechsel
und habe festgestellt, dass (obwohl seit dem letzten Versuch) weitere User weggekommen sind, sich die liste der remnants nicht veränderte, nachdem ich “check-user” auf alle user der userlist losgelassen hatte.

D.h. teste du auch mal: vielleciht ist der ganze kram (ls/ ldap:check-user / show-remnants ) auch niht mehr nötig und ein “user:delete” funktioniert sogar schon mit allen usern, die tatsächlich nicht mehr in LDAP sind.

VG, Tobias