Thread File::Copy, File::Temp und NFS (4 answers)
Opened by rosti at 2011-12-19 19:33

topeg
 2011-12-19 23:58
#154958 #154958
User since
2006-07-10
2611 Artikel
BenutzerIn

user image
2011-12-19T19:47:43 rosti
Es läuft alles auf Linux & co ab, beim Kopieren (move) auf das ?FS ändert sich u.a. auch der Owner der Datei.
Scheint SMB zu sein.
Mach mal mount | grep '^//'
dann sollte etwas in der Art Ausgegeben werden:
//192.168.111.111/data_hdd on /media/data_hdd type cifs (rw)
cifs oder smbfs ist SMB

Wenn ich mir den Code von CPAN:File::Copy anschaue ist das Problem, dass der Modus beim kopieren nicht geändert wird. Das bedeutet, wenn das Zielfilehandle eine andere Kodierung hat und Encoding beim Quellhandle Aktiv ist, dann wird die Zeichenkodierung geändert. Wenn die Datei vom Modul geöffnet wird, wird binmode gesetzt.
Es sollte schon reichen vor dem Kopieren ein binmode($fh, ':raw') zu machen, um das umwandeln zu verhindern.
Aber das ist nicht direkt ein Problem von SMB oder NFS. Übers Netzwerk tritt es nur auf weil die Datei wirklich kopiert werden muss und nicht nur innerhalb des Dateisystems verschoben werden kann.

View full thread File::Copy, File::Temp und NFS