EDIT: Je vais juste accepter ma propre réponse, car elle a résolu une partie du problème pour moi. Si quelqu'un publie quelque chose de plus comme --bind sous Linux, j'accepterai cette réponse.
Afin d'encourager plus de réponses, je vais commencer à répondre à ma propre question avec ce que j'ai découvert.
L'étape 1 consiste à obtenir un disque virtuel monté au démarrage à chaque fois. Pour ce faire, je crée un script bash puis une entrée launchd pour appeler le script bash au démarrage.
Écrivez un script bash comme ceci:
RD=ramdisk
if [ ! -e "/Volumes/$RD" ]; then
diskutil erasevolume HFS+ "$RD" `hdiutil attach -nomount`
fi
mkdir -p /Volumes/$RD/private/tmp
mkdir -p /Volumes/$RD/private/var/log
mkdir -p /Volumes/$RD/private/var/tmp
Ensuite, faites-le appeler au démarrage en l'ajoutant à launchd en créant un fichier appelé /Library/LaunchDaemons/com.my.ramdisk.plist avec le contenu suivant:
<?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>com.my.ramdisk</string>
<key>ProgramArguments</key>
<array>
<string>/usr/local/sbin/ramdisk.sh</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
Où je suis bloqué est un moyen de créer un lien symbolique ou de monter des répertoires dans le ramdisk dans / tmp, / var / log et / var / tmp. Ces trois répertoires sont tous liés par des liens symboliques sur mon système vers / private / tmp, / private / var / log et / private / var / tmp. Lorsque j'ai changé les liens symboliques pour pointer vers / Volumes / ramdisk / ..., le système ne démarre pas. Je pense que c'est parce qu'au démarrage, quelque chose veut / tmp et / var / log AVANT que le script my com.my.ramdisk monte le ramdisk. J'ai besoin d'un moyen de monter le ramdisk juste après le montage de root, avant toute autre chose.
Remarque Si vous montez / var / log (noyau, démon et autres journaux critiques de l'espace utilisateur) dans un espace temporaire, vous perdrez son contenu au prochain redémarrage. Cela pourrait nuire à votre capacité de diagnostic.