Zum Inhalt springen

Sshfs: Unterschied zwischen den Versionen

Aus Foxwiki
K Textersetzung - „wikitable“ durch „table table-striped table-hover“
 
(92 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
{{DISPLAYTITLE:sshfs}}
'''sshfs''' - [[FUSE]]-Modul zur Einbindung entfernter Verzeichnisse in das lokale Dateisystem
'''topic''' kurze Beschreibung


== Beschreibung ==
== Beschreibung ==
[https://github.com/libfuse/sshfs sshfs] ist ein [:FUSE:]-Modul, mit dem man entfernte Rechner über [:SSH:] in das eigene Dateisystem einbinden kann. Der Vorteil gegenüber einer ssh-Shell ist, dass man damit die Dateien und Verzeichnisse auf dem entfernten Rechner sehr komfortabel editieren, kopieren oder verschieben kann – genau wie die Dateien und Verzeichnisse auf den lokalen Festplatten. Dies erfordert auf dem Server ein sftp-Programm. Das ist bei den meisten SSH-Servern, wie OpenSSH, standardmäßig dabei, aber auf einigen embedded Geräten, wie OpenWRT, sind dafür spezielle Programm-Pakete notwendig.
Entfernte Dateien und Verzeichnisse wie lokale bearbeiten


; Hinweis
=== Anforderungen ===
: Der einzige aktive Entwickler hat das Projekt am 26.05.2022 verlassen und die zugehörige [:Git:Github]-Seite gesperrt. Fehler und damit auch Sicherheitslücken werden nicht mehr beseitigt, dies sollte man bedenken falls sensible Daten per sshfs transportiert werden sollen. Siehe [https://github.com/libfuse/sshfs/blob/master/README.rst Ankündigung].
* [[sftp]]-Server
* [[sshfs]] benutzt [[FUSE]] (Filesystem in USErspace)
** Dateisystemclient, der auf dem SSH-Dateiübertragungsprotokoll basiert
 
Da die meisten SSH-Server dieses Protokoll unterstützen, ist er sehr einfach einzurichten
* Serverseite ist nichts zu tun
* Clientseitig ist das Einhängen des Dateisystems so einfach wie das Einloggen am Server mittels ssh


== Installation ==
== Installation ==
# apt install sshfs
<syntaxhighlight lang="bash" highlight="1" copy>
sudo apt install sshfs
</syntaxhighlight>
 
; Vor dem Ausführen von sshfs
* [[FUSE]] muss eingerichtet sein
* [[Verzeichnis]] erstellen, in welches das entfernte Verzeichnis eingehangen werden soll
* Benutzer muss Mitglied der [[Gruppe]]'''fuse''' sein
 
== Anwendung ==
; Einhängen eines entfernten Verzeichnisses
<syntaxhighlight lang="bash" highlight="1-2" line>
mkdir ~/fusessh
sshfs Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh
</syntaxhighlight>
 
Falls ein Passwort für die Verbindung erforderlich ist, erscheint in der Konsole eine Abfrage
 
; Aushängen eines entfernten Verzeichnisses
<syntaxhighlight lang="bash" highlight="1" line>
fusermount -u ~/fusessh
</syntaxhighlight>
 
; Optionen
sshfs bietet eine Reihe von Optionen
* -p 222, falls der SSH-Server auf Port 222 lauschen sollte
 
=== User Mapping ===
Mit den Optionen `-o idmap=user -o uid=USERID -o gid=GROUPID` kann man "User Mapping" aktivieren
* Dies ist hilfreich, falls die auf dem Server gespeicherten Dateien einen Eigentümer haben, der auf dem Client nicht vorhanden ist
 
Dabei werden die entfernten Rechte auf die im Kommando angegebenen Werte übertragen
<syntaxhighlight lang="bash" highlight="1" line copy>
sshfs Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh -o idmap=user -o uid=$(id -u) -o gid=$(id -g)
</syntaxhighlight>
 
Der Befehl würde dem aktuellen Benutzer Eigentümer- und Gruppenrechte geben, gleich wie diese auf dem entfernten System gesetzt sind
 
=== follow_symlinks ===
[[Symbolische Verknüpfungen]] auf entfernten Rechnern folgen
 
<syntaxhighlight lang="bash" highlight="1">
sshfs Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh -o follow_symlinks
</syntaxhighlight>
 
== Konfiguration ==
=== Dateien ===
{| class="table table-striped table-hover options big"
|-
! Datei !! Beschreibung
|-
| ||
|-
| ||
|}
 
<noinclude>
 
== Aufruf ==
<syntaxhighlight lang="bash" highlight="1" line copy>
</syntaxhighlight>


== Anwendungen ==
=== Fehlerbehebung ===
== Syntax ==
=== Optionen ===
=== Optionen ===
{| class="table table-striped table-hover sortable options gnu big"
|-
! Unix !! GNU !! Parameter !! Beschreibung
|-
| || || ||
|-
|}
=== Parameter ===
=== Parameter ===
=== Umgebungsvariablen ===
=== Umgebungsvariablen ===
=== Exit-Status ===
=== Exit-Status ===
== Konfiguration ==
{| class="table table-striped table-hover options col1center big"
|-
! Wert !! Beschreibung
|-
| 0 || Erfolg
|-
| >0 || Fehler
|}
 
 
== Anhang ==
=== Dateien ===
=== Dateien ===
== Sicherheit ==
/usr/bin/sshfs
== Dokumentation ==
=== RFC ===
/usr/sbin/mount.fuse.sshfs
=== Man-Pages ===
/usr/sbin/mount.sshfs
=== Info-Pages ===
== Siehe auch ==
/usr/share/bug/sshfs
== Links ==
/usr/share/bug/sshfs/presubj
=== Projekt-Homepage ===
=== Weblinks ===
/usr/share/doc/sshfs/AUTHORS
=== Einzelnachweise ===
/usr/share/doc/sshfs/README.Debian
<references />
/usr/share/doc/sshfs/README.rst
== Testfragen ==
/usr/share/doc/sshfs/changelog.Debian.amd64.gz
<div class="toccolours mw-collapsible mw-collapsed">
/usr/share/doc/sshfs/changelog.Debian.gz
''Testfrage 1''
/usr/share/doc/sshfs/changelog.gz
<div class="mw-collapsible-content">'''Antwort1'''</div>
/usr/share/doc/sshfs/copyright
</div>
/usr/share/man
<div class="toccolours mw-collapsible mw-collapsed">
/usr/share/man/man1
''Testfrage 2''
/usr/share/man/man1/sshfs.1.gz
<div class="mw-collapsible-content">'''Antwort2'''</div>
 
</div>
=== Siehe auch ===
<div class="toccolours mw-collapsible mw-collapsed">
<div style="column-count:2">
''Testfrage 3''
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
<div class="mw-collapsible-content">'''Antwort3'''</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed">
''Testfrage 4''
<div class="mw-collapsible-content">'''Antwort4'''</div>
</div>
<div class="toccolours mw-collapsible mw-collapsed">
''Testfrage 5''
<div class="mw-collapsible-content">'''Antwort5'''</div>
</div>
</div>
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}
=== Dokumentation ===
; Man-Page
# [https://manpages.debian.org/trixie/sshfs/sshfs.1.en.html sshfs(1)]
<!--
; Info-Pages
-->


[[Kategorie:Entwurf]]
=== Links ===
==== Projekt ====
# https://github.com/libfuse/sshfs


= TMP =
==== Weblinks ====
== Links ==
# https://wiki.ubuntuusers.de/FUSE/sshfs/
# https://wiki.ubuntuusers.de/FUSE/sshfs/
# https://wiki.archlinux.org/index.php/SSHFS
# https://wiki.archlinux.org/index.php/SSHFS
[[Kategorie:SSH]]
 
{{DEFAULTSORT:sshfs}}
{{DISPLAYTITLE:sshfs}}
 
[[Kategorie:SSH/Befehl]]
[[Kategorie:FUSE]]
[[Kategorie:FUSE]]
{{DEFAULTSORT:sshfs}}
 
</noinclude>

Aktuelle Version vom 29. Juli 2026, 11:02 Uhr

sshfs - FUSE-Modul zur Einbindung entfernter Verzeichnisse in das lokale Dateisystem

Beschreibung

Entfernte Dateien und Verzeichnisse wie lokale bearbeiten

Anforderungen

  • sftp-Server
  • sshfs benutzt FUSE (Filesystem in USErspace)
    • Dateisystemclient, der auf dem SSH-Dateiübertragungsprotokoll basiert

Da die meisten SSH-Server dieses Protokoll unterstützen, ist er sehr einfach einzurichten

  • Serverseite ist nichts zu tun
  • Clientseitig ist das Einhängen des Dateisystems so einfach wie das Einloggen am Server mittels ssh

Installation

sudo apt install sshfs
Vor dem Ausführen von sshfs
  • FUSE muss eingerichtet sein
  • Verzeichnis erstellen, in welches das entfernte Verzeichnis eingehangen werden soll
  • Benutzer muss Mitglied der Gruppefuse sein

Anwendung

Einhängen eines entfernten Verzeichnisses
mkdir ~/fusessh
sshfs Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh

Falls ein Passwort für die Verbindung erforderlich ist, erscheint in der Konsole eine Abfrage

Aushängen eines entfernten Verzeichnisses
fusermount -u ~/fusessh
Optionen

sshfs bietet eine Reihe von Optionen

  • -p 222, falls der SSH-Server auf Port 222 lauschen sollte

User Mapping

Mit den Optionen `-o idmap=user -o uid=USERID -o gid=GROUPID` kann man "User Mapping" aktivieren

  • Dies ist hilfreich, falls die auf dem Server gespeicherten Dateien einen Eigentümer haben, der auf dem Client nicht vorhanden ist

Dabei werden die entfernten Rechte auf die im Kommando angegebenen Werte übertragen

sshfs Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh -o idmap=user -o uid=$(id -u) -o gid=$(id -g)

Der Befehl würde dem aktuellen Benutzer Eigentümer- und Gruppenrechte geben, gleich wie diese auf dem entfernten System gesetzt sind

Symbolische Verknüpfungen auf entfernten Rechnern folgen

sshfs Benutzername@irgendEinRechner:/pfad_auf_dem_server/ ~/fusessh -o follow_symlinks

Konfiguration

Dateien

Datei Beschreibung


Aufruf

Optionen

Unix GNU Parameter Beschreibung

Parameter

Umgebungsvariablen

Exit-Status

Wert Beschreibung
0 Erfolg
>0 Fehler


Anhang

Dateien

/usr/bin/sshfs

/usr/sbin/mount.fuse.sshfs
/usr/sbin/mount.sshfs

/usr/share/bug/sshfs
/usr/share/bug/sshfs/presubj

/usr/share/doc/sshfs/AUTHORS
/usr/share/doc/sshfs/README.Debian
/usr/share/doc/sshfs/README.rst
/usr/share/doc/sshfs/changelog.Debian.amd64.gz
/usr/share/doc/sshfs/changelog.Debian.gz
/usr/share/doc/sshfs/changelog.gz
/usr/share/doc/sshfs/copyright
/usr/share/man
/usr/share/man/man1
/usr/share/man/man1/sshfs.1.gz

Siehe auch


Dokumentation

Man-Page
  1. sshfs(1)

Projekt

  1. https://github.com/libfuse/sshfs
  1. https://wiki.ubuntuusers.de/FUSE/sshfs/
  2. https://wiki.archlinux.org/index.php/SSHFS