View previous topic :: View next topic |
Author |
Message |
lakul
Joined: 21 Jun 2010 Posts: 20
|
Posted: Mon Jun 28, 2010 9:16 Post subject: Fehlermeldung bei Clientänderung |
|
|
Die Bugs die ich im nachfolgenden beschreibe beziehen sich auf eine in einem VM Server 2.0 installierten m23 Server (Standardinstallation, ich habe also keine zusätzlichen Plugins installiert oder sonstige Änderungen vorgenommen)
Der Server und die Clients können direkt kommunizieren ohne Firewall dazwischen. Mein m23 Server ist des weiteren alleiniger DHCP und LDAP Server.
1. Fehler
Wenn ich einen Client neu hinzufüge und dieser dann rot markiert ist (und wenn dieser eingerichtet, also gelb markiert ist) erhalte ich bei einer nachträglichen Änderungen des Clients folgende Fehlermeldung:
(Diese Fehlermeldung kommt nicht mehr wenn die Client installiert (also grün ist)
Code: | Client ändern: m231
Warning: include_once(/m23/inc/distr//packages.php) [function.include-once]: failed to open stream: No such file or directory in /m23/inc/client.php on line 2778
Warning: include_once() [function.include]: Failed opening '/m23/inc/distr//packages.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /m23/inc/client.php on line 2778
Fatal error: Call to undefined function PKG_getKernels() in /m23/inc/client.php on line 2779 |
2. Fehler
Ich habe einen Clienten hinzugefügt und eingerichtet und dabei die Optionen
Systemzeit per NTP ermitteln
Druckertreiber installieren und angeschlossene Drucker erkennen
Anmeldungsdaten lokal auf dem Client speichern.
nicht angehackt.
Nach der Einrichtung und Insllation steht er aber so da:
Wenn ich allerdings jetzt auf "Client ändern" klicke, steht er so da:
Änderungen bewirken nichts, die Punkte bleiben immer unangehackt.
Ich bin mir nicht ganz sicher, ob das nicht vielleicht nur ein Anzeigefehler ist, denn trotz das es unangehackt ist, werden Anmeldungsdaten auf dem Client gespeichert, wenn man es beim "Hinzufügen" angegeben hat.
Gibt es Debug Möglichkeiten in m23? Würde gerne mehr zur Fehlersuche beitragen.
MfG
Christian |
|
Back to top |
|
|
Hauke
Joined: 02 Mar 2003 Posts: 1072
|
Posted: Mon Jun 28, 2010 13:09 Post subject: |
|
|
Moin Christian,
das ist realtiv einfach zu erklären
In der Zeile Code: | include_once(/m23/inc/distr//packages.php) | fehlt zwischen den beiden Schrägstrichen der Name der Distribution (die noch nicht ausgewählt wurde). Daher können auch die Distributions-spezifischen Funktionen (wie z.B. für das Ermitteln der Kernel) nicht eingebunden werden. Nachdem die zu installierende Distribution ausgewählt wurde, sollte es aber funktionieren.
Ich werde mal eine Fehlermeldung einbauen, die das Ändern des Clients erst erlaubt, wenn eine Distribution ausgewählt wurde
Zum Thema Debugging: Im Kontrollzentrum eines jeden Clients (einfach auf den Clientnamen in der Übersicht klicken) gibt es unter "Kritischen Status beheben" das Icon "Debug-Status ändern" zum Aktivieren des Debug-Modus'. Mit aktiviertem Debug-Modus werden zusätzliche Informationen in das Client-Protokoll geschrieben und die Statusmeldungen auf dem Client deaktiviert, damit alle Informationen und Programmausgaben im "Rohformat" erscheinen.
Auch kann das Ausgeben des aktuellen Skriptes eines Client nützlich sein ($serverIP und $clientID entsprechend ersetzen):
Code: | wget "$serverIP/work.php?m23clientID=$clientID" -O deb; less deb |
Ansonsten gibt es noch den phpMyAdmin (unter Server > Server- Einstellungen > phpMyAdmin) zum Überprüfen von Werten in der Datenbank.
Übrigens vielen Dank für Deine Hinweise! Solche Hinweise brauche ich, denn ich kann schon längst nicht mehr alles selbst testen und bin daher auf Eure Hilfe angewiesen. Du kannst mich auch über ICQ und Jabber erreichen. _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
Back to top |
|
|
lakul
Joined: 21 Jun 2010 Posts: 20
|
Posted: Mon Jun 28, 2010 13:43 Post subject: |
|
|
Hi Hauke,
ok ja, zu Fehler 1, da hätte ich selber drauf kommen können, aber danke
Kannst Du sagen, ob bei 2 ein Fehler vorliegt, oder ob das nur ein Anzeigefehler ist?
Danke zu den Debug Hinweisen.
Gruß
Christian |
|
Back to top |
|
|
Hauke
Joined: 02 Mar 2003 Posts: 1072
|
Posted: Tue Jun 29, 2010 19:03 Post subject: |
|
|
Moin,
ich hatte doch glatt übersehen, daß es beim zweiten Teil um ein anderes Problem geht.
Probier mal, ob es dann geht, wenn Du in der Datei /m23/inc/html.php die Funktion HTML_getElementValue so anpaßt, daß die letzten Zeilen so aussehen (hierbei hat sich nur der Teil elseif ($checkbox && !is_bool($initValue)) geändert):
Code: | elseif (!isset($initValue))
$initValue = false;
elseif ($checkbox && !is_bool($initValue))
$initValue = false;
return($initValue); |
Funktioniert es dann? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
Back to top |
|
|
lakul
Joined: 21 Jun 2010 Posts: 20
|
Posted: Wed Jun 30, 2010 10:36 Post subject: |
|
|
Hat leider nicht geklappt, jetzt werden Änderungen bei
nicht mehr übernommen. Das heißt bei mir sind alle drei angehackt, wenn ich die Hacken entferne und dann auf speichern klicke, sind sie immer noch drin, wenn ich wieder auf Client bearbeiten gehe.
Gruß
Christian |
|
Back to top |
|
|
Hauke
Joined: 02 Mar 2003 Posts: 1072
|
Posted: Thu Jul 01, 2010 11:00 Post subject: |
|
|
Moin,
hast Du in der ganz rechten Spalte neben jedem Eintrag, den Du ändern möchtest, auch die Änderungsmethode ("Keine Änderung", "Client ändern" oder "In Datenbank schreiben") ausgwählt?
Wenn Du "In Datenbank schreiben" gewählt hast, sollte sich der Haken sofort ändern, bei "Client ändern" erst, nachdem der Client die Änderung durchgeführt und an den m23-Server gemeldet hat.
Welche Art der Änderung hast Du gewählt? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
Back to top |
|
|
lakul
Joined: 21 Jun 2010 Posts: 20
|
Posted: Thu Jul 01, 2010 13:10 Post subject: |
|
|
Hi,
leider spielt es keine Rolle, ob ich Client ändern wähle oder in DB schreiben. Alle drei Hacken bleiben drin (auch wenn ich den Client neustarte).
Er versucht jedesmal Drucker zu installieren und User einzurichten, obwohl ich die Hacken entfernt habe.
Viele Grüße
Christian |
|
Back to top |
|
|
Hauke
Joined: 02 Mar 2003 Posts: 1072
|
|
Back to top |
|
|
lakul
Joined: 21 Jun 2010 Posts: 20
|
Posted: Thu Jul 01, 2010 14:37 Post subject: |
|
|
Hi,
"Client ändern" und in "Datenbank speichern" verursacht leider folgende Fehlermeldung:
Code: | NTP:s:1:"1"; isset: b:1;
MET: initValue:b:0;
CB_getSystemtimeByNTP: b:0; defaultCheck b:0; |
Gruß
lakul |
|
Back to top |
|
|
Hauke
Joined: 02 Mar 2003 Posts: 1072
|
Posted: Fri Jul 02, 2010 8:56 Post subject: |
|
|
Moin,
das ist keine Fehlermeldung, sondern die Ausgabe meins Debug-Codes
Funktioniert das Setzen/Entfernen des Hakens trotz "Fehlermeldung"?
Kommt eigentlich der blaue Kasten, in dem steht, welche Werte wie geändert wurden, nachdem Du gespeichert hast? _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
Back to top |
|
|
lakul
Joined: 21 Jun 2010 Posts: 20
|
Posted: Fri Jul 02, 2010 10:05 Post subject: |
|
|
Hi,
nein, die Hacken werden nicht gespeichert aber die Debugmeldung kommt mit folgenden Aufschrift:
Code: | NTP:s:1:"1"; isset: b:1;
MET: _POST initValue:s:3:"yes";
CB_getSystemtimeByNTP: b:1; defaultCheck b:0; |
und ja, die blaue Box kommt mit folgender Aufschrift:
Code: | Information
Die folgenden clientseitigen Veränderungen werden vorgenommen:
Die folgenden serverseitigen Veränderungen wurden vorgenommen:
• Systemzeit per NTP ermitteln
• Anmeldungsdaten lokal auf dem Client speichern.
• Druckertreiber installieren und angeschlossene Drucker erkennen |
Dabei spielt es keine Rolle, ob ich "Client ändern" oder in "Datenbank speichern" wähle.
Gruß
Christian |
|
Back to top |
|
|
Hauke
Joined: 02 Mar 2003 Posts: 1072
|
Posted: Sat Jul 03, 2010 10:33 Post subject: |
|
|
Moin,
lag doch noch an anderen Stellen, als ich dachte. Probier mal http://m23.sourceforge.net/temp/hookPatch2.tar.gz (Entpacken wieder wie beim letzten Mal).
Das Schreiben in die Datenbank sollte nun wirklich gehen
Der NTP läßt sich auf dem Client (de)aktivieren. Die Druckerinstallation und Erkennung läßt sich bis jetzt nur auf dem Client aktivieren. Das Anlegen der lokalen Benutzers läßt sich nur in der DB speichern und wird erst nach der Neuinstallation (und nach manueller Entfernung eines evtl. vorhandenen Benutzereinrichtungsjobs) nicht erneut vorgenommen oder vorgenommen.
Ich überlege zudem, ob ich für eine der nächsten Versionen eine Funktion zum Verwalten von lokalen Benutzern auf dem Client einbaue. Falls Du PHP-Kenntnisse hast und gern dabei helfen möchtest, melde Dich einfach
PS. Es sind wieder Debug-Ausgaben enthalten. Wenn alles klappt, einfach ignorieren, wenn nicht, bitte mit ins Forum kopieren. _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
Back to top |
|
|
lakul
Joined: 21 Jun 2010 Posts: 20
|
Posted: Mon Jul 05, 2010 6:49 Post subject: |
|
|
Hi Hauke,
jo, wunderbar. Funktioniert.
Ja, würde sehr gerne mitmachen. In PHP bin ich fitt. Nutzt Du ein Framework?
Grüße
Christian |
|
Back to top |
|
|
lakul
Joined: 21 Jun 2010 Posts: 20
|
Posted: Mon Jul 05, 2010 9:24 Post subject: |
|
|
Ich wollte grad einen neuen Client hinzufügen (identisch mit dem den ich schon drin habe und teste)
Hinzufügen klappt:
Ich installiere mit der gleichen Distri (debian lenny, gnome2, linux-image-2.6.686), die auch der andere hat den ich über m23 eingerichtet habe.
Debug Meldung bevor im Menü "Client hinzufügen" (bevor ich auf "Hinzufügen" klicke)
Code: | NTP:N; isset: b:0;
LOCAL:N; isset: b:0;
PRN:N; isset: b:0;
START-initValue (CB_getSystemtimeByNTP):b:1;
MET(CB_getSystemtimeByNTP): initValue initValue:b:1;
HTML_checkBox(CB_getSystemtimeByNTP): b:1; IV: yes checked="checked"
CB_getSystemtimeByNTP: b:1; defaultCheck b:1;
START-initValue (CB_addNewLocalLogin):b:1;
MET(CB_addNewLocalLogin): initValue initValue:b:1;
HTML_checkBox(CB_addNewLocalLogin): b:1; IV: yes checked="checked"
START-initValue (CB_installPrinter):b:1;
MET(CB_installPrinter): initValue initValue:b:1;
HTML_checkBox(CB_installPrinter): b:1; IV: yes checked="checked" |
Debug Meldung nachdem der Client erfolgreich hinzugefügt wurde:
Code: | NTP:N; isset: b:0;
LOCAL:N; isset: b:0;
PRN:N; isset: b:0;
START-initValue (CB_getSystemtimeByNTP):b:1;
MET(CB_getSystemtimeByNTP): _POST initValue:s:3:"yes";
HTML_checkBox(CB_getSystemtimeByNTP): s:3:"yes"; IV: yes checked="checked"
CB_getSystemtimeByNTP: b:1; defaultCheck b:1;
START-initValue (CB_addNewLocalLogin):b:1;
MET(CB_addNewLocalLogin): CB initValue:b:0;
HTML_checkBox(CB_addNewLocalLogin): b:0; IV: yes
START-initValue (CB_installPrinter):b:1;
MET(CB_installPrinter): CB initValue:b:0;
HTML_checkBox(CB_installPrinter): b:0; IV: yes
DB_query: Could not execute SQL statement: UPDATE `statusbar` SET `statustext` = 'Client erfolgreich hinzugefügt!' , ts = 1278328151 WHERE `client`='m23c1' AND `name`='installStatus' ERROR:Table 'm23.statusbar' doesn't exist |
Das "m23Presetup" läuft anschließend fehlerfrei durch und die Client wartet auf Aufträge.
Wenn ich den Client jetzt einrichte erhalte ich folgende Meldung nach der Einrichtung:
Code: | Information
0 Aufträge wurden zugewiesen
Fatal error: Call to undefined function HELPER_debugBacktraceToFile() in /m23/inc/html.php on line 35 |
Obwohl da steht, das keine Aufträge zugewiesen wurden steht der Client so da:
Code: | m23fdiskFormat job_amount###command0###path0###start0###end0###type0###devNr0###command1##
#path1###fs1###command2###path2###devNr2###command3###path3###start3###end3
###type3###devNr3###command4###path4###fs4###5###add###/dev/hda###0###9728#
##primary###1###format###/dev/hda1###ext3###bflag###/dev/hda###1###add###/d
ev/hda###9729###10239###primary###2###format###/dev/hda2###linux-swap 5 waiting
m23Presetup 6 waiting
m23baseSys instPart=/dev/hda1#swapPart=/dev/hda2 10 waiting
m23xfree864 15 waiting
m23gnome2 20 waiting
m23UpdatePackageInfos 25 waiting
m23Reboot 30 waiting |
Die Client beginnt dann auch sofort mit der Installation und schließt diese erfolgreich ab.
Ich hatte zwischenzeitlich einen Testclient den ich auf die gleiche Art installierte, aber dieser verfing sich aber bei der Installation in einer Schleife mit folgender Ausgabe:
Code: | /tmp/afterChrootInstall.sh. line XXX: xxx command not found |
Die xxx sind verschiedene Kommandos und die XXX die Zeilen. Er hängt dann in einer Schleife fest und gibt nur noch die Fehlermeldung aus. |
|
Back to top |
|
|
Hauke
Joined: 02 Mar 2003 Posts: 1072
|
Posted: Mon Jul 05, 2010 11:32 Post subject: |
|
|
lakul wrote: | Das "m23Presetup" läuft anschließend fehlerfrei durch und die Client wartet auf Aufträge.
Wenn ich den Client jetzt einrichte erhalte ich folgende Meldung nach der Einrichtung:
Code: | Information
0 Aufträge wurden zugewiesen
Fatal error: Call to undefined function HELPER_debugBacktraceToFile() in /m23/inc/html.php on line 35 |
|
Ich habe mal den ganzen Entwicklercode hochgeladen: http://m23.sourceforge.net/temp/hookPatch3.tar.gz. Da sollten nun auch wirklich alle Funktionen drin sein
"0 Aufträge wurden zugewiesen" bedeutet, daß keine zusätzlichen Pakete aus einer Paketzusammenstellung mitinstalliert werden. Ist vielleicht nicht ganz offensichtlich, geb ich ja zu
lakul wrote: | Ich hatte zwischenzeitlich einen Testclient den ich auf die gleiche Art installierte, aber dieser verfing sich aber bei der Installation in einer Schleife mit folgender Ausgabe:
Code: | /tmp/afterChrootInstall.sh. line XXX: xxx command not found |
|
Es könnte sein, daß beim Herunterladen der Pakete etwas nicht funktioniert hat und benötigte Kommandos deshalb nicht auf der Festplatte verfügbar sind.
Um herauszufinden, woran es genau liegt brauche ich weitere Informationen:
Welche Kommandos sind es genau (VMWare sollte wie VirtualBox auch eine Pause-Funktion haben, die Dir hilft, wenn die Ausgabe zu schnell sein sollte)?
Schau bei für den Client aktivierten Debug-Modus mal in das Client-Protokoll. Wenn dort Fehlermeldungen am Schluß stehen, kopiere diese bitte ins Forum. _________________ Hauke Goos-Habermann
- project leader m23 (http://m23.sf.net) -
Jabber: dodgerm23@jabber.org
Schulung, Entwicklung und Support zu m23 und anderen OpenSource-Produkten: www.goos-habermann.de
Auch DU kannst etwas gegen Softwarepatente tun! www.patentfrei.de |
|
Back to top |
|
|
|