24 November 2013 11:30

Verzeichnis auf mehrere Ziele aufteilen

Als MP3-Player nutze ich einen Sansa Clip+ mit 8 GB internem Speicher. Meine Musik-Sammlung ist aber größer als 8 GB (bzw. die zur Verfügung stehenden 7 GB). Glücklicherweise hat der Sansa Clip+ einen microSD-Karten-Slot, wodurch er bis zu 32 GB zusätzlich speichern kann.

Ein Problem dabei ist aber, dass ich den internen Speicher nicht komplett ungenutzt lassen möchte. Bislang hatte ich immer rsync zum Kopieren der Musik genutzt. Aber wie teile ich ein einzelnes Verzeichnis auf mehrere auf?

Letztendlich habe ich es ziemlich billig gelöst:

  1. Zwei Verzeichnisse anlegen, eines für den internen Speicher, eines für den externen.
  2. Alle Verzeichnisse, die auf den internen Speicher sollen, in das zugehörige Verzeichnis symlinken.
  3. for file in *; do touch "../external/$file"; done
    Dadurch können wir im nächsten Schritt leicht alle bereits im internen Speicher vorhandenen Verzeichnisse ausfiltern.
  4. In das Verzeichnis für den externen Speicher wechseln und alle Verzeichnisse aus dem Quellverzeichnis symlinken:
    ln -s ../../* .
    Durch die leeren Dateien werden Verzeichnisse aus dem internen Speicher ausgefiltert.
  5. Alles mit rsync oder cp -Hr zum Ziel kopieren.

Wenn neue Musik hinzukommt, brauche ich nur die letzten beiden Schritte zu wiederholen (unter der Annahme, dass sich nichts am internen Speicher ändert).

Kommentare

Powered by BetaBlog
Login | RSS Beiträge RSS Kommentare Impressum