Benutzer anlegen scheitert

So, ich habe folgendes gemacht:

root@server:/etc/linuxmuster/sophomorix/default-school# file -i teachers.csv
teachers.csv: text/plain; charset=us-ascii
root@server:/etc/linuxmuster/sophomorix/default-school# iconv -f us-ascii -t utf-8 teachers.csv -o teachers.csv.sik 
root@server:/etc/linuxmuster/sophomorix/default-school# file -i teachers.csv.sik
teachers.csv.sik: text/plain; charset=us-ascii

Spannend ist auch, dass ich jetzt auf der Seite List Management:Teachers List diese Ausgabe erhalte:

Der Text im Traceback ist:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/aj/api/endpoint.py", line 74, in wrapper
    result = fx(self, context, *args, **kwargs)
  File "/usr/lib/linuxmuster-webui/plugins/lmn_settings/views.py", line 43, in handle_api_session_sessions
    encoding = lmn_getSophomorixValue(sophomorixCommand, 'SUMMARY/0/ANALYZE-ENCODING/ENCODING')
  File "/usr/lib/linuxmuster-webui/plugins/lmn_common/api.py", line 192, in lmn_getSophomorixValue
    'Error Message: ' + str(e) + '\n Dictionary we looked for information:\n  ' + str(jsonDict))
Exception: getSophomorix Value error. Either sophomorix field does not exist or ajenti binduser does not have sufficient permissions:
Error Message: 'SUMMARY/0/ANALYZE-ENCODING/ENCODING'
 Dictionary we looked for information:
  {'OUTPUT': [{'MESSAGE_DE': 'ENCODING is NOT valid in section classfile.extraclasses.csv of /etc/linuxmuster/sophomorix/default-school/school.conf!', 'MESSAGE_EN': 'ENCODING is NOT valid in section classfile.extraclasses.csv of /etc/linuxmuster/sophomorix/default-school/school.conf!', 'TYPE': 'ERROR', 'NUMBER': -1}, {'MESSAGE_DE': 'teachers.csv: Not 3 Semicolons in Lehrer,Rettich,Mathias,28.06.1967,rettich', 'TYPE': 'ERROR', 'NUMBER': -1, 'MESSAGE_EN': 'teachers.csv: Not 3 Semicolons in Lehrer,Rettich,Mathias,28.06.1967,rettich'}], 'SCRIPTNAME': 'sophomorix-check', 'JSONINFO': 'RESULT', 'JSONCOMMENT': '---'}

Kann damit jemand etwas anfangen?

Hier noch eine Anmerkung:
Bevor ich mit dem Server etwas gemacht habe, habe ich ihn mit apt-get update und apt-get dist-upgrade upgedatet.

Gruß,

Mathias

Kann nix konkretes dazu sagen aber es sieht ja so aus, als wäre das Encoding weiterhin auf us-ascii?? Bei mir steht bei charset utf8, wenn es konvertiert wurde, aber us-ascii ist offenbar eine “Teilmenge” von UTF-8?!

Guck mal hier unter “If you really want it to show in utf-8 instead of us-ascii then you need to do it in 2 steps”:

Ich habe erst später gesehen, dass ich bei mir häufig “recode” nutze…
Ob’s aber damit zusammenhängt…?!

Bis später,
Michael

Hallo miteinander,

ich hab jetzt mal alle .csv Dateien gelöscht und sophomorix-check laufen lassen.
Die Fehlermeldung ist immer die gleiche:

#### Reading /etc/linuxmuster/sophomorix/default-school/school.conf       ####
   * WARNING: ENCODING is NOT valid in section classfile.extraclasses.csv
Calling console printout
ERROR   -1: ENCODING is NOT valid in section classfile.extraclasses.csv of /etc/linuxmuster/sophomorix/default-school/school.conf!

Bemängelt wird in der Datei school.conf die Section classfile.extraclasses.csv.
Der Fehler tritt also auf, bevor eine csv-Datei gelesen wird.

Hilft das?
Gruß,
Mathias

Hallo Matthias,

wie heißt den deine Schule?
(wie du sie bei linuxmuster-setup eingegeben hast)

LG

Holger

Hallo Holger,

ich habe Sie Muster-Schule genannt. Die Stadt heißt Muster-Stadt …

Ich habe eben alles noch mal von vorne durchgespielt:

  1. ova-Dateien eingespielt und die Netzwerkeinstellungen angepasst.
  2. apt-get update und danach apt-get dist-upgrade laufen lassen

Und das ist tatsächlich eine Fehlermeldung:

Holen:64 http://archive.ubuntu.com/ubuntu bionic-updates/main amd64 unattended-upgrades all 1.1ubuntu1.18.04.10 [40,4 kB]                                                                                  
Es wurden 228 MB in 2 min 42 s geholt (1.404 kB/s).                                                                                                                                                        
E: Fehlschlag beim Holen von http://fleischsalat.linuxmuster.org/lmn7/./sophomorix-samba_3.66.14-1_all.deb 404  Not Found [IP: 185.50.120.32 80]
E: Einige Archive konnten nicht heruntergeladen werden; vielleicht »apt-get update« ausführen oder mit »--fix-missing« probieren?

sophomorix-samba_3.66.14-1_all.deb wird nicht gefunden.

kann das die Ursache der probleme sein?

Gruß,

Mathias

Hallo Mathias @rettich,
das Problem hatte ich auch schon. Es hilft, das fleischsalat-Repo auf archive-Repo umzustellen…

VG, Josef

Hallo Mathias,

Und das ist tatsächlich eine Fehlermeldung:

Holen:64 Index of /ubuntu bionic-updates/main amd64
unattended-upgrades all 1.1ubuntu1.18.04.10 [40,4 kB] Es wurden 228 MB
in 2 min 42 s geholt (1.404 kB/s). E: Fehlschlag beim Holen von
http://fleischsalat.linuxmuster.org/lmn7/./sophomorix-samba_3.66.14-1_all.deb
404 Not Found [IP: 185.50.120.32 80] E: Einige Archive konnten nicht
heruntergeladen werden; vielleicht »apt-get update« ausführen oder mit
»–fix-missing« probieren? |

sophomorix-samba_3.66.14-1_all.deb wird nicht gefunden.

kann das die Ursache der probleme sein?

ja.

Bitte stell mal die Quellen um, wie hier beschrieben:

Danach
apt update
apt dist-upgrade

Wenn er dann die Pakete noch immer nicht herunterladen kann, dann lad
sie von Hand runter und leg sie nach /var/cache/apt/archive
und mach dann
apt dist-upgrade

So habe ich es vor ein paar Tagen gemacht…

LG

Holger

Hallo Holger, hallo Josef,
ich hab auf das archive-Repo umgestellt. Soweit lief alles gut. Aber beim Speichern eines Lehrers hab ich die folgende Bildschirmausgabe erhalten:


Inhalt des Traceback:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/aj/api/endpoint.py", line 74, in wrapper
    result = fx(self, context, *args, **kwargs)
  File "/usr/lib/linuxmuster-webui/plugins/lmn_users/views.py", line 103, in handle_api_teachers
    ).writerows(data)
  File "/usr/lib/python2.7/csv.py", line 158, in writerows
    return self.writer.writerows(rows)
  File "/usr/local/lib/python2.7/dist-packages/unicodecsv/py2.py", line 90, in writerows
    self.writerow(row)
  File "/usr/local/lib/python2.7/dist-packages/unicodecsv/py2.py", line 86, in writerow
    _stringify_list(row, self.encoding, self.encoding_errors))
  File "/usr/local/lib/python2.7/dist-packages/unicodecsv/py2.py", line 48, in _stringify_list
    return [_stringify(s, encoding, errors) for s in iter(l)]
  File "/usr/local/lib/python2.7/dist-packages/unicodecsv/py2.py", line 38, in _stringify
    return s.encode(encoding, errors)
LookupError: unknown encoding: null 

Nachdem ich die Zeichensätze auf UTF-8 umgestellt habe, kam keine Fehlermeldung beim speichern.
Allerdings bekam ich beim Speichern & Prüfen diese Anzeige:
SErr02
sophomorix-check liefert die folgende Ausgabe:

root@server:~# sophomorix-check 
Command line::
Option json is a modifier option
Hmmh. do not know what to do with option info
Option verbose is a modifier option
* forcing info mode
Option combinations successfully checked
OK: SophomorixSchemaVersion 1 matches required Version 1
#### Reading /usr/share/sophomorix/devel/sophomorix.ini                   ####
Distro-check: Ubuntu 18.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 /usr/share/sophomorix/devel/master/sophomorix.conf.master    ####
#### Reading /etc/linuxmuster/sophomorix/sophomorix.conf                  ####
#### OK: default-school share exists                                      ####
#### OK: /etc/linuxmuster/sophomorix/default-school/school.conf           ####
#### Reading /usr/share/sophomorix/devel/master/school.conf.master        ####
#### Reading /etc/linuxmuster/sophomorix/default-school/school.conf       ####
   * WARNING: ENCODING is NOT valid in section classfile.extraclasses.csv
Calling console printout
ERROR   -1: ENCODING is NOT valid in section classfile.extraclasses.csv of /etc/linuxmuster/sophomorix/default-school/school.conf!

Fällt euch noch was ein?

Gruß,

Mathias

Hallo Matthias,

tritt das Problem auch auf, wenn man die lmn7-server-appliance von Grund auf neu installiert?

Also Ubuntu minimal installieren,
Appliance Script runterladen und ausführen.
Linuxmuster-setup starten.
Das sollte auf alle Fälle funktionieren und geht im Zweifel schneller, als an einer verbugden Vorlageinstallation Troubleshooting zu machen.

Viele Grüße
Thomas

1 „Gefällt mir“

Hallo Thomas,

Das habe ich auch schon probiert:

  1. Ubuntu-Server 18.04 mit IP-Adresse 10.0.0.1/16 installiert und upgedatet.

  2. OPNsense 19.1.4-amd64 mit WAN: via DHCP; LAN: 10.0.0.254/16
    ssh aktiviert

  3. Auf dem Server Appliance Script herruntergeladen, ausgeführen danach Server neu gestartet.

  4. linuxmuster-setup gestartet.
    Fierwall startet neu. Sieht alles ok aus. Starte auch Server neu.

  5. Anmeldung als global-admin an der Schulkonsole:


    Inhalt von Traceback:

    Traceback (most recent call last):
    File „/usr/local/lib/python2.7/dist-packages/aj/api/endpoint.py“, line 74, in wrapper
    result = fx(self, context, *args, **kwargs)
    File „/usr/lib/linuxmuster-webui/plugins/lmn_landingpage/views.py“, line 44, in handle_api_quota
    ‚free‘: result[‚HARD_LIMIT_MiB‘]-result[‚USED_MiB‘],
    TypeError: unsupported operand type(s) for -: ‚str‘ and ‚str‘

  6. Schließe Fehlermeldung und gehe zu List Management:Teachers List

  7. Gebe für einen Lehrer Daten (ohne Umlaute) ein. Speichern mit SAVE bringt die Fehlermeldung:

Inhalt von Traceback:

Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/aj/api/endpoint.py", line 74, in wrapper
    result = fx(self, context, *args, **kwargs)
  File "/usr/lib/linuxmuster-webui/plugins/lmn_users/views.py", line 103, in handle_api_teachers
    ).writerows(data)
  File "/usr/lib/python2.7/csv.py", line 158, in writerows
    return self.writer.writerows(rows)
  File "/usr/local/lib/python2.7/dist-packages/unicodecsv/py2.py", line 90, in writerows
    self.writerow(row)
  File "/usr/local/lib/python2.7/dist-packages/unicodecsv/py2.py", line 86, in writerow
    _stringify_list(row, self.encoding, self.encoding_errors))
  File "/usr/local/lib/python2.7/dist-packages/unicodecsv/py2.py", line 48, in _stringify_list
    return [_stringify(s, encoding, errors) for s in iter(l)]
  File "/usr/local/lib/python2.7/dist-packages/unicodecsv/py2.py", line 38, in _stringify
    return s.encode(encoding, errors)
LookupError: unknown encoding: null

Unter Schoolsettings:Encoding steht bei Teachers Encoding:Detected Encoding UTF8
Nachdem ich alles auf UTF8 umgestellt habe, kann ich die Daten eines Lehrers speichern.

SAVE & CHECK führt zu:
SErr03

Auf dem Server ergibt ein sophomorix-check:

sophomorix-check 
Command line::
Hmmh. do not know what to do with option info
Option verbose is a modifier option
Option json is a modifier option
* forcing info mode
Option combinations successfully checked
OK: SophomorixSchemaVersion 1 matches required Version 1
#### Reading /usr/share/sophomorix/devel/sophomorix.ini                   ####
Distro-check: Ubuntu 18.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 /usr/share/sophomorix/devel/master/sophomorix.conf.master    ####
#### Reading /etc/linuxmuster/sophomorix/sophomorix.conf                  ####
#### OK: default-school share exists                                      ####
#### OK: /etc/linuxmuster/sophomorix/default-school/school.conf           ####
#### Reading /usr/share/sophomorix/devel/master/school.conf.master        ####
#### Reading /etc/linuxmuster/sophomorix/default-school/school.conf       ####
   * WARNING: ENCODING is NOT valid in section classfile.extraclasses.csv
Calling console printout
ERROR   -1: ENCODING is NOT valid in section classfile.extraclasses.csv of /etc/linuxmuster/sophomorix/default-school/school.conf!

Ich hoffe, das hilft den Fehler zu finden.

Vielen Dank schon mal.
Gruß,
Mathias

Hallo,
beim Testen hatte ich ähnliche Fehler beim Anlegen von Benutzern (Lehrer, global-admin) in der SK wie Mathias… Dachte aber, dass ich evtl. beim Aufsetzen der Appliance etwas falsch gemacht hätte. (Habe aber auch die zum Download angebotene ova ausprobiert). Das nur zur Info.

VG, Josef

Hallo Matthias!

Ich würde mal zwischen den beiden Schritten den Server einmal updaten.

apt update
apt full-upgrade

Beste Grüße

Thorsten

Hallo Mathias,

der ERROR bedeutet, dass beim parsen der Datei:

/etc/linuxmuster/sophomorix/default-school/school.conf

in der section

[classfile.extraclasses.csv]

unerlaubterweise der Parameter

ENCODING 

angegeben wurde.

Das ist deshalb der Fall, da ich davon ausgehe, dass die die Datei

extraclasses.csv

mit einem ordentlichen Editor oder der Schulkonsole als UTF-8 erzeugt wurde und nicht konvertiert werden muss. (Für students.csv ist in der entsprechenden section der Parameter ENCODING erlaubt)

Einfach mal den Parameter ENCODING=… rausnehmen, obs dann tut.

Wenn du rausfinden möchtest wie dein Datei tatsächlich kodiert ist, nützen die tool wie

file

,

type

, usw. nix, da die nur raten können.

Wenn die Reihenfolge der kommaseparierten Einträge in

extraclasses.csv

stimmt, sorgt der sophomorix magic dafür, zuverlässig das encoding zu ermitteln:

sophomorix-check --analyze-encoding /path/to/extraclasses.csv

Hallo Rüdiger,

Tut leider nicht aber es gibt jetzt eine neue Fehlermeldung:

root@server:~# sophomorix-check 
Command line::
Option verbose is a modifier option
Hmmh. do not know what to do with option info
Option json is a modifier option
* forcing info mode
Option combinations successfully checked
OK: SophomorixSchemaVersion 1 matches required Version 1
#### Reading /usr/share/sophomorix/devel/sophomorix.ini                   ####
Distro-check: Ubuntu 18.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 /usr/share/sophomorix/devel/master/sophomorix.conf.master    ####
#### Reading /etc/linuxmuster/sophomorix/sophomorix.conf                  ####
#### OK: default-school share exists                                      ####
#### OK: /etc/linuxmuster/sophomorix/default-school/school.conf           ####
#### Reading /usr/share/sophomorix/devel/master/school.conf.master        ####
#### Reading /etc/linuxmuster/sophomorix/default-school/school.conf       ####
#### 0 ERRORS, 0 WARNINGS -> let's go                                     ####
#### Creating lock in /var/lib/sophomorix/lock/sophomorix.lock            ####
#### /usr/sbin/sophomorix-check started ...                               ####
#### Cleaning up last check                                               ####
#### Encode-analyze teachers.csv                                          ####
{
  "/etc/linuxmuster/sophomorix/default-school/teachers.csv" => {
    "FIRSTNAMES" => {
      "count_errors" => {
        "ISO_8859-1" => 0,
        "UTF8" => 0,
        "none" => 0
      },
      "count_hits" => {
        "ISO_8859-1" => 0,
        "UTF8" => 0,
        "none" => 0
      }
    },
    "LASTNAMES" => {
      "count_errors" => {
        "ISO_8859-1" => 0,
        "UTF8" => 0,
        "none" => 0
      },
      "count_hits" => {
        "ISO_8859-1" => 0,
        "UTF8" => 0,
        "none" => 0
      }
    },
    "RESULT" => "UTF8",
    "SURE" => "TRUE",
    "TOTAL_POINTS" => {
      "ISO_8859-1" => 0,
      "UTF8" => 0
    }
  }
}
#### Analyzing user files ...                                             ####
#### Encoding results for  teachers.csv                                   ####
   * ENCODING:          UTF-8 (configured)
   * ENCODING_FORCE:    FALSE
   * ENCODING_CHECKED:  UTF8
   * Misconfigured ENCODING in configuration file and ENCODING_CHECKED do not match
   * Set A) ENCODING_FORCE to "True" if you know better than sophomorix
   *  or B) ENCODING to "auto" if you trust sophomorix
#### Removing lock in /var/lib/sophomorix/lock/sophomorix.lock            ####
#### ENCODING configuration failed: see script printout                   ####
Calling console printout
ERROR   -1: ENCODING configuration failed: see script printout

Gruß,

Mathias

In deiner school.conf, section [userfile.teachers.csv] steht:

ENCODING=UTF-8

anstelle von “auto”.

Wenn du unbedingt UTF-8 forcen möchtest, dann muss

ENCODING_FORCE=TRUE

stehen.

Da sophomorix aber schon

UTF8

erkennt, mach besser ENCODING=auto

So war’s ja am Anfang eingestellt. Da konnte ich nicht mal mit SAVE die Lehrer-Liste speichern.

Ich hab’s wieder auf auto gestellt, aber die Fehler sind die gleichen :frowning:

Hallo Thorsten,

Hab’ ich gemacht. Leider keine Änderung :disappointed:

Bitte nochmal die Ausgabe von sophomorix-check mit ENCODING=auto

da ist sie:

root@server:~# sophomorix-check 
Command line::
Option json is a modifier option
Hmmh. do not know what to do with option info
Option verbose is a modifier option
* forcing info mode
Option combinations successfully checked
OK: SophomorixSchemaVersion 1 matches required Version 1
#### Reading /usr/share/sophomorix/devel/sophomorix.ini                   ####
Distro-check: Ubuntu 18.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 /usr/share/sophomorix/devel/master/sophomorix.conf.master    ####
#### Reading /etc/linuxmuster/sophomorix/sophomorix.conf                  ####
#### OK: default-school share exists                                      ####
#### OK: /etc/linuxmuster/sophomorix/default-school/school.conf           ####
#### Reading /usr/share/sophomorix/devel/master/school.conf.master        ####
#### Reading /etc/linuxmuster/sophomorix/default-school/school.conf       ####
   * WARNING: ENCODING is NOT valid in section classfile.extraclasses.csv
Calling console printout
ERROR   -1: ENCODING is NOT valid in section classfile.extraclasses.csv of /etc/linuxmuster/sophomorix/default-school/school.conf!

Übrigens, beim Anmelden gibt’s immer noch die Meldung

Der Parameter ENCODING muss auch aus der Section

[classfile.extraclasses.csv]

in school.conf raus

Bitte mal so die Fehler dieser Art selber beheben. Sophomorix nimmt leider (oder zum Glück) keine selbsterfundenen Parameter mit denen es nix anzufangen weiss an.