Hi,
ich habe bei mir forked-daapd auf dem Server laufen.
Forked-daapd schaut auf /media/medien/Musik und sucht dort nach mp3s.
Diese Mp3s werden nun per rsync von meinem Apfel auf den server übertragen:
{{{#!code bash
rsync -rvz --exclude=.* --include=*.mp3 --include=*.m4a --perms --chmod=ugo=rwX --stats -h --progress --delete /Volumes/Media/Musik/ 192.168.10.100:/media/medien/Musik/Bibliothek
}}}
Das ganze funktioniert auch wunderbar! LEIDER habe ich nun ein Problem mit dem ich nicht so ganz fertig werde: Solange rsync kopiert, hat forked-daapd kein recht auf den jeweiligen Ordner zuzugreifen (was ja möglicherwesie auch nicht ganz blöd ist!?)
Das Resultat ist, dass sich forked-daapd merkt, dass es den jeweiligen Ordner nicht lesen kann, und damit werden die beinhalteten Titel nicht gescannt - auch im nachhinein nicht....
Das ganze sieht im Log etwa so aus:
{{{#!code bash
[2011-08-27 23:19:01] scan: Could not open directory /media/medien/Musik/Bibliothek/2raumwohnung: Keine Berechtigung
[2011-08-27 23:19:01] scan: Could not open directory /media/medien/Musik/Bibliothek/3 Besoffskis: Keine Berechtigung
[2011-08-27 23:19:01] scan: Could not open directory /media/medien/Musik/Bibliothek/3 Channels: Keine Berechtigung
[2011-08-27 23:19:01] scan: Could not open directory /media/medien/Musik/Bibliothek/3: Keine Berechtigung
}}}
forked-daapd läuft unter dem benutzer daapd. Wenn ich im init.d script den User auf root ändere, kann ich in den gerade kopierten Ordnern lesen.
Nun meine drei Fragen:
1. Wenn das ganze als root funktioniert, kann ich dem User daapd auch rechte geben, zu lesen, wenn rsync gerade auf den Ordner zugreift?
2. Ich weis dass man dienste wenn möglich nicht als Root laufen lässt (warum auch immer). Was spräche aber dagegen forked-daapd einfach als root laufen zu lassen?
3. Gibt es eine möglichkeit eine Art temporären Ordner zu nutzen? - Damit ich mir das alles sparen kann?
Ich hoffe auf schnelle Antworten
Liebe Grüße,
Pfannkuchen
Forked-daapd und rsync?
Re: Forked-daapd und rsync?
Ich kann nicht wirklich helfen, aber allgemein:
Da ich das Programm nicht kenne, und eh etwas naiv bin, würde ich einfach sicherstellen, dass das Prog nicht erst versucht, parallel zu rsync auf das Verzeichnis zuzugreifen. Das verändert sich ja sowieso noch, solange rsync läuft.
cu,
niemand
Ein Programmfehler, oder eine böse Absicht, oder auch beides zusammen (einen Fehler, denn jemand in böser Absicht ausnutzen will – präparierte Dateien einlesen lassen o.ä.) hat es viel leichter, das System zu stören, zerstören oder auch nur zu kompromittieren, wenn das entsprechende Programm alle Rechte hat.2. Ich weis dass man dienste wenn möglich nicht als Root laufen lässt (warum auch immer). Was spräche aber dagegen forked-daapd einfach als root laufen zu lassen?
Da ich das Programm nicht kenne, und eh etwas naiv bin, würde ich einfach sicherstellen, dass das Prog nicht erst versucht, parallel zu rsync auf das Verzeichnis zuzugreifen. Das verändert sich ja sowieso noch, solange rsync läuft.
cu,
niemand
Re: Forked-daapd und rsync?
Soll das bedeuten, der dämon notiert es in seiner Datenbank?Das Resultat ist, dass sich forked-daapd merkt, dass es den jeweiligen Ordner nicht lesen kann, und damit werden die beinhalteten Titel nicht gescannt - auch im nachhinein nicht....
Oder ist es auf den laufenden Prozeß bezogen?
Dann könnte dem 'rsync' ein Neuladen/Neustart angeschlossen werden:
oder halt ein Stop vor dem rsync, was wohl sauberer wäre./etc/init.d/forked-daapd force-reload
Vielleicht reicht auch ein Anhalten
Code: Alles auswählen
kill -STOP -p $(pidof forked-daapd)
--- rsync ---
kill -CONT -p $(pidof forked-daapd)
Vielleicht kann auch 'rsync' modifiziert werden, um die Zugriffzeit auf die jeweiligen Verzeichnisse klein zu halten.
Ich denke da an '--temp-dir=DIR', '--partial-dir=DIR' und '--delay-updates'.
Du hattest eigentlich doch eine Änderung eingearbeitet?
(Die Zeiten der Geräte sollten dabei synchron sein.)Ich rufe nun rsync in einem Script so auf:
rsync -trvu ...
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")