Dank sshfs
Magie kann ich mein Home-Verzeichnis von einem Remote-Server mit mounten
sshfs user@server:/home/user ~/remote
Optimistisch, ich dachte , dass ich eine lokal gesetzt würde inotify
-hook auf ~/remote/logFile
(in der sshfs
Halterung) so ein lokales Programm auf Remote - Log - Änderungen reagieren kann.
cd ~/remote
touch logFile # create remote file
inotifywait logFile & # set up local inotify-hook
ssh user@server -x touch /home/user/logFile # touch file from remote
Nichts passiert . inotifywait
ist still, es sei denn, ich touch
die Datei lokal. Das Schreiben in eine Named Pipe schlägt ebenfalls fehl.
Warum ist das?
Wie kann ich diese Lücke schließen?
Ich könnteinotifywait
auf der Fernbedienung laufen , eine Serialisierungsstrategie für Dateisystemänderungen hacken und eine Verbindung zum lokalen Netzwerk aufrechterhalten, aber dann implementiere ich SSHFS im Grunde genommen neu . Und es tötet die Abstraktion vollständig ab.
inotify
auf dem lokalen System eine Möglichkeit gibt, Änderungen auf einem entfernten Dateisystem zu erkennen. Der lokale Kernel ist bei diesen Änderungen nicht in der Schleife. Sie müsseninotifywait
auf dem Server ausgeführt werden, nicht auf dem Client.