Schüler Homeverzeichnisse nicht aktualisiert nach Versetzung

Hallo zusammen,

aktuell haben wir das Problem, dass sich die Homeverzeichnisse von Schülern unter Windows nicht mehr korrekt einbinden lassen.
Wir haben bereits festgestellt, dass die Versetzung der Schüler und die damit verbundene Anpassung beziehungsweise Verschiebung der Homeverzeichnisse offenbar nicht ordnungsgemäß funktioniert hat. Eine Benutzerabfrage mit
sophomorix-user -iv -u username

liefert zwar die korrekten Daten, sowie passendem homeDirectory & unixHomeDirectory. Der folgende Schüler befindet sich aktuell in der Klasse 09A:

Log: sophomorix-user

sophomorix-user -iv -u Max.Mustermann

Command line::

Hmmh. do not know what to do with option info

Option json is a modifier option

Option verbose is a modifier option

* forcing info mode

Option combinations successfully checked

Retrieving RootDSE…

* RootDSE: DC=linuxmuster,DC=lan

Binding with CN=administrator,CN=Users,DC=linuxmuster,DC=lan

Testing if the Sophomorix Schema exists (Sophomorix-User)…

* Sophomorix-Schema exists (SophomorixSchemaVersion=1)

################################################################################

User 1/1 in AD: Max.Mustermann in school default-school

CN=Max.Mustermann,OU=09a,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

################################################################################

displayName: Max Mustermann

sn: Mustermann

givenName: Max

sophomorixFirstnameASCII: Max

sophomorixSurnameASCII: Mustermann

sophomorixFirstnameInitial: M.

sophomorixSurnameInitial: M.

sophomorixUserToken: —

sophomorixBirthdate:

sophomorixUnid: Max.Mustermann

sophomorixAdminClass: 09a

sophomorixExitAdminClass: 08a

sophomorixSchoolname: default-school

sophomorixAdminFile: students.csv

sophomorixComment: created by sophomorix

sophomorixFirstPassword:

sophomorixExamMode: —

--------------------------------------------------------------------------------

sophomorixRole: student

sophomorixStatus: U

sophomorixCreationDate: 20220814084407.0Z

sophomorixTolerationDate: 19700101000000.0Z

sophomorixDeactivationDate: 19700101000000.0Z

userAccountControl: 66048

--------------------------------------------------------------------------------

mail: Max.Mustermann@muster.schule

sophomorixMailQuota: —:—:

sophomorixMailQuotaCalculated: 156

--------------------------------------------------------------------------------

sophomorixQuota: default-school:—:1506:1579155456:—:

sophomorixQuota: linuxmuster-global:—:1006:1054867456:—:

sophomorixCloudQuotaCalculated: 1506 MB

--------------------------------------------------------------------------------

------------- sophomorixCustom: ------------------------------------------------

---------- sophomorixIntrinsic: ------------------------------------------------

sophomorixIntrinsic2: students/09a/Max.Mustermann

--------------------------------------------------------------------------------

memberOf: CN=09a,OU=09a,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

memberOf: CN=internet,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

memberOf: CN=intranet,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

memberOf: CN=printing,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

memberOf: CN=role-student,OU=Groups,OU=GLOBAL,DC=linuxmuster,DC=lan

memberOf: CN=webfilter,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

memberOf: CN=wifi,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

--------------------------------------------------------------------------------

objectSid: S-1-5-21-1808007437-3693035434-227623988-2728

homeDirectory: \\server\default-school\students\09a\Max.Mustermann

homeDrive: H:

accountExpires: 0

badPasswordTime: 0

badPwdCount: 0

pwdLastSet: 133603340068625790

lastLogoff: 0

lastLogon: 134333425886948430

logonCount: 43

sAMAccountType: 805306368

userPrincipalName: Max.Mustermann@linuxmuster.lan

uSNChanged: 196320

uSNCreated: 74413

codePage: 0

countryCode: 0

unixHomeDirectory: /srv/samba/schools/default-school/students/09a/Max.Mustermann

primaryGroupID: 513

--------------------------------------------------------------------------------

LOGFILES (1 Entries):

ADD: 2022-08-14 08:44:07 Max.Mustermann (Mustermann, Max) in 05a as student

Das Homeverzeichnis befindet sich jedoch weiterhin im Verzeichnis der alten Klasse:

root@server:~# find /srv/samba/schools/default-school/ -type d -name Max.Mustermann
/srv/samba/schools/default-school/students/08a/Max.Mustermann

Die derzeitige Behelfslösung besteht darin, den Schüler zunächst in seine alte Klasse zurückzuversetzen und anschließend erneut in die aktuelle Klasse zu versetzen.
Dadurch wird das Homeverzeichnis anschließend korrekt angepasst.

Meine Frage ist daher: Gibt es eine Möglichkeit, die Homeverzeichnisse aller Benutzer zentral zu überprüfen und bei Bedarf automatisch zu korrigieren?

Ich habe stichprobenartig einige Benutzer überprüft und festgestellt, dass sporadisch Schüler aus allen Jahrgangsstufen betroffen sind. Ein einheitliches Muster ist dabei nicht erkennbar.

Hallo Kunstfehler,

welche Version hast du den?

dpkg -l | grep linuxmuster*

dpkg -l | grep sophomorix*

LG
Holger

Hallo,

ich hab Gestern die NUtzerverwaltung für das neue Schuljahr gemacht.

sophomorix hat die Version 7.4.3

Jetzt hab ich mal stichproben gemacht (aber nur 10 von 1400 Schüler*innen) und konnte keinen Fehler finden.

Ich hab mit sophomorix-user -iv -u ***** geschaut, welche Klasse und welches Homeverzeichnis im AD steht, und danach auf der Platte unter /srv/samba/schools/default-school/students/CLASS/ geschaut, ob das HOmeverzeichnis an der richtigen Stelle ist. Da hab ich keinen Fehler gefunden..

LG
Holger

Hi, bisher hatten wir auch keine Schwierigkeiten. Es ist quasi das erste Jahr, in dem ein solches Verhalten beobachtet wird. Interessanterweise sind nicht alle betroffen.

root@server:~# dpkg -l | grep linuxmuster*
ii  linuxmuster-base7                      7.2.16-0                                   all          linuxmuster.net configuration scripts
rc  linuxmuster-linbo-common7              2.4.3-4                                    all          linuxmuster-linbo common files: kernel, initrd and pxe boot configuration
ii  linuxmuster-linbo-gui7                 7.2.5                                      all          Linuxmuster Linbo GUI
ii  linuxmuster-linbo7                     4.2.14-0                                   all          linuxmuster-linbo7
ii  linuxmuster-prepare                    7.2.7-0                                    all          linuxmuster.net pre setup configuration scripts
ii  linuxmuster-tools7                     7.2.49                                     all          Tools for the linuxmuster.net 7 server.
ii  linuxmuster-webui7                     7.2.82                                     all          Next generation web-based management tool for linuxmuster.net v7.x
root@server:~# dpkg -l | grep sophomorix*
ii  sophomorix-samba                       3.92.1-3                                   all          Sophomorix for Samba 4

Hallo @Kunstfehler,

Da können nur die Logs von sophomorix-update wirklich helfen.
7.2 ist sehr alt, ein Update wäre dringend nötig.

@Holger: ich habe auch die Migration von Schülern letzte Woche auf 7.4 problemlos gemacht.
Danke für deine Rückmeldung.

Gruß

Arnaud

Welche Logs genau werden da benötigt?

/var/log/sophomorix/user/?

Wir werden ein Wartungsfenster zum Upgraden einplanen. Wir haben aber auch noch einen weiteren Server mit einer ähnlichen Version. Dort gibt es keine ähnlichen Probleme. Zumindest hat noch niemand etwas Derartiges gemeldet.

Hallo @Kunstfehler,

Ich habe hier geantwortet, anscheinend ist es das gleiche Phänomen: Home-Verzeichnis beim Klassenwechsel nicht verschoben - #3 von Arnaud

Habt ihr einen separaten Fileserver ?

Gruß

Arnaud

Hi @Arnaud,

sehr aufmerksam, dass du diesen Thread nicht vergessen hast :+1:

Bei uns ist der Fileserver jedoch nicht separat sondern liegt auch auf dem Schulserver. Mit dem Befehl von dem Kollegen find /srv/samba/schools/default-school/students -mindepth 2 -maxdepth 2 -type d -printf '%f\n' | sort | uniq -d habe ich auch noch mal nachgeschaut, bei uns sind lediglich 38 Benutzer von rund 1000 Schülern betroffen.

Deinen Vorschlag ein solches Konto zu ändern und den Log auszulesen habe ich mal probiert und habe folgendes zurückerhalten:

# neue Klasse zu alter Klasse:

Calling console printout
LOG       : /usr/sbin/sophomorix-update terminated regularly
     1 users updated
504:ERROR: smb command
509:        NT_STATUS_OBJECT_NAME_COLLISION renaming files \students\q2\userName -> \students\q1\userName


# alte Klasse zu neuer Klasse:

Calling console printout
LOG       : /usr/sbin/sophomorix-update terminated regularly
     1 users updated
504:ERROR: smb command
509:        NT_STATUS_OBJECT_NAME_COLLISION renaming files \students\q1\userName -> \students\q2\userName

Ein find /srv/samba/schools/default-school/ -type d -name userName zeigt, dass das alte Homeverzeichnis auch nicht ordentlich gelöscht wird auch wenn das Homedirectory danach korrigiert ist.

/srv/samba/schools/default-school/students/q2/userName
/srv/samba/schools/default-school/students/q1/userName

Hallo @Kunstfehler,

Vielen Dank für den Test, aber da ist die Fehlermeldung „NAME_COLLISION“ normal.

Sind die neue Verzeichnisse leer ?

Falls das Problem noch mal auftauchen sollte, bitte die komplette Ausgabe von den Logs schicken: sophomorix-update 2>&1 | tee /root/update.log. Nur so haben wir eine Chance zu sehen, was scheitert.

Gruß

Arnaud

Hi @Arnaud,

die neuen Verzeichnisse sind leer, und auch beim rückversetzen und erneutes hochzustufen bleibt das neue Verzeichnis leer und das alte gefüllt.

root@server:~# du -hcs /srv/samba/schools/default-school/students/q1/userName
16K     /srv/samba/schools/default-school/students/q1/userName
16K     insgesamt
root@server:~# du -hcs /srv/samba/schools/default-school/students/ef/userName
1,2G    /srv/samba/schools/default-school/students/ef/userName
1,2G    insgesamt

Nicht wundern, das Log ist anonymisiert ich hoffe dadurch ist es nicht weniger gut lesbar. Betroffener Benutzer ist der user001.

sophomorix-update: Aktuelle Klasse zu alte Klasse versetzt
Command line::
Option json is a modifier option
Option verbose is a modifier option
Hmmh. do not know what to do with option info
* forcing info mode
Option combinations successfully checked
OK: SophomorixSchemaVersion 1 matches required Version 1
#### Reading /usr/share/sophomorix/devel/sophomorix.ini ####
#### Distro-check: Ubuntu 22.04 is OK ####
#### Reading /etc/samba/smb.conf ####
#### Reading /usr/lib/linuxmuster-webui/etc/default-ui-permissions.ini ####
#### Parsing: net conf list ####
#### Asking domain passwordsettings from samba ####
#### Reading /etc/linuxmuster/sophomorix/sophomorix.conf ####
#### Reading /etc/linuxmuster/sophomorix/default-school/school.conf ####
#### 0 ERRORS, 0 WARNINGS -> let's go ####
#### /usr/sbin/sophomorix-update started ... ####

#### Updating User 1/1: user001 (start) ####
DN: CN=user001,OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
homeDirectory: \\server\default-school\students\ef\user001
sophomorixIntrinsic2: students/ef/user001
Logging user update
#### Updating User 1/1: user001 (end) ####

#### Moving user user001 (1),(start): ####
DN: CN=user001,OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
Target DN: OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
Group (Old): q1 (q1)
Group (New): ef (ef)
Role (New): student
Type (New): adminclass
School(Old): default-school
School(New): default-school
Prefix(New): ---
Rename: students/q1/user001 -> students/ef/user001
filename: students.csv
homeDirectory: \\server\default-school\students\ef\user001
unixHomeDirectory: /srv/samba/schools/default-school/students/ef/user001
* default-school must be created RUNTIME

#### Testing smb shares ... ####
* Nothing to do: Global share linuxmuster-global exists.
* nothing to do: School share default-school exists.

#### Adding school default-school in AD (begin) ... ####
* SCHOOLS must be created RUNTIME

#### Creating group SCHOOLS of type allschool (begin): ####
* Group SCHOOLS exists already (1 results)

#### Creating group s_default-school of type school (begin): ####
* Group s_default-school exists already (1 results)

#### Adding member to SCHOOLS: ####
* Group SCHOOLS exists (1 results)
* Adding group s_default-school to SCHOOLS
* Group s_default-school exists (1 results)
* DN: OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* DN: OU=Teachers,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* DN: OU=Custom,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* DN: OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* DN: OU=Devices,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* DN: OU=device-groups,OU=Devices,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* DN: OU=Projects,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* DN: OU=Examusers,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

#### Creating and synchronizing standard groups ####
* Group admins exists already (1 results)
* Group examusers exists already (1 results)
* Group internet exists already (1 results)
* Group intranet exists already (1 results)
* Group printing exists already (1 results)
* Group students exists already (1 results)
* Group teachers exists already (1 results)
* Group webfilter exists already (1 results)
* Group wifi exists already (1 results)
* Group all-internet exists already (1 results)
* Group all-intranet exists already (1 results)
* Group all-wifi exists already (1 results)
* Group global-examusers exists already (1 results)
* Group global-teachers exists already (1 results)
* Group global-admins exists already (1 results)
* Group global-students exists already (1 results)
* Group all-students exists already (1 results)
* Group all-teachers exists already (1 results)

#### Repairing from file: repdir.school ####
chown root.root /srv
chown root.root /srv/samba
chown root.root /srv/samba/schools
chown root.root /srv/samba/schools/default-school

#### Repairing SMB shares ####
* NOT executed (ntaclonly): smbclient command
OK (0): smbcacls-NTACL on //server/default-school /
OK (0): smbcacls-NTACL on //server/default-school management
OK (0): smbcacls-NTACL on //server/default-school students
OK (0): smbcacls-NTACL on //server/default-school teachers
OK (0): smbcacls-NTACL on //server/default-school examusers
OK (0): smbcacls-NTACL on //server/default-school share
OK (0): smbcacls-NTACL on //server/default-school share/classes
OK (0): smbcacls-NTACL on //server/default-school share/projects
OK (0): smbcacls-NTACL on //server/default-school share/management
OK (0): smbcacls-NTACL on //server/default-school share/school
OK (0): smbcacls-NTACL on //server/default-school share/teachers
OK (0): smbcacls-NTACL on //server/default-school program

#### Repairing from file: repdir.global ####
OK (0): smbcacls-NTACL on //server/linuxmuster-global /
OK (0): smbcacls-NTACL on //server/linuxmuster-global /students
OK (0): smbcacls-NTACL on //server/linuxmuster-global /teachers
OK (0): smbcacls-NTACL on //server/linuxmuster-global /management
OK (0): smbcacls-NTACL on //server/linuxmuster-global /share
OK (0): smbcacls-NTACL on //server/linuxmuster-global /share/projects
OK (0): smbcacls-NTACL on //server/linuxmuster-global /share/global
OK (0): smbcacls-NTACL on //server/linuxmuster-global /share/management
OK (0): smbcacls-NTACL on //server/linuxmuster-global /program

#### Creating group ef of type adminclass ####
* Group ef exists already (1 results)

#### Updating CN=q1,OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan (start) ####
* Setting sophomorixMembers to:
  user002 user003 user004 user005 user006 user007 user008 user009 user010
  user011 user012 user013 user014 user015 user016 user017 user018 user019
  user020 user021 user022 user023 user024 user025 user026 user027 user028
  user029 user030 user031 user032 user033 user034 user035 user036 user037
  user038 user039 user040 user041 user042 user043 user044 user045 user046
  user047 user048 user049 user050 user051 user052 user053 user054 user055
  user056 user057 user058 user059 user060 user061 user062 user063 user064
  user065 user066 user067 user068 user069 user070 user071 user072 user073
  user074 user075 user076 user077 user078 user079 user080 user081 user082
  user083 user084 user085 user086 user087 user088 user089 user090 user091
  user092 user093 user094 user095 user096 user097 user098 user099 user100

#### Sync member: CN=q1,OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan (start) ####
* 1 single project found: q1
#### Removing member from q1: ####
* User user001 exists (1 results)
* Removing user user001 from group q1

#### Updating CN=ef,OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan (start) ####
* Setting sophomorixMembers to:
  user001 user101 user102 user103 user104 user105 user106 user107 user108
  user109 user110 user111 user112 user113 user114 user115 user116 user117
  user118 user119 user120 user121 user122 user123 user124 user125 user126
  user127 user128 user129 user130 user131 user132 user133 user134 user135
  user136 user137 user138 user139 user140 user141 user142 user143 user144
  user145 user146 user147 user148 user149 user150 user151 user152 user153
  user154 user155 user156 user157 user158 user159 user160 user161 user162
  user163 user164 user165 user166 user167 user168 user169 user170 user171
  user172 user173 user174 user175 user176 user177 user178 user179 user180
  user181 user182 user183 user184 user185 user186 user187 user188 user189
  user190 user191 user192 user193 user194 user195 user196 user197 user198

#### Sync member: CN=ef,OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan (start) ####
* 1 single project found: ef
#### Adding member to ef: ####
* Group ef exists (1 results)
* User user001 exists (1 results)
* Adding user user001 to group ef

#### Move object in tree: ####
* DN: CN=user001,OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* Target: OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

ERROR: smb command
COMMAND:
/usr/bin/smbclient -U administrator%'******' //linuxmuster.lan/default-school -c 'rename "students/q1/user001" "students/ef/user001"'
RETURN VALUE: 256
ERROR MESSAGE:
NT_STATUS_OBJECT_NAME_COLLISION renaming files \students\q1\user001 -> \students\ef\user001

#### Repairing from file: repdir.student_home (start) ####
OK (0): /usr/bin/smbclient -U administrator%'******' //server/default-school -c 'mkdir "students/ef/user001"'
OK (0): smbcacls-NTACL on //server/default-school students/ef/user001
OK (0): /usr/bin/smbclient -U administrator%'******' //server/default-school -c 'mkdir "students/ef/user001/transfer"'
OK (0): smbcacls-NTACL on //server/default-school students/ef/user001/transfer

#### Moving user user001 (1),(end) ####

#### START: Removing former teachers from classes ####
#### Query AD (begin) ####
#### Query AD (end) ####
Testing frei for former teachers
Testing q2 for former teachers
Testing 06d for former teachers
Testing 08a for former teachers
Testing 10e for former teachers
Testing 07e for former teachers
Testing attic for former teachers
Testing test for former teachers
Testing ef for former teachers
Testing 08e for former teachers
Testing 07a for former teachers
Testing 10b for former teachers
Testing 05a for former teachers
Testing 06b for former teachers
Testing 09a for former teachers
Testing 09c for former teachers
Testing 05b for former teachers
Testing 09e for former teachers
Testing teachers for former teachers
Testing q1 for former teachers

#### END: Removing former teachers from classes ####
#### Running hook scripts UPDATE_HOOK_DIR: ####
#### /usr/sbin/sophomorix-update terminated regularly ####
Calling console printout
LOG: /usr/sbin/sophomorix-update terminated regularly
1 users updated
sophomorix-update: von alter Klasse wieder in neue Klasse versetzt
#### Updating User 1/1: user001 (start) ####
DN: CN=user001,OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
homeDirectory: \\server\default-school\students\q1\user001
sophomorixIntrinsic2: students/q1/user001

#### Moving user user001 (1),(start): ####
DN: CN=user001,OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
Target DN: OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
Group (Old): ef (ef)
Group (New): q1 (q1)
Role (New): student
Type (New): adminclass
School(Old): default-school
School(New): default-school
Rename: students/ef/user001 -> students/q1/user001
filename: students.csv
homeDirectory: \\server\default-school\students\q1\user001
unixHomeDirectory: /srv/samba/schools/default-school/students/q1/user001

#### Updating CN=ef,OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan ####
* Setting sophomorixMembers to:
  user002 user003 user004 user005 user006 user007 user008 user009 user010
  user011 user012 user013 user014 user015 user016 user017 user018 user019
  user020 user021 user022 user023 user024 user025 user026 user027 user028
  user029 user030 user031 user032 user033 user034 user035 user036 user037
  user038 user039 user040 user041 user042 user043 user044 user045 user046
  user047 user048 user049 user050 user051 user052 user053 user054 user055
  user056 user057 user058 user059 user060 user061 user062 user063 user064
  user065 user066 user067 user068 user069 user070 user071 user072 user073
  user074 user075 user076 user077 user078 user079 user080 user081 user082
  user083 user084 user085 user086 user087 user088 user089 user090 user091
  user092 user093 user094 user095 user096 user097 user098 user099 user100

#### Sync member: CN=ef,OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan ####
* 1 single project found: ef
#### Removing member from ef: ####
* User user001 exists (1 results)
* Removing user user001 from group ef

#### Updating CN=q1,OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan ####
* Setting sophomorixMembers to:
  user001 user101 user102 user103 user104 user105 user106 user107 user108
  user109 user110 user111 user112 user113 user114 user115 user116 user117
  user118 user119 user120 user121 user122 user123 user124 user125 user126
  user127 user128 user129 user130 user131 user132 user133 user134 user135
  user136 user137 user138 user139 user140 user141 user142 user143 user144
  user145 user146 user147 user148 user149 user150 user151 user152 user153
  user154 user155 user156 user157 user158 user159 user160 user161 user162
  user163 user164 user165 user166 user167 user168 user169 user170 user171
  user172 user173 user174 user175 user176 user177 user178 user179 user180
  user181 user182 user183 user184 user185 user186 user187 user188 user189
  user190 user191 user192 user193 user194 user195 user196 user197 user198

#### Sync member: CN=q1,OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan ####
* 1 single project found: q1
#### Adding member to q1: ####
* Group q1 exists (1 results)
* User user001 exists (1 results)
* Adding user user001 to group q1

#### Move object in tree: ####
* DN: CN=user001,OU=ef,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
* Target: OU=q1,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan

ERROR: smb command
COMMAND:
/usr/bin/smbclient -U administrator%'******' //linuxmuster.lan/default-school -c 'rename "students/ef/user001" "students/q1/user001"'
RETURN VALUE: 256
ERROR MESSAGE:
NT_STATUS_OBJECT_NAME_COLLISION renaming files \students\ef\user001 -> \students\q1\user001

#### Repairing from file: repdir.student_home (start) ####
OK (0): /usr/bin/smbclient -U administrator%'******' //server/default-school -c 'mkdir "students/q1/user001"'
OK (0): smbcacls-NTACL on //server/default-school students/q1/user001
OK (0): /usr/bin/smbclient -U administrator%'******' //server/default-school -c 'mkdir "students/q1/user001/transfer"'
OK (0): smbcacls-NTACL on //server/default-school students/q1/user001/transfer

#### Moving user user001 (1),(end) ####

#### START: Removing former teachers from classes ####
#### Query AD (begin) ####
#### Query AD (end) ####
Testing frei for former teachers
Testing q2 for former teachers
Testing 06d for former teachers
Testing 08a for former teachers
Testing 10e for former teachers
Testing 07e for former teachers
Testing attic for former teachers
Testing test for former teachers
Testing ef for former teachers
Testing q1 for former teachers
#### END: Removing former teachers from classes ####

#### /usr/sbin/sophomorix-update terminated regularly ####
LOG: /usr/sbin/sophomorix-update terminated regularly
1 users updated

Ich habe mir mal noch einen zufälligen User aus der Klasse 08C rausgepickt und zunächst per sophomorix-user -iv -u userName zunächst die Informationen zum Homeverzeichnis zu verifizieren.

output: sophomorix-user -iv -u userName
User 1/1 in AD: userName in school default-school
CN=userName,OU=08c,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
################################################################################
                   displayName: Max Mustermann
                            sn: Mustermann
          sophomorixAdminClass: 08c
      sophomorixExitAdminClass: 07c
          sophomorixSchoolname: default-school
           sophomorixAdminFile: students.csv
            sophomorixExamMode: ---
--------------------------------------------------------------------------------
                sophomorixRole: student
              sophomorixStatus: U
        sophomorixCreationDate: 20240820112408.0Z
      sophomorixTolerationDate: 19700101000000.0Z
    sophomorixDeactivationDate: 19700101000000.0Z
            userAccountControl: 66048
---------- sophomorixIntrinsic: ------------------------------------------------
          sophomorixIntrinsic2: students/08c/userName
--------------------------------------------------------------------------------
memberOf: CN=08c,OU=08c,OU=Students,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
memberOf: CN=internet,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
memberOf: CN=intranet,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
memberOf: CN=printing,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
memberOf: CN=role-student,OU=Groups,OU=GLOBAL,DC=linuxmuster,DC=lan
memberOf: CN=webfilter,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
memberOf: CN=wifi,OU=Management,OU=default-school,OU=SCHOOLS,DC=linuxmuster,DC=lan
--------------------------------------------------------------------------------
          objectSid: S-1-5-21-1808007437-3693035434-227623988-3319
      homeDirectory: \\server\default-school\students\08c\userName
          homeDrive: H:
     accountExpires: 0
    badPasswordTime: 0
        badPwdCount: 0
         pwdLastSet: 133686195650081310
         lastLogoff: 0
          lastLogon: 134151813172544690
         logonCount: 29
     sAMAccountType: 805306368
  userPrincipalName: userName@linuxmuster.lan
         uSNChanged: 197249
         uSNCreated: 139725
           codePage: 0
        countryCode: 0
  unixHomeDirectory: /srv/samba/schools/default-school/students/08c/userName

Suche ich daraufhin nach dem Homeverzeichnis sehe ich, dass es nur das alte Verzeichnis aus der vorherigen Klasse gibt.

root@server:~# find /srv/samba/schools/default-school/ -type d -name userName
/srv/samba/schools/default-school/students/07c/userName

root@server:~# du -hcs /srv/samba/schools/default-school/students/07c/userName
16K     /srv/samba/schools/default-school/students/07c/userName
16K     insgesamt

root@server:~# du -hcs /srv/samba/schools/default-school/students/08c/userName
du: Zugriff auf '/srv/samba/schools/default-school/students/08c/userName' nicht möglich: Datei oder Verzeichnis nicht gefunden
0       insgesamt

Ich denke das wäre nochmal ein guter User um das Verhalten im Logfile bei einem zurückversetzen und hochstufen zu beobachten, oder?


Wir werden am Montag aber unsere Server auch auf den aktuellen Stand bringen oder zumindestens auf die 7.3 aktualisieren. Dazu kleine Nebenfrage:
Wie verhält sich das mit Upgradepfaden aus?

  • Wäre ein Upgrade von 7.1 → 7.3 auch möglich, oder ist es empfehlenswert oder gar essentiell das Schrittweise geupgraded wird? (7.1 → 7.2 → 7.3 → 7.4)

Hallo @Kunstfehler,

Vielen Dank für deine Tests, und noch mal sorry für die späte Antwort :sad_but_relieved_face:
Der Test kann nur funktionieren, wenn der Zielordner nicht existiert.
Ich meine students/ef/user001 darf nicht vorhande sein, ansonsten ist es normal, dass smbclient ihn nicht überschreiben will, das hätte ich vielleicht besser erklären müssen.

Selbst wenn smbclient scheitert wird läuft der Rest von sophomorix einfach weiterhin. Deswegen wäre es für weitere Tests nötig den User im original Zustand zu bringen, und das (leere) Zielordner zu löschen.

Bei Max Mustermann ist es anders: dort gibt es gar keinen Ordner in 08c, das Zurückversetzen und Hochstufen würde also wahrscheinlich klappen – und damit auch die Spur verwischen. Kannst du vorher bitte die Zeile(n) zu diesem User in /var/log/sophomorix/userlog/user-update.log schicken? Die würden zeigen,
was bei der ursprünglichen Versetzung passiert ist.

Laut deinem Log läuft der Server übrigens auf Ubuntu 22.04, also schon auf 7.2 (?). Ein direktes Upgrade auf 7.4 ist nicht möglich, der Server muss vorher auf einem aktuellen 7.3-Stand sein. Ich glaube aber nicht, dass das Upgrade an dieser Situation etwas ändert: diese Funktion von sophomorix wurde nicht geändert.

Gruß

Arnaud

Hi @Arnaud

kein Problem, dann ist der Test mit dem User aus der 08C wahrscheinlich einfacher.

Das update-log vor einem vor- und zurückstufen zu dem besagten User sieht so aus:

Zusammenfassung
# der Schüler wurde damals in der 07b angelegt, ggf. durchs Sekretariat falsch angelegt oder Klasse wiederholt.

LOGFILES (1 Entries):
  ADD:  2024-08-20 11:24:08  userName (Mustermann, Max) in 07b as student


	Zeile 26080: UPDATE::1728912105::20241014152145.0Z::default-school::---::userName::max.mustermann::"sophomorixWebuiPermissionsCalculated=lm:crontab:read: false|lm:crontab:write: false|lm:device-manager:modify: false|lm:device-manager:read: false|lm:devices: false|lm:devices:import: false|lm:docker:change: false|lm:docker:list: false|lm:globalsettings: false|lm:linbo:configs: false|lm:linbo:examples: false|lm:linbo:icons: false|lm:linbo:images: false|lm:quotas:apply: false|lm:quotas:configure: false|lm:quotas:ldap-search: false|lm:samba_dns:read: false|lm:samba_dns:write: false|lm:schoolsettings: false|lm:sync:list: false|lm:sync:online: false|lm:sync:sync: false|lm:users:apply: false|lm:users:check: false|lm:users:customfields:read: true|lm:users:customfields:write: true|lm:users:globaladmins:create: false|lm:users:passwords: false|lm:users:schooladmins:create: false|lm:users:teachers:read: false|lmn:clients:config: false|lmn:groupmembership: false|lmn:groupmemberships:write: false|sidebar:view:/view/dashboard: false|sidebar:view:/view/lmn/crontab: false|sidebar:view:/view/lmn/device-manager: false|sidebar:view:/view/lmn/devices: false|sidebar:view:/view/lmn/dhcp: false|sidebar:view:/view/lmn/docker: false|sidebar:view:/view/lmn/globalsettings: false|sidebar:view:/view/lmn/groupmembership: false|sidebar:view:/view/lmn/home: true|sidebar:view:/view/lmn/landingpage: true|sidebar:view:/view/lmn/linbo4: false|sidebar:view:/view/lmn/linbo_sync: false|sidebar:view:/view/lmn/links: false|sidebar:view:/view/lmn/nextcloud: false|sidebar:view:/view/lmn/oldsession: false|sidebar:view:/view/lmn/quotas: false|sidebar:view:/view/lmn/samba_dns: false|sidebar:view:/view/lmn/schoolsettings: false|sidebar:view:/view/lmn/session: false|sidebar:view:/view/lmn/sessionsList: false|sidebar:view:/view/lmn/users/globaladmins: false|sidebar:view:/view/lmn/users/listmanagement: false|sidebar:view:/view/lmn/users/print-passwords: false|sidebar:view:/view/lmn/users/schooladmins: false|sidebar:view:/view/lmn/users/students: false|sidebar ...
	Zeile 28673: UPDATE::1757311416::20250908080336.0Z::default-school::---::userName::max.mustermann::"sophomorixIntrinsic2=students/07c/userName","homeDirectory=\\server\default-school\students\07c\userName"::
	Zeile 28674: UPDATE::1757311416::20250908080336.0Z::default-school::default-school::userName::---::"GROUP:07b->07c,ROLE:student->student"::
	Zeile 28893: UPDATE::1757335153::20250908143913.0Z::default-school::---::userName::max.mustermann::"sophomorixMailQuotaCalculated=156"::
	Zeile 29623: UPDATE::1757335153::20250908143913.0Z::default-school::---::userName::max.mustermann::"sophomorixQuota=default-school:---:1506:1579155456:---:|linuxmuster-global:---:---:new:---:"::
	Zeile 29624: UPDATE::1757335153::20250908143913.0Z::default-school::---::userName::max.mustermann::"sophomorixQuota=default-school:---:1506:1579155456:---:|linuxmuster-global:---:1006:1054867456:---:"::
	Zeile 29625: UPDATE::1757335153::20250908143913.0Z::default-school::---::userName::max.mustermann::"sophomorixCloudQuotaCalculated=1506 MB"::
	Zeile 30903: UPDATE::1785383375::20260730054935.0Z::default-school::---::userName::max.mustermann::"sophomorixIntrinsic2=students/08c/userName","homeDirectory=\\server\default-school\students\08c\userName"::
	Zeile 30904: UPDATE::1785383375::20260730054935.0Z::default-school::default-school::userName::---::"GROUP:07c->08c,ROLE:student->student"::
	Zeile 33076: UPDATE::1790593345::20260928130225.0Z::default-school::---::userName::max.mustermann::"sophomorixWebuiPermissionsCalculated=lm:crontab:read: false|lm:crontab:write: false|lm:device-manager:modify: false|lm:device-manager:read: false|lm:devices: false|lm:devices:import: false|lm:docker:change: false|lm:docker:list: false|lm:globalsettings: false|lm:linbo:configs: false|lm:linbo:examples: false|lm:linbo:icons: false|lm:linbo:images: false|lm:quotas:apply: false|lm:quotas:configure: false|lm:quotas:ldap-search: false|lm:samba_dns:read: false|lm:samba_dns:write: false|lm:schoolsettings: false|lm:sync:list: false|lm:sync:online: false|lm:sync:sync: false|lm:users:apply: false|lm:users:check: false|lm:users:customfields:read: true|lm:users:customfields:write: true|lm:users:globaladmins:create: false|lm:users:parents:read: false|lm:users:parents:write: false|lm:users:passwords: false|lm:users:schooladmins:create: false|lm:users:staff:read: false|lm:users:staff:write: false|lm:users:teachers:read: false|lm:users:users:delete: false|lmn:clients:config: false|lmn:groupmembership: false|lmn:groupmemberships:write: false|sidebar:view:/view/dashboard: false|sidebar:view:/view/lmn/crontab: false|sidebar:view:/view/lmn/device-manager: false|sidebar:view:/view/lmn/devices: false|sidebar:view:/view/lmn/dhcp: false|sidebar:view:/view/lmn/docker: false|sidebar:view:/view/lmn/globalsettings: false|sidebar:view:/view/lmn/groupmembership: false|sidebar:view:/view/lmn/home: true|sidebar:view:/view/lmn/landingpage: true|sidebar:view:/view/lmn/linbo4: false|sidebar:view:/view/lmn/linbo_sync: false|sidebar:view:/view/lmn/links: false|sidebar:view:/view/lmn/nextcloud: false|sidebar:view:/view/lmn/quotas: false|sidebar:view:/view/lmn/samba_dns: false|sidebar:view:/view/lmn/schoolsettings: false|sidebar:view:/view/lmn/session: false|sidebar:view:/view/lmn/sessionsList: false|sidebar:view:/view/lmn/users/globaladmins: false|sidebar:view:/view/lmn/users/listmanagement: false|sidebar:view:/view/lmn/users/parents: false|sidebar ...


Danke für deine Information bezüglich des Upgradepfades, wir haben den betroffenen Server mittlerweile auf Version 7.4 aktualisiert, ein einfaches sophomorix-updatehat daraufhin keine Veränderung geboten in Bezug auf die Homeverzeichnisse.

#### /usr/sbin/sophomorix-update terminated regularly                         ####
Calling console printout
LOG       : /usr/sbin/sophomorix-update terminated regularly
     0 users updated

Hi @Kunstfehler,

Das ist normal, dass sophomorix-update hier keine Verbesserung anbietet, er sieht auch kein Problem oder keine Änderung.

Schön, dass der Update auf 7.4 geklappt hat, damit ist es auch einfacher für mich das Verhalten zu vergleichen :slight_smile:

Danke für den Log, das legt schon ein mögliches Problem auf die Seite, und wir gehen vorwärts, aber ich kann noch nicht die komplette Erklärung finden.
Es wäre dazu interessant zu sehen, was die Logs /var/log/sophomorix/user/DATUM.sophomorix.update-before und
/var/log/sophomorix/user/DATUM.sophomorix.update-after auch sagen (auch per PM wenn du willst).

In diesem Fall können wir leider nur nach und nach suchen.

Gruß

Arnaud

Nachtrag, da meine Antwort nicht klar ist: ich meine die Logs update-before und update-after von 30/07 :slight_smile:

Gruß

Arnaud