Forums

Skip to content

Advanced search
  • Quick links
    • Unanswered topics
    • Active topics
    • Search
  • FAQ
  • Login
  • Register
  • Board index International Gentoo Users Deutsches Forum (German) Deutsche Dokumentation
  • Search

usbstick mit udev und unison aktuell halten

Dokumentation, Tipps und Tricks.
Post Reply
  • Print view
Advanced search
1 post • Page 1 of 1
Author
Message
pi
n00b
n00b
Posts: 63
Joined: Fri Nov 01, 2002 1:48 pm
Location: Jena - Thüringen - Deutschland

usbstick mit udev und unison aktuell halten

  • Quote

Post by pi » Sat Mar 18, 2006 7:57 pm

Das schöne an USB-Sticks ist, das sie den Schlüsselanhänger ersetzen und es einem ermöglichen allerlei Daten parat zu haben. Nur muss jetzt der USB-Stick mit der eigenen Festplatte synchronisiert werden....

Als erstes der fstab-Eintrag für den USB-Stick:

Code: Select all

/dev/usbhd1             /mnt/usb/stick  vfat            noauto,users,rw,sync    0 0
-der Stick wird auf /mnt/usb/stick eingehangen und als device /dev/usbhd1 benutzt

Damit usbhd1 auch wirklich immer der gleiche Stick ist, muss eine udev-Regel her. Bei mir /etc/udev/rules.d/06-usbsticks.rules. Der Eintrag der hier interessiert ist:

Code: Select all

BUS="usb", KERNEL="sd*", SYSFS{serial}=="ef50f40efe5c48", NAME="%k", SYMLINK="usbhd%n", GROUP="disk"
-SYSFS{serial}=="ef50f40efe5c48" auf den eigenen Stick so anzupassen, dass es den Stick eindeutig beschreibt! Siehe udev-howto
danach:

Code: Select all

udevstart
ausführen um die Regel einzulesen.

Jetzt den Stick anstecken, und die Links sollten wie folgt entstehen:
/dev/usbhd -> sda
/dev/usbhd1 -> sda1
...

unison installieren (gtk-useflag setzen für das GUI) und ein Projekt erstellen, welches die Dateien mit /mnt/usb/stick synchronisiert. Bei mir heisst das unison-Projekt 'usb-stick'.
Als nächstes wird ein kleines Script gebraucht, welches den USB-Stick einbindet und unison mit dem Projekt startet:

Code: Select all

#!/bin/sh
/usr/bin/logger "`/bin/su USER -c \" \
        /bin/mount /mnt/usb/stick 2>&1 \
        && XAUTHORITY=/home/USER/.Xauthority DISPLAY=:0.0 /usr/bin/unison usb-stick -ui graphic -perms 0 \" `" &
exit 0
-USER mit dem eigenen Benutzernamen ersetzen
-/usr/bin/logger sorgt dafür, dass eventuelle Fehlermeldungen im syslog erscheinen
-da das Script später in einer root-Umgebung läuft werden mit /bin/su alle Befehle mit den eigenen Rechten ausgeführt
-/bin/mount /mnt/usb/stick 2>&1 bindet den USB-Stick ein und lenkt die Fehlerausgabe indirekt auf syslog um
-unison wird nur gestartet, wenn das Einbinden erfolgreich war. Als Projekt wird usb-stick gewählt. Da in vfat nicht alle permissons darstellbar sind, versucht unison diese bei jedem Lauf abzugleichen. Dies wird mit '-perms 0' unterbunden/ignoriert. Um das GUI benutzen zu können, ist die XAUTHORITY und DISPLAY Umgebungsvariable zu setzen.
-das Script unter /etc/udev/scripts/usb-stick-autorun.sh abspeichern und Ausführungsrechte setzen

Das usb-stick-autorun.sh-Script soll beim anstecken des USB-Sticks automatisch ausgeführt werden, dazu die UDEV-Regel um RUN="/etc/udev/scripts/usb-stick-autorun.sh" erweitern. An meinem Beispiel ergibt das die Regel:

Code: Select all

BUS="usb", KERNEL="sd*", SYSFS{serial}=="ef50f40efe5c48", NAME="%k", SYMLINK="usbhd%n", GROUP="disk" RUN="/etc/udev/scripts/usb-stick-autorun.sh"
-udevstart ausführen um die Änderung wirksam werden zu lassen


Sobald der Stick angesteckt wird, werden die device-Links angelegt, der stick eingebunden und das unison-Projekt für die Synchronisation aufgerufen. Sollten zwischen Rechner und Stick Differenzen auftreten, werden diese grafisch angezeigt. Der Benutzer kann die Synchronisation beeinflussen und bestätigen.

Und wer den autorun-Service einmal nicht starten will drückt fleissig die Strg-Taste :wink:
Top
Post Reply
  • Print view
1 post • Page 1 of 1

Return to “Deutsche Dokumentation”

Jump to
  • Assistance
  • ↳   News & Announcements
  • ↳   Frequently Asked Questions
  • ↳   Installing Gentoo
  • ↳   Multimedia
  • ↳   Desktop Environments
  • ↳   Networking & Security
  • ↳   Kernel & Hardware
  • ↳   Portage & Programming
  • ↳   Gamers & Players
  • ↳   Other Things Gentoo
  • ↳   Unsupported Software
  • Discussion & Documentation
  • ↳   Documentation, Tips & Tricks
  • ↳   Gentoo Chat
  • ↳   Gentoo Forums Feedback
  • ↳   Duplicate Threads
  • International Gentoo Users
  • ↳   中文 (Chinese)
  • ↳   Dutch
  • ↳   Finnish
  • ↳   French
  • ↳   Deutsches Forum (German)
  • ↳   Diskussionsforum
  • ↳   Deutsche Dokumentation
  • ↳   Greek
  • ↳   Forum italiano (Italian)
  • ↳   Forum di discussione italiano
  • ↳   Risorse italiane (documentazione e tools)
  • ↳   Polskie forum (Polish)
  • ↳   Instalacja i sprzęt
  • ↳   Polish OTW
  • ↳   Portuguese
  • ↳   Documentação, Ferramentas e Dicas
  • ↳   Russian
  • ↳   Scandinavian
  • ↳   Spanish
  • ↳   Other Languages
  • Architectures & Platforms
  • ↳   Gentoo on ARM
  • ↳   Gentoo on PPC
  • ↳   Gentoo on Sparc
  • ↳   Gentoo on Alternative Architectures
  • ↳   Gentoo on AMD64
  • ↳   Gentoo for Mac OS X (Portage for Mac OS X)
  • Board index
  • All times are UTC
  • Delete cookies

© 2001–2026 Gentoo Foundation, Inc.

Powered by phpBB® Forum Software © phpBB Limited

Privacy Policy