Aktivieren Sie die SMB-Freigabe über die Befehlszeile

Unter OS X 10.8 möchte ich mit Terminalbefehlen die SMB-Freigabe aktivieren, als ob ich das folgende Kontrollkästchen unter aktiviert hätte System Preferences - Sharing - File Sharing - Options:

Geben Sie hier die Bildbeschreibung ein

Ich habe folgenden Befehl probiert:

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.smbd.plist

Aber obwohl der smb-Daemon betriebsbereit zu sein scheint, ist das Kontrollkästchen immer noch deaktiviert, als ob etwas fehlt.

Derselbe Befehl funktioniert beispielsweise für die Bildschirmfreigabe ( com.apple.screensharing.plist) und sogar für AFP ( com.apple.AppleFileServer.plist), nur SMB scheint unter diesem Problem zu leiden.

Lesen Sie das Kleingedruckte unter dem Kontrollkästchen für SMB!
Das ist etwas anderes. Wenn ich das Kästchen in den Systemeinstellungen ankreuze, muss ich keine Passwörter oder irgendetwas anderes eingeben, also muss es eine Möglichkeit geben, dasselbe mit Befehlen zu tun, ohne sich mit Passwörtern zu befassen.
Auf modernen Systemen scheint der launchctlBefehl alles zu sein, was benötigt wird. Siehe Discussions.apple.com/thread/8463141 .

Antworten (2)

Ich habe die Lösung gefunden. Zwei Befehle werden nacheinander benötigt:

sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.smbd.plist
sudo defaults write /Library/Preferences/SystemConfiguration/com.apple.smb.server.plist EnabledServices -array disk

Für andere, die möglicherweise dasselbe Problem mit einer anderen Ursache haben, habe ich festgestellt, dass meine com.apple.smbd.plistDatei irgendwie beschädigt wurde.

Sie können dies mit überprüfen cat /System/Library/LaunchDaemons/com.apple.smbd.plist. Es sollte als Klartext erscheinen, aber wenn Sie eine Reihe seltsamer Zeichen sehen, ist es wahrscheinlich beschädigt.

Ich habe die Datei einfach gelöscht [und nachdem ich festgestellt hatte, dass sie beim Neustart nicht neu erstellt wurde] kopierte sie com.apple.smbd.plistvon einem anderen Mac in /System/Library/LaunchDaemons/. Dann habe ich das Kontrollkästchen aktiviert (oder Sie könnten alternativ ausführen sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.smbd.plist) und dann neu gestartet.

Problem gelöst. Gleiches Problem, andere Ursache.

Bearbeiten:com.apple.smbd.plist Sie sollten auch die Berechtigungen für und überprüfen com.apple.AppleFileServer.plist, insbesondere wenn Sie von einem anderen Computer kopieren. Ich habe festgestellt, dass meine com.apple.AppleFileSharing.plistDatei 777eine Berechtigung hatte, was dazu führte, dass sie nicht geladen wurde.

Besitz sollte sein root:wheelund Berechtigungen sollten sein 644:

sudo chown root:wheel /System/Library/LaunchDaemons/com.apple.smbd.plist
sudo chown root:wheel /System/Library/LaunchDaemons/com.apple.AppleFileServer.plist
sudo chmod 644 /System/Library/LaunchDaemons/com.apple.smbd.plist
sudo chmod 644 /System/Library/LaunchDaemons/com.apple.AppleFileServer.plist
Plist hat sowohl ein Textformat als auch ein Binärformat, und letzteres ist im System weit verbreitet. Es bedeutet also überhaupt nicht, dass die Datei beschädigt ist.