Dies ist eine mobil optimierte Seite, die schnell lädt. Wenn Sie die Seite ohne Optimierung laden möchten, dann klicken Sie auf diesen Text.

Wie USB-Stick dauerhaft in Igel einbinden?

    Nobody is reading this thread right now.

rosi73

Ist oft hier
Registriert
15. August 2012
Beiträge
119
Reaktionspunkte
36
Punkte
48
Ich würde gerne meinen USB Stick dauerhaft (nach dem Reboot) ins System einbinden, um meine Logfiles dort zu speichern und dadurch die CF Karte zu entlasten.

Mit mount /dev/sdb1 /mnt/Stick bekomme ich den Stick bis zum nächsten Reboot eingebunden. Aber mit welchem Trick kann ich den Stick dauerhaft einbinden? Hab das Forum durchsucht... halb Google durchsucht... irgendwie habe ich nicht die richtigen Suchbegriffe.

Bestimmt gibt es eine ganz einfache Lösung. Kann mir jemand helfen???
 
AW: Wie USB-Stick dauerhaft in Igel einbinden?

Hallo,
trage doch einfach deinen mount befehl in die /etc/rc.local ein.

Aber davon ab, ein USB-Stick ist ähnlich wie eine CF-card und verträgt nur ähnlich viele Lese-Schreibzyklen.
Wichtiger wäre da sowas wie tmp2ram und logmini.

Gruß
jensebub
 
Manche DInge können so einfach sein... WENN man sie weiss Vielen Dank!

Ich weiss, das die Karte auch nicht ewig hält, aber ich hab so viele kleine hier, die ich damit "verbrauchen" kann, das mir das die CF bestimmt danken wird
 
AW: Wie USB-Stick dauerhaft in Igel einbinden?

Also wie gesagt, mit dem tmp2ram wird sie es dir noch mehr danken :ja, da die logs im ram geschrieben werden

Gruß
jensebub
 
AW: Wie USB-Stick dauerhaft in Igel einbinden?

ein kleiner usb stick ist vermutlich nicht mals so schnell (oder langsam?) wie die compact flash also könnte es passieren dass das system ausgebremst werden würde. eigentlich unwarscheinlich weil in ein logfile immer nur kleine stücke geschrieben werden aber es gibt auch wirlich super langsame usb sticks die genau das erreichen würden deshalb bin ich mit solchen aussagen "das kann nicht passiern" eher vorsichtig

aber wie jensebub schon sagte haben sowohl usb sticks als auch compact flash / sd / ssd eine ähnliche technik aber keine unendliche lebensdauer um so mehr sie mit lese/schreib zyklen belastet werden.. normalerweise würden dann defekte speicher zellen abgeschaltet und nicht mehr genutzt werden wodurch diese medien dann immer kleiner werden aber im schlimmsten fall betrifft das "am anfang" liegende zellen die vom dateisystem wichtige informationen enthalten und dann wär das aktuell installierte system erst mal kaputt und müsste neu installiert werden..



um aber trotzdem auf die überschrift ein zu gehen:
damit usb geräten immer wieder den selben "/dev/" port beziehungsweise namen kriegen nutzt man: udev
die meisten geräte haben eine sogenannte " iSerial " über die sie (eigentlich) eindeutig zu identifizieren sind..
bei mir sähe das zum beispiel so aus:
Code:
root@raspberrypi:~# lsusb -v|grep iSerial
...
Bus 001 Device 006: ID 0204:6025 Chipsbank Microelectronics Co., Ltd CBM2080 Flash drive controller
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               2.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0 
  bDeviceProtocol         0 
  bMaxPacketSize0        64
  idVendor           0x0204 Chipsbank Microelectronics Co., Ltd
  idProduct          0x6025 CBM2080 Flash drive controller
  bcdDevice            1.00
  iManufacturer           1 USB 2.0
  iProduct                2 Flash Drive
  iSerial                 3 [COLOR=#ff0000]2315460062920201[/COLOR]
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           32
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0 
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              100mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0 
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x01  EP 1 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0040  1x 64 bytes
        bInterval               0
es gäbe aber auch noch andere merkmale die man für udev nutzen könnte um ein angeschlossenes usb gerät eindeutig zu identifizieren zum beispiel idVendor oder idProduct was aber vorraussetzen würde das man von diesem geräte typ nicht mehrere nutzt (wie es zum beispiel bei smartcard readern der fall wäre da die alle die selbe Vendor und Product kennung haben..)

wenn noch kein udev installiert hat muss sich das erst installieren: apt-get install udev
danach geht man wie folgt vor:

1) rules file erstellen: nano /etc/udev/rules.d/90-usb.rules
2) in die datei mit den geräte spezifischen daten die folgende zeile einfügung :
Code:
SUBSYSTEMS=="usb", ATTRS{serial}=="[COLOR=#ff0000]2315460062920201[/COLOR]", ACTION=="add", SYMLINK+="USBstick"
3) udev neu starten: /etc/init.d/udev restart
4) usb stick herraus ziehen. ein paar sekunden warten und wieder einstecken und dann prüfen ob der angegebene SYMLINK auch in /dev/ auftaucht:
Code:
root@raspberrypi:~# ls -la /dev/USB*
lrwxrwxrwx 1 root root 4 Okt  3 12:46 /dev/USBstick -> sda1
root@raspberrypi:~#
(denn udev legt nur eine verknüpfung an)
wenn das der fall ist kann das usb gerät künftig immer über diesen dev port angesprochen werden.
ACTION=="add" sorgt dafür das die regel nur zutrifft wenn das gerät neu angeschlossen wird ansonsten würde die rule auch ausgeführt werden wenn man es herraus zieht..

man kann das aber auch insofern erweitern das udev das gerät auch automatisch in ein bestimmtes verzeichniss mounten würde.
dazu gibt es mehrere möglichkeiten aber ich beschreib mal hier nur die aus meiner sicht einfachste:

dazu muss man sich ein Script file erstellen was das mounten und unmounten übernehmen würde
also zunächst das Script erstellen:
nano /bin/stick
Code:
#!/bin/bash
FROMdevice="[COLOR=#ff0000]/dev/USBstick[/COLOR]"
TOdir="[COLOR=#ff0000]/mnt/USBstick[/COLOR]"
mountOPT=""
#
[ -z "$1" ] && echo "Usage: $0 [mount|umount]" && exit 0
if [ $1 == "mount" ]; then
    [ ! -d $TOdir ] && mkdir -p $TOdir
    mount $mountOPT $FROMdevice $TOdir
elif [ $1 == "umount" ]; then
    umount $TOdir
fi

exit 0
(die rot markierten variablen kannst du nach belieben anpassen. wenn das laufwerk bestimmte mount options wie zb "-t vfat" benötigt dann kannst du das in mountOPT="" eintragen)
script ausführbar machen: chmod 755 /bin/stick
die udev rules datei müsste dann auch noch erweitert werden: nano /etc/udev/rules.d/90-usb.rules
Code:
SUBSYSTEMS=="usb", ATTRS{serial}=="[COLOR=#ff0000]2315460062920201[/COLOR]", ACTION=="add", SYMLINK+="USBstick", RUN+="/bin/stick mount"
SUBSYSTEMS=="usb", ATTRS{serial}=="[COLOR=#ff0000]2315460062920201[/COLOR]", ACTION=="remove", RUN+="/bin/stick umount"
wir brauchen 2 rule einträge da das laufwerk sonst nicht umounted wird und es dann jede minute haufenweise fehlermeldungen im /var/log/syslog geben würde..

problematisch wird das allerdings wenn das laufwerk mehrere partitionen hat die alle gemounted werden sollen dann müssten die rules und die scripts anders aussehen aber da gehe ich erst drauf ein wenn das hier wirklich jemand wissen will..



/edit: ein weiteres beispiel (funktioniert auch mit mehreren partitionen) wurde zwischenzeitlich hier beschrieben: Talk USB Stick Platten automatisch mit iSerial einbinden
 
Zuletzt bearbeitet von einem Moderator:
Für die Nutzung dieser Website sind Cookies erforderlich. Du musst diese akzeptieren, um die Website weiter nutzen zu können. Erfahre mehr…