Ich benutze das hervorragende Programm MoneyMoney unter MacOS zum abfragen aller meiner Banktransaktionen. Mit war bekannt, dass es eine API in Lua gibt, mit denen man Erweiterungen schreiben kann. Unter anderem kann man eine Erweiterung laden, dass einem alle Amazon Einkäufe der letzten 23 Jahre .... aber lassen wir das.
Vor kurzem habe ich gelernt, dass man MoneyMoney auch via AppleScript fernsteure kann.
Also habe ich eine kleine Python Bibliothek zum testen gebaut. Näheres auf https://github.com/MirkoDziadzka/py-money
Posts mit dem Label MacOS werden angezeigt. Alle Posts anzeigen
Posts mit dem Label MacOS werden angezeigt. Alle Posts anzeigen
2020-04-13
MacOS Startup Sound
Für seine neuen Laptop Modelle hat Apple den Startsound abgestellt. Normalerweise ist das ok. Wenn man aber öfter mal spezielle Boot Tastencodes benutzen will, Ist iss schon ganz nett akustisch zu erfahren wann man die drücken soll.
Kurz:
leistet das gewünschte. Wenn man den wieder ausschalten will, einfach das 00 durch 01 ersetzen.
Kurz:
$ sudo nvram StartupMute=
leistet das gewünschte. Wenn man den wieder ausschalten will, einfach das 00 durch 01 ersetzen.
2018-11-07
MacOS file system check
To see if you new APFS file system is consistent, you can:
$ sudo fsck_apfs -ln /dev/disk1s1
Let me explain this in details:
If this tells you that you should repair your disk, you must boot your Mac into single user mode (console mode). To do this, reboot and press CMD+S during reboot. You will get a unix console with a root prompt.
here you can run
# fsck_apfs -y /dev/disk1s1
-y means here: repair without asking
$ sudo fsck_apfs -ln /dev/disk1s1
Let me explain this in details:
- sudo - assume admin rights
- fsck_apfs - the low level program to check an APFS file system
- -ln - scan this in "live mode" and do "no changes"
- /dev/disk1s1 - the name of your main disk. You can find this by either doing a "df ~" or "diskutil list". The later gives the following output on my system:
$ diskutil list
/dev/disk0 (internal):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme 500.3 GB disk0
1: EFI EFI 314.6 MB disk0s1
2: Apple_APFS Container disk1 500.0 GB disk0s2
/dev/disk1 (synthesized):
#: TYPE NAME SIZE IDENTIFIER
0: APFS Container Scheme - +500.0 GB disk1
Physical Store disk0s2
1: APFS Volume Macintosh HD 478.9 GB disk1s1
2: APFS Volume Preboot 47.5 MB disk1s2
3: APFS Volume Recovery 512.8 MB disk1s3
4: APFS Volume VM 1.1 GB disk1s4
If this tells you that you should repair your disk, you must boot your Mac into single user mode (console mode). To do this, reboot and press CMD+S during reboot. You will get a unix console with a root prompt.
here you can run
# fsck_apfs -y /dev/disk1s1
-y means here: repair without asking
2014-05-20
MacOS start scripte
Für einen Unix Benutzer gibt es unter MacOS viele ungewohnte Dinge, zum Beispiel start scripte. Das wird auf MacOS alles vom launchd übernommen.
Hier mal zur Dokumentation ein Beispiel, wie man ein Programm zur boot Zeit als root ausführen lassen kann.
Mein konkretes Problem: Ich benutze tinc als Lösung, um alle meine Rechner via VPN zu verbinden. Ich würde gerne zur Boot Zeit folgendes Kommando ausführen
Konkret lege ich eine Datei /Library/LaunchDaemons/net.dziadzka.tincd.plist mit dem folgende Inhalt
Label: net.dziadzka.tincd
KeepAlive: true
ProgrammArguments: ["/usr/local/sbin/tincd", "-n", "dziadzka.net", "-D"]
KeepAlive == true heist, dass sich der Launchd darum kümmert, das Programm nach unfreiwilliger beendigung neu zu starten. Deswegen auch das zusätzliche Argument "-D" für den tincd, damit der sich nicht in den Hintergrund verabschiedet.
Hier mal zur Dokumentation ein Beispiel, wie man ein Programm zur boot Zeit als root ausführen lassen kann.
Mein konkretes Problem: Ich benutze tinc als Lösung, um alle meine Rechner via VPN zu verbinden. Ich würde gerne zur Boot Zeit folgendes Kommando ausführen
/usr/local/sbin/tincd -n dziadzka.netUnter MacOS erstelllt man hierzu eine plist Datei im XML format und kopiert sie nach /Library/LaunchDaemons.
Konkret lege ich eine Datei /Library/LaunchDaemons/net.dziadzka.tincd.plist mit dem folgende Inhalt
<?xml version="1.0" encoding="UTF-8"?>Im wesentlichen ist das eine 3-elementige property liste mit den werten
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>net.dziadzka.tincd</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/sbin/tincd</string>
<string>-n</string>
<string>dziadzka.net</string>
<string>-D</string>
</array>
</dict>
</plist>
Label: net.dziadzka.tincd
KeepAlive: true
ProgrammArguments: ["/usr/local/sbin/tincd", "-n", "dziadzka.net", "-D"]
KeepAlive == true heist, dass sich der Launchd darum kümmert, das Programm nach unfreiwilliger beendigung neu zu starten. Deswegen auch das zusätzliche Argument "-D" für den tincd, damit der sich nicht in den Hintergrund verabschiedet.
2013-12-04
MacOS: Sparse Bundle kleiner machen
Aus bestimmten Gründen(tm) benutze ich unter MacOS eine virtuelle Festplatte für den Source Code eines Projekts. Diese virtuelle Festplatte ist unter MacOS als ein Sparse Bundle implementiert.
Das heist, diese virtuelle Festplatte wächst automatisch, wenn mehr Platz gebraucht wird. Leider wird sie nicht automatisch kleiner, wenn Daten gelöscht werden. Das muss man manuell anstossen:
Das heist, diese virtuelle Festplatte wächst automatisch, wenn mehr Platz gebraucht wird. Leider wird sie nicht automatisch kleiner, wenn Daten gelöscht werden. Das muss man manuell anstossen:
$ hdiutil compact -batteryallowed ~/Documents/WOD.sparsebundle
Starting to compact…
Reclaiming free space…
...............................................................................
Finishing compaction…
Reclaimed 60.1 GB out of 83.8 GB possible.
2013-08-08
Wie kopiere ich ein ISO Image auf einen USB Stick (unter MacOS)
Da ich das öfter gefragt werde, hier eine Kurzanleitung.
Es braucht keine Spezielprogramme, im Prinzip, genauso wie unter Linux mit dd.
Vorbemerkung: Das dd Kommando weiter unten überschreibt die Daten ohne nachfragen. Also bitte aufpassen, das man wirklich den USB Stick überschreibt und nicht was anderes.
1. USB stick einstecken
2. Alle "Platten" anzeigen lassen.
Bei mir ist disk5 die richtige. Das merken wir uns mal
3. abmounten om USB Stick
Jetzt ist der USB Stick im Finder nicht mehr zu sehen, aber mit diskutil sieht man ihn immer noch
4. Kopieren der Daten auf den USB Stick
Es braucht keine Spezielprogramme, im Prinzip, genauso wie unter Linux mit dd.
Vorbemerkung: Das dd Kommando weiter unten überschreibt die Daten ohne nachfragen. Also bitte aufpassen, das man wirklich den USB Stick überschreibt und nicht was anderes.
1. USB stick einstecken
2. Alle "Platten" anzeigen lassen.
$ diskutil list
....
/dev/disk5
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *4.0 GB disk5
1: DOS_FAT_32 UNTITLED 4.0 GB disk5s1
Bei mir ist disk5 die richtige. Das merken wir uns mal
3. abmounten om USB Stick
$ diskutil unmountDisk /dev/disk5
Unmount of all volumes on disk5 was successful
Jetzt ist der USB Stick im Finder nicht mehr zu sehen, aber mit diskutil sieht man ihn immer noch
$ diskutil list
....
/dev/disk5
#: TYPE NAME SIZE IDENTIFIER
0: FDisk_partition_scheme *4.0 GB disk5
1: DOS_FAT_32 UNTITLED 4.0 GB disk5s1
$ sudo dd bs=1024k if=~/Downloads/Fedora-Live-LXDE-x86_64-19-1.iso of=/dev/disk5
Password:
691+0 records in
691+0 records out
724566016 bytes transferred in 1141.584431 secs (634702 bytes/sec)
Das sudo brauchen wir hier, weil wir ansonsten keine Rechte haben, direkt auf das device /dev/disk5 zuzugreifen.
- bs ist hier die zu verwenden lese/schreibe block size. Wenn die nicht gesetzt wird, nimmt dd 512byte und es dauert ewig.
- if ist das input file, hier ein Fedora ISO image
- of ist das output file, hier unser USB Stick
Am Ende muss die Partition eventuell noch bootfähig gemacht werde
$ sudo fdisk /dev/disk5
Und dann mit f die entsprechende Partition markieren
2013-02-05
Wie repariere ich unter MacOS eine Platte mit defektem Journal
Auf einer meiner Backup Platten (MacOS / Time Machine) war das Journal defekt. Die Platte lässt sich nicht mehr mounten.
Disk Utility ist nicht sehr hilfreich, Repair sagt alles in Ordnung (aber das Journal ist kaputt), Verify sagt, das Journal ist kaputt.
Also das Journal vom HFS+ abstellen. Geht ja auch ohne. Nun kann man das mit den üblichen MacOS tools nur bei einem gemounteten File System abstellen, mounten geht aber nicht ...
Kleine Internet Recherche: Wie bei Linux auch, wird bei MacOS von den disktools ein filesystem spezifisches Programm zum reparieren benutzt, dass kann dann eventuell auch etwas mehr.
Hier: Das Journal auf einem nicht gemountetem Filesystem abschalten:
Disk Utility ist nicht sehr hilfreich, Repair sagt alles in Ordnung (aber das Journal ist kaputt), Verify sagt, das Journal ist kaputt.
Also das Journal vom HFS+ abstellen. Geht ja auch ohne. Nun kann man das mit den üblichen MacOS tools nur bei einem gemounteten File System abstellen, mounten geht aber nicht ...
Kleine Internet Recherche: Wie bei Linux auch, wird bei MacOS von den disktools ein filesystem spezifisches Programm zum reparieren benutzt, dass kann dann eventuell auch etwas mehr.
Hier: Das Journal auf einem nicht gemountetem Filesystem abschalten:
/System/Library/Filesystems/hfs.fs/hfs.util -N /dev/diskNsMDanach geht auch das Repair/Verify gut und die Platte lässt sich wieder benutzen - und erstmal backup-en
Abonnieren
Posts (Atom)