Ich möchte ein freigegebenes Verzeichnis auf meinem Mac in einem Ordner auf meinem Ubuntu-Server mounten, damit ich Sicherungsdateien irgendwie automatisiert auf den Mac kopieren kann.
Bevor ich überhaupt mit der ganzen Automatisierungssache anfange, möchte ich das Verzeichnis manuell mounten können.
Oh, wie ich gegoogelt habe! Ich habe viele Versionen des Mount-Befehls gefunden. Die, die am ehesten funktionierte (d. h. sie fragte nach meinem Passwort und hatte keine Einwände gegen die Antwort), war diese:
sudo mount -o user=**** //192.168.1.4/server_backups /files/mountpoint
Es trat der folgende Fehler auf:
mount error(95): Operation not supported
Bin ich auf dem richtigen Weg? Ich habe verschiedene Versionen des Befehls ausprobiert. Entweder schlägt die Authentifizierung fehl oder ich erhalte den obigen Fehler.
Für jede Hilfe und jeden Ratschlag wäre ich sehr dankbar.
Danke,
Simon.
Antwort1
So mounten Sie SSH-Standorte mit SSHFS.
Schritt 1:
- „Öffnen Sie auf Ihrem Mac die Freigabeeinstellungen, falls diese noch nicht geöffnet sind, und wählen Sie dann Remote-Anmeldung. Durch Auswahl der Remote-Anmeldung wird auch der sichere FTP-Dienst (sftp) aktiviert.“
Schritt 2:
- Installieren Sie SSHFS unter Ubuntu
sudo apt-get install sshfs
. - Erstellen Sie einen Einhängepunkt.
#mkdir /mnt/macMount
- Mounten Sie den SSH-Ordner
#sshfs [email protected]:/ /mnt/macMount/
- Überprüfen Sie dann, ob es funktioniert hat
cd /mnt/macMount
undls
ob alles dort ist, wo es sein sollte .
Antwort2
Ein freigegebener Ordner ist nicht der beste Weg, wenn Sie Backups auf Ihrem Mac automatisieren möchten
Aktivieren Sie stattdessen SSH auf dem Mac und übertragen Sie Ihre Backups darüber.
Gehen Sie zu den Systemeinstellungen. Unter „Internet und Netzwerk“ finden Sie ein Symbol für „Freigabe“. Führen Sie es aus. Aktivieren Sie in der angezeigten Liste die Option „Remote-Anmeldung“.
Da Sie Automatisierung verwenden möchten, ist dies sehr hilfreich.
Hier ist ein Beispiel, wie Sie einen Ordner von Ihrem Ubuntu-Computer auf Ihren Mac kopieren
rsync -azvr /path/to/source/folder MAC:/path/to/where/you/want/to/saveit/
wobei MAC die IP-Adresse Ihres Macs ist. Das Gute an rsync ist, dass beim erneuten Ausführen dieses Befehls nur die geänderten Dateien aus dem Quellverzeichnis auf Ihren Mac kopiert werden, was Zeit und Bandbreite spart.
Das Flag z fügt Komprimierung hinzu. Wenn Sie viele bereits komprimierte Dateien wie Filme, Bilder oder MP3s kopieren, wird die Geschwindigkeit dadurch nicht erhöht.
Wenn Sie dennoch eine Art Laufwerkszuordnung wünschen, können Sie den Computer über die GUI durchsuchen. Dies kann auch über SSH mit Hilfe von SSHFS erfolgen.
Installieren Sie auf Ihrem Ubuntu-Computer sshfs. Fügen Sie dann Ihren Benutzer zur Fuse-Gruppe hinzu und mounten Sie schließlich den Remote-Server
vom Terminal:
sudo apt-get install sshfs # install sshfs
mkdir macfolder
sshfs username@MAC:/ macfolder
mountet Ihr Mac-Root-Dateisystem im Ordner macfolder
Antwort3
Unabhängig davon, ob dies nun der beste Weg ist oder nicht, hat es bei mir nach viel Blut, Schweiß, Tränen und Googeln endlich geklappt, als ich von Ubuntu 14.04 aus eine Verbindung zu einer OS X 10.9.5-Freigabe hergestellt habe:
sudo mount -t cifs //192.168.0.101/ShareName /media/localsharedir -o noauto,user,credentials=/home/myself/.smb-credentials,noperm,uid=myself,gid=myself,sec=ntlmssp,nounix
Ich lasse es hier für alle anderen, die Probleme beim Mounten einer von OS X bereitgestellten Freigabe haben.
Ich bin nicht sicher, ob alle -o
Optionen erforderlich sind oder nicht. Soweit ich gelesen habe, sec=ntlmssp,nounix
sind nur die erforderlich, aber diese allein haben bei mir nicht funktioniert.
Ich musste /media/localsharedir
mir selbst Eigentum schaffen und zu eigen machen.
Meine .smb-credentials
Datei enthält nur:
username=my_os_x_username
password=my_os_x_password
ohne Angabe einer Arbeitsgruppe/Domäne.
Viel Glück da draußen.
Antwort4
Dale Andersons Antwort hat mir geholfen beiUbuntu 16.04verbinden mitmacOS 10.12.6 (Sierra).
Ich habe schon seit einiger Zeit erfolglos nach einer Möglichkeit gesucht, dies zu tun. Ich dachte, es sei nicht möglich, vielleicht weil macOS aktualisiert wurde, um Linux irgendwie auszuschließen, oder weil es ein manuelles Hacken von macOS erfordern würde (ich habe einige Antworten gesehen, in denen dies erwähnt wurde).
Es stellte sich heraus, dass es nicht einfach, aber auch nicht unmöglich war, und Dale hatte die Antwort.
Ich möchte hinzufügen, dass Sie die IP-Adresse des Macs nicht benötigen und dass Sie Ihren macOS-Benutzernamen und Ihr macOS-Passwort nicht in einer lokalen Textdatei speichern müssen, was ich für riskant halte. Sie können diesen Befehl verwenden, der den Computernamen des Macs und den macOS-Benutzernamen enthält und Sie zur Eingabe des Benutzerpassworts auffordert:
sudo mount -t cifs //MacBook-CT.local/Projects mnt/projectsmac -o noauto,user,username=christopher,noperm,uid=ct,gid=ct,sec=ntlmssp,nounix
Bitte beachten Sie, dass ich ein Mount-Verzeichnis verwende, das sich in meinem eigenen Home-Verzeichnis befindet. mnt/projectsmac
Es handelt sich also nicht um einen Tippfehler (ich habe ein projectsmac
Verzeichnis in einem mnt
Verzeichnis unter meinem Home-Verzeichnis).
„christopher“ ist der macOS-Benutzername und „ct“ der Ubuntu-Benutzername.
Auch der Computername des Macs ist eine mögliche Problemquelle. Der Name meines Macs ist eigentlich „MacBook_CT“, aber ich kann ihn im Linux-Befehl nicht verwenden. Um den Namen herauszufinden, den Sie über das Netzwerk verwenden müssen, öffnen Sie die Freigabeeinstellungen auf Ihrem Mac.
Sie können sogar noch weiter gehen und das Passwort des Mac-Benutzers direkt in den Mount-Befehl eingeben:
sudo mount -t cifs //MacBook-CT.local/Projects mnt/projectsmac -o noauto,user,username=christopher,password="12345678",noperm,uid=ct,gid=ct,sec=ntlmssp,nounix
Dies kann praktisch sein, wenn Sie diesen Befehl in ein Skript einbetten möchten.