En fait, je veux faire un lecteur de RAM lié à ce script sur mon Mac.
Voici ce que j'ai fait :
-
Désactiver SIP en mode de récupération en utilisant la commande "csrutil".
-
Création d'un fichier plist dans /Library/LaunchDaemons/
et est entrélaunchctl -w /Library/LaunchDaemons/vn.magik.ramdisk.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>vn.magik.ramdisk</string> <key>ProgramArguments</key> <array> <string>/Users/khacpm/ramdisk.sh</string> </array> <key>RunAtLoad</key> <true/> <key>StandardOutPath</key> <string>/Users/khacpm/ramdisk.log</string> <key>StandardErrorPath</key> <string>/Users/khacpm/ramdisk.err</string> </dict> </plist>
-
Créer le fichier .sh et le mettre dans ~/ramdisk.sh
code :
function fstartup() { //put folder into ramdisk } function fshutdown() { //detach ramdisk } function framdisk() { //do something } trap fshutdown SIGTERM trap fshutdown SIGKILL fstartup;
Le problème est que la fonction fstartup fonctionne bien mais il semble que la fonction fshutdown ne soit pas appelée par le système.
0 votes
Avez-vous essayé de désactiver SIP pour voir si vos scripts sont même compatibles avec cette nouvelle protection ?
0 votes
J'ai déjà configuré le nvram rootless=0, mais cela ne fonctionne pas.
0 votes
Vous ne pouvez pas modifier /System avec sip. Je vais répondre à comment désactiver cela
0 votes
Dieu merci, j'ai démarré en mode récupération et désactivé SIP avec la commande "csrutil disable" et maintenant je peux modifier le dossier /System. Mais malheureusement, ce que je veux ne fonctionne toujours pas, le script ne s'exécute pas au démarrage et à l'arrêt.
0 votes
Plusieurs années plus tard, j'essaie de faire exactement la même chose avec le même script de départ. Je peux faire en sorte que la fonction de démarrage et la fonction d'arrêt s'exécutent, mais la fonction d'arrêt qui copie les fichiers du disque RAM ne se termine pas. Il semble que le disque RAM soit détruit par le système avant cette opération très rapide.
cp
la commande peut finir de fonctionner. Y a-t-il un moyen de retarder l'arrêt de quelques secondes ?