Linux: Zugriff auf Windows-10-Freigaben

Jahrelang habe ich mit meinem Linux Rechner mit Xubuntu 20 auf einige wenige freigegebene Ordner eines PC mit Windows 10 zugegriffen. Bequem konnte ich im Filemanager Thunar auf „Netzwerk durchsuchen“ gehen, habe dann „Workgroup“ gefunden und darin die Freigaben von Windows. Nach dem Doppelklick stand in der Adresszeile

smb://192.168.178.1/<freigabename>

Vor kurzem ging das plötzlich nicht mehr. Ich wusste, dass es gerade ein recht großes Update gegeben hatte. Da ich es gewohnt war, dass sich früher bei Windows manchmal nach Updates die Einstellungen der Firewall geändert hatten und die Zugriffe von außen plötzlich gesperrt waren, kontrollierte ich erstmal das – ohne Erfolg. Windows ist nun nicht „mein“ Fachgebiet, also konsultierte ich einen Freund und der wusste sofort, was Sache war.

Die letzten großen Updates von Windows 10 hießen 20H2 und 21H1. Eins von beiden, vermutlich das letztere, habe den Zugriff auf Freigaben über das SMB-Protokoll aus Sicherheitsgründen aus Windows entfernt.

Meine Suchen ergaben, dass es zwar möglich sei, diesen Teil des Protokolls wieder zu installieren, aber das sei recht umständlich und bringe die gerade entfernte Unsicherheit natürlich wieder mit. Das war nun nicht gerade mein Ziel. Weitere Recherchen im Usenet brachten den Tip, stattdessen die entfernten Verzeichnisse als CIFS-Laufwerk zu mounten. Das basiert zwar auch auf SMB(2), realisiert den Zugriff aber transparent als virtuelles Filesystem.

Ich habe das hier beschriebene realisiert und zeige hier lediglich die Kurzfassung als Überblick. Das in Ubuntu nötige Paket cifs.utils ist vermutlich standardmäßig vorhanden, könnte aber leicht nachinstalliert werden:

sudo apt-get install cifs-utils 

Zunächst erstellt man ein für den User zugängliches Verzeichnis als Mountpoint, vielleicht so:

mkdir ~/Windows

Voraussetzung für das Weitere ist, dass es in Windows einen bekannten User gibt. Entweder greift man als der sowieso angemeldete einzige User zu oder man hat sich dort einen eigenen User eingerichtet, was ich als eleganter empfinde. Ich benutze die Verbindung selten und nur zum abgesprochenen Austausch diverser Files; zudem läuft Windows nicht immer und ein automatisches Mounten beim Hochfahren von Linux ist nicht sinnvoll. Deswegen habe ich mir lediglich zwei Starter auf dem Desktop erstellt, einen zum Mounten, den anderen zu Aushängen (den man eigentlich nicht zwingend braucht – weg ist weg!). Zunächst habe ich ein paar Zeile einschließlich Kommentar in die /etc/fstab geschrieben, die das „Laufwerk“ zwar nicht mounted, aber alle Parameter enthält und nicht unbefugt benutzt werden kann:

# auf WIN-PC freigegebenes Verzeichnis linux einbinden:
# =========================================================
//192.168.178.2/linux /home/rollo/Windows cifs username=...,password=...,user,noauto,rw,_netdev 0 0
# user sorgt dafür, dass ohne sudo gemounted werden kann und ~/Windows mir gehört
# mount: mount /home/rollo/Windows
# umount: umount ~/Windows
# _netdev ignoriert die Zeile, wenn kein Netzwerk da ist

Danach habe ich zwei Starter auf dem Desktop erzeugt, die die oben genannten Kommandozeilen enthalten und wegen dem Parameter „user“ ohne sudo aufrufbar sind. Daneben noch eine Verlinkung auf den Mountpoint ~/Windows und fertig. Hier die beiden Starter – wie man sieht ohne sudo:

mount /home/rollo/Windows
umount /home/rollo/Windows

Natürlich ließe sich das Ganze noch ausbauen durch einen Mechanismus zum automatischen Verbinden, sobald Windows beim Booten schon da ist oder später dazukommt. Da es aber keinen einfachen und sicheren Mechanismus zum automatischen Aushängen gibt, lasse ich das.

Einrichten der Magenta Cloud

Statt der Dropbox, die ja auf dem Territorium der USA gehostet wird und damit trotz aller Versprechen dem „Patriot Act“ unterliegt, habe ich mir für wichtige Daten für unterwegs die kostenlose Magenta-Cloud der Telekom eingerichtet. Die ist auf deutschem Boden gehostet und unterliegt wenigstens dem deutschen und europäischen Datenschutzrecht, das wesentlich restriktiver ist als das der USA. Naja, wer’s glaubt…

Bei der Magenta-Cloud ist die Voraussetzung ein T-Online-Konto (hier mit der Mailadresse symbolisiert). Das kostet nichts und zieht auch keine weiteren Verpflichtungen nach sich. Aber immerhin bekommt man so 10 GB kostenlosen Cloud-Speicher, der gegen Geld auf bis zu 1 TB erweiterbar wäre!

Für Android und iOS gibt es eine App für den Zugriff, für Windows und MacOS auch – aber für Linux natürlich wieder nichts offizielles. Dennoch ist der Zugriff leicht einzurichten, denn die Cloud ist über WebDAV zugänglich und kann somit als Laufwerk gemounted werden.

Hier im WebDAV-Wiki ist das sehr schön beschrieben und ich fasse es nur kurz zusammen. Ich beziehe mich auf mein Xubuntu 18.04.3.

Achtung: Dieser Absatz wurde zugefügt! Voraussetzung ist, dass das Paket davfs2 installiert ist und die Benutzung bei dessen Konfiguration für alle Nutzer freigegeben wurde.

sudo apt install davfs2

ggf. wenn die Freigabe für alle nicht korrekt ist
sudo dpkg-reconfigure davfs2

Zunächst erzeuge ich danach in meinem Home ein Verzeichnis MagentaCloud und schreibe in die /etc/fstab das folgende:

# Mounten der Magenta-Cloud
# Beachte auch die Installation der Anmeldedaten siehe hier:
# https://alphathiel.de/magentacloud-und-webdav/
# ==========================================================
# (alles in 1 Zeile!!!)
https://webdav.magentacloud.de /home/<user>/MagentaCloud/ davfs uid=1000,users,rw,_netdev 0 0
# _netdev bewirkt, daß das Laufwerk erst eingehängt wird, wenn das Netzwerk läuft
# sonst wäre https://webdav.magentacloud.de nicht erreichbar

Achtung: Diese mount-Zeile wurde überarbeitet! Die bisher genannte Option noauto ist unnötig, wenn die Option _netdav vorhanden ist. Ohne uid=1000 (oder uid=[username] oder eine andere ID) würden die gemounteten Verzeichnisse und Files root gehören und wären damit für den User readonly.

Dann muss ich mich noch um die Zugriffsberechtigung für mich als normalen Nutzer kümmern:

sudo usermod -aG davfs2 <linux-username>

Lokal in ~/.davfs2/secrets oder besser global in /etc/davfs2/secrets (hier als root, danach chmod 0600!!!) eintragen:

https://webdav.magentacloud.de <> <passwort>

(Bei der MagentaCloud-Website ist <sername> nur der Teil vor @ der Mailadresse! Also zum Beispiel max.mustermann ohne @t-online.de!)

Nach dem nächsten Booten habe ich das Symbol eines ungemounteten Laufwerks auf dem Desktop, der erste Doppelklick darauf mounted es und ich sehe den Inhalt meiner Cloud. Eine Verlinkung auf ~/MagentaCloud/ brauche ich daher nicht.

Zugriff auf Google Drive unter Xubuntu 16.04

Achtung: Dieser Artikel ist veraltet! Die Neufassung für Ubuntu 18.04 findet man hier.


Lange habe ich nach einem einfachen Weg gesucht, unter (X)Ubuntu 16.04 mein Google Drive so einzubinden, dass es als normaler Ordner erscheint. Hier ist eine englische Anleitung, die wirklich funktioniert! Der Weg im früheren Beitrag vom April 2016 scheint unter 16.04 nicht mehr zu klappen.

Eine wichtige Ergänzung: Am Ende der beschriebenen Schritte muss ein Neustart des Systems erfolgen, sonst sind bei weitem nicht alle Ressourcen im installierten Gnome Control Center sichtbar – vor allem auch nicht die Cloudanbindung!


Hinweis: Unter Ubuntu 18.04.01 scheint das so nicht mehr zu funktionieren, jedenfalls ist das Icon auf dem Desktop weg. Die Ursache habe ich noch nicht untersucht. Werde ich wohl auch nicht…

Mount Google Drive in Ubuntu

Ein Update gleich vornweg: Dieser Weg scheint heute (Oktober 2017 mit XUbuntu 16.06) nicht mehr zu funktionieren. Eine Alternative ist der  aufgezeigte Weg in diesem Beitrag.


Endlich mal ein funktionierender Weg, um Google-Drive in Ubuntu problemlos zu mounten und darauf lesend und schreibend zuzugreifen! Englischsprachige Anleitung:

Quelle: Mount Google Drive in Ubuntu – Using Google Drive Ocamlfuse

Update:

Ich habe die hier beschriebene Lösung erweitern müssen. Ein Aufruf sofort nach dem Systemstart ging nicht, anscheinend ist da „irgendwas“ noch nicht bereit. Ich habe also ein kleines Startscript geschrieben und rufe das im Ubuntu-Autostart auf:

#!/bin/sh
sleep 5m
google-drive-ocamlfuse ~/GDrive

Damit wird die Verbindung 5 Minuten später gestartet und funktioniert. Sicher geht es auch schneller, das käme auf einen Versuch an.

Ergänzung:

Falls man GDrive wieder loswerden möchte, ist zunächst google-drive-ocamlfuse zu deinstallieren (über synaptic oder apt-get).

sudo apt-get remove google-drive-ocamlfuse

Dann muss man als root(!) das Verzeichnis ~/GDrive, das ja eigentlich ein Laufwerk darstellt, unmounten.

sudo umount GDrive

Dann erst kann man das Verzeichnis löschen! Ansonsten bliebe die "ressource belegt", solange der Treiber darauf zugreift.