Firefox - Reset

  • Hallo,

    ich bin grade dabei eine Lösung für folgendes Problem zu entwickeln: An öffentlichen Arbeitsplätzen können Benutzer Firefox Benutzen, müssen sich aber erst authentifizieren. Nun soll aber nach Verlassen des Arbeitsplatzes alles wieder so sein, wie es vorher war, damit der nächste, der an den Platz kommt, die Startseite offen hat und den Browser normal verwenden kann. Außerdem muss beachtet werden, dass Benutzer vielleicht vergessen, sich auszuloggen und der nächste theoretischer Weise mit fremden Benutzerdaten surfen könnte. Also ist der Gedanke, dass sich der Browser einfach schließt, wenn der Rechner beispielsweise 2 Minuten unbenutzt ist und sich Firefox einfach neu startet. Es gibt sicherlich viele Lösungen dafür, aber ich habe mich spontan dafür entschieden.

    Hier der Grundgedanke:
    Über einen geplanten Task führe ich eine batch-Datei aus, nach 2 Minuten Leerlauf
    Diese kann zum Beispiel so aussehen:

    Code
    taskkill /F /IM firefox.exe /T
    start firefox.exe

    Nun ergibt sich aber folgende Unannehmlichkeit:
    Beim Neustarten von Firefox erscheint die Meldung "Das hätte nicht passieren dürfen" etc.
    also habe ich folgendes ausprobiert:

    Code
    taskkill /F /IM firefox.exe /T
    start www.startseite.de

    Die Startseite, die ich im vordergrund haben wollte ist zwar da, aber die Meldung erscheint trotzdem in einem seperaten Tab und das soll natürlich nicht sein. Also hab ich mir gedacht, dass ich einfach zwischen Beenden und Neustart von Firefox, die gesamte Chronic lösche. Nun hab ich das Forum aso durchsucht, in welcher Datei die Chronic gespeichert wird und erstmal manuel getestet ob das Ersetzen der Datei ausreicht um diese Meldung zu unterbiden. Tja, da dies leider nicht der Fall war, hier die Frage:
    In welcher Form speichert Firefox, dass nach einem nicht geplanten Beenden Tabs geschlossen wurden und die Meldung "Das hätte nicht passieren..." erscheint? Ich habe auch auf http://www.firefox-browser.de/wiki nachgesehen, aber auch dort nichts hilfreiches gefunden. Weiß jemand welche Datei bei der ganze Sache betroffen ist? Gegebenenfalls hat ja jemand noch eine ganz andere Lösung zu dem Problem.

    Das Ideal scheitert an der Wirklichkeit.

  • Ok, ich hab das Problem jetzt ganz einfach gelöst indem ich browser.sessionstore.resume_from_crash auf false gesetzt habe. Ist natürlich nur die einfache Lösung, aber vielleicht weiß ja informationshalber trotzdem jemand in welcher Datei es gespeichert wird.

    Das Ideal scheitert an der Wirklichkeit.

  • Las den Parameter /F bei taskkill weg, dann wird FF geschlossen und nicht gekillt. (Und da liegt der Hund begraben; du simulierst einen Absturz. Ich praktiziere das mit Sunbird in Verbindung mit einem Datensicherungsprogramm mit Erfolg.) /T sollte im übrigen bei FF überflüssig sein, wahrscheinlich aber auch unschädlich (nicht selbst getestet).

    Der Thread gehört nicht wirklich hierhin und sollte von einem Moderator verschoben werden, da es kein wirkliches FF-Problem ist nach Smalltalk.

  • Zitat von Cosmo

    Der Thread gehört nicht wirklich hierhin und sollte von einem Moderator verschoben werden, da es kein wirkliches FF-Problem ist nach Smalltalk.

    Smalltalk? Die Beschreibung des Themas hier lautet doch: "Hier geht es um Nightlies und optimierte Builds sowie Betriebssystem-spezifische Pakete ". Also ich denke schon, dass ich hier am richtigsten bin...

    Wenn ich /F weglasse, dann erscheint aber erst noch ein Fenster ob die Tabs gespeichert werden sollen. Da war ich ganz am Anfang auch schon und da dieses Fenster nicht erscheinen sollte, habe ich den Parameter /F einfügen müssen.
    /T ist nicht zwingend notwendig, aber für den Fall, dass noch irgendwas darunter liegt, habe ich den Parameter einfach mit angegeben. Sicher ist sicher, denn selbst wenn er überflüssig ist, stellt er überhaupt kein Problem dar.

    Das Ideal scheitert an der Wirklichkeit.

  • Dann mußt du FF entsprechend konfigurieren (Einstellungen Allgemein und Tabs). Nur: den FF mit /F zu killen (du benutzt das als faulen Trick um den Rückfragedialog zu übergehen, es geht ja nicht in Wirklichkeit um einen nicht reagierenden Prozeß) und dann zu erwarten, daß FF so tut, als sei alles mit rechten Dingen abgelaufen, kann nicht aufgehen.

    Das mit dem Verschieben war kein Vorwurf, lediglich eine Empfehlung an die Moderatoren entsprechend meiner Meinung. ;) Der FF verhält sich zwar nicht so, wie du erwartest, aber so, wie vom Design her vorgesehen und die Lösung liegt wo anders (taskkill Parameter).

  • Zitat von Cosmo

    du benutzt das als faulen Trick um den Rückfragedialog zu übergehen

    Fauler Trick?^^ Nun gut, auf jeden Fall ist das schon richtig: /F ist in dem Fall nur dazu da um diesen Dialog zu unterbinden und es funktioniert ja auch so wie ich es wollte. :wink:

    Zitat von Cosmo

    Dann mußt du FF entsprechend konfigurieren (Einstellungen Allgemein und Tabs)

    Das hatte ich auch schon durchdacht, aber dort kannst du es nur ganz ausschalten oder garnicht. Dieser Dialog soll für die Benutzer, die den Platz benutzen trotzdem erscheinen, für den Fall, dass diese aus Versehen etwas schließen, trotzdem erscheinen. Das System jedoch soll den Arbeitsplatz für den nächsten wieder neu bereitstellen, wie ich ja bereits beschrieben habe. Daher ist /F die einzige Lösung, damit der Benutzer möglichst nichts von dem, was im Hintergrund abläuft, mitbekommt, oder was das eigentlich Wichtige ist, dass der "Reset" vollautomatisiert abläuft. Zumindest die einzige Lösung, die mir auf die schnelle eingefallen ist.

    Das Ideal scheitert an der Wirklichkeit.

  • Beschäftige dich mit autohotkey oder mit autoit - statt bruteforce killing...!

  • Zitat

    Das System jedoch soll den Arbeitsplatz für den nächsten wieder neu bereitstellen

    Den "Arbeitsplatz" oder nur den Browser?
    Für letzteres könntest du auch einfach eine entsprechende Erweiterung schreiben.

  • Zitat von Shiek

    Fauler Trick?^^ Nun gut, auf jeden Fall ist das schon richtig: /F ist in dem Fall nur dazu da um diesen Dialog zu unterbinden und es funktioniert ja auch so wie ich es wollte. :wink:


    Ja fauler Trick, denn du killst einen Prozeß, obwohl es eigentlich nichts zu killen gibt (kein Prozeß bleibt wirklich hängen). Daß taskkill "funktioniert" in dem Sinne, daß es killt, wenn man taskkill dazu anweist, steht außer Frage und auch FF tut, was er soll (nämlich auf eine erzwungene Beendigung = erzwungenen Absturz entsprechend reagieren). Keines der Programme funktioniert fehlerhaft; wenn das, was du(!) konfigurierst zu einem unerwünschten Ergebnis führt, solltest du dich um einen anderen Lösungsansatz bemühen. (Nur mal so aus der Hüfte geschossen: Benutzerkonto lockt nach kurzer Zeit automatisch und der nächste Benutzer muß ein andere Konto öffnen, wodurch gleichzeitig wirklich alle Benutzer-relevante Daten und Einstellungen des vorherigen Benutzers "geschützt" sind.)

  • Zitat von Brummelchen

    Beschäftige dich mit autohotkey oder mit autoit - statt bruteforce killing...!


    Das ginge sicherlich auch, ich verstehe nur nicht warum meine Lösung auf so viel Widerstand stößt. Es funktioniert so wie es soll und ruft nichts ungewolltes hervor. Sicherlich wird FF dabei abgeschossen, aber der Zweck heiligt die Mittel in der IT. Kann ich denn mit autoit oder autohotkey vollautomatisch FF navigieren lassen?

    Zitat von boardraider

    Den "Arbeitsplatz" oder nur den Browser?
    Für letzteres könntest du auch einfach eine entsprechende Erweiterung schreiben.


    Prinzipiell beides, nur für alles Andere schreibe ich eine entsprechende batch-Datei. Ich habe nur noch das Problem, mit dem Druck-Button und hatte mir die Frage gestellt ob dies nicht mit autohotkey zu bewältigen wäre. Was ich auf die schnelle gesehen habe, hat aber dagegen gesprochen, oder gibt es jemanden, der sich genaustens damit auskennt?

    Zitat von Cosmo

    (Nur mal so aus der Hüfte geschossen: Benutzerkonto lockt nach kurzer Zeit automatisch und der nächste Benutzer muß ein andere Konto öffnen, wodurch gleichzeitig wirklich alle Benutzer-relevante Daten und Einstellungen des vorherigen Benutzers "geschützt" sind.)


    Ja, die Überlegung war auch schon, nur soll der Benutzer, ohne selbst eine Eingabe machen zu müssen, den Arbeitsplatz so vorfinden wie es der Standard ist.

    Das Ideal scheitert an der Wirklichkeit.

  • Zitat von Shiek

    ich verstehe nur nicht warum meine Lösung auf so viel Widerstand stößt. Es funktioniert so wie es soll und ruft nichts ungewolltes hervor.


    Ups, im ersten Beitrag las sich das anders. Oder ist die dort zum Thread-Anlaß genommene "Unannehmlichkeit" plötzlich gewollt? :|

  • Zitat von Cosmo

    Ups, im ersten Beitrag las sich das anders. Oder ist die dort zum Thread-Anlaß genommene "Unannehmlichkeit" plötzlich gewollt? :|


    Nunja im Grunde ist es so:
    Firefox wird über einen geplanten Task (beispielsweise nach 3 Minuten) abgeschossen.
    Dabei ist der Parameter /F notwendig um die Abfrage zu verhindern. (das würde auch irgendwie mit Autohotkey Script funktionieren, ist aber sehr umständlich und wäre auch sicherlich nicht ganz zuverlässig)
    Damit der Nutzer, der nun an den Rechner kommt, wieder die Startseite zur Verfügung hat, ohne selbst den Browser aufrufen zu müssen, wird Firefox in der Batch einfach wieder gestartet.
    Die einzige Unannehmlichkeit, die dabei aufgetreten ist war, dass die Sitzungswiederherstellung sich in den Vordergrund gedrängelt hat, wenn Firefox nach dem "Absturz" neu gestartet wurde.
    Dadurch, dass ich den Eintrag "browser.sessionstore.resume_from_crash" in der "about:config" auf "false" gesetzt habe, ist die Sitzungswiederherstellung ausgeblieben.
    Der Benutzer, der am Rechner arbeitet und der, der als nächstes an diesen Arbeitsplatz geht, merkt davon nichts und darauf kommt es an. Der Absturz verursacht ja keine weiteren Probleme und daher habe ich nicht verstanden warum diese Lösung auf so viel Widerstand stößt.

    Das Ideal scheitert an der Wirklichkeit.

  • Daß du damit zunächst einmal das Gewünschte erreicht hast, ist unbestritten. Soweit zum Ablauf der Situation. Technisch ist es dennoch ein fauler Trick, denn ein Prozeß-Kill ist niemals eine saubere Lösung zum Beenden eines Prozesses. Was übrigens, wenn der FF tatsächlich mal abschmiert (für diese Situation ist die Sitzungswiederherstellung ja da), dann steht der Benutzer im kurzen Hemd da.

    Zusammenfassend: Man kann es so machen, ich würde es aus bekanntem Grund nicht so machen und da du dein Problem öffentlich zur Diskussion gestellt hast, stelle ich meine Meinung ebenso öffentlich dar. Deswegen muß und soll es keinen Streß geben (und der von dir genannte Widerstand existierte insofern auch nur in deinem Kopf, als du die falsche Erwartung gehegt hast, daß andere deine Vorgehensweise als richtige Vorgehensweise bestätigen würden), aber so ist das nun mal bei Diskussionen: Nicht immer kommt das Ergebnis heraus, daß man sich erträumt hatte.

  • Ich wollte eigentlich keine Befürwortung für meine Lösung. Ich habe das Thema eröffnet, da ich ein Problem hatte und ich wollte, um das Thema ordnungsgemäß abzuschließen auch meine Lösung posten, eigentlich ohne Diskusion. Wenn du mir eine saubere Lösung zum Beenden des Firefox bieten kannst, bin ich gern gewillt, diese zu übernehmen. Dass dem Benutzer der FF mal abschmiert kann sicherlich passieren, aber die öffentlichen Arbeitsplätze sind so eingerichtet und eingeschränkt, dass dies in der Regel nicht passieren kann, falls doch: es gibt in der IT nie eine 100%-Lösung :!: und die Variante, dass die unwarscheinliche Möglichkeit besteht, dass FF mal durch den Benutzer abschmiert, ist mir lieber als keine Lösung.

    Das Ideal scheitert an der Wirklichkeit.

  • >> Ich wollte eigentlich keine Befürwortung für meine Lösung.

    Und offensichtlich auch keine sachliche Kritik!

    >> eigentlich ohne Diskusion

    Und warum textest du uns dann unötigerweise damit zu?

    Reich mal einer bitte das Trollspray rüber, hab meines grad nicht bei... :roll:

  • Zitat von Brummelchen

    Und offensichtlich auch keine sachliche Kritik!


    Die Kritik kam nicht von mir, das würde dir sicherlich auffallen, wenn du die Beiträge komplett lesen würdest.

    Zitat von Brummelchen

    Und warum sülzt du uns dann unötigerweise damit zu?


    Eventuell antworte ich auf die Kritik, die sich gegen mich richtet?

    Zitat von Brummelchen

    Reich mal einer bitte das Trollspray rüber, hab meines grad nicht bei... :roll:


    und hier ein ganz typisches Beispiel dafür sachlich zu bleiben :klasse:

    Das Ideal scheitert an der Wirklichkeit.

    Einmal editiert, zuletzt von Shiek (9. Juni 2010 um 08:01)

  • Es handeln sich dabei um öffentliche Arbeitsplätze, die von Studenten benutzt werden. Da wir mit den Fehlern anderer rechnen müssen, müssen wir auch davon ausgehen, dass einige vergessen sich auszuloggen oder kuriose Seiten beim Verlassen des Platzes offen lassen. Daher sollen sich die Arbeitsplätze sozusagen selbstständig wieder in den gewünschten Zustand versetzen. Das heißt: falls ein Benutzer aus Versehen noch eingeloggt ist, dann soll er ausgeloggt werden. Falls er noch andere Seiten offen hat, sollen diese geschlossen werden und die Startseite aufgerufen werden. Davon soll der Benutzer selbst nichts mitbekommen bzw. er soll nichts dazu beitragen müssen. Außerdem ist dazuzusagen, dass Erweiterungen oder plugins sehr viel zusätzlichen administrativen Aufwand bedeuten, weil man diese auch erst als Softwarepaket verpacken und im Netzwerk sinnvoll verteilen und konfigurieren muss. Da ist es schon einfacher, wenn sich alles über eine Batch-Datei realisieren lässt, die über einen geplanten Task ausgeführt wird. Dies bietet sich auch dahingehend an, weil man diese Batch-Datei gleich noch mit dem Löschen der persönlichen Downloads und anderen Aufgaben, die beim Zurücksetzen des Arbeitsplatzen passieren sollen, verbinden kann.

    Das Ideal scheitert an der Wirklichkeit.