Większość programów w MacOS rozprowadzana jest w wersji na kilka architektur (w jednym pliku):
$ file /Applications/Firefox.app/Contents/MacOS/firefox-bin /Applications/Firefox.app/Contents/MacOS/firefox-bin: Mach-O universal binary with 2 architectures /Applications/Firefox.app/Contents/MacOS/firefox-bin (for architecture ppc): Mach-O executable ppc /Applications/Firefox.app/Contents/MacOS/firefox-bin (for architecture i386): Mach-O executable i386
Można dość prosto pozbyć się zbędnych wersji, przy pomocy polecenia:
$ ditto --rsrc --arch i386 /Applications/Firefox.app /Applications/Firefox-i386.app
$ file /Applications/Firefox-i386.app/Contents/MacOS/firefox-bin /Applications/Firefox-i386.app/Contents/MacOS/firefox-bin: Mach-O executable i386
Jeżeli aplikacja działa bez problemów, można zastąpić starą wersję.
Przed (Firefox v.3.5.3):
$ du -hs /Applications/Firefox.app 54M /Applications/Orig/Firefox.app
Po:
$ du -hs /Applications/Firefox.app 34M /Applications/Firefox-i386.app
Na przykład po to, żeby zagwarantować, że działa tylko jedna instancja danego skryptu (uruchamiany przez cron-a, udev-a itp.).
Najprościej użyć do tego UNIX-owego systemu plików, na przykład tak:
if mkdir /var/run/skrypt.lock; then echo "Udało się, mamy blokadę" #Polecenia do wykonania. rmdir /var/run/skrypt.lock else echo "Juź raz uruchomione." exit 1 fi
Należy wykonać następujące kroki:
dd if=/dev/zero of=z rm z
VBoxManage modifyhd XP.vdi --compact
VBoxManage clonehd XP.vdi NewXP.vmdk --format VMDK
Nazwa obrazu (ścieżka), na którym wykonujemy operacje, musi być taka, sama, jak zarejestrowana w pliku konfiguracyjnym VirtualBox.xml
(~/.VirtualBox/VirtualBox.xml
).