Bluetooth-Sichtbarkeit abschalten in Mavericks

Bluetooth Mountain LionHatte Mac OS X bis einschließlich 10.8 Mountain Lion noch einen Schalter, um die Bluetooth-Sichtbarkeit a/k/a „Discoverability“ abzuschalten, gelingt dies unter 10.9 Mavericks nicht mehr. Der permanente Sichtbarkeit lässt sich aber via Kommandozeile beikommen – und via Automator sogar automatisch beim Anmelden.


Zur Erinnerung: So sah es noch unter Mountain Lion aus. Den Schalter „Sichtbar“ gibt es unter Mavericks nicht mehr, auch nicht unter „Weitere Optionen“.

Bluetooth-Sichtbarkeit Mavericks_optNichtsdestotrotz: Klickt man mit gehaltener Alt-Taste auf das Bluetooth-Symbol oben rechts in der Menüleiste, offenbart sich, dass der Mac scheinbar permanent sichtbar ist.

Wie können wir das ändern? Eine Google-Recherche brachte mich auf einen englischsprachigen Blog-Beitrag auf Krypted.com – aktuell drei Jahre alt, aus dem September 2011, lange bevor im Juni 2013 Mavericks erschien.

Die darin enthaltenen, von  zusammen getragenen Details lassen sich freundlicherweise auch heute noch anwenden – ob dies auch unter OSX 10.10 Yosemite geht, kann ich zum aktuellen Zeitpunkt noch nicht sagen, ich werde dies beizeiten ausprobieren. Aber der Reihe nach …


Das Kommando

/usr/sbin/system_profiler SPHardwareDataType

liefert in der Tat einen groben Hardware-Überblick, und

/usr/sbin/system_profiler SPHardwareDataType | grep "Hardware UUID" | cut -c22-57

schneidet die Hardware-UUID heraus.

Ich verbessere Charles Edges Fassung dahingehend, dass ich die $HOME Variable verwende, um den korrekten defaults write Aufruf allgemeingültig zurechtzuzimmern (Obacht, alles in eine Zeile):

defaults write $HOME/Library/Preferences/ByHost/com.apple.Bluetooth.`/usr/sbin/system_profiler SPHardwareDataType | grep "Hardware UUID" | cut -c22-57` DiscoverableState -bool no

Zusammen mit dem obligatorischen Unload / Reload des Bluetooth-Daemons, ergänzt um ein ein Shell-Shebang, kann man daraus ein wunderbares kleines Shell-Skript bauen, z.B. Turn_off_Bluetooth_visibility.command:

#!/bin/bash
defaults write $HOME/Library/Preferences/ByHost/com.apple.Bluetooth.`/usr/sbin/system_profiler SPHardwareDataType | grep "Hardware UUID" | cut -c22-57` DiscoverableState -bool no
launchctl unload /System/Library/LaunchDaemons/com.apple.blued.plist
launchctl load /System/Library/LaunchDaemons/com.apple.blued.plist

Das Ding macht man dann mit

chmod 755 Turn_off_Bluetooth_visibility.command

ausführbar und kann es fortan mit

./Turn_off_Bluetooth_visibility.command

Bluetooth-Unsichtbarkeit Mavericksoder alternativ auch vom Finder aus per Doppelklick starten.

Wenn wir alles richtig gemacht haben, ist es nun aus mit der Bluetooth-Sichtbarkeit, wie oben abgebildet.

Kleiner Schönheitsfehler dabei: Das Skript öffnet sich als Kommandozeilen-Fenster, das zwar seinen Zweck erfüllt, anschließend aber händisch geschlossen werden muss. Sicher können wir die .command-Datei in den Systemeinstellungen unter „Benutzer & Gruppen“ in die Liste der automatisch zu startenden „Anmeldeobjekte“ aufnehmen. Bei der Anmeldung erschiene aber unweigerlich das Terminal-Fenster und müsste immer wieder weggeklickt werden.


Derselbe Zweck lässt sich natürlich via Automator deutlich schöner erledigen. Man rufe selbigen auf (z.B. via Spotlight) und wähle im sich öffnenden neuen „Ohne Titel“-Dokument den Punkt „Programm“.

Automator – neues Programm

Das Automator-Programm soll ein Shell-Skript aufrufen. Wir tippen oben ins Suchfeld den Begriff „Shell“ und doppelklicken das schwarze Terminal-Symbol, um exakt diese Aktion ins Programm einzufügen.

Automator – Shell-Skript ausführen

In das sich öffnende Eingabefeld kommt der gesamte Sumpf von oben – allerdings ohne den #!/bin/bash Shebang:

Automator – mit Shell-Skript

Und schon lässt sich das Automator-Programm unter einem beliebigen Namen speichern, ich habe hier wiederum „Turn_off_Bluetooth_visibility“ gewählt, diesmal wird daraus natürlich eine .app. – Keine Sorge, der Automator kann sie auch später erneut öffnen und editieren.


Ein Doppelklick auf die App sollte die gewünschte Aktion vollziehen – aber wie sollen wir das testen? Denn schließlich hatten wir die Bluetooth-Sichtbarkeit ja schon zuvor mit dem gleichnamigen .command-Shell-Skript unterbunden. Neustarten hilft, die Sichtbarkeit wird von Mavericks immer erneut hergestellt.

Bluetooth deaktivieren

Es geht aber auch einfacher und ohne Neustart: Nach einmaligem Deaktivieren und Reaktivieren, etwa durch Auswahl von „Deaktivieren“ / „Aktivieren“ bei Anklicken des Bluetooth-Symbols oben rechts, springt die Sichtbarkeit erneut auf „Ein“, wie man durch anschließendes Anklicken des Bluetooth-Symbols mit gedrückter Alt-Taste nachvollziehen kann (wie oben abgebildet).


Abschließend steckt man das Automator-Programm nun tatsächlich noch in die Liste das Anmeldeobjekte:

Anmeldeobjekte

Dies gelingt entweder durch Anklicken des „+“-Buttons oder einfach via Drag & Drop der Applikation aus dem Finder auf die Liste.

Von nun an sollte sich die Bluetooth-Sichtbarkeit automatisch direkt während der Anmeldung deaktivieren – was sich mit einem Bluetooth-Suchlauf mit einem anderen Gerät (z.B. einem iPad) parallel zum Login anschaulich nachvollziehen lässt.


Für die ganz bequemen Zeitgenossen:

Da meine Automator-Applikation natürlich unsigniert ist, läuft das Programm dank Gatekeeper nach einem Doppelklick leider nicht einfach los:

Turn_off_Bluetooth_visibility - DoppelklickTurn_off_Bluetooth_visibility - rechter Mausklick

Man startet sie daher stattdessen durch rechten Mausklick auf das Programmsymbol und „Öffnen“ – und bestätigt anschließend, dass man weiß, was man tut.

Keine Kommentare möglich.