Allgemeine Hinweise zu macOS
Das Keyboard unter macOS
⌘ |
⌥ |
⇧ |
覄 |
覗 |
虹 |
Befehlstaste |
Wahltaste |
Umschalttaste |
"command" |
"option" |
"shift" |
CMD |
OPT |
SHIFT |
Sonderzeichen |
Bezeichnung |
Tastenkombination |
@ |
At |
cmd + L |
€ |
Euro |
alt + E |
$ |
Dollar |
shift + 4 |
£ |
Britisches Pfund |
alt + shift + 4 |
© |
Copyright |
alt + G |
® |
Registered |
alt + R |
™ |
Trademark |
alt + shift + D |
? |
Apple |
alt + shift + + |
§ |
Paragraph |
shift + 3 |
~ |
Tilde |
alt + N (dann Leertaste) |
( |
Klammer auf |
shift + 8 |
) |
Klammer zu |
shift + 9 |
[ |
eckige Klammer auf |
alt + 5 |
] |
eckige Klammer zu |
alt + 6 |
{ |
geschwungene Klammer auf |
alt + 8 |
} |
geschwungene Klammer zu |
alt + 9 |
/ |
Slash |
shift + 7 |
\ |
Backslash |
alt + shift + 7 |
| |
Pipe (senkrechter Strich) |
alt + 7 |
„ |
dt. Anführungszeichen unten |
alt + ^ |
“ |
dt. Anführungszeichen oben |
alt + shift + ^ |
‚ |
einfaches dt. Anführungszeichen unten |
alt + S |
‘ |
einfaches dt. Anführungszeichen oben |
alt + # |
» |
frz. Anführungszeichen auf |
alt + shift + Q |
« |
frz. Anführungszeichen zu |
alt + Q |
› |
einfaches frz. Anführungszeichen auf |
alt + shift + N |
‹ |
einfaches frz. Anführungszeichen zu |
alt + shift + B |
= |
Gleich |
shift + 0 |
≠ |
Ungleich |
alt + 0 |
≤ |
Kleiner gleich |
alt + > |
≤ |
Größer gleich |
alt + shift + > |
> |
Größer |
shift + > |
< |
Kleiner |
fn + > |
± |
Plusminus |
alt + + |
≈ |
Ungefähr |
alt + X |
ø |
Durchschnitt |
alt + O |
≈ |
Unendlich |
alt + , |
% |
Prozent |
shift + 5 |
π |
Pi |
alt + P |
√ |
Haken |
alt + V |
Das opsi Produkt m-homebrew
Es gibt für macOS eine Reihe von Paketverwaltungsprogrammen, welche es erlauben gängige Unix Programme unter macOS bereitzustellen. Typische Vertreter dieser Paketverwaltungsprogramme sind:
-
homebrew (https://brew.sh/)
-
macport (https://www.macports.org/)
-
fink (https://finkproject.org/)
Das opsi Produkt m-homebrew installiert das homebrew System auf einem macOS System.
homebrew installiert den Befehl brew
auf dem System mit dem sich dann aus dem Internet Programme herunterladen lassen. Dabei wird entweder direkt ein Binary installiert oder die Sourcen heruntergeladen und das Programm auf der Maschine kompiliert. Daher braucht homebrew auch die Entwicklungs Kommandozeilen Tools um Programme zu kompilieren (xcode-select --install
)
homebrew ist aus Sicherheitsgründen so konzipiert, das es nicht als root aufgerufen werden darf, sondern nur mit usaer Rechten. Um dies im opsi Kontext zu gewähreisten wird bei der Installation des opsi-client-agent ein 'hidden user' Namens opsisetupadmin
erzeugt (siehe auch Der macOS pseudo user opsisetupadmin).
Diesem user gehört das ganze homebrew System auf der Maschine und daher sollte auch nur dieser user verwendet werden um über den Befehl brew
Software auf der Maschine zu installieren.
D.h. Der Befehl brew
sollte wie folgt als root aufgerufen werden:
sudo -H -u opsisetupadmin /usr/local/bin/brew
Die Installation von Java im Produkt m-javavm ist z.B. wie folgt implementiert:
[ShellScript_brew_install_java]
; https://github.com/SAP/SapMachine/wiki/Installation
EXITCODE=0
sudo -H -u opsisetupadmin /usr/local/bin/brew tap sap/sapmachine
EC=$?; if [ $EC -ne 0 ]; then EXITCODE=$EC; fi
sudo -H -u opsisetupadmin /usr/local/bin/brew install --cask sapmachine-jdk
EC=$?; if [ $EC -ne 0 ]; then EXITCODE=$EC; fi
exit $EXITCODE
Um herauszufinden ob die Installation eines gewünschten Produktes per homebrew unterstützt wird, verwenden Sie am besten die folgende Webseite:
https://formulae.brew.sh/
Hilfreiche Links zu homebrew:
https://docs.brew.sh/
https://devhints.io/homebrew
Der macOS pseudo user opsisetupadmin
Bei der Installation des opsi-client-agent ein 'hidden user' Namens opsisetupadmin erzeugt. Dieser user hat kein Passwort und kann nicht für ein Login verwendet werden.
Das Heimatverzeichnis dieses Users ist /var/opsisetupadmin
Dieser User dient zu folgenden Zwecken:
-
Bedienung des homebrew Systems (siehe Das opsi Produkt m-homebrew)
-
Das Verzeichnis
/var/lib/opsisetupadmin/opsi_depot
ist der mountpoint auf dem der opsiclientd den Depotshare mounted.
Dies wir so gemacht weil ein Zugriff auf Networkshares welche nicht in einem Userverzeichnis gemountet werden stark eingeschränkt ist.
Die opsi Verzeichnisse auf macOS
Wesentliche opsi Verzeichnisse und Dateien auf dem macOS-Client
-
/var/log/opsi-script (Log files opsi-script)
-
/var/log/opsi-client-agent (sonstige opsi Log files)
-
/usr/local/bin/opsi* (Kommandozeilen Programme)
-
/Applications/opsi-script-gui.app
-
/Applications/opsi-notifier.app
-
/etc/opsi-client-agent (Konfiguration opsi-client-agent)
-
/etc/opsi-script (Konfiguration opsi-script)
-
/usr/local/lib (Hilfslibraries z.B. ssl)
-
/usr/local/lib/opsiclientd
-
/usr/local/bin/locale (locale opsi-script)
-
/usr/local/share/opsi-client-agent
-
/usr/local/share/opsi-script
-
/usr/local/share/notifier.d
-
/var/opsisetupadmin (Heimatverzeichnis opsisetupadmin)
-
/var/lib/opsi-client-agent
-
/Library/LaunchDaemons/ (Start Konfiguration für opsi deamons)
-
/Library/LaunchAgents/ (Start Konfiguration für opsi-systray)
macOS Directory Struktur mit 'go' und 'nogo'
macOS basiert auf BSD-Unix und hat damit eine typische Unix Filesystemstruktur. Es gibt aber aus Sicherheitsgründen etliche Bereich die ausschließlich Apple vorbehalten sind und noch ein paar weiter Spezifika welche für den Paketierer wichtig sind:
-
/Applications
Das ist das Verzeichnis in dem die grafischen Anwendungen liegen. Eine Anwendung besteht dabei aus eine Verzeichnis <Application name>.app. Ein solches Verzeichnis wird aber imFinder
nicht als Verzeichnis angezeigt, sondern als 'Anwendung'. Innerhalb dieses Verzeichnisses müssen sich nach einem bestimmten Muster die Dateien der Anwendung befinden. -
/sbin
,/bin
,/usr/bin
,/usr/share
,/usr/lib
Dies sind 'apple only' Verzeichnisse in die sonst niemand etwas reinkopieren darf. Verwenden Sie stattdessen dielocal
Varianten:
/usr/local/bin
,/usr/local/share
,/usr/local/lib