Posts Tagged ‘OS X’

Mittwoch, 31. August 2016

SMB (Samba) unter OS X El Capitan schneller machen

Obwohl ich vorher gar keine Tests gefahren bin, habe ich folgende Konfigurationseinstellung gleich nach der Installation von El Capitan aktiviert:

/etc/nsmb.conf

[default]
signing_required = no

Quelle: OS X 10.11 El Capitan: Langsame SMB-Verbindungen!

Motto: Nützt’s nüt, schadt’s nüt.

Tags: , , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 28. August 2016

launchd vergisst nach Upgrade auf OS X El Capitan die Pfade (PATH)

Dies ist bei mir ganz kritisch, da meine Scripts auf viele MacPorts-Tools angewiesen sind — unter anderem realpath, wget sowie curlftpfs.

Abhilfe schafft man folgendermassen:

~/Library/LaunchAgents/com.emeidi.environment.plist

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>Label</key>
  <string>my.startup</string>
  <key>ProgramArguments</key>
  <array>
    <string>sh</string>
    <string>-c</string>
    <string>launchctl setenv PATH /opt/local/bin:/opt/local/sbin:$PATH</string>
  </array>
  <key>RunAtLoad</key>
  <true/>
</dict>
</plist>

Quelle: Setting the system-wide PATH environment variable in Mavericks

Anschliessend startet man den „Job“:

$ launchctl load ~/Library/LaunchAgents/com.emeidi.environment.plist

Tags: , , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Samstag, 27. August 2016

Auf dem Laptop einen Web-Server aktivieren, um Dateien auf ein iPad und iPhone herunterzuladen

In den Ferien stand ich vor dem Problem, eine ca. 50 MB grosse Datei (Teneriffa-Reiseführer von Lonely Planet) von meinem Laptop auf mein iPad und mein iPhone zu kopieren.

Ein Versand per E-Mail war aus zwei Gründen ausgeschlossen: Mein Mail-Server akzeptiert solch grosse Dateien gar nicht erst, und ausserdem verfügte unser AirBnB nur über ein popeliges ADSL-Modem mit Geschwindigkeiten um die Jahrhundertwende. Das Modem hätte mich dementsprechend zuerst mit einem extrem langen Upload zum Mail-Server und anschliessend mit einem extrem langen Download vom Mail-Server genervt. Zu guter Letzt unterstützt mein MacBook auch kein AirDrop, um Dateien per Bluetooth oder WLAN zwischen iOS und OS X-Geräten auszutauschen.

Was nun? Das standardmässige unter OS X installierte Python eilt einem zur Hilfe: Man öffnet das Terminal, navigiert zum Verzeichnis, in welcher sich die gewünschte Datei befindet, und gibt dann folgenden Befehl ein:

$ python -m SimpleHTTPServer
Serving HTTP on 0.0.0.0 port 8000 ...

Nachdem man mittels ifconfig oder dem Network-Modul unter System Preferences die IP-Adresse des Laptops ausfindig gemacht hat, surft man auf den iOS-Geräten die folgende URL mit Safari an:

http://10.1.2.3:8000/

Ein Klick auf den Dokumentenlink, und innert weniger Sekunden wird das grosse PDF angezeigt und kann in iBooks gespeichert werden.

Python meldet auf der Kommandozeile dabei Folgendes:

10.25.9.220 - - [04/Jul/2016 10:14:18] "GET / HTTP/1.1" 200 -
10.25.9.220 - - [04/Jul/2016 10:14:20] "GET /canary-islands-6-whole-book.pdf HTTP/1.1" 200 -
10.25.9.208 - - [04/Jul/2016 10:15:12] "GET / HTTP/1.1" 200 -
10.25.9.208 - - [04/Jul/2016 10:15:18] "GET /canary-islands-6-whole-book.pdf HTTP/1.1" 200 -
10.25.9.235 - - [04/Jul/2016 10:15:57] "GET / HTTP/1.1" 200 -
10.25.9.235 - - [04/Jul/2016 10:16:03] "GET /canary-islands-6-whole-book.pdf HTTP/1.1" 200 -

Tags: , , , ,
Labels: Apple, Linux

Keine Kommentare | neuen Kommentar verfassen

Mittwoch, 3. Juni 2015

Mail.app unter OS X sortiert IMAP-Ordner nicht (mehr) alphabetisch

Wenn Mail.app sich irgendeinmal im Laufe der Zeit entscheidet, neu erstellte IMAP-Ordner nicht alphabetisch in die Ordnerstruktur einzureihen, sondern einfach an das Ende der Ordnerliste stellt, ist es Zeit für diesen kleinen Trick:

The solution is to disable the associated account in Mail Preferences, Quit Mail, restart Mail and then enable to account again.

Quelle: Mac Mail not automatically sorting mailbox folders alphabetically

Auf Gut Deutsch: Das besagte IMAP-Konto unter den Einstellung auf Inaktiv setzen, Mail.app beenden und neu starten.

Bei mir fügte diese Aktion leider dazu, dass das Mail-Konto selber an den Schluss meiner fünf Mailkonten gestellt wurde. Ich musste das Spiel deshalb anschliessend noch mit allen anderen Konten durchführen.

Tags: , , , , , ,
Labels: Apple

4 Kommentare | neuen Kommentar verfassen

Dienstag, 12. Mai 2015

Unter OS X den S.M.A.R.T.-Status von externen Festplatten abfragen

Leider unterstützen die OS X Treiber für externe Festplatten (via USB) von Haus aus die S.M.A.R.T.-Technologie nicht. Die smartmontools bleiben im Zusammenspiel mit externen Festplatten somit nutzlos.

Ein Entwickler hat sich dem Problem angenommen und stellt über sein GitHub-Repository einen entsprechenden quelloffenen Treiber zur Verfügung, welcher sich als Kernel-Erweiterung in OS X einklinkt:

OS-X-SAT-SMART-Driver

Der Treiber legt zwei Kernel-Erweiterungen an:

/System/Library/Extensions/SATSMARTDriver.kext
/System/Library/Extensions/SATSMARTLib.plugin

Ob ein externes Laufwerksgehäuse nach dieser Operation S.M.A.R.T. unterstützt, erkennt man entweder im Disk Utility („S.M.A.R.T. Status: Verified“) oder auf der Kommandozeile:

$ smartctl -a /dev/disk1
smartctl 6.3 2014-07-26 r3976 [x86_64-apple-darwin13.2.0] (local build)
Copyright (C) 2002-14, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF INFORMATION SECTION ===
Model Family:     Western Digital Caviar Green (AF, SATA 6Gb/s)
Device Model:     WDC WD20EARX-00PASB0
...

Tags: , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Montag, 11. Mai 2015

Kernel Extension-Überreste von Parallels entfernen

Vor einiger Zeit fiel mir in einer von OS X angelegten Log-Datei folgender Eintrag auf:

...
20.03.15 11:42:58.057 Parallels[267]: Unloading kernel extension prl_usb_connect.kext
20.03.15 11:42:58.570 Parallels[322]: Loading kernel extension prl_usb_connect.kext
20.03.15 11:43:06.428 com.apple.kextd[12]: Can't open CFBundle for /Library/Parallels/Parallels Service.app/Contents/Kexts/prl_usb_connect.kext.
20.03.15 11:43:06.428 com.apple.kextd[12]: Can't open CFBundle for /Library/Parallels/Parallels Service.app/Contents/Kexts/prl_usb_connect.kext.
20.03.15 11:43:06.428 com.apple.kextd[12]: Error: Kext /Library/Parallels/Parallels Service.app/Contents/Kexts/prl_usb_connect.kext - not found/unable to create.
20.03.15 11:43:06.431 Parallels[333]: Failed to load kernel extension prl_usb_connect.kext
20.03.15 11:43:06.457 Parallels[335]: /Library/Parallels/Parallels Service.app/Contents/Kexts/prl_usb_connect.kext failed to load - (libkern/kext) not found; check the system/kernel logs for errors or try kextutil(8).
...

Obwohl ich Parallels längst nicht mehr auf meinem System installiert hatte, war mein OS X offenbar noch so konfiguriert, dass bei jedem Start des Rechners Parallels Erweiterungen geladen werden sollten.

Das Problem löste ich, indem ich gemäss dem VMWare-Artikel unter /System/Library/Extensions folgende Extension entdeckte:

...
lrwxr-xr-x    1 root  wheel    76 17 Mai  2014 prl_usb_connect.kext -> /Library/Parallels/Parallels Service.app/Contents/Kexts/prl_usb_connect.kext
...

Ich entschied mich, den Symlink zu löschen:

# rm /System/Library/Extensions/prl_usb_connect.kext

Quelle: Deleting Parallels tools (1009119)

Weiter erschien es mir als eine gute Idee, das Verzeichnis /Library/Parallels/ vollständig zu löschen. Dies führte ich aber nicht von Hand aus, sondern lud mir das Tool PDRemove.app von der Web-Site des Softwareherstellers. Obwohl das Verzeichnis bestehen bleibt, ist es zumindest nach der circa zwei Minuten dauernden Ausführung vollständig entleert:

PDUninstall Success
image-6263

Tags: , , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 30. April 2015

Google Updater unter OS X effektiv abwürgen

Um den Google Updater unter OS X effektiv und permanent abzuwürgen, empfiehlt sich folgendes Vorgehen:

$ cd ~/Library/LaunchAgents
$ chmod 0 com.google.keystone.agent.plist

Quelle: MacBook Pro keeps freezing, could Google Update be the cause?

Tags: , , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 30. April 2015

Duplikate und Müll aus OS Xs „Open with“ Menu entfernen

Folgender Befehl bewirkt eine gehörige Entschlackung des Menus:

# /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain user
# killall Finder

Quelle: Remove Duplicates from the “Open With” Right-Click Menu in Mac OS X

Tags: , , ,
Labels: Apple

Keine Kommentare | neuen Kommentar verfassen

Donnerstag, 26. März 2015

monit unter Mac OS X neu starten

Vor einigen Tagen meldete mir die monit-Instanz aus einem anderen Subnet, dass die Web-Oberfläche der monit-Instanz auf meinem Mac mini nicht mehr ansprechbar war. Heute, nach unzähligen Warnmeldungen, habe ich mich um das Problem gekümmert.

Wie sich herausstellte, liess sich das Problem beheben, indem ich monit schlicht neu startete. Auf der Mac OS X-Kommandozeile geht dies so:

$ sudo launchctl unload /Library/LaunchDaemons/com.tildeslash.monit.daemon.plist
$ sudo launchctl load /Library/LaunchDaemons/com.tildeslash.monit.daemon.plist

Via: Monit

Tags: , , , , , , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen

Sonntag, 25. Mai 2014

curlftpfs unter Mac OS X

Ergänzungen meiner IT-Installation machten es kürzlich nötig, dass ich neu auch unter Mac OS X curlftpfs einsetze, um per FTP von bestimmten Web-Sites Sicherheitskopien anzufertigen (Stichwort: Vagrant und puPHPet, dank an Christian für die „Erleuchtung“!)

Entweder hat sich curlftpfs in der Zwischenzeit weiterentwickelt, oder unter Mac OS X läuft der „Karren“ etwas anders. Auf jeden Fall habe ich bei der Adaptierung meiner Linux-Scripte unter Mac OS X folgendes gelernt:

MacPorts

curlftpfs installiert man sich folgendermassen:

# port install curlftpfs

Wenn man curlftpfs dann zum ersten Mal ausführt, warnt einem Mac OS X (hier: 10.9 Mavericks), dass man eine Kernelextension aktiviert, welche von einem unbekannte Entwickler kompiliert wurde. Henusode … (NSA lässt grüssen). Die Warnung ist seither nie mehr aufgetaucht; ich hoffe, dass dies auch nach einem Reboot so bleibt.

Geduldiges mounten

In Tests hat sich herausgestellt, das das Mounten von FTP-Volumen längert dauert als unter Linux. Meinem Script habe ich deshalb folgendermassen Geduld beigebracht:

...
MAXIMUMITERATIONS=5000
...
TIME=$(date +%H:%M:%S)
echo -n "Checking whether mountpoint is populated ($TIME): "

COUNTER=0
while [ ! -d "$SOURCE" ]
do
	let COUNTER=COUNTER+1
	echo -n "."
	
	if [ "$COUNTER" -eq "$MAXIMUMITERATIONS" ]
	then
		echo "Mountpoint still not available after $COUNTER iterations. Aborting."
		exit 1
	fi
done
...

In der Variable $SOURCE ist der Pfad zu einem auf dem FTP-Server vorhandenen Unterordner gespeichert. Sobald bash meldet, dass dieser nun verfügbar ist, kann ich mit den Kopieraktionen beginnen.

Zugriff verweigert

Bei den Tests traf ich auch auf ein Berechtigungsproblem: Manchmal wurde rsync beim Traversieren von FTP-Ordnerstrukturen der Zugriff verweigert. Nach einigem Pröbeln realisierte ich, dass einige Ordner auf den FTP-Servern das Execution-Bit nur für den Owner gesetzt hatten, nicht aber für die Gruppe oder gar Dritte. In einem Fall passte ich die Berechtigungen über den FTP-Client meiner Wahl an, in einem anderen Fall war ich mir todsicher, dass ich allen Serverbenutzern definitiv keine Berechtigung zum Lesen aller meiner Dateien geben wollte. Was nun?

Folgende Option verhindert, dass curlftpfs respektive FUSE bei FTP-Verbindungen Berechtigungschecks durchführen (dies ist hier Aufgabe des FTP-Servers — gibt dieser Zugriff auf eine Datei, hat definitiv schon eine zuverlässige Authentifizierung und Authorisierung stattgefunden):

$ curlftpfs -o defer_permissions ...

Zeichensalat

In meinem älteren Blog-Artikel zu curlftpfs habe ich gezeigt, wie der Zeichensatzproblematik unter Linux begegnen kann. Unter Mac OS X klappt dies so nicht. Stattdessen sind folgende Werte an curlftpfs zu übergeben:

$ curlftpfs -o modules=iconv,from_code=latin1

Quelle: International characters (e.g. Swedish åäö) in remote file system folder names makes Finder hang #71

Den Ausgabezeichensatz finden FUSE respektive curlftpfs offenbar selber heraus.

Dem Parameter from_code ist natürlich der Zeichensatz des FTP-Servers mitzugeben. Es sind alle iconv bekannten Zeichensätze konfigurierbar:

$ iconv -l

In Verbindung mit rsync führt dies aber zum unerwünschten Verhalten, dass Verzeichnisse und Dateien mit Umlauten im Namen bei jeder Synchronisation erneut heruntergeladen werden (ich bin unschuldig, das war ein anderer Benutzer des Servers!).

Tags: , , , , ,
Labels: Apple, Linux

Keine Kommentare | neuen Kommentar verfassen