boost::asio::io_service - Nicht-Freigabe "zerstört" Festplatte?



  • Hi,

    ich bin gerade nicht sicher, in welche Richtung ich mich informieren soll:

    Ich habe das zweite Beispiel von boost::asio auf Arch Linux kompiliert: http://www.boost.org/doc/libs/1_53_0/doc/html/boost_asio/tutorial/tutdaytime2.html

    Wenn ich es so laufen lasse, beende ich das Programm über Strg+C. Dann jedoch ist die Festplatte, auf dem das läuft, nicht mehr anständig am Laufen. "ls" liefert mir dann I/O-Fehler. Anderer Benutzer oder logout helfen nicht, ich muss das System neustarten (oder vermutlich irgendeinen Service oder irgendwas mit der HDD, wie auch immer).

    Kann mir jemand verraten, warum das so ist und was ich dagegen tun kann?

    Vielleicht gehört das auch ins Linux-Forum, dann verschiebt mich bitte dahin. Bin auch ein Linux-n00b. Wenn jemand Schlagwörter hat, zu denen ich mir ganz viele Artikel durchlesen soll, weil das notwendig ist, wenn man mit Linux arbeitet, folge ich auch gerne denen. 🙂

    Beste Grüße,
    Eisflamme



  • 😮 😮 😮 😮



  • Ist das reproduzierbar? Ist vielleicht einfach deine Festplatte am Ende?



  • Ich habe auch Arch Linux. Morgen werde ich dein Beispiel mal kompilieren.



  • Also das Ding ist am Raspberry PI und nutzt dessen Strom. Manchmal piept die Festplatte etwas, ich weiß nicht, ob das normal ist. Ich vermute, der Strom ist etwas niedrig, sodass ein USB-Hub auf Dauer klug wäre. In den RPI laufen 1,2 A, wie viel die HDD braucht, weiß ich nicht. Läuft aber sonst eigentlich stabil (aber ich habe eigentlich noch nicht viel gemacht außer ein paar Archive dekomprimiert).

    Reproduzierbar ist es bei mir schon. Jedenfalls zwei Mal. Wenn ich nach Senden der Nachricht das Programm normal beenden lasse, habe ich wie gesagt keine Probleme. Falls es noch irgendwie wichtig ist: Dateisystem ist ext4.



  • Bei mir gibts nichts. Ich lasse es laufen - Ausgabe ist, "bind - permission denied". Danach läuft aber alles ganz normal.



  • Wenn bind nicht geht, klappt doch das ganze Programm nicht oder doch? Kann sich bei Dir jemand verbinden und die Zeit abfragen? Das funktioniert bei mir nämlich durchaus.

    Architektur des Geräts ist übrigens ARM. Dahingehend suchend fand ich zumindest: https://groups.google.com/forum/#!msg/boost-list/cQBTLAoDGp4/MBiF6V6RElYJ

    tl,dr: I/O Cancellation scheint bei Boost auf ARM nicht ganz zu funktionieren?! Wenn es das ist, wonach es klingt, könnte es ja mit meinem Problem zusammenhängen. Dann wiederum ist es von 2008, also weiß ich nicht so genau.



  • Hi,

    ok, liegt definitiv am Gerät. Auf einem USB-Stick besteht das Problem nicht. Hat jemand eine Idee, warum nach Beenden des Servers die HDD nicht mehr geht? Generell kämpft die meiner Meinung nach ja mit zu wenig Strom. Warum könnte dann an der Stelle so viel Strom fehlen?


Anmelden zum Antworten