
Ich stecke seit ungefähr zwei Tagen fest und versuche, das richtig zum Laufen zu bringen. Ich habe alles Folgende versucht, aber immer noch kein Glück gehabt.
Ich versuche, eine automatische dauerhafte Bereitstellung auf einer 2 TB Seagate Central durchzuführen, die sich in meinem Netzwerk befindet. Dazu verwende ich Ubuntu 14.04 LTS Desktop und habe cifs
vor dem Start alles aktualisiert.
/etc/fstab
Ich habe als Root die folgende Zeile hinzugefügt :
#Mapping network drive //Ip-address/media/videos /media/storage cifs username=username,password=password,iocharset=utf8,sec=ntl
Ich habe auch die IP-Adresse gegen den Namen ausgetauscht. Da ich weiß, dass dies nicht die sicherste Methode ist, ich aber der einzige bin, der diesen Ubuntu-Desktop verwendet, habe ich auch die Methode mit dem Anmeldeinformationsdokument ohne Erfolg ausprobiert.
Im Terminal:
sudo mount -a
mount error(22): Invaild argument
refer to mount.cifs(8) manual page (e.g. man mount.cifs)
Nachdem ich das gesehen hatte, habe ich Folgendes versucht:
sudo mount.cifs //Seagate-XXXXX/Media/videos /media/storage
Anschließend werde ich aufgefordert das Passwort für den Netzwerkspeicher einzugeben und korrekt einzugeben:
Error:
mount error(115): operation now in progress
Refer to mount.cifs(8) manual page (e.g. man mount.cifs)
Einmal habe ich es zum Laufen gebracht, aber danach musste ich Ubuntu neu installieren und scheine es nicht wieder zum Laufen zu bekommen.
Ich habe in vielen verschiedenen Videos und Foren nachgeschaut und mache das hier, damit ich meinen Plex-Server so einrichten kann, dass er meinen Medienordner auf einer externen Festplatte sieht.
Ich habe die folgenden Links/Videos gelesen und angesehen, jedoch ohne Erfolg [Bitte helfen Sie!]:
Antwort1
Der erste Fehler, den Sie erhalten, liegt daran, dass es so etwas wie nicht gibt sec=ntl
. Die verfügbaren Optionen sind (von man mount.cifs
):
Sek=
Sicherheitsmodus. Zulässige Werte sind:
keine - Verbindungsversuch als Null-Benutzer (kein Name)
krb5 - Kerberos Version 5 Authentifizierung verwenden
krb5i - Kerberos-Authentifizierung verwenden und Paketsignierung zwangsweise aktivieren
ntlm - NTLM-Passwort-Hashing verwenden
ntlmi - NTLM-Passwort-Hashing verwenden und Paketsignierung erzwingen
ntlmv2 - NTLMv2-Passwort-Hashing verwenden
ntlmv2i - NTLMv2-Passwort-Hashing verwenden und Paketsignierung erzwingen
ntlmssp - Verwenden Sie NTLMv2-Passwort-Hashing, das in einer Raw NTLMSSP-Nachricht gekapselt ist
ntlmsspi - Verwenden Sie NTLMv2-Passwort-Hashing, das in einer Raw NTLMSSP-Nachricht gekapselt ist, und erzwingen Sie die Paketsignierung
Der erste Ansatz (mithilfe von fstab
) könnte also funktionieren, wenn Sie einen der oben genannten Ansätze verwenden. Vermutlich wollten Sie sec=ntlm
.
Was den Fehler betrifft 115
, fand ichdiese sehr schöne Anleitungin den Gentoo-Foren, die ich Ihnen zum Lesen empfehle. Im Wesentlichen wird empfohlen, Ihrer /etc/hosts
Datei eine Zeile wie diese hinzuzufügen (ändern Sie sie 192.168.1.12
zur IP Ihres Laufwerks):
192.168.1.12 Seagate-XXXXX
Seagate-XXXXX
Sobald dies erledigt ist, sollten Sie anstelle der IP-Adresse zur Verbindung verwenden können . Die Seite enthält einige weitere Tipps zur Fehlerbehebung (einschließlich der Verwendung smbtree
, um sicherzustellen, dass die Freigabe tatsächlich verfügbar ist). Ich empfehle Ihnen wirklich, sie zu lesen.
Antwort2
Haben Sie versucht, den Mount-Befehl zu /etc/rc.local hinzuzufügen? /etc/rc.local ist eine Datei, die beim Booten von root ausgeführt wird und normalerweise nichts tut. Sie können sie jedoch bearbeiten und Ihre eigenen Inhalte hinzufügen. Stellen Sie einfach sicher, dass Sie den bereits vorhandenen Befehl „exit 0“ unter die Befehle verschieben, die er ausführen soll.
So mounte ich mein per USB angeschlossenes externes Gerät automatisch beim Booten. Erstellen Sie einfach einen Mount-Punkt mit:
sudo mkdir /mnt/foo
Dabei ist foo der Name, den Sie ihm geben möchten. Bearbeiten Sie dann /etc/rc.local und fügen Sie den Mount-Befehl in einer Zeile irgendwo über dem Exit-Befehl hinzu. Beachten Sie jedoch, dass die meisten Desktop-Umgebungen es meiner Erfahrung nach nicht mehr als externes Gerät erkennen, wenn es auf diese Weise gemountet wird. Sie haben also nicht das schicke kleine Symbol, sondern müssen tatsächlich zu /mnt/foo navigieren und es als Lesezeichen speichern, um das Laufwerk zu durchsuchen.
Ich habe mit dem automatischen Mounten meines Servers mit rc.local begonnen, nachdem ich beim Bearbeiten von fstab alle möglichen Probleme hatte. Hoffe, das hilft, :-)
Bearbeiten:
Hier ist der gesamte Inhalt meiner rc.local-Datei. Ich wollte ihn nur teilen, damit Sie sehen können, was ich gemacht habe. Bevor Sie Ihre rc.local speichern und neu starten, stellen Sie jedoch sicher, dass der im Mount-Befehl angegebene Einhängepunkt tatsächlich erstellt wurde. Außerdem müssen Sie den Befehlen hier nicht „sudo“ hinzufügen, sie werden vom Root-Benutzer ausgeführt.
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
#Mounts Storage
mount /dev/sdb1 /mnt/Storage
exit 0
Antwort3
Danke für die schnelle Antwort.
Also beim ersten Fehler fehlte mir das m, daher sieht mein Code so aus
#Mapping network drive
//Ip-address/media/videos/media/storage cifs username=username,password=password,iocharset=utf8,sec=ntlm 0 0
also wenn ich jetzt laufe
sudo mount -a
mount error(115): operation now in progress
Refer to mount.cifs(8) manual page (e.g. man mount.cifs)
dann, wenn ich versuche
sudo mount.cifs //Seagate-XXXXX/Media/videos /media/storage --verbose
Password for root@//Segate-XXXX/Media/videos:
mount.cifs kernel mount options: ip=198.105.251.210,unc=\\SEAGATE-XXXXX\Media,user=root,prefixpath=videos,pass=*******
mount error(115): Operation now in progress
Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
Ich weiß, dass es das Laufwerk sehen kann
user@myserver: ~$ smbtree -b -N
WORKGROUP
\\SEAGATE-XXXXX Seagate Centeral Shared Storage
\\XXXXXXX-TIME-CA XXXXXX's Time Capsule
\\MYSERVER myserver server (Samba, Ubuntu)
\\MYSERVER\IPC$ IPC service (myserver server (Samba, Ubuntu))
\\MYSERVER\print$ Printer Drivers
Also, es sieht mein Netzwerklaufwerk, aber das ist auch ein passwortgeschütztes Laufwerk, also habe ich nicht erwartet, die Ordner für USER und PUBLIC zu sehen
Also bin ich jetzt noch ratloser? IRGENDWELCHE VORSCHLÄGE??
Antwort4
sudo mount -t cifs '//Seagate-XXXXX/Media/videos' //media/storage -o username=username,password=password,uid=1000,gid=1000,iocharset=utf8,sec=ntlm,file_mode=0777,dir_mode=0777
funktioniert bei mir mit einer Goflex Seagate sowie 2 Zentralen, aber ich habe der Host-Datei für IPS hinzugefügt
Einfache Dinge:
Können Sie sich mit Ihrem Benutzernamen und Passwort auf der NAS-Weboberfläche anmelden?
//Seagate-XXXXX/Media/videos
sind Sie sicher, dass dies der richtige Pfadname ist, denn für mich ist alles im privaten Verzeichnis
//Seagate-XXXXX/username/Media/videos
Hat Ihr Ubuntu-Benutzer vollen Zugriff auf //media/storage
das Verzeichnis?
Und nicht zuletzt erinnern Datei- und Verzeichnismodus Ubuntu scheint wählerisch zu sein, wo Crunchbang nicht war
Ich habe das /etc/rc.local
Ding nur gemacht, indem ich ein Skript aufrufe nas.sh
, das im Grunde eine ausführbare Textdatei mit dem Mount-Befehl ist.
#!/bin/bash
mount -t cifs '//Seagate-XXXXX/Media/videos' //media/storage -o username=username,password=password,uid=1000,gid=1000,iocharset=utf8,sec=ntlm,file_mode=0777,dir_mode=0777