USB Stick Probleme

  • Hallo, ich benutze mein RPi als Downloadserver, welche auf einen USB stick die Datein lädt.
    So nun habe ich 2 Probleme:
    1. Beim Anstecken des USB Sticks sehe ich ihn in Filezilla nicht(SFTP), erst nachdem ich per VNC auf dem Desktop des RPi "Open in File manager" angeklickt und im File Manager auch ausgewählt habe erscheint er.
    2. Wenn ich den USB Stick raus ziehe verschwindet der Ordner nicht. Wenn ich ihn dann wieder reinstecke wird er "USBSTICK_" benannt. Der richtige Ordner "USBSTICK" ist dann auf der SD Karte..

  • Guten Tage tyrann,


    gehe ich richtig ich richtig in der Annahme, dass du Debian verwendest und zum downloaden pyLoad oder den JDownloader verwendest?


    Falls nicht berichtige mich bitte.


    Zu deinem Problem. Ich verwende selbst den eben von mir beschriebenen Aufbau, allerdings mit einer USB Festplatte anstatt eines USB Sticks.
    Wie ich vermute kommst du von Windows her und bist es gewohnt, dass der USB Stick nach dem Anstecken erkannt und sofort verfügbar ist.


    Unter Linux musst du jedoch die Laufwerke erst mounten damit du richtig darauf zugreifen kannst.
    Bist du im normalen Desktop wird dir der Stick angezeigt und automatisch eingehängt sobald du auf ihn zugreifen möchtest.
    Für eine Verwendung in der Konsole oder auf andere Art außerhalb des normalen Desktops musst du ihn jedoch manuell einhängen.


    Als ersten Schritt musst du wissen wie dein Laufwerk heißt.
    Das findest du heraus indem du den Befehl "df" eingibst. Es sollte eine Liste aller Partitionen erscheinen.


    Merk die nun bei deinem Gerät die ganz linke Spalte.
    Diese sollte bspw. lauten:
    /dev/sda1


    nun erstellst du an einem beliebigen Ort einen Ordner, wo der USB Stick später eingebunden werden soll. In meinem Fall unter /media/hdd
    also erstellst du mit
    sudo mkdir /media/hdd
    ein Verzeichnis. Selbstverständlich kannst du auch einen anderen Ort wählen.


    Nun musst du lediglich deinen Stick an diesem Platz einbinden mit:
    sudo mount /dev/sda1 /media/hdd


    Die einzelnen Pfade können bei dir anders aussehen. In dem Fall musst du den Befehl anpassen. Hast du das gemacht, ist der Stick in diesem Verzeichnis verfügbar. Möchtest du den Stick abstecken ist es am sinnvollsten ihn vorher auszuhängen. So verhinderst du Datenverlust usw.


    Unmounten tut man über:
    sudo umount /dev/sda1



    Falls du noch fragen hast stehen wir dir auch gerne weiterhin zur Seite.



    Mit freundlichen Grüßen



    Darkwater


  • Das findest du heraus indem du den Befehl "df" eingibst. Es sollte eine Liste aller Partitionen erscheinen.

    Zeigt df (diskfree) bei Debian auch nichtgemountete Partitionen?
    ...
    Bei mir zumindest nicht.
    Mit 'dmesg' kann man sich die Events beim Einstecken ansehen. Da findet man das zugewiesene Device sicher.


    Gruß
    Oliver

  • danke für eure hilfe.. Ist das auch möglich das automatisiert zu machen.. Sprich Plug and Play? Will nicht jedes mal den SSH client aufmachen zum Mounten/Unmounten

  • Automatisch zu mounten stellt kein größeres Problem dar.


    Dafür gibts das Programm "usbmount".


    Aber automatisches Unmounten ist unmöglich. Woher soll das System denn wissen, dass du gleich den USB Stick herausziehen wirst? :D

  • liegt das am Unmounten, dass der Ordner bleibt?
    Windows macht doch das auch ohne Probleme, und da Linux mehr Möglichkeiten bietet muss das doch auch möglich sein?!
    Oder reicht es den Ordner nach dem rausziehen automatisch zu löschen?Wenn ja wie geht das?

  • Das der Ordner bleibt ist meines Wissens normal. Mein "hdd" Ordner bleibt ja auch, den habe ich ja anfangs extra erstellt um darin meine Festplatt zu mounten.


    Mir ist eben aber noch eine recht abenteuerliche, aber machbare Methode eingefallen. :D


    Der Raspberry Pi hat ja GPIO Pins, die man über Python ansteuern kann.
    Du könntest dir ein kleines Programm schreiben, welches einen dieser Pins überwacht.
    An diesen Pin schließt du einen Kippschalter an.


    Bei steigender Flanke an dem Pin lässt du das Programm den mount Befehl ausführen, bei fallender Flanke den unmount Befehl.
    Das Programm lässt du dann beim hochfahren von Debian automatisch starten und schon kannst du wenn du deinen Stick eingesteckt hast und dann ja sowieso beim RPi stehst den Stick bequem mit einem Schalter mounten, bzw. bevor du ihn herausziehst unmounten.


    Grundsätzlich könntest du nach dem Befehl fürs unmounten auch noch den Ordner löschen, worin ich aber keinen Sinn sehe.
    Du müsstest ihn vor jedem neuen mounten nämlich auch wieder erstellen.

  • also müsste das automounten den USB stick wieder in "seinen" ordner ziehen und nicht einen neuen erstellen wie bei mir?

  • Da ich meine Platte gezielt über einen Befehl mounte, bekommt sie bei mir immer den selben Ordner.
    So muss ich bei Programmen die auf die Platte zugreifen nie den Pfad ändern.

  • Ich würde einen Ordner anlegen, in den der Stick gemountet werden soll (z.B. /mnt/stick) und in der /etc/fstab eine Zeile

    Code
    /dev/sda1     /mnt/stick  	auto   	noauto,rw 	0  0

    hinzufügen.
    Dann sollte usbmount den ersten Stick immer nach /mnt/stick mounten.
    Bei Linux werden, anders als bei Windows, Laufwerke immer im vorhandene Verzeichnisse gemountet, der Ordner /mnt/stick ist also immer vorhanden. Wenn Du da Dateien rein kopierst solange kein Stick stekt geht das, Du siehst sie dann aber nicht mehr, wenn der Stick gemountet ist, sie werden auch nicht automagisch auf den Stick kopiert.

  • Bleibt das Problem mit dem Unmounten.
    Da bleibt dir zwangsläufig nur die Möglichkeit über eine SSH Verbindung von einem PC oder einem Android Smartphone aus, oder eben meine Idee mit den GPIO Pins, was aber etwas Arbeit ist.

  • Hallo,


    Ich habe ein ähnliches / das selbe Problem :


    Ich habe das Raspberry ebenfalls mit einer externen Festplatte verbunden. Das diese soll auch permanent da dran bleiben.
    Deshalb dachte ich, ich bin schlau und verankere den mount mal direkt in der fstab.


    Mount -a bestätigt mir das auch und das medium ist eingehängt.
    Starte ich das pi neu, ist der Datenträger natürlich nicht eingehangen. Wenn ich mount -a ausführe, mekerte er rum, das ich ein falsches Dateisystem oder eine falsche option angegeben habe.


    Die einzige möglichkeit die Festplatte dann einzuhängen ist die folgende :


    Ich kommentiere den eintrag in der fstab aus --> mount -a --> den ordner der Festplatte (unter media ) einmal öffnen --> den eintrag wieder einkommentieren(fstab) --> mount -a


    Das ist ja sicher nicht der sinn dahinter oder ?


    Was könnte ich falsch gemacht haben ?


  • Wie sieht Dein Eintrag in der fstab aus?
    Hast Du ein 'noauto' dabei?
    Sind die Rechte für den Zielordner passend gesetzt?

    Vielen Dank für deine Antwort !


    der eintrag im fstab :


    /dev/sdc /medien defaults 0 0



    Sollte ein noauto dabei sein ? (Hier erschließt mir sich der sinn nicht ganz :( )


    Die rechte des Zielordners sind auf a+w gesetzt. Der Ordner gehört root.


    ich setze das noauto nachher direkt mal :) (Das Pi hat gerade ganz schön mit dem paketmanager zu kämpfen :))

  • Nein, da gehört kein 'noauto' hin, das bewirkt, daß das Device nicht automatisch gemountet wird.
    Du solltest aber einen Partition z.B. /dev/sdc1 und nicht nur ein Laufwerk /dev/sdc angeben


  • Nein, da gehört kein 'noauto' hin, das bewirkt, daß das Device nicht automatisch gemountet wird.
    Du solltest aber einen Partition z.B. /dev/sdc1 und nicht nur ein Laufwerk /dev/sdc angeben

    Ok, vielen dank das es funktioniert :)


    Edit : Wie bekomme ich das raspian dazu, das alle user schreibrechte auf die Fat 32 Platte haben ? Ich habe verschiedene optionen bei der fstab versucht, aber nichts hilft :(


    Edit2: Ich habe mich etwas in die Materie eingelesen und bin selber auf die Lösung gestoßen . Als Option muss in der fstab(in der entsprechenden Zeile) umask=000 eingefügt werden.

    Edited once, last by thps ().

  • Quote from thps pid=1502 dateline=1349615084


    Ok, vielen dank das es funktioniert :)


    Edit : Wie bekomme ich das raspian dazu, das alle user schreibrechte auf die Fat 32 Platte haben ? Ich habe verschiedene optionen bei der fstab versucht, aber nichts hilft :(


    Edit2: Ich habe mich etwas in die Materie eingelesen und bin selber auf die Lösung gestoßen . Als Option muss in der fstab(in der entsprechenden Zeile) umask=000 eingefügt werden.


    zu Edit2:


    moin moin, erst einmal danke für eure Tipps. Meine Situation sieht fast ähnlich aus. RPI Rev. b2 nach sudo apt-get upgrade (dauert schon so seine 40 Minuten) endlich mit 512 MB, auf einer (Class 10) 4 GB Karte. Ich möchte zuhause einen LAMP @ Raspian auf Basis Adafruit's (Occidentalis_v02) Image betreiben. Meine ersten Gehversuche klappten einwandfrei, alle DS18_20 Sensoren werden ausgelesen und in eine SQL Datenbank regelmäßig hinterlegt.


    Um einen visuellen Discoeffekt bemüht, habe ich meinen 16 GB USB Stick nun mit in Verwendung (der hat sone' blaue LED drauf, das sieht cool aus). In diesen Betrag bin ich nun drauf gekommen, wie ich mit Linux Laufwerke (Partitionen) mit Hilfe von fstab automatisch einbinde. Die Partitionen sind auf win32 formatiert und auf dem Stick habe ich 3 Partitionen 4 +4 +8 GB erstellt. Meine Frage zu dem Betrag hier oben ist: Wo kommt der Eintrag "umask=000" nun genau hin kommt? Disco soll halt' sein, wenn in den gemounteten Verzeichnissen aktion herrscht. Mein RPI ist nicht öffentlich, somit entgehe ich derzeit noch mögliche Rechtevergaben etc. ganz bewußt. Ich will ja lernen. Danke für eine Hilfestellung. nachtzleben


    Hier meine fstab Einträge:


    [font="Consolas"]Sudo nano [/font][font="Tahoma"]/etc/fstab[/font]
    [font="Consolas"]/dev/sda1 /var/www auto auto,rw 0 0 [/font]
    [font="Consolas"]/dev/sda2 /var/lib/mysql auto auto,rw 0 0 [/font]
    [font="Consolas"]/dev/sda3 /mnt/stick auto auto,rw 0 0[/font]

  • ok. das mit den win32 Format und den Berechtigungen ist noch eher eine Windows Denkstruktur. Deshalb meine Frage jetzt: Welches Format soll ich für die drei Partitionen nehmen? jemand einen Vorschlag?!