shfs ist ein Linux-Kernelmodul zum Mounten von Dateisystemen über SSH. Es ist nur für diese eine Aufgabe da und daher meiner Meinung nach wesentlich einfacher einzurichten als bspw. FUSE. Leider hat es so seine Probleme mit dem GCC 4.x. Dieser meldet nämlich beim kompilieren des letzten Releases shfs 0.35:
/usr/src/shfs-0.35/shfs/Linux-2.6/dir.c:491: error: static declaration of 'shfs_dentry_operations' follows non-static declaration
/usr/src/shfs-0.35/shfs/Linux-2.6/shfs_fs.h:53: error: previous declaration of 'shfs_dentry_operations' was here
(Das Beispiel ist hier für einen 2.6er Kernel.). Die Lösung ist so simpel, wie wirkungsvoll: man entferne in der dir.c in Zeile 491 das static vor struct. Ich bin mir im Moment nicht 100% sicher, was static an dieser Stelle bewirken sollte. Ich vermute, daß es die struct außerhalb der compile unit verfügbar machen soll. Das eledigt nun allerdings scheinbar schon das extern in shfs_fs.h:53. Falls ich mich irre: Kommentare gern erbeten!.