macOS
Resources
purge
https://github.com/emred/osx-hack/blob/master/hack.sh
https://gist.github.com/brandonb927/3195465#file-osx-for-hackers-sh
https://archive.is/20150913113549/http://osxnotes.net/
https://github.com/herrbischoff/awesome-osx-command-line
Self-hosting Apple Software Updates https://github.com/wdas/reposado
Time Machine
Informations
(Using AFP only) These presumably allow the disk image engine to force disk image journal data to write out all the way to the disk. Without such features, a network interruption can result in a corrupted filesystem on the disk image despite journaling. Remember, journaling relies on the journal being written all the way to disk before the changes take place. If you can't guarantee that (e.g., because of network/NAS buffering) then the journal is useless. Time Machine appears to rely heavily on disk journaling to deal with network drop-outs, interrupted backups, and the like. Take this away and your data is at risk.
(association between backupbundle and the machine via UUID) Snow Leopard Time Machine Tweaks | Missives
sudo log stream --predicate 'subsystem=="com.apple.TimeMachine"' --info
(to exit: enterexit
+ return)automount remote disk at
/Volumes/.timemachine/{remote-machine-name}
TM process name:
com.apple.backupd
.Open
system.log
with Console.app, search forbackupd
ignore disk to be a TM target:
touch ".com.apple.timemachine.donotpresent"
in the root of the disk.com.apple.timemachine.supported
if the folder must be backup by Time Machinecurrent files used by Time Machine
sudo fs_usage -w -f filesys backupd
files ignored by TM with extended attribute
sudo mdfind "com_apple_backup_excludeItem = 'com.apple.backupd'"
Consolation, T2M2, Ulbow and log utilities – The Eclectic Light Company - T2M2 (TheTimeMachineMechanic) summarise TM logs, Mints
Time Machine backup reliability:
Similar tools
Time Machine for every Unix out there - IMHO
.snapshots/daily.0/
#!/bin/sh date=`date "+%Y-%m-%dT%H:%M:%S"` HOME=/home/user/ rsync -aP \ --link-dest=$HOME/Backups/current\ $HOME $HOME/Backups/back-$date.incomplete mv $HOME/Backups/back-$date.incomplete $HOME/Backups/back-$date ln -sf back-$date $HOME/Backups/current
#!/bin/sh date=`date "+%Y-%m-%dT%H_%M_%S"` HOME=/home/user/ rsync -azP \ --delete \ --delete-excluded \ --exclude-from=$HOME/.rsync/exclude \ --link-dest=../current \ $HOME user@backupserver:Backups/incomplete_back-$date \ && ssh user@backupserver \ "mv Backups/incomplete_back-$date Backups/back-$date \ && ln -sf back-$date Backups/current"
See also Easy Automated Snapshot-Style Backups with Rsync
How to install & compile rsync on Mac OSX - Install rsync 3.x on macOS without macport or brew
In Win 8+ use File History. It use Shadow Copy Service and backupd to VHD format. See also Backup and Restore and File History
Fake Time Machine - "Fake Time Machine, a way to duplicate the functionality of Apple's Time Machine using rsync, which also might make it cross-platform, but also lets you run it to any remote server "
samdoran/rsync-time-machine: Backup mimicking Time Machine from Mac OS X using rsync (see also https://github.com/samdoran/rsync-time-machine/commit/3610f7c73c2b1f8617c7462d880e12e73611d6b4#commitcomment-13078199 and https://github.com/minolasoft/rsync-time-machine)
GUI for rsync
arRsync (for the source code, see
arrsync-X.X.X.tar.gz
andarrsync-X.X.X.tar.bz2
)https://github.com/mileswu/arrsync
Include files and folders
Included by default:
From $IBACKUP_APP/Contents/Resources/System Settings/
iBackup
Address Book (Cards, Groups, Plug-Ins)
~/Library/Address Book Plug-Ins ~/Library/Application Support/AddressBook ~/Library/Preferences/AddressBookMe.plist ~/Library/Preferences/com.apple.AddressBook.plist
Dashboard
~/Library/Preferences/com.apple.dashboard.client.plist ~/Library/Preferences/com.apple.dashboard.plist ~/Library/Widgets
Desktop Pictures
~/Library/Desktop Pictures
Fonts
~/Library/Fonts
Keychains
~/Library/Keychains ~/Library/Preferences/com.apple.keychainaccess.plist
Mail (Accounts, Mailboxes, Messages)
~/Library/Mail ~/Library/Preferences/com.apple.mail.plist ~/Library/Preferences/com.apple.mail.searchhistory ~/Library/Mail Downloads
Printers
~/Library/Printers ~/Library/Preferences/com.apple.print.custompresets.plist ~/Library/Preferences/com.apple.print.PrintCenter.plist
Safari (Bookmarks, History, Preferences)
~/Library/Safari ~/Library/Preferences/com.apple.Safari.plist ~/Library/Cookies
Screen Savers
~/Library/Screen Savers
System Preferences (Bluetooth, Dock, Services ...)
~/Library/Application Support/Apple ~/Library/Logs ~/Library/PreferencePanes ~/Library/Preferences/com.apple.ActivityMonitor.plist ~/Library/Preferences/com.apple.airport.adminutility.plist ~/Library/Preferences/com.apple.AppleShareClient ~/Library/Preferences/com.apple.Aperture.plist ~/Library/Preferences/com.apple.BezelServices.plist ~/Library/Preferences/com.apple.Bluetooth.plist ~/Library/Preferences/com.apple.BluetoothFileExchange.plist ~/Library/Preferences/com.apple.BluetoothFirmwareUpdater.plist ~/Library/Preferences/com.apple.calculator.plist ~/Library/Preferences/com.apple.Console.plist ~/Library/Preferences/com.apple.desktop.plist ~/Library/Preferences/com.apple.DiskUtility.plist ~/Library/Preferences/com.apple.dock.plist ~/Library/Preferences/com.apple.DotMacSync.plist ~/Library/Preferences/com.apple.driver.AppleHIDMouse.plist ~/Library/Preferences/com.apple.finder.plist ~/Library/Preferences/com.apple.FolderActions.plist ~/Library/Preferences/com.apple.FontBook.plist ~/Library/Preferences/com.apple.frontrow.plist ~/Library/Preferences/com.apple.help.plist ~/Library/Preferences/com.apple.helpviewer.plist ~/Library/Preferences/com.apple.HIToolbox.plist ~/Library/Preferences/com.apple.InterfaceBuilder.plist ~/Library/Preferences/com.apple.InterfaceBuilder3 ~/Library/Preferences/com.apple.internetconfig.plist ~/Library/Preferences/com.apple.internetconfigpriv.plist ~/Library/Preferences/com.apple.LaunchServices.plist ~/Library/Preferences/com.apple.loginwindow.plist ~/Library/Preferences/com.apple.MenuBarClock.plist ~/Library/Preferences/com.apple.menuextra.battery.plist ~/Library/Preferences/com.apple.menuextra.textinput.plist ~/Library/Preferences/com.apple.PhotoBooth.plist ~/Library/Preferences/com.apple.NetworkUtility.plist ~/Library/Preferences/com.apple.preference.desktopscreeneffect ~/Library/Preferences/com.apple.Preview.bookmarks.plist ~/Library/Preferences/com.apple.Preview.plist ~/Library/Preferences/com.apple.PropertyListEditor.plist ~/Library/Preferences/com.apple.recentitems.plist ~/Library/Preferences/com.apple.scheduler.plist ~/Library/Preferences/com.apple.ScriptEditor2.plist ~/Library/Preferences/com.apple.Sherlock.plist ~/Library/Preferences/com.apple.sidebarlists.plist ~/Library/Preferences/com.apple.spotlight.plist ~/Library/Preferences/com.apple.symbolichotkeys.plist ~/Library/Preferences/com.apple.systempreferences.plist ~/Library/Preferences/com.apple.systemuiserver.plist ~/Library/Preferences/com.apple.Terminal.plist ~/Library/Preferences/com.apple.TextEdit.plist ~/Library/Preferences/com.apple.universalaccess.plist ~/Library/Preferences/com.apple.x11.plist ~/Library/Preferences/com.apple.Xcode.plist ~/Library/Preferences/loginwindow.plist ~/Library/Preferences/Sherlock ~/Library/Recent Servers ~/Library/Services ~/Library/Scripts ~/Library/Spotlight /Library/Preferences/com.apple.sharing.firewall.plist
iCal (Alarms, Events, To Do, Calendars)
~/Library/Calendars ~/Library/Preferences/com.apple.iCal.alarmsCache.plist ~/Library/Preferences/com.apple.iCal.AlarmScheduler.plist ~/Library/Preferences/com.apple.iCal.plist ~/Library/Preferences/com.apple.iCal.sources.plist ~/Library/Application Support/iCal
iChat (Accounts, Preferences)
~/Library/Preferences/com.apple.iChat.AIM.plist ~/Library/Preferences/com.apple.iChat.Jabber.plist ~/Library/Preferences/com.apple.iChat.plist ~/Library/Preferences/com.apple.iChat.SubNet.plist ~/Library/Preferences/com.apple.iChatAgent.plist
iMovie (Preferences)
~/Library/iMovie ~/Library/Preferences/com.apple.iMovie7.plist
iPhone
~/Library/Application Support/MobileSync/Backup
iPhoto
~/Library/Preferences/com.apple.iPhoto.plist
iPod
~/Library/Preferences/com.apple.iPod.plist
iTunes
~/Library/iTunes ~/Library/Preferences/com.apple.iTunes.eq.plist ~/Library/Preferences/com.apple.iTunes.plist
Exclude drives, folders and files
By default some folder/files are excluded. But some are not to allow a full restoration of a viable system (ex: /private/var/log/
and its folders are kept but not their files).
How to:
Fixed path exclusions System Preferences > Time Machine > Options, similar to
sudo tmutil addexclusion -p <drive, dir or file>
(but it's not the same). See also/Library/Preferences/com.apple.TimeMachine.plist
and/System/Library/CoreServices/backupd.bundle/Contents/Resources/StdExclusions.plist
Sticky exclusions
tmutil addexclusion <drive, dir or file>
same asxattr -w com.apple.metadata:com_apple_backup_excludeItem com.apple.backupd <filename>
.This not work forfiles inside packages(Spotlight don't index files in packages)find /path/to/projects -type d -path '*node_modules/*' -prune -o -type d -name 'node_modules' -exec xattr -w com.apple.metadata:com_apple_backup_excludeItem com.apple.backupd '{}' \;
files ignored by Spotlight still backup by Time Machine
Find sticky excluded files/folders sudo mdfind "com_apple_backup_excludeItem = 'com.apple.backupd'"
See also
Inspect bytecode of CCleanerLib, contains debug symbols
General
~/Download
/Applications/Install OS X Yosemite.app
Folder of Dropbox, Box, Google Drive, iCloud (
~/Library/Mobile Documents/
) etc.
System
(not adviced)
/private/var/folders/%random%/%random%/0/com.apple.LaunchServices-134$(id -u).csstore
Sometime this file is updated too often (< 1h) (after each Time Machine backup?) Maybe a rebuild is necessary:find /System/Library/Frameworks -type f -name "lsregister" -exec {} -kill -seed -r \;
orfind /System/Library/Frameworks -type f -name "lsregister" -exec {} -kill -r -domain local -domain system -domain user \;
Launch Services Database file is per user file 134 on OSX 10.11, an other number on other OSX version) contains software file type/protocol association and maybe Login Items too See com.apple.LaunchServices-014501.csstore keeps r... | Official Apple Support Communities(can break restoration of the system, contains small files)
/private/var/db/BootCaches/
and/private/var/db/systemstats
~/.bash_sessions
By exploring Time Machine backups delete backup of content of /private/var/folders/
and files /private/var/log/
(but keep folders tree intact)
Steam
~/Library/Application Support/Steam/config/htmlcache
~/Library/Application Support/Steam/appcache
Virtual Machines and simulators
VMware, Parallels, VirtualBox, etc.
Virtual Machines.localized
VMware Fusion/Library/Developer/CoreSimulator/Profiles/Runtimes
iOS simulator/Library/Android/sdk/system-images
Android SDK (depends installed location)
If possible, enable option to split vitual machine hard disk into small chunks. (VMWare Player: New Virtual Machine Wizard > Specify Disk Capacity > Split virtual disk into multiple files)
or use sparse bundle to store VMs disks
Adobe Creative Suite
~/Library/Preferences/Adobe/After Effects/11.0/Adobe After Effects Disk Cache - XXXXX.noindex
(should be already ignored by Spotlight, but seem not work)Photoshop scratch disk's temp files (where ?)
Lightroom
~/Pictures/Lightroom/Lightroom 5 Catalog Previews.lrdata
~/Pictures/Lightroom/Lightroom 5 Catalog Smart Previews.lrdata
Xcode
/Applications/Xcode.app
~/Library/Developer/Shared/Documentation/DocSets
~/Library/Developer/Xcode/DerivedData
Google Chrome (see also Canary)
~/Library/Application Support/Google/Chrome/Default/Application Cache
and https://code.google.com/p/chromium/issues/detail?id=25959~/Library/Application Support/Google/Chrome/Default/GPUCache
~/Library/Application Support/Google/Chrome/ShaderCache
~/Library/Application Support/Google/Chrome/Default/Extension Rules/XXXXXX.log
~/Library/Application Support/Google/Chrome/Default/Extension Rules/LOG
~/Library/Application Support/Google/Chrome/Default/Extension Rules/LOG.old
~/Library/Application Support/Google/Chrome/Default/Extension State/XXXXXX.log
~/Library/Application Support/Google/Chrome/Default/Extension State/LOG
~/Library/Application Support/Google/Chrome/Default/Extension State/LOG.old
~/Library/Application Support/Google/Chrome/Default/Session Storage/XXXXXX.log
~/Library/Application Support/Google/Chrome/Default/Session Storage/LOG
~/Library/Application Support/Google/Chrome/Default/Session Storage/LOG.old
Spotify
~/Library/Application Support/Spotify/PersistentCache
(by default) or the path of Spotify Preferences > Advanced > Memory Cache
jDownloader
/Applications/jDownloader.app/Contents/java/app/tmp
(use fixed path exclusion)/Applications/jDownloader.app/Contents/java/app/logs
(use fixed path exclusion)
Firefox
In ~/Library/Application Support/Firefox/Profiles/%ff_profile_id%/
files likes places.sqlite
, cookies.sqlite
, content-prefs.sqlite
and webappsstore.sqlite
can be quite big (N * 10MB) and often updated. Clean history and clean cookies or change places.history.expiration.max_pages
and or places.history.expiration.interval_seconds
. Could be safely deleted (a new file will be created when it is needed). Clean up sqlite DB (reduce size): echo "VACUUM;" | sqlite3 places.sqlite
. See https://wiki.mozilla.org/Firefox/Projects/Places_Vacuum
~/Library/Application Support/Firefox/Profiles/%ff_profile_id%/weave/logs
could be excluded too
Thunderbird
See Firefox for places.sqlite
, cookies.sqlite
, content-prefs.sqlite
and webappsstore.sqlite
use maildir format in Thunderbird (store each email as individual file instead of a big file containing all emails)
~/Library/Thunderbird/Profiles/%tb_profile_id%/global-messages-db.sqlite
~/Library/Thunderbird/Profiles/%tb_profile_id%/global-messages-db.sqlite-journal
~/Library/Thunderbird/Profiles/%tb_profile_id%/panacea.dat
(Mail folder cache. It can be safely deleted)
MySQL
Use "InnoDB File-Per-Table Tablespaces":
In my.cnf
[mysqld]
innodb_file_per_table=1
sparsebundle
Explore sparsebundle
Mount *.sparsebundle
/ *.backupbundle
first: hdiutil attach My.sparsebundle
tmutil
(withcompare
,uniquesize
orcalculatedrift
):tmutil compare /Volumes/MyBackupVolume/Backups.backupdb/$COMPUTE_NAME%/2016-02-18-090818 /Volumes/MyBackupVolume/Backups.backupdb/$COMPUTE_NAME/2016-02-18-102050
.+
added file,-
removed file,!
changed filediskutil umount force /Volumes/com.apple.TimeMachine.TM_Prime-DA16D91F-3320-4834-91ED-2902CE57E46D
BackupLoupe - Explore version (compare changes, size)
TimeTracker by CharlesSoft - Not work well with network drives
find /path/to/your/latest/backup -type f -links 1 -print
(Time Machine use hardlinks for unmodified files). But not realy usefull since some folder use hardlink too (and you can't exlude file in hardlinked folders)
Create or resize sparsebundle
Aka specify a size
Sparsebundle are use on network drives.
Create a sparsebundle of 320GiB or use 320000000000b
(= 320GB)
hdiutil create -size 320g -type SPARSEBUNDLE -nospotlight -fs "HFS+J" -volname "MyMacBook Time Machine Backup" MyMacBook.sparsebundle
#
# Mount image
open MyMacBook.sparsebundle
# diskutil list
# sudo diskutil enableOwnership /dev/diskXsX
# Set Time Machine a destination volume
sudo tmutil setdestination "/Volumes/MyMacBook Time Machine Backup"
To create dynamic sparsebundle, create it without partition scheme.
Sparsebundle will increase by it's content
You can shrink sparseimage directly (should not be used). Could require a compact
before
hdiutil resize -size 320g -shrinkonly /Volumes/Network_Drive_Name/path/to/timemachine.sparseimage
# -limits will just displays the minimum, current, and maximum sizes (in 512-byte sectors)
reclaim unused bands (free space)
sudo hdiutil compact -verbose image.sparsebundle
(could be executed multiple times) orhdiutil resize -verbose -sectors min image.sparseimage
.To fix
hdiutil: compact failed - internal error
see:hdiutil returns error trying to resize sparsebu... | Apple Support Communities If the image is large, try to resize in stages (2TB -> 1,5TB -> 500GB -> 10GB) or will there an error:
hdiutil: resize failed - Cannot allocate memory
http://java.dzone.com/articles/shrink-your-time-machine
http://www.readynas.com/?p=253
#!/bin/bash
# A bash script to create a time machine disk image suitable for
# backups with OS X 10.6 (Snow Leopard)
# This script probably only works for me, so try it at your own peril!
# Use, distribute, and modify as you see fit but leave this header intact.
# (R) sunkid - September 5, 2009
usage ()
{
echo ${errmsg}"\n"
echo "makeImage.sh"
echo " usage: makeImage.sh size [directory]"
echo " Create a disk image with a max storage size of <size> and copy it"
echo " to your backup volume (if specified)"
}
# test if we have two arguments on the command line
if [ $# -lt 1 ]
then
usage
exit
fi
# see if there are two arguments and we can write to the directory
if [ $# == 2 ]
then
if [ ! -d $2 ]
then
errmsg=${2}": No such directory"
usage
exit
fi
if [ ! -w $2 ]
then
errmsg="Cannot write to "${2}
usage
exit
fi
fi
SIZE=$1
DIR=$2
NAME=`scutil --get ComputerName`;
UUID=`system_profiler SPHardwareDataType | grep 'Hardware UUID' | awk '{print $3}'`
# get busy
echo -n "Generating disk image ${NAME}.sparsebundle with size ${SIZE}GB ... "
hdiutil create -size ${SIZE}G -fs HFS+J -type SPARSEBUNDLE \
-volname 'Time Machine Backups' "${NAME}.sparsebundle" >> /dev/null 2>&1
echo "done!"
echo -n "Generating property list file with uuid $UUID ... "
PLIST=$(cat <<EOFPLIST
<?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>com.apple.backupd.HostUUID</key>
<string>$UUID</string>
</dict>
</plist>
EOFPLIST
)
echo $PLIST > "${NAME}.sparsebundle"/com.apple.TimeMachine.MachineID.plist
echo "done!"
if [ $# == 2 ]
then
echo -n "Copying ${NAME}.sparsebundle to $DIR ... "
cp -pfr "${NAME}.sparsebundle" $DIR/"${NAME}.sparsebundle"
echo "done"
fi
echo "Finished! Happy backups!"
Change sparsebundle band size
If "Time Machine must recreate a new copy" occure too often, or if after few month of TM use, back is slow, or if the host of the sparsebundle don't support well lot of file in one dir (ex: ext4 <40000)
By default Time Machine use band in sparsebundle with size of 8MiB. It's can be problematic when the size of the backup is > 300GB. 16MiB (32768 blocks) could be a good compromise.
hdiutil convert -format UDSB -imagekey sparse-band-size=32768 -o new.sparsebundle old.sparsebundle
# Will take lot of time ~ hours
cp old.sparsebundle/com.apple.TimeMachine.MachineID* new.sparsebundle/
Note: Increase band size only for unencrypted backups. Large bands could be problematic with encrypted backups (take lot of time): download band, decrypt, update, encrypt then finally upload
The sparse-band-size parameter is the number of 512-byte sectors (chunks), not the number of bytes. Since 512 is 1/2 1,024, then 262,144 B / 2 = 128 KiB.
Where 262144 equals 128MiB bands/byte sectors (128 MiBytes == 128*1024*1024 bytes == 128*1024*1024/512 blocks = 262144 blocks
, 262144 / 2 / 1024 = 128MiB
)
Read it (for mounted sparsebundle):
hdiutil info -verbose | grep band-size
# Or accessible in Info.plist in the .sparsebundle
https://gist.github.com/Agiley/b3e9af8a641df1dc73c0
Backup into a sparsebundle file
This format is often created to backup on a shared network volume (that is not HFS+)
Mount it (db click in Finder) and
sudo tmutil setdestination /Volumes/name-of-the-mounted-sparsebundle
SparseBundle sould be at the root of the volume. A workaround is to create a symbolic link ln -s /volume1/backups/subfolder/subfolder/BackupImage.sparsebundle BackupImage.sparsebundle
, but only supported on OSX (Unix folder symlink are forbidden)
Can be required
sudo diskutil enableOwnership /dev/disk2s2
http://pondini.org/TM/18.html#id18
Control when to backup
More control, by can impact performances (battery, powernap, integrity, etc.)
Change:
(before 10.8)
sudo defaults write /System/Library/LaunchDaemons/com.apple.backupd-auto StartInterval -int 7200
(7200 in seconds eq. 2 hours)(10.8+) update
BackupInterval
in/System/Library/LaunchDaemons/com.apple.backupd-auto.plist
Or use an app:
Time Machine Destination Manager: https://github.com/dustinrue/Tedium and Tedium for Mac | MacUpdate
TimeMachineScheduler - set the backup interval of Time Machine or TimeMachineEditor or update
sudo defaults write /System/Library/LaunchDaemons/com.apple.backupd-auto StartInterval -int 3600
(for 1 hours, 7200 = 2 hours, etc.)Use cron task By controling when enable/disable/start it:
sudo tmutil enable|disable
ordefaults write /Library/Preferences/com.apple.TimeMachine AutoBackup -boolean YES|NO
ortmutil startbackup --auto --block
Restore from a Time Machine backup
You can't restore this backup because it was created by a different model of Mac
Could restore from a Time Machine Backup with Migration Assistant.
Restore from a Time Machine backup should restore all files, but few things are not:
System Preferences > Keyboard > Keyboard Shortcuts (key mapping, "open terminal here", etc.)
Few softwares require to re-enter licencies credentials (which depends on hardware finger print?)
Some login credentials
System Preferences > Security & Privacy
scanners and printers drivers and configurations
file type/protocol association
Character map recent and favs
Also don't erase immediatly all TM snapshots, some are not complete due to concurency with software that also write on disk in same time (or use large files)
Change harddrive
sudo tmutil associatedisk -a mount_point snapshot_volume
sudo tmutil inheritbackup {machine_directory | sparsebundle}
Local snapshots
sudo tmutil enablelocal
sudo tmutil disablelocal
tmutil snapshot
In folder /.MobileBackups
http://pondini.org/TM/30.html
http://apple.stackexchange.com/questions/80183/any-way-to-change-the-location-of-time-machine-local-backups-mobilebackups-t
http://support.apple.com/kb/HT4878
Remove specific file from Time Machine backup
cd "/Volumes/Time Machine Backups/Backups.backupdb/<machinename>"
ls -li *"/<drivename>/<path>/"*
,sudo bypass rm -rf *"/<drivename>/<path>/"*
ls -li *"/<drivename>/<file>"
,sudo bypass rm -f *"/<drivename>/<path>/<file>"
Reduce size
tmutil listbackups
sudo tmutil delete '/Volumes/Time Machine Backups/Backups.backupdb/.../2018-'{01,02,03,04}*
sudo hdiutil compact '/Volumes/....sparsebundle'
Troubleshooting
Catalina have issue with SMB (often disconnected and sometimes can't reconnect). Force to use AFP mounted disk instead. See Time Machine in Catalina 10.15.3 has serious bugs – The Eclectic Light Company and Catalina - no longer access NAS via Finder? Time Machine not working. | Synology Community
Stuck on "Preparing backup..."
It's often related to spotlight indexing (can't backup when spotlight is indexing)
The backup is already in use
Aka "Failed to unmount disk mounted at [...]" on the server
On the server, disconnect the user or restart the AFP service
Time Machine backup is very slow
Disable low priority process throttle: sudo sysctl -w debug.lowpri_throttle_enabled=0
. Check before if it's happend with sudo fs_usage -w -f filesys backupd
See also if it use SMB Shares, it could be slow itself (due to protocol version use or signing).
Other Time Machines errors
https://github.com/jamespayne/time-machine-sparse-bundle-fix and https://github.com/Parkcomm/time-machine-sparce-bundle-fix
https://gist.github.com/dipdi/fedb28652f8e7de2b11b
Time Machine Volume on Network
Via AFP (depreciated) or SMB protocols
Sparsebundle disk images cannot, however, be saved on SMB volumes and a handful of other filesystems due to their lack of support for "F_FULLFSYNC", which is a filesystem command that instructs the disk to write data from cache to media.
If you are using Netatalk version 2.0.5 or better, this has the special new features added to avoid Time Machine disk corruption. If you have a version of Netatalk earlier than 2.0.5 (e.g. Ubuntu 9.10 currently has 2.0.4) [..]
If you have Netatalk 2.0.5 installed, you should add the option “tm” to any share you use for Time Machine, in the AppleVolumes.default config file.
— Using Ubuntu for Time Machine in Snow Leopard – Delivering Quality
sudo tmutil setdestination -p smb://user@Server._smb._tcp.local./Mount
or sudo tmutil setdestination -p afp://user@Server.local/Mount
10.11
tmutil version 4.0.0 (built Oct 3 2015)
appears to not support SMB but only AFP. 10,13tmutil version 4.0.0 (built Jul 15 2017)
doesTime Machine use an SMB extension
F_FullfSync
available in SMB3 (SAMBA 4.1 implement it) to ensure that data is actually written to disk. See MacOS Sierra support Time Machine via SMB- but how? : appledefaults write com.apple.systempreferences TMShowUnsupportedNetworkVolumes 1 && killall Finder
(apparently it's ignored with OSX 10.11, SIP?)Why can't I use a sparsebundle disk image on a filesystem that does not support the F_FULLFSYNC file control? Backing up to a disk image | Carbon Copy Cloner | Bombich Software
vfs_fruit - "The vfs_fruit module provides enhanced compatibility with Apple SMB clients and interoperability with a Netatalk 3 AFP fileserver."
macOS Monterey have issues with TimeMachine to mount volume over SMB. Try use AFP instead.
add
.local
toafp://machinename
could be required (for local network)in Finder connect first to the server and choose the right share (where sparsebundle will be), go to Time Machine settings and select the share. Unmount the share.
iSCSI initiator
But how to restore, since iSCSI is not supported natively?
Quota
Limit per client:
cat > .com.apple.TimeMachine.quota.plist <<EOF
<?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>GlobalQuota</key>
<integer>120000000000</integer><!-- size in bytes -->
</dict>
</plist>
EOF
chmod 644 .com.apple.TimeMachine.quota.plist
vfs_fruit - "fruit:time machine max size = SIZE [K|M|G|T|P]" "But I would discourage this, as it recalculates the share free space on every df call by the client" - Implement Time Machine quota setting · Issue #910 · openmediavault/openmediavault · GitHub
Large modified files
Since TM it's a file level not block level backup, these files can be corrupted (not include all updates), because rewritten (partially or not) when backup, all changes are not backup. That means this files are backup corrupted.
Ex: Virtual Machine disk
Ex: MySql DB files. Solution: cron mysqldump hourly (or less if large DB) + exlude DB files
OS
OpenCore Legacy Patcher - "breathe new life into Macs no longer supported by Apple, allowing for the installation and usage of macOS Big Sur and newer on machines as old as 2007"
Install macOS
Use Option-Command (⌘)-R at startup to reinstall lastest version of the OS: How to reinstall macOS - Apple Support For clean install, erase the drive with Disk Utility (macOS Recovery) first
Create ISO installer:
hdiutil create -o /tmp/Catalina -size 8050m -volname Catalina -layout SPUD -fs HFS+J
hdiutil attach /tmp/Catalina.dmg -noverify -mountpoint /Volumes/Catalina
sudo "/Applications/Install macOS Catalina.app/Contents/Resources/createinstallmedia" --volume /Volumes/Catalina --nointeraction
hdiutil detach "/Volumes/Install macOS Catalina"
hdiutil convert /tmp/Catalina.dmg -format UDTO -o ~/Desktop/Catalina.cdr
mv ~/Desktop/Catalina.cdr ~/Desktop/Catalina.iso
Install on Virtual Machine
cd "C:\Program Files\Oracle\VirtualBox\"
#
# Virtualbox 5.x 00000001 000106e5 00100800 0098e3fd bfebfbff
# Virtualbox 4.x 00000001 000306a9 04100800 7fbae3ff bfebfbff
VBoxManage.exe modifyvm "Virtual Machine Name" --cpuidset 00000001 000106e5 00100800 0098e3fd bfebfbff
# use "MacBookPro11,3"
VBoxManage setextradata "Virtual Machine Name" "VBoxInternal/Devices/efi/0/Config/DmiSystemProduct" "iMac11,3"
VBoxManage setextradata "Virtual Machine Name" "VBoxInternal/Devices/efi/0/Config/DmiSystemVersion" "1.0"
# "Mac-2BD1B31983FE1663"
VBoxManage setextradata "Virtual Machine Name" "VBoxInternal/Devices/efi/0/Config/DmiBoardProduct" "Iloveapple"
VBoxManage setextradata "Virtual Machine Name" "VBoxInternal/Devices/smc/0/Config/DeviceKey" "ourhardworkbythesewordsguardedpleasedontsteal(c)AppleComputerInc"
VBoxManage setextradata "Virtual Machine Name" "VBoxInternal/Devices/smc/0/Config/GetKeyFromRealSMC" 1
GitHub - paolo-projects/auto-unlocker: Unlocker for VMWare macOS - Allow macOS to be selected during VM creation + other fixes
Bootable USB
hdiutil convert -format UDRW -o /path/to/target.img /path/to/ubuntu.iso
diskutil list
# (determine the device node assigned to your flash media (e.g. /dev/disk2))
diskutil unmountDisk /dev/diskN
sudo dd if=/path/to/downloaded.img.dmg of=/dev/rdiskN bs=1M
diskutil eject /dev/diskN
macOS on Bootable USB
On an HFS+ (Journaled) formatted USB drive
sudo /Applications/Install\ OS\ X\ Yosemite.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ OS\ X\ Yosemite.app --nointeraction
sudo /Applications/Install\ macOS\ Sierra.app/Contents/Resources/createinstallmedia --volume /Volumes/Untitled --applicationpath /Applications/Install\ macOS\ Sierra.app --nointeraction
http://arstechnica.com/apple/2014/10/how-to-make-your-own-bootable-os-x-10-10-yosemite-usb-install-drive/#image-9
Bootloader
Migration Assistant
Migration Assistant doesn’t overwrite new versions of applications with older ones [...] won’t overwrite an account with the same name by default. Migration Assistant prompts you about whether you want to rename the account from the old computer or overwrite the account on the new computer with the files from the old Mac [...] Files stored outside user accounts won’t be overwritten, but they could be merged, so a folder might contain a collection of old and new files.
Applications (
/Applications
and/Library/Application
)User accounts and groups (reset UserShell and NFSHomeDirectory for created users) For macports, see:
#!/bin/sh # Fix MacPorts user config # Sources here: https://trac.macports.org/browser/trunk/base/portmgr/dmg/postflight.in?rev=154110#L159 # Variable provided by postinstall script, extracted from MacPort installer package (*.pkg) PREFIX="/opt/local" DSCL=/usr/bin/dscl RUNUSR=macports # List all users: # ${DSCL} . list /Users | grep -E -v ^_ # Read user infos # ${DSCL} . read "/Users/${RUNUSR}" ${DSCL} -q . -delete "/Users/${RUNUSR}" AuthenticationAuthority ${DSCL} -q . -delete "/Users/${RUNUSR}" PasswordPolicyOptions ${DSCL} -q . -delete "/Users/${RUNUSR}" dsAttrTypeNative:KerberosKeys ${DSCL} -q . -delete "/Users/${RUNUSR}" dsAttrTypeNative:ShadowHashData ${DSCL} -q . -create "/Users/${RUNUSR}" RealName MacPorts ${DSCL} -q . -create "/Users/${RUNUSR}" Password "*" ${DSCL} -q . -create "/Users/${RUNUSR}" PrimaryGroupID "$(${DSCL} -q . -read "/Groups/${RUNUSR}" PrimaryGroupID | /usr/bin/awk '{print $2}')" ${DSCL} -q . -create "/Users/${RUNUSR}" NFSHomeDirectory "${PREFIX}/var/macports/home" ${DSCL} -q . -create "/Users/${RUNUSR}" UserShell /usr/bin/false
if FileVault is enabled after macports has been installed (check it with
sudo fdesetup list | grep macports
), it could be necessary to disallow the user to decrypt the disk. Else it's visible on FileVault login window (even if it's a non interactive user). To disallow it:sudo fdesetup remove -user macports
dscacheutil -q user -a name macports
For Wireshark, see:
create user group
access_bpf
https://code.wireshark.org/review/gitweb?p=wireshark.git;a=blob;f=packaging/macosx/Scripts/chmodbpf-postinstall.sh;hb=HEAD - postinstall script of Wireshark installer package
Other files and folders, which covers the Shared folder in the Users folder and folders you created at the top level of a drive
Computer & Network Settings
Setup Assistant (from clean install) or via /Applications/Utilities/Migration Assistant.app
(could be problematic when migrate already exist accounts).
but doesn't migrate:
/etc/hosts
Time Machine configuration (destination and exclude list)
hostname (Settings > Share)
ByHost preferences
/Library/Logs/SystemMigration.log
or/private/var/log/system.log
(sender MigrateTool)
Cleanup from previous upgrades
Use the Recovery System (restart and hold CMD+R
)
Generate a list of files:
LC_ALL=en_US.UTF-8 sudo find "/Volumes/Macintosh HD" -exec ls -Ald {} \; > tree.txt
Compare 2 version (before and after clean upgrade):
comm -13 <(cat tree-pristine.txt | grep -o '/Volumes/.*' - | sort) <(cat tree-dirty.txt | grep -o '/Volumes/.*' - | sort)
After OS update some config files are replaced, where then previous one are kept and renamed as *~orig or *~previous
Note dirname
command is not available in Recovery System
Before remove, backup unwanted files:
mkdir -p "/Volumes/XX" && mv "/Volumes/XX/YY" "/Volumes/XX/ZZ/Volumes/XX/YY"
Files can be removed in 10.13.6:
# Not sure
/Volumes/Macintosh HD/usr/share/current-os.sdk
/Volumes/Macintosh HD/usr/libexec/cups/backend/cups-pdf
find "/Volumes/Macintosh HD/" \( -name "*~orig" -o -name "*~previous" \) -exec rm -rf {} \;
/Volumes/Macintosh HD/usr/local/sbin/mount_fusefs_txantfs
/Volumes/Macintosh HD/usr/local/sbin/newfs_fusefs_txantfs
# For pre SIP with XQuartz and MacFUSE (or remains) installed:
/Volumes/Macintosh HD/usr/X11
/Volumes/Macintosh HD/usr/X11R6
/Volumes/Macintosh HD/usr/bin/X
/Volumes/Macintosh HD/usr/bin/Xephyr
/Volumes/Macintosh HD/usr/bin/Xfake
/Volumes/Macintosh HD/usr/bin/Xnest
/Volumes/Macintosh HD/usr/bin/Xorg
/Volumes/Macintosh HD/usr/bin/Xquartz
/Volumes/Macintosh HD/usr/bin/Xvfb
/Volumes/Macintosh HD/usr/bin/appres
/Volumes/Macintosh HD/usr/bin/atobm
/Volumes/Macintosh HD/usr/bin/bdftopcf
/Volumes/Macintosh HD/usr/bin/bdftruncate
/Volumes/Macintosh HD/usr/bin/bitmap
/Volumes/Macintosh HD/usr/bin/bmtoa
/Volumes/Macintosh HD/usr/bin/cups-calibrate
/Volumes/Macintosh HD/usr/bin/cvt
/Volumes/Macintosh HD/usr/bin/cxpm
/Volumes/Macintosh HD/usr/bin/editres
/Volumes/Macintosh HD/usr/bin/escputil
/Volumes/Macintosh HD/usr/bin/fc-cache
/Volumes/Macintosh HD/usr/bin/fc-cat
/Volumes/Macintosh HD/usr/bin/fc-list
/Volumes/Macintosh HD/usr/bin/fc-match
/Volumes/Macintosh HD/usr/bin/fc-pattern
/Volumes/Macintosh HD/usr/bin/fc-query
/Volumes/Macintosh HD/usr/bin/fc-scan
/Volumes/Macintosh HD/usr/bin/fc-validate
/Volumes/Macintosh HD/usr/bin/font_cache
/Volumes/Macintosh HD/usr/bin/fonttosfnt
/Volumes/Macintosh HD/usr/bin/freetype-config
/Volumes/Macintosh HD/usr/bin/fslsfonts
/Volumes/Macintosh HD/usr/bin/fstobdf
/Volumes/Macintosh HD/usr/bin/gccmakedep
/Volumes/Macintosh HD/usr/bin/glxgears
/Volumes/Macintosh HD/usr/bin/glxinfo
/Volumes/Macintosh HD/usr/bin/gtf
/Volumes/Macintosh HD/usr/bin/iceauth
/Volumes/Macintosh HD/usr/bin/ico
/Volumes/Macintosh HD/usr/bin/koi8rxterm
/Volumes/Macintosh HD/usr/bin/libpng-config
/Volumes/Macintosh HD/usr/bin/libpng16-config
/Volumes/Macintosh HD/usr/bin/listres
/Volumes/Macintosh HD/usr/bin/lndir
/Volumes/Macintosh HD/usr/bin/luit
/Volumes/Macintosh HD/usr/bin/makedepend
/Volumes/Macintosh HD/usr/bin/mkfontdir
/Volumes/Macintosh HD/usr/bin/mkfontscale
/Volumes/Macintosh HD/usr/bin/oclock
/Volumes/Macintosh HD/usr/bin/png-fix-itxt
/Volumes/Macintosh HD/usr/bin/pngfix
/Volumes/Macintosh HD/usr/bin/quartz-wm
/Volumes/Macintosh HD/usr/bin/resize
/Volumes/Macintosh HD/usr/bin/rvictl
/Volumes/Macintosh HD/usr/bin/sessreg
/Volumes/Macintosh HD/usr/bin/setxkbmap
/Volumes/Macintosh HD/usr/bin/showfont
/Volumes/Macintosh HD/usr/bin/showrgb
/Volumes/Macintosh HD/usr/bin/smproxy
/Volumes/Macintosh HD/usr/bin/startx
/Volumes/Macintosh HD/usr/bin/sxpm
/Volumes/Macintosh HD/usr/bin/twm
/Volumes/Macintosh HD/usr/bin/ucs2any
/Volumes/Macintosh HD/usr/bin/uxterm
/Volumes/Macintosh HD/usr/bin/viewres
/Volumes/Macintosh HD/usr/bin/x11perf
/Volumes/Macintosh HD/usr/bin/x11perfcomp
/Volumes/Macintosh HD/usr/bin/xauth
/Volumes/Macintosh HD/usr/bin/xbacklight
/Volumes/Macintosh HD/usr/bin/xcalc
/Volumes/Macintosh HD/usr/bin/xclipboard
/Volumes/Macintosh HD/usr/bin/xclock
/Volumes/Macintosh HD/usr/bin/xcmsdb
/Volumes/Macintosh HD/usr/bin/xcompmgr
/Volumes/Macintosh HD/usr/bin/xconsole
/Volumes/Macintosh HD/usr/bin/xcursorgen
/Volumes/Macintosh HD/usr/bin/xcutsel
/Volumes/Macintosh HD/usr/bin/xditview
/Volumes/Macintosh HD/usr/bin/xdm
/Volumes/Macintosh HD/usr/bin/xdmshell
/Volumes/Macintosh HD/usr/bin/xdpr
/Volumes/Macintosh HD/usr/bin/xdpyinfo
/Volumes/Macintosh HD/usr/bin/xedit
/Volumes/Macintosh HD/usr/bin/xev
/Volumes/Macintosh HD/usr/bin/xeyes
/Volumes/Macintosh HD/usr/bin/xfd
/Volumes/Macintosh HD/usr/bin/xfindproxy
/Volumes/Macintosh HD/usr/bin/xfontsel
/Volumes/Macintosh HD/usr/bin/xfs
/Volumes/Macintosh HD/usr/bin/xfsinfo
/Volumes/Macintosh HD/usr/bin/xgamma
/Volumes/Macintosh HD/usr/bin/xgc
/Volumes/Macintosh HD/usr/bin/xhost
/Volumes/Macintosh HD/usr/bin/xinit
/Volumes/Macintosh HD/usr/bin/xinput
/Volumes/Macintosh HD/usr/bin/xkbbell
/Volumes/Macintosh HD/usr/bin/xkbcomp
/Volumes/Macintosh HD/usr/bin/xkbevd
/Volumes/Macintosh HD/usr/bin/xkbprint
/Volumes/Macintosh HD/usr/bin/xkbvleds
/Volumes/Macintosh HD/usr/bin/xkbwatch
/Volumes/Macintosh HD/usr/bin/xkeystone
/Volumes/Macintosh HD/usr/bin/xkill
/Volumes/Macintosh HD/usr/bin/xload
/Volumes/Macintosh HD/usr/bin/xlogo
/Volumes/Macintosh HD/usr/bin/xlsatoms
/Volumes/Macintosh HD/usr/bin/xlsclients
/Volumes/Macintosh HD/usr/bin/xlsfonts
/Volumes/Macintosh HD/usr/bin/xmag
/Volumes/Macintosh HD/usr/bin/xman
/Volumes/Macintosh HD/usr/bin/xmessage
/Volumes/Macintosh HD/usr/bin/xmh
/Volumes/Macintosh HD/usr/bin/xmodmap
/Volumes/Macintosh HD/usr/bin/xmore
/Volumes/Macintosh HD/usr/bin/xpr
/Volumes/Macintosh HD/usr/bin/xprop
/Volumes/Macintosh HD/usr/bin/xrandr
/Volumes/Macintosh HD/usr/bin/xrdb
/Volumes/Macintosh HD/usr/bin/xrefresh
/Volumes/Macintosh HD/usr/bin/xscope
/Volumes/Macintosh HD/usr/bin/xset
/Volumes/Macintosh HD/usr/bin/xsetmode
/Volumes/Macintosh HD/usr/bin/xsetpointer
/Volumes/Macintosh HD/usr/bin/xsetroot
/Volumes/Macintosh HD/usr/bin/xsm
/Volumes/Macintosh HD/usr/bin/xstdcmap
/Volumes/Macintosh HD/usr/bin/xterm
/Volumes/Macintosh HD/usr/bin/xvinfo
/Volumes/Macintosh HD/usr/bin/xwd
/Volumes/Macintosh HD/usr/bin/xwininfo
/Volumes/Macintosh HD/usr/bin/xwud
/Volumes/Macintosh HD/usr/include
/Volumes/Macintosh HD/usr/lib/X11
/Volumes/Macintosh HD/usr/lib/bundle1.o
/Volumes/Macintosh HD/usr/lib/crt1.10.5.o
/Volumes/Macintosh HD/usr/lib/crt1.10.6.o
/Volumes/Macintosh HD/usr/lib/crt1.o
/Volumes/Macintosh HD/usr/lib/dri
/Volumes/Macintosh HD/usr/lib/dylib1.10.5.o
/Volumes/Macintosh HD/usr/lib/dylib1.o
/Volumes/Macintosh HD/usr/lib/flat_namespace
/Volumes/Macintosh HD/usr/lib/gcrt1.o
/Volumes/Macintosh HD/usr/lib/lazydylib1.o
/Volumes/Macintosh HD/usr/lib/libATCommandStudio.a
/Volumes/Macintosh HD/usr/lib/libAppleWM.7.dylib
/Volumes/Macintosh HD/usr/lib/libAppleWM.dylib
/Volumes/Macintosh HD/usr/lib/libFS.6.dylib
/Volumes/Macintosh HD/usr/lib/libFS.dylib
/Volumes/Macintosh HD/usr/lib/libGL.1.dylib
/Volumes/Macintosh HD/usr/lib/libGL.dylib
/Volumes/Macintosh HD/usr/lib/libGLESv1_CM.1.dylib
/Volumes/Macintosh HD/usr/lib/libGLESv1_CM.dylib
/Volumes/Macintosh HD/usr/lib/libGLESv2.2.dylib
/Volumes/Macintosh HD/usr/lib/libGLESv2.dylib
/Volumes/Macintosh HD/usr/lib/libGLU.1.dylib
/Volumes/Macintosh HD/usr/lib/libGLU.dylib
/Volumes/Macintosh HD/usr/lib/libICE.6.dylib
/Volumes/Macintosh HD/usr/lib/libICE.dylib
/Volumes/Macintosh HD/usr/lib/libOSMesa.8.dylib
/Volumes/Macintosh HD/usr/lib/libOSMesa.dylib
/Volumes/Macintosh HD/usr/lib/libQMIParser.a
/Volumes/Macintosh HD/usr/lib/libSM.6.dylib
/Volumes/Macintosh HD/usr/lib/libSM.dylib
/Volumes/Macintosh HD/usr/lib/libX11-xcb.1.dylib
/Volumes/Macintosh HD/usr/lib/libX11-xcb.dylib
/Volumes/Macintosh HD/usr/lib/libX11.6.dylib
/Volumes/Macintosh HD/usr/lib/libX11.dylib
/Volumes/Macintosh HD/usr/lib/libXRes.1.dylib
/Volumes/Macintosh HD/usr/lib/libXRes.dylib
/Volumes/Macintosh HD/usr/lib/libXTrap.6.dylib
/Volumes/Macintosh HD/usr/lib/libXTrap.dylib
/Volumes/Macintosh HD/usr/lib/libXau.6.dylib
/Volumes/Macintosh HD/usr/lib/libXau.dylib
/Volumes/Macintosh HD/usr/lib/libXaw.6.dylib
/Volumes/Macintosh HD/usr/lib/libXaw.7.dylib
/Volumes/Macintosh HD/usr/lib/libXaw.8.dylib
/Volumes/Macintosh HD/usr/lib/libXaw.dylib
/Volumes/Macintosh HD/usr/lib/libXaw3d.8.dylib
/Volumes/Macintosh HD/usr/lib/libXaw3d.dylib
/Volumes/Macintosh HD/usr/lib/libXaw6.6.dylib
/Volumes/Macintosh HD/usr/lib/libXaw6.dylib
/Volumes/Macintosh HD/usr/lib/libXaw7.7.dylib
/Volumes/Macintosh HD/usr/lib/libXaw7.dylib
/Volumes/Macintosh HD/usr/lib/libXaw8.8.dylib
/Volumes/Macintosh HD/usr/lib/libXaw8.dylib
/Volumes/Macintosh HD/usr/lib/libXcomposite.1.dylib
/Volumes/Macintosh HD/usr/lib/libXcomposite.dylib
/Volumes/Macintosh HD/usr/lib/libXcursor.1.dylib
/Volumes/Macintosh HD/usr/lib/libXcursor.dylib
/Volumes/Macintosh HD/usr/lib/libXdamage.1.dylib
/Volumes/Macintosh HD/usr/lib/libXdamage.dylib
/Volumes/Macintosh HD/usr/lib/libXdmcp.6.dylib
/Volumes/Macintosh HD/usr/lib/libXdmcp.dylib
/Volumes/Macintosh HD/usr/lib/libXevie.1.dylib
/Volumes/Macintosh HD/usr/lib/libXevie.dylib
/Volumes/Macintosh HD/usr/lib/libXext.6.dylib
/Volumes/Macintosh HD/usr/lib/libXext.dylib
/Volumes/Macintosh HD/usr/lib/libXfixes.3.dylib
/Volumes/Macintosh HD/usr/lib/libXfixes.dylib
/Volumes/Macintosh HD/usr/lib/libXfont.1.dylib
/Volumes/Macintosh HD/usr/lib/libXfont.dylib
/Volumes/Macintosh HD/usr/lib/libXfont2.2.dylib
/Volumes/Macintosh HD/usr/lib/libXfont2.dylib
/Volumes/Macintosh HD/usr/lib/libXfontcache.1.dylib
/Volumes/Macintosh HD/usr/lib/libXfontcache.dylib
/Volumes/Macintosh HD/usr/lib/libXft.2.dylib
/Volumes/Macintosh HD/usr/lib/libXft.dylib
/Volumes/Macintosh HD/usr/lib/libXi.6.dylib
/Volumes/Macintosh HD/usr/lib/libXi.dylib
/Volumes/Macintosh HD/usr/lib/libXinerama.1.dylib
/Volumes/Macintosh HD/usr/lib/libXinerama.dylib
/Volumes/Macintosh HD/usr/lib/libXmu.6.dylib
/Volumes/Macintosh HD/usr/lib/libXmu.dylib
/Volumes/Macintosh HD/usr/lib/libXmuu.1.dylib
/Volumes/Macintosh HD/usr/lib/libXmuu.dylib
/Volumes/Macintosh HD/usr/lib/libXp.6.dylib
/Volumes/Macintosh HD/usr/lib/libXp.dylib
/Volumes/Macintosh HD/usr/lib/libXpm.4.dylib
/Volumes/Macintosh HD/usr/lib/libXpm.dylib
/Volumes/Macintosh HD/usr/lib/libXpresent.1.dylib
/Volumes/Macintosh HD/usr/lib/libXpresent.dylib
/Volumes/Macintosh HD/usr/lib/libXrandr.2.dylib
/Volumes/Macintosh HD/usr/lib/libXrandr.dylib
/Volumes/Macintosh HD/usr/lib/libXrender.1.dylib
/Volumes/Macintosh HD/usr/lib/libXrender.dylib
/Volumes/Macintosh HD/usr/lib/libXss.1.dylib
/Volumes/Macintosh HD/usr/lib/libXss.dylib
/Volumes/Macintosh HD/usr/lib/libXt.6.dylib
/Volumes/Macintosh HD/usr/lib/libXt.7.dylib
/Volumes/Macintosh HD/usr/lib/libXt.dylib
/Volumes/Macintosh HD/usr/lib/libXtst.6.dylib
/Volumes/Macintosh HD/usr/lib/libXtst.dylib
/Volumes/Macintosh HD/usr/lib/libXv.1.dylib
/Volumes/Macintosh HD/usr/lib/libXv.dylib
/Volumes/Macintosh HD/usr/lib/libXvMC.1.dylib
/Volumes/Macintosh HD/usr/lib/libXvMC.dylib
/Volumes/Macintosh HD/usr/lib/libXvMCW.1.dylib
/Volumes/Macintosh HD/usr/lib/libXvMCW.dylib
/Volumes/Macintosh HD/usr/lib/libXxf86misc.1.dylib
/Volumes/Macintosh HD/usr/lib/libXxf86misc.dylib
/Volumes/Macintosh HD/usr/lib/libXxf86vm.1.dylib
/Volumes/Macintosh HD/usr/lib/libXxf86vm.dylib
/Volumes/Macintosh HD/usr/lib/libcairo-script-interpreter.2.dylib
/Volumes/Macintosh HD/usr/lib/libcairo-script-interpreter.dylib
/Volumes/Macintosh HD/usr/lib/libcairo.2.dylib
/Volumes/Macintosh HD/usr/lib/libcairo.dylib
/Volumes/Macintosh HD/usr/lib/libdmx.1.dylib
/Volumes/Macintosh HD/usr/lib/libdmx.dylib
/Volumes/Macintosh HD/usr/lib/libfontconfig.1.dylib
/Volumes/Macintosh HD/usr/lib/libfontconfig.dylib
/Volumes/Macintosh HD/usr/lib/libfontenc.1.dylib
/Volumes/Macintosh HD/usr/lib/libfontenc.dylib
/Volumes/Macintosh HD/usr/lib/libfreetype.6.dylib
/Volumes/Macintosh HD/usr/lib/libfreetype.dylib
/Volumes/Macintosh HD/usr/lib/libgcc_s.10.4.dylib
/Volumes/Macintosh HD/usr/lib/libgcc_s.10.5.dylib
/Volumes/Macintosh HD/usr/lib/libglapi.0.dylib
/Volumes/Macintosh HD/usr/lib/libglapi.dylib
/Volumes/Macintosh HD/usr/lib/libglut.3.dylib
/Volumes/Macintosh HD/usr/lib/libglut.dylib
/Volumes/Macintosh HD/usr/lib/libgutenprint.2.dylib
/Volumes/Macintosh HD/usr/lib/libkmod.a
/Volumes/Macintosh HD/usr/lib/libkmodc++.a
/Volumes/Macintosh HD/usr/lib/libl.a
/Volumes/Macintosh HD/usr/lib/libpixman-1.0.dylib
/Volumes/Macintosh HD/usr/lib/libpixman-1.dylib
/Volumes/Macintosh HD/usr/lib/libpkstart.a
/Volumes/Macintosh HD/usr/lib/libpng.3.dylib
/Volumes/Macintosh HD/usr/lib/libpng.dylib
/Volumes/Macintosh HD/usr/lib/libpng12.0.dylib
/Volumes/Macintosh HD/usr/lib/libpng14.14.dylib
/Volumes/Macintosh HD/usr/lib/libpng15.15.dylib
/Volumes/Macintosh HD/usr/lib/libpng16.16.dylib
/Volumes/Macintosh HD/usr/lib/libpng16.dylib
/Volumes/Macintosh HD/usr/lib/libtclstub8.5.a
/Volumes/Macintosh HD/usr/lib/libtkstub8.5.a
/Volumes/Macintosh HD/usr/lib/libxcb-atom.1.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-aux.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-composite.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-composite.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-cursor.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-cursor.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-damage.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-damage.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-dpms.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-dpms.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-dri2.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-dri2.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-dri3.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-dri3.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-errors.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-errors.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-event.1.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-ewmh.2.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-ewmh.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-glx.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-glx.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-icccm.4.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-icccm.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-image.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-image.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-keysyms.1.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-keysyms.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-present.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-present.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-randr.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-randr.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-record.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-record.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-render-util.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-render-util.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-render.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-render.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-res.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-res.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-screensaver.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-screensaver.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-shape.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-shape.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-shm.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-shm.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-sync.1.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-sync.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-util.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-util.1.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-util.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xf86dri.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xf86dri.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xfixes.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xfixes.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xinerama.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xinerama.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xkb.1.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xkb.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xtest.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xtest.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xv.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xv.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xvmc.0.dylib
/Volumes/Macintosh HD/usr/lib/libxcb-xvmc.dylib
/Volumes/Macintosh HD/usr/lib/libxcb.1.dylib
/Volumes/Macintosh HD/usr/lib/libxcb.dylib
/Volumes/Macintosh HD/usr/lib/libxkbfile.1.dylib
/Volumes/Macintosh HD/usr/lib/libxkbfile.dylib
/Volumes/Macintosh HD/usr/lib/libxkbui.1.dylib
/Volumes/Macintosh HD/usr/lib/libxkbui.dylib
/Volumes/Macintosh HD/usr/lib/libxshmfence.1.dylib
/Volumes/Macintosh HD/usr/lib/libxshmfence.dylib
/Volumes/Macintosh HD/usr/lib/liby.a
/Volumes/Macintosh HD/usr/lib/pkgconfig/applewm.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/applewmproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/bigreqsproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-fc.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-ft.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-pdf.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-png.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-ps.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-script.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-svg.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-tee.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-xcb-shm.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-xcb.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-xlib-xcb.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-xlib-xrender.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-xlib.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo-xml.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/cairo.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/compositeproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/damageproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/dmx.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/dmxproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/dri.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/dri2proto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/dri3proto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/evieproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/fixesproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/fontcacheproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/fontconfig.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/fontenc.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/fontsproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/fontutil.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/freetype2.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/gl.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/glesv1_cm.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/glesv2.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/glproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/glu.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/ice.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/inputproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/kbproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/libfs.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/libpng.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/libpng16.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/osmesa.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/pixman-1.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/presentproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/printproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/pthread-stubs.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/randrproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/recordproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/renderproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/resourceproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/scrnsaverproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/sm.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/trapproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/videoproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/x11-xcb.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/x11.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xau.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xaw3d.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xaw6.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xaw7.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-atom.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-aux.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-composite.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-cursor.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-damage.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-dpms.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-dri2.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-dri3.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-errors.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-event.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-ewmh.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-glx.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-icccm.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-image.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-keysyms.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-present.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-proto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-randr.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-record.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-render.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-renderutil.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-res.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-screensaver.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-shape.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-shm.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-sync.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-util.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-xf86dri.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-xfixes.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-xinerama.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-xkb.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-xtest.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-xv.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb-xvmc.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcb.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcmiscproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcomposite.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xcursor.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xdamage.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xdmcp.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xevie.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xext.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xextproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xf86bigfontproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xf86dgaproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xf86driproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xf86miscproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xf86rushproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xf86vidmodeproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xfixes.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xfont.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xfont2.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xfontcache.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xft.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xi.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xinerama.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xineramaproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xkbcomp.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xkbfile.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xkbui.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xmu.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xmuu.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xorg-server.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xp.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xpm.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xpresent.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xproxymngproto.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xpyb.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xrandr.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xrender.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xres.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xscrnsaver.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xshmfence.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xt.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xtrap.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xtst.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xv.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xvmc.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xxf86misc.pc
/Volumes/Macintosh HD/usr/lib/pkgconfig/xxf86vm.pc
/Volumes/Macintosh HD/usr/lib/python2.6
/Volumes/Macintosh HD/usr/lib/xorg
/Volumes/Macintosh HD/usr/libexec/cups/filter/commandtocanon
/Volumes/Macintosh HD/usr/libexec/cups/filter/commandtoepson
/Volumes/Macintosh HD/usr/libexec/cups/filter/rastertogutenprint.5.2
/Volumes/Macintosh HD/usr/libexec/cups/filter/thnucups
/Volumes/Macintosh HD/usr/libexec/launchd_startx
/Volumes/Macintosh HD/usr/libexec/privileged_startx
/Volumes/Macintosh HD/usr/libexec/rpmuxd
/Volumes/Macintosh HD/usr/local/bin
/Volumes/Macintosh HD/usr/local/doc
/Volumes/Macintosh HD/usr/local/etc
/Volumes/Macintosh HD/usr/local/include
/Volumes/Macintosh HD/usr/local/lib
/Volumes/Macintosh HD/usr/local/man
/Volumes/Macintosh HD/usr/local/remotedesktop
/Volumes/Macintosh HD/usr/local/sbin
/Volumes/Macintosh HD/usr/local/share
/Volumes/Macintosh HD/usr/sbin/cups-genppd.5.2
/Volumes/Macintosh HD/usr/sbin/cups-genppdupdate
/Volumes/Macintosh HD/usr/share/aclocal
/Volumes/Macintosh HD/usr/share/doc/dri2proto
/Volumes/Macintosh HD/usr/share/doc/randrproto
/Volumes/Macintosh HD/usr/share/doc/xorg-docs
/Volumes/Macintosh HD/usr/share/gtk-doc
/Volumes/Macintosh HD/usr/share/man/man1/Xephyr.1
/Volumes/Macintosh HD/usr/share/man/man1/Xmark.1
/Volumes/Macintosh HD/usr/share/man/man1/Xnest.1
/Volumes/Macintosh HD/usr/share/man/man1/Xorg.1
/Volumes/Macintosh HD/usr/share/man/man1/Xquartz.1
/Volumes/Macintosh HD/usr/share/man/man1/Xserver.1
/Volumes/Macintosh HD/usr/share/man/man1/Xvfb.1
/Volumes/Macintosh HD/usr/share/man/man1/appres.1
/Volumes/Macintosh HD/usr/share/man/man1/atobm.1
/Volumes/Macintosh HD/usr/share/man/man1/bdftopcf.1
/Volumes/Macintosh HD/usr/share/man/man1/bdftruncate.1
/Volumes/Macintosh HD/usr/share/man/man1/bitmap.1
/Volumes/Macintosh HD/usr/share/man/man1/bmtoa.1
/Volumes/Macintosh HD/usr/share/man/man1/cvt.1
/Volumes/Macintosh HD/usr/share/man/man1/cxpm.1
/Volumes/Macintosh HD/usr/share/man/man1/editres.1
/Volumes/Macintosh HD/usr/share/man/man1/fc-cache.1
/Volumes/Macintosh HD/usr/share/man/man1/fc-cat.1
/Volumes/Macintosh HD/usr/share/man/man1/fc-list.1
/Volumes/Macintosh HD/usr/share/man/man1/fc-match.1
/Volumes/Macintosh HD/usr/share/man/man1/fc-pattern.1
/Volumes/Macintosh HD/usr/share/man/man1/fc-query.1
/Volumes/Macintosh HD/usr/share/man/man1/fc-scan.1
/Volumes/Macintosh HD/usr/share/man/man1/fc-validate.1
/Volumes/Macintosh HD/usr/share/man/man1/fonttosfnt.1
/Volumes/Macintosh HD/usr/share/man/man1/freetype-config.1
/Volumes/Macintosh HD/usr/share/man/man1/fslsfonts.1
/Volumes/Macintosh HD/usr/share/man/man1/fstobdf.1
/Volumes/Macintosh HD/usr/share/man/man1/gccmakedep.1
/Volumes/Macintosh HD/usr/share/man/man1/gtf.1
/Volumes/Macintosh HD/usr/share/man/man1/iceauth.1
/Volumes/Macintosh HD/usr/share/man/man1/ico.1
/Volumes/Macintosh HD/usr/share/man/man1/koi8rxterm.1
/Volumes/Macintosh HD/usr/share/man/man1/listres.1
/Volumes/Macintosh HD/usr/share/man/man1/lndir.1
/Volumes/Macintosh HD/usr/share/man/man1/luit.1
/Volumes/Macintosh HD/usr/share/man/man1/makedepend.1
/Volumes/Macintosh HD/usr/share/man/man1/mkfontdir.1
/Volumes/Macintosh HD/usr/share/man/man1/mkfontscale.1
/Volumes/Macintosh HD/usr/share/man/man1/oclock.1
/Volumes/Macintosh HD/usr/share/man/man1/quartz-wm.1
/Volumes/Macintosh HD/usr/share/man/man1/resize.1
/Volumes/Macintosh HD/usr/share/man/man1/sessreg.1
/Volumes/Macintosh HD/usr/share/man/man1/setxkbmap.1
/Volumes/Macintosh HD/usr/share/man/man1/showfont.1
/Volumes/Macintosh HD/usr/share/man/man1/showrgb.1
/Volumes/Macintosh HD/usr/share/man/man1/smproxy.1
/Volumes/Macintosh HD/usr/share/man/man1/startx.1
/Volumes/Macintosh HD/usr/share/man/man1/sxpm.1
/Volumes/Macintosh HD/usr/share/man/man1/twm.1
/Volumes/Macintosh HD/usr/share/man/man1/ucs2any.1
/Volumes/Macintosh HD/usr/share/man/man1/uxterm.1
/Volumes/Macintosh HD/usr/share/man/man1/viewres.1
/Volumes/Macintosh HD/usr/share/man/man1/x11perf.1
/Volumes/Macintosh HD/usr/share/man/man1/x11perfcomp.1
/Volumes/Macintosh HD/usr/share/man/man1/xauth.1
/Volumes/Macintosh HD/usr/share/man/man1/xbacklight.1
/Volumes/Macintosh HD/usr/share/man/man1/xcalc.1
/Volumes/Macintosh HD/usr/share/man/man1/xclipboard.1
/Volumes/Macintosh HD/usr/share/man/man1/xclock.1
/Volumes/Macintosh HD/usr/share/man/man1/xcmsdb.1
/Volumes/Macintosh HD/usr/share/man/man1/xcompmgr.1
/Volumes/Macintosh HD/usr/share/man/man1/xconsole.1
/Volumes/Macintosh HD/usr/share/man/man1/xcursorgen.1
/Volumes/Macintosh HD/usr/share/man/man1/xcutsel.1
/Volumes/Macintosh HD/usr/share/man/man1/xditview.1
/Volumes/Macintosh HD/usr/share/man/man1/xdm.1
/Volumes/Macintosh HD/usr/share/man/man1/xdpr.1
/Volumes/Macintosh HD/usr/share/man/man1/xdpyinfo.1
/Volumes/Macintosh HD/usr/share/man/man1/xedit.1
/Volumes/Macintosh HD/usr/share/man/man1/xev.1
/Volumes/Macintosh HD/usr/share/man/man1/xeyes.1
/Volumes/Macintosh HD/usr/share/man/man1/xfd.1
/Volumes/Macintosh HD/usr/share/man/man1/xfindproxy.1
/Volumes/Macintosh HD/usr/share/man/man1/xfontsel.1
/Volumes/Macintosh HD/usr/share/man/man1/xfs.1
/Volumes/Macintosh HD/usr/share/man/man1/xfsinfo.1
/Volumes/Macintosh HD/usr/share/man/man1/xgamma.1
/Volumes/Macintosh HD/usr/share/man/man1/xgc.1
/Volumes/Macintosh HD/usr/share/man/man1/xhost.1
/Volumes/Macintosh HD/usr/share/man/man1/xinit.1
/Volumes/Macintosh HD/usr/share/man/man1/xinput.1
/Volumes/Macintosh HD/usr/share/man/man1/xkbbell.1
/Volumes/Macintosh HD/usr/share/man/man1/xkbcomp.1
/Volumes/Macintosh HD/usr/share/man/man1/xkbevd.1
/Volumes/Macintosh HD/usr/share/man/man1/xkbprint.1
/Volumes/Macintosh HD/usr/share/man/man1/xkbvleds.1
/Volumes/Macintosh HD/usr/share/man/man1/xkbwatch.1
/Volumes/Macintosh HD/usr/share/man/man1/xkill.1
/Volumes/Macintosh HD/usr/share/man/man1/xload.1
/Volumes/Macintosh HD/usr/share/man/man1/xlogo.1
/Volumes/Macintosh HD/usr/share/man/man1/xlsatoms.1
/Volumes/Macintosh HD/usr/share/man/man1/xlsclients.1
/Volumes/Macintosh HD/usr/share/man/man1/xlsfonts.1
/Volumes/Macintosh HD/usr/share/man/man1/xmag.1
/Volumes/Macintosh HD/usr/share/man/man1/xman.1
/Volumes/Macintosh HD/usr/share/man/man1/xmessage.1
/Volumes/Macintosh HD/usr/share/man/man1/xmh.1
/Volumes/Macintosh HD/usr/share/man/man1/xmodmap.1
/Volumes/Macintosh HD/usr/share/man/man1/xmore.1
/Volumes/Macintosh HD/usr/share/man/man1/xpr.1
/Volumes/Macintosh HD/usr/share/man/man1/xprop.1
/Volumes/Macintosh HD/usr/share/man/man1/xrandr.1
/Volumes/Macintosh HD/usr/share/man/man1/xrdb.1
/Volumes/Macintosh HD/usr/share/man/man1/xrefresh.1
/Volumes/Macintosh HD/usr/share/man/man1/xscope.1
/Volumes/Macintosh HD/usr/share/man/man1/xset.1
/Volumes/Macintosh HD/usr/share/man/man1/xsetmode.1
/Volumes/Macintosh HD/usr/share/man/man1/xsetpointer.1
/Volumes/Macintosh HD/usr/share/man/man1/xsetroot.1
/Volumes/Macintosh HD/usr/share/man/man1/xsm.1
/Volumes/Macintosh HD/usr/share/man/man1/xstdcmap.1
/Volumes/Macintosh HD/usr/share/man/man1/xterm.1
/Volumes/Macintosh HD/usr/share/man/man1/xvinfo.1
/Volumes/Macintosh HD/usr/share/man/man1/xwd.1
/Volumes/Macintosh HD/usr/share/man/man1/xwininfo.1
/Volumes/Macintosh HD/usr/share/man/man1/xwud.1
/Volumes/Macintosh HD/usr/share/man/man2
/Volumes/Macintosh HD/usr/share/man/man3
/Volumes/Macintosh HD/usr/share/man/man4/exa.4
/Volumes/Macintosh HD/usr/share/man/man4/fbdevhw.4
/Volumes/Macintosh HD/usr/share/man/man4/void.4
/Volumes/Macintosh HD/usr/share/man/man5/Compose.5
/Volumes/Macintosh HD/usr/share/man/man5/XCompose.5
/Volumes/Macintosh HD/usr/share/man/man5/fonts-conf.5
/Volumes/Macintosh HD/usr/share/man/man5/png.5
/Volumes/Macintosh HD/usr/share/man/man5/xorg.conf.5
/Volumes/Macintosh HD/usr/share/man/man5/xorg.conf.d.5
/Volumes/Macintosh HD/usr/share/man/man7/Consortium.7
/Volumes/Macintosh HD/usr/share/man/man7/Standards.7
/Volumes/Macintosh HD/usr/share/man/man7/X.7
/Volumes/Macintosh HD/usr/share/man/man7/XOrgFoundation.7
/Volumes/Macintosh HD/usr/share/man/man7/XProjectTeam.7
/Volumes/Macintosh HD/usr/share/man/man7/Xprint.7
/Volumes/Macintosh HD/usr/share/man/man7/Xsecurity.7
/Volumes/Macintosh HD/usr/share/pixmaps
/Volumes/Macintosh HD/usr/share/pkgconfig
/Volumes/Macintosh HD/usr/share/sgml
/Volumes/Macintosh HD/usr/share/util-macros
/Volumes/Macintosh HD/usr/share/xml
Reset Setup Assistant
Integrate features of Migration Assistant.
Remove /var/db/.AppleSetupDone
:
reboot
hold
command + s
in Terminal:
mount -uw / rm /var/db/.AppleSetupDone shutdown -h now
or:
reboot
hold
command + r
in Terminal ("Mackintosh HD" is the default name of the main disk, depends what has been defined when macOS was installed):
rm "/Volumes/Mackintosh HD/var/db/.AppleSetupDone" shutdown -h now
Boot Camp
Start up your Mac in Windows or macOS with Boot Camp - Apple Support - hold the Option key
Windows: Configuration pannel > System & Security > Power management > Choose when the screen close (works only in native, not in a VM)
Windows:
Compact.exe /CompactOS:always
to compact (Compact.exe /CompactOS:never
to restore);powercfg /h /type reduced
to reduce hibernation file size (powercfg /h /size 100
to restore)macOS: Sytem preferences > Startup > Choose the disk you want to use at each startup (you still can use opt key to Start up to Startup Manager)
Windows boot INACCESSIBLE_BOOT_DEVICE
error (after Windows Updates):
How to install Windows:
/System/Applications/Utilities/Boot Camp Assistant.app
How it's work, Boot Camp Assistant automatically create 2 partition:
OSXRESERVED
(Microsoft Basic Data / ExFAT, ~10GB, contains WinPE files, plus drivers in\$WinPEDriver$
and installer in\Bootcamp
), which will be removed after the install of Windows is completeBOOTCAMP
(Microsoft Basic Data) partition where Windows is installed of the size the user gave
Use USB drive to install Windows could not work with recent macbook because the USB3 is used, and Windows 10 (at least) don't support keyboard and pad in same time (which use USB 3 too) (WinPE will load, but couldn't use the keyboard or mouse): If your keyboard or trackpad stop responding while installing Windows 8 on your Mac - Apple Support
Drivers:
open Boot Camp Assistant > Action (menu) > Download Windows Support Software
timsutton/brigadier: Fetch and install Boot Camp ESDs with ease. -
brigadier -m MacBookPro11,1 -o Bootcamp-MBP11.1
if you can start bootcamp OS (ex mounted in a Virtual Machine), install manually (download first: Download and install Windows support software on your Mac - Apple Support) by right click on each INF files, then "Install" (
*\WindowsSupport\$WinPEDriver$\*\*.inf
) (driver files will be copied inC:\WINDOWS\inf\*.inf
,C:\WINDOWS\System32\drivers\*.sys
andC:\WINDOWS\System32\DriverStore\FileRepository\*\*.*
)D:\$WinPEDriver$
Limitations of $WinPeDriver$ - Windows Client | Microsoft Docsinject in WIM images
D:\sources\boot.wim
andD:\sources\install.wim
: Inject Drivers into a Winclone Image – Twocanoes Software. See also Create a Windows 10 Bootable USB Flash Drive on a Mac – Twocanoes Softwareinject product key by create a file
D:\sources\ID.txt
that contains:[PID] Value=XXXXX-XXXXX-XXXXX-XXXXX-XXXXX
Partitions:
Install on external drive:
set
HKLM\SYSTEM\HardwareConfig\{...uuid...}\BootDriverFlags
to0x14
: Booting unmodified Windows 10 over USB
Keyboard:
to connect bluetooth Apple keyboard, tap on the keyboard the PIN code the OS provide, then tap enter
reboot if necessary (if the OS doesn't provide a PIN code but ask the one the device should provide)
Bluetooth dual boot:
Releases · headkaze/Hackintool - Tab "Utilities" > Button (at bottom with a Bluetooth logo) "Generate Windows Bluetooth Registry File", the import in Windows the file from regedit
psexec -s -i regedit
(psexec
from PsTools - Windows Sysinternals | Microsoft Docs) See https://github.com/headkaze/Hackintool/blob/279644d917bd45241c85d13198a7ca4bacb320fd/Hackintool/AppDelegate.m#L10825-L10954 and https://github.com/headkaze/Hackintool/blob/279644d917bd45241c85d13198a7ca4bacb320fd/Hackintool/AppDelegate.m#L10713-L10755/Library/Preferences/com.apple.Bluetooth.plist
,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BTHPORT\Parameters\Keys
Bluetooth Classic use Link Key (LK)
Bluetooth Low Energy (4.0 & 4.1), LE legacy pairing
use Short Term Key (STK), Identity Resolving Key (IRK), Encrypted Diversifier (EDIV), Random Number (RAND)
Bluetooth Low Energy (4.2), LE Secure Connections use Long Term Key (LTK)
sudo pkill bluetoothd
/Library/Bluetooth/Library/Preferences/com.apple.MobileBluetooth.devices.plist
/private/var/root/Library/Preferences/com.apple.bluetoothd.plist
(High Sierra +)/private/var/root/Library/Preferences/blued.plist
sudo /usr/bin/defaults read com.apple.Bluetoothd.plist LinkKeys
/Library/Preferences/com.apple.Bluetooth.plist
/Library/Preferences/com.apple.airport.bt.plist
Change ownership
Network
What causes some Network Drives using SMB no longer connect to macOS Catalina? - Ask Different - SMB and NetBIOS (
/etc/nsmb.conf
) troubles
Bandwidth limiter
Use "Network Link Conditioner" (but not work for localhost/127.0.0.1) or use a proxy instead (for HTTP/HTTPS)
Install:
download "Additional Tools for Xcode" from https://developer.apple.com/download/more/?q=Additional%20Tools
from DMG, double click to install
Network Link Conditioner.prefPane
http://nshipster.com/network-link-conditioner/
https://developer.apple.com/downloads/index.action?q=Network%20Link%20Conditioner
VPN
Local TLD
Use *.localhost
instead of *.local
. It's a reserved, internal TLD too.
http://www.justincarmony.com/blog/2011/07/27/mac-os-x-lion-etc-hosts-bugs-and-dns-resolution/
Hosts files
Fake DNS records
Require root access to update the content:
sudo vi /etc/hosts
Create link to Network Utility
cd /Applications/Utilities/
ln -s /System/Library/CoreServices/Applications/Network\ Utility.app Network\ Utility.app
Moved in CoreServices in 10.9
Flush DNS cache
sudo killall -HUP mDNSResponder
Share network connection
UI
Finder, desktop, menus, etc.
Reveal Libray folder
chflags nohidden ~/Library
Show hidden files
Or use the combination of Shift ⇧ Cmd ⌘ . or Fn Shift ⇧ Cmd ⌘ . (for French NUM? keyboards)
defaults write com.apple.finder AppleShowAllFiles -bool YES && killall Finder
defaults write com.apple.finder AppleShowAllFiles TRUE && killall Finder
Hide specific file on desktop
If hidden files are not visible:
chflags hidden file
chflags nohidden file
Else :
Copy a transparent image (in preview: select image pixel area then copy)
Past it as icon of targeted file
Move to outside of desktop viewport
Reload "Open With" menu entries
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain system -domain user
Menulets / Menu extra
Menulets are of small icons located at the upper right corner of the Menu Bar
/System/Library/CoreServices/Menu Extras/*.menu
Services
Aka quick actions
Located at ~/Library/Services/
and /System/Library/Services
, packages *.workflow
Preferences > Extensions panel
To test a workflow with files, insert "Get Specified Finder Items" at the beginning
To assign a keyboard shortcut, in 10.6:
open System Preferences > Keyboard > pane Keyboard Shortcuts
select "Services" in the left pane
scroll down to General in the right pane
double-click to the right of the Automator workflow you just created
press the keys you want to use, and switch panes to ensure the new shortcut is saved
/usr/bin/automator "/path/to/some action.workflow"
For "Create a new file" quick action:
delay 0.1
is required to let Finder create a new file and later hit return key to edit it's name
tell application "Finder"
set selection to make new file at (get insertion location)
end tell
tell application "System Events"
tell process "Finder"
keystroke return
end tell
end tell
Convert :
use builtin quick action "Convert Image" (from macOS 12): file context menu > Quick Actions > Convert Image
Shortcuts
An PList file
Shortcuts.app
Finder view preferences System-wide
Close all Finder windows
find ~ -name ".DS_Store" -depth -exec rm -f {} \;
Kill finder: Force Quit → Finder
Open a Finder window, edit Folder View Options show and click on "Use as default"
Localizable resource name
That use short language ISO code (ISO639).
Dans les fichiers .strings
les retours à la ligne sont marqué . Voir aussi """, "\". Le commentaires supporté (/* ... */
et // ...
). Ces fichiers doivent être enregistré en UTF-16
https://developer.apple.com/library/mac/documentation/FileManagement/Conceptual/FileSystemAdvancedPT/LocalizingtheNameofaDirectory/LocalizingtheNameofaDirectory.html
System (default)
Edit following file (require root's right)
System/Library/CoreServices/SystemFolderLocalizations/fr.lproj/SystemFolderLocalizations.strings
System/Library/CoreServices/SystemFolderLocalizations/zh_CN.lproj/SystemFolderLocalizations.strings
Add or update
"Stuff" = "Choses";
Stuff
.localized
.localized
is an empty file (0 bytes)
Folder
Stuff.localized
.localized
de.strings
en.strings
fr.strings
zh-Hans.strings
In fr.strings
:
"Stuff" = "Choses";
/Applications/VMware Fusion.app/Contents/ResourcesVirtual Machines.localized/.localized/*
(VMware Fusion 7.0)
Bundle
Stuff
Info.plist
Resources
de.lproj
en.lproj
fr.lproj
InfoPlist.strings
In Stuff/Info.plist
, we found:
<key>CFBundleDisplayName</key>
<string>Stuff</string>
It's not required but I we want localizable bundle, we need it.
We can found also NSHumanReadableCopyright
(copyright) and CFBundleName
(display app name in menu bar) which are also localizable.
In Stuff/Resources/fr.lproj/InfoPlist.strings
, we found:
CFBundleDisplayName = "Choses";
Kiosk mode
Keyboard layout
macOS on a MacBook (without special keys like page up/down keys):
Page up : fn + up
Page down : fn + down
Home : fn + left
End : fn + right
Del : fn + backspace
Enter (num) : fn + return
Apple keyboard layout on Windows
See also Keyboard layout
Useful when you use a remote desktop connection. The host doesn't have the Apple keyboard layout.
DLL files are in %SystemRoot%\System32
, copy them from Boot Camp drivers
Windows Registry Editor Version 5.00
; Layouts installed by Boot Camp Support driver package
; Layout files are relative to "%SystemRoot%\System32"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000404]
"Layout Component ID"="7F611C89DF564F01AE5B4A405192D1FB"
"Layout File"="ChinaTA.dll"
"Layout ID"="00e2"
"Layout Text"="Chinese Traditional (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000405]
"Layout Component ID"="0C8DA389245B4792B4960E336F62AC3E"
"Layout File"="CzechA.dll"
"Layout ID"="00d4"
"Layout Text"="Czech (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000406]
"Layout Component ID"="C3996498F423440FB9CE2732A821E7D9"
"Layout File"="DanishA.dll"
"Layout ID"="00cc"
"Layout Text"="Danish (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000407]
"Layout Component ID"="B616E2191BF048D4A554E5C6BE224AB4"
"Layout File"="GermanA.dll"
"Layout ID"="00c3"
"Layout Text"="German (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000409]
"Layout Component ID"="B422390FE3C04f3a917D15AD1ACD710F"
"Layout File"="USA.dll"
"Layout ID"="00d1"
"Layout Text"="United States (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a000040a]
"Layout Component ID"="C3364C7C44BC444A88A50459135D35B5"
"Layout File"="SpanishA.dll"
"Layout ID"="00c5"
"Layout Text"="Spanish (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a000040b]
"Layout Component ID"="ECE9937799D242F5AE0CAA446EDEDC62"
"Layout File"="FinnishA.dll"
"Layout ID"="00cb"
"Layout Text"="Finnish (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a000040c]
"Layout Component ID"="2ECD3C77364749B18E910F9196B420FA"
"Layout File"="FrenchA.dll"
"Layout ID"="00c2"
"Layout Text"="French (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a000040e]
"Layout Component ID"="725BE97D2AD14042BA539D96030F93AA"
"Layout File"="HungaryA.dll"
"Layout ID"="00d5"
"Layout Text"="Hungarian (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000410]
"Layout Component ID"="6401AAA6058F431181B445C26BEF22D9"
"Layout File"="ItalianA.dll"
"Layout ID"="00c4"
"Layout Text"="Italian (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000413]
"Layout Component ID"="3844B95343FB43D68E9695D6E88F016E"
"Layout File"="DutchA.dll"
"Layout ID"="00c1"
"Layout Text"="Dutch (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000414]
"Layout Component ID"="74BE397ABD8143E4960D38111394D1A3"
"Layout File"="NorwayA.dll"
"Layout ID"="00c9"
"Layout Text"="Norwegian (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000415]
"Layout Component ID"="D3D2841618E34D09ABBCA0DA34A60FAE"
"Layout File"="PolishA.dll"
"Layout ID"="00cf"
"Layout Text"="Polish (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000416]
"Layout Component ID"="326773935C8C4597B0738FE2084D44AD"
"Layout File"="PortuguA.dll"
"Layout ID"="00ce"
"Layout Text"="Portuguese (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000419]
"Layout Component ID"="B0F62A69BE9446488ED502E800DBC36C"
"Layout File"="RussianA.dll"
"Layout ID"="00c8"
"Layout Text"="Russian (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a000041d]
"Layout Component ID"="8CC8067A1BFF4A0FAD38708DE4CD4BF1"
"Layout File"="SwedishA.dll"
"Layout ID"="00c7"
"Layout Text"="Swedish (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a000041f]
"Layout Component ID"="2513D09A670B4d9bA8F1BDAAAA32176F"
"Layout File"="TurkeyQA.dll"
"Layout ID"="00d3"
"Layout Text"="Turkish Q (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000804]
"Layout Component ID"="472ECFB106AE4249B0ADCF62F91D8AEE"
"Layout File"="ChinaSA.dll"
"Layout ID"="00e1"
"Layout Text"="Chinese Simplified (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000809]
"Layout Component ID"="1A4D378083AD454BB4FE02F208614EB6"
"Layout File"="BritishA.dll"
"Layout ID"="00c0"
"Layout Text"="United Kingdom (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000813]
"Layout Component ID"="D70C1682E8F24ED4B5B70AAD37B1BA42"
"Layout File"="BelgiumA.dll"
"Layout ID"="00cd"
"Layout Text"="Belgian (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0000c0c]
"Layout Component ID"="517A729DDEC543E3A7F392E3F130C25F"
"Layout File"="CanadaA.dll"
"Layout ID"="00ca"
"Layout Text"="Canadian Multilingual (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a000100c]
"Layout Component ID"="CE4C7E2419DE400B8A553E1A5C3DCD04"
"Layout File"="SwissA.dll"
"Layout ID"="00c6"
"Layout Text"="Swiss (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a0020409]
"Layout Component ID"="241A34D0-06DB-405e-8B4E-8CA2FC34D1C7"
"Layout File"="IntlEngA.dll"
"Layout ID"="00d0"
"Layout Text"="United States-International (Apple)"
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layouts\a100041f]
"Layout Component ID"="D1502D2EF02F4e4b8D313D3C0B0457D0"
"Layout File"="TurkeyA.dll"
"Layout ID"="00d2"
"Layout Text"="Turkish F (Apple)"
Keyboard with Mac layout: Settings > Time & language > Region & language > select current language > Options > Add keyboard > select the same language layout but with "(Apple)" > optionaly you can remove the previous layout or a keyboard layout selector in taskbar will appears
Pointer
Aka mouse
Mouse acceleration
USB Overdrive works if you change system mouse speed to 0 (or -1)
©1999-2017 Alessandro Levi Montalcini - USB Overdrive
System mouse speed
defaults read .GlobalPreferences com.apple.mouse.scaling
# same value as System Preferences > Mouse > Speed
#defaults write .GlobalPreferences com.apple.mouse.scaling -1
killmouseaccel:
Doesn't work with High Sierra due to depreciation of IOHID API.
#gcc killmouseaccel.c -o killmouseaccel -framework IOKit -framework Carbon
gcc killmouseaccel/main.c -o killmouseaccel/killmouseaccel -framework IOKit -framework Carbon
#chmod +x killmouseaccel
./killmouseaccel mouse
Restart Dock
Will restart Dock, Mission Control, Spaces, etc.
killall -KILL Dock
For menubar
killall -KILL SystemUIServer
Or Finder
killall -KILL Finder
Spaces in dock
defaults write com.apple.dock persistent-apps -array-add '{tile-data={}; tile-type="spacer-tile";}'
killall Dock
Media keys start Music.app
Music.app
Aka media keys start iTunes.app
, remote control daemon (RCD), play/pause keys (or bluetooth) auto-starting Music/iTunes, apple remote, connecting bluetooth headset/headphone
Note: looklike the side effects is media keys (of the keyboard or touchbar) stop working
launchctl stop com.apple.rcd
launchctl unload -w /System/Library/LaunchAgents/com.apple.rcd.plist
# Revert
launchctl start com.apple.rcd
launchctl load -w /System/Library/LaunchAgents/com.apple.rcd.plist
Continuity with Android
Disk, file system and paths
disk path:
/dev/diskX
where X is a number (start with 1)mounted in
/Volumes/XXXX
See FileVault
Extended attribute
Aka quarantine, icons, thumbnail, xattr
com.apple.FinderInfo
, which sets some general flags for Finder, and can be used to assign a single Finder Tag;
com.apple.metadata:_kMDItemUserTags
, which contains Finder Tag settings;
com.apple.metadata:kMDItemDownloadedDate
, which contains the datestamp for when this item was downloaded;
com.apple.metadata:kMDItemFinderComment
, which contains the text from the Finder Comment but does not actually set it;
com.apple.metadata:kMDItemWhereFroms
, which contains the URL of the location from which the item was downloaded;
com.apple.quarantine
, which forms the quarantine flag to determine if Gatekeeper should perform a full check when an app is first run.— Where did that metadata come from? – The Eclectic Light Company
See also Spotlight and Uniform Type Identifier
Extended attribute com.apple.FinderInfo
(same/similar binary format as resource fork):
com.apple.FinderInfo (XATTR_FINDERINFO_NAME, ATTR_CMN_FNDRINFO getattrlist(2)) 32 bytes of data for use by the Finder. Equivalent to the concatenation of a FileInfo structure and an ExtendedFileInfo structure (or, for directories, a FolderInfo structure and an ExtendedFolderInfo structure). These structures are defined in <CarbonCore/Finder.h>.
This attribute is not byte swapped by the file system. The value of multibyte fields on disk is always big endian. When running on a little endian system (such as Darwin on x86), you must byte swap any multibyte fields.
# Add a fake name
xattr -w com.apple.metadata:kMDItemDisplayName DifferentFilename.txt ActualFilename.txt
# Hide file to Finder
xattr -px com.apple.FinderInfo /path/to/file
xattr -wx com.apple.FinderInfo "0000000000000000400000000000000000000000000000000000000000000000" /path/to/file
# or (spaces aren't important)
xattr -wx com.apple.FinderInfo "00 00 00 00 00 00 00 00 40 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00" /path/to/file
# Find some hidden files (kMDItemFSInvisible mapped from the extended attribute com.apple.FinderInfo)
mdfind kMDItemFSInvisible=1 -onlyin .
# Add custom colors and tags to a file
# https://eclecticlight.co/2017/12/27/xattr-com-apple-metadata_kmditemusertags-finder-tags/
# Rouge 6, Orange 7, Jaune 5, Vert 2, Bleu 4, Violet 3, Gris 1
xattr -wx com.apple.metadata:_kMDItemUserTags "62706c69 73743030 a3010203 584f7261 6e67650a 37585965 6c6c6f77 0a355949 6d706f72 74616e74 080c151e 00000000 00000101 00000000 00000004 00000000 00000000 00000000 00000028" filename
xattr -wx com.apple.metadata:_kMDItemUserTags "$(echo '["Orange\n7","Yellow\n5","Important"]' | plutil -convert binary1 -o - - | xxd -p | tr -d "\n")" /path/to/file
xattr -w com.apple.metadata:_kMDItemUserTags '<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"><plist version="1.0"><array>...</array></plist>' /path/to/file
# The following command works to (king of valid plist string)
xattr -w com.apple.metadata:_kMDItemUserTags '("Red\n6","Important")' /path/to/file
# After change the metadata, Spotlight doesn't import the file immediatly. The workaround is to add another tag with UI (Finder) to all files, then remove it
# Metadata see by Spotlight backend (metadata server)
#mdimport -i filename
mdls -plist - -name _kMDItemUserTags filename | plutil -convert json -o - -
xattr -px com.apple.metadata:_kMDItemUserTags /path/to/file | xxd -r -p | plutil -convert json -o - -
mdfind "kMDItemUserTags = Important" -onlyin .
# or: mdfind "_kMDItemUserTags = Important" -onlyin .
# Set custom application association
# Even if the type is the default "public.data"
xattr -wx com.apple.LaunchServices.OpenWith "$(echo '{"version":1.0,"path":"\/Applications\/Hex Fiend.app","bundleidentifier":"com.ridiculousfish.HexFiend"}' | plutil -convert binary1 -o - - | xxd -p | tr -d "\n")" filename
# Get custom application association
xattr -px com.apple.LaunchServices.OpenWith /path/to/file | xxd -r -p | plutil -convert json -o - -
# Set the URL from which the file was downloaded
xattr -wx com.apple.metadata:kMDItemWhereFroms "$(echo '["http://example.com"]' | plutil -convert binary1 -o - - | xxd -p)" /path/to/file
xattr -wx com.apple.metadata:kMDItemWhereFroms "$(echo '["http://example.com/origin","http://example.com/referrer"]' | plutil -convert binary1 -o - - | xxd -p)" /path/to/file
xattr -wx com.apple.metadata:kMDItemWhereFroms "$(echo '<plist><array><string>http://example.com</string></array></plist>' | plutil -convert binary1 -o - - | xxd -p | tr -d "\n")" /path/to/file
# Set the date when the file was downloaded
# Note can't convert from JSON because date
xattr -wx com.apple.metadata:kMDItemDownloadedDate "$(echo "<plist><array><date>$(date +%Y-%m-%dT%H:%M:%SZ)</date></array></plist>" | plutil -convert binary1 -o - - | xxd -p | tr -d "\n")" /path/to/file
Other:
Icons and Cursors
/System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/HIServices.framework/Versions/A/Resources/cursors
/System/Library/CoreServices/CoreTypes.bundle/Contents/Resources
Sounds
/System/Library/Sounds/
/Library/Sounds/
~/Library/Sounds/
AFPS
Does Apple File System support directory hard links?
Directory hard links are not supported by Apple File System. All directory hard links are converted to symbolic links or aliases when you convert from HFS+ to APFS volume formats on macOS. — Frequently Asked Questions
NTFS
Read only
Use NTFS-3G or use exFAT instead (supported natively)
WebDav
Mount unsupported file system
Home - macFUSE (successor of osxFUSE)
Mount AFP share online
Don't do that! It's not secure (same for NFS, SMB/CIFS, iSCSI, etc.). Use it over a VPN (or a SSH tunnel) or use a secured protocol like SFTP (use https://github.com/osxfuse/osxfuse/wiki/SSHFS)
Can contains Time Machine backups.
Mount afp://ip_address/timemachine_share
Port 548 should be open (and forwarded (TCP) to the target if the server is behind a router). Don't allow guest access
System links
Preference and help links
Open an pref
x-help-script://com.apple.machelp/scpt/OpnPrefsBndID.scpt?com.apple.Localization,InputMenu
Open an app:
x-help-script://com.apple.machelp/scpt/OpnAppBndID.scpt?open,com.apple.ScriptEditor2
help:anchor=%27mh28040%27%20bookID='com.apple.machelp'
Home (help:anchor=%27access%27%20bookID=com.apple.machelp
) Index (help:anchor=%27xall%27%20bookID=com.apple.machelp
)
System paths
Yelp/osxcollector: A forensic evidence collection & analysis toolkit for OS X - A forensic evidence collection & analysis toolkit for OS X
Re-add staff
premission
staff
premissionsudo chgrp staff path/to/item
sudo chmod g+r,+X path/to/item
Uniform Type Identifier
Aka UTI
Metadatas: kMDItemContentType
and kMDItemContentTypeTree
(hierarchical content type); CFBundleDocumentTypes
, UTImportedTypeDeclarations
and UTExportedTypeDeclarations
Get UTI from metadata server:
mdls -raw -name kMDItemContentType $FILE
For the same extension, mutliple UTI definitions could exist. But the last definition will be used. Exemple: Adobe Flash use .as
for ActionScript files (source code), but .as
is declared instead as "AppleSingle archive" (UTI: com.apple.applesingle-archive
). Installing Adobe Flash should override the default declaration. See uti - Revert Filetype Association - Ask Different
/System/Library/CoreServices/CoreTypes.bundle/Contents/Info.plist
https://github.com/schwa/UTI-Types/tree/master/Types - List of common UTI
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -dump
- list all registered UTI/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/Current/Support/lsregister -kill -r -domain local -domain system -domain user
- ro rebuild the Launch Services registry to fix a wrong attribution (after an App Upgrade)filesystem - Change file kind / kMDItemContentType - Ask Different - for bash script
UTI Property List Helper - generate UTI definition (plist) from existing UTI
Fragmentation
Aka defragmentation
Ten Things Apple Did To Make Mac OS X Faster - On-the-fly Defragmentation
Ten Things Apple Did To Make Mac OS X Faster - Hot File Clustering
Disk image
Create a disk image from a disk or connected device[...]
Sparse bundle disk image: Same as a sparse disk image (below), but the directory data for the image is stored differently. Uses the .sparsebundle file extension.
Sparse disk image: Creates an expandable file that shrinks and grows as needed. No additional space is used. Uses the .sparseimage file extension.
Read/write disk image: Allows you to add files to the disk image after it’s created. Uses the .dmg file extension.
DVD/CD master: Changes the size of the image to 177 MB (CD 8 cm). Uses the .cdr file extension.
[...]
Create a disk image from a folder or connected device[...]
Read-only: The disk image can’t be written to, and is quicker to create and open.
Compressed: Compresses data, so the disk image is smaller than the original data. The disk image is read-only.
Read/write: Allows you to add files to the disk image after it’s created.
DVD/CD master: Can be used with third-party apps. It includes a copy of all sectors of the disk image, whether they’re used or not. When you use a master disk image to create other DVDs or CDs, all data is copied exactly.
— Create a disk image using Disk Utility on Mac - Apple Support
Split disk image
hdiutil segment -segmentSize 1G -o "disk-1G-parts.dmg" "/path/to/disk.dmg"
Will generate files *.XXX.dmgpart
and *.dmg
Folder action
See Automator
Test disk speed
aka test USB thumb speed
# Write 1GB of zero to tsfile
dd if=/dev/zero bs=1024k of=tstfile count=1024
# Will output (if locale is english):
# 1024+0 records in
# 1024+0 records out
# 1073741824 bytes (1.1 GB) copied, 2.27431 s, 472 MB/s
# Read tsfile (1GB)
dd if=tstfile bs=1024k of=/dev/null count=1024
# Remove tsfile
rm tstfile
Clone to disk image
diskutil list
diskutil info disk4
sudo gdd if=/dev/rdisk4 of=sd_backup.dmg status=progress bs=16M
#photorec sd_backup.dmg
#testdisk sd_backup.dmg
Startup and login
Startup chime
Not work with OSX 10.10+
Mute
sudo nvram SystemAudioVolume=%80
Restore
sudo nvram -d SystemAudioVolume
http://apple.stackexchange.com/questions/168092/disable-yosemite-startup-sound
https://discussions.apple.com/message/28013107#28013107
Lock message
Aka login screen text
If found, please contact XXXX XXXX at YYYYYYYYYYY or at ZZZZZZ@ZZZZZZ.ZZZZ
Control+Command+Q
How to set a lock message on the login window of your Mac - Apple Support - Settings > Security and privacy > (unlock with padlock) > Show a message when the screen is locked
Onyx - Settings > Session > Login screen message
See also Change the language used at the login screen on your Mac - Apple Support
Reset NVRAM
How to Reset NVRAM on your Mac - Apple Support
Start up item
With crontab -e
:
@reboot /path/to/script
With a shell script (as login item only):
In mystartupitem.command
(why as *.command
?)
#!/bin/bash
echo "Do something"
An add it to login items (System Preferences → Users and Groups → Login items)
With a plist
:
Create in /Library/LaunchDaemons
(see also What are the differences between LaunchAgents and LaunchDaemons?) a file called like local.mydaemon.plist
contains:
<?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>local.mydaemon</string>
<key>ProgramArguments</key>
<array>
<string>/path/to/binary</string>
<string>arg1</string>
<string>arg2=value</string>
<string>arg3</string>
</array>
<key>RunAtLoad</key>
<true/>
<!-- Use this for a script that runs once -->
<key>LaunchOnlyOnce</key>
<true/>
<!-- Use this user and/or group to launch daemon, remove if not defined -->
<key>UserName</key>
<string>SOME_USERNAME</string>
<key>GroupName</key>
<string>SOME_GROUP</string>
<!-- Save standard error to, remove if not needed -->
<key>StandardErrorPath</key>
<string>/dev/null</string>
<!-- Save standard output to, remove if not needed -->
<key>StandardOutPath</key>
<string>/dev/null</string>
<!-- Change start inverval, remove if not needed. See also LaunchOnlyOnce -->
<key>StartInterval</key>
<integer>30</integer>
</dict>
</plist>
Note: Label
must reflect filename without plist
extension. Note: binary can be an executable (chmod +x /path/to/shellscript
) shell script
sudo chown root:wheel /path/to/local.mydaemon.plist
launchctl load /path/to/local.mydaemon.plist
launchctl list
Change/fix login keyboard layout
# Check current user keyboard
/usr/libexec/PlistBuddy -c "Print :AppleCurrentKeyboardLayoutInputSourceID" ~/Library/Preferences/com.apple.HIToolbox.plist
# defaults -currentHost read com.apple.HIToolbox
# Set global/default keyboard
sudo /usr/libexec/PlistBuddy -c "Set :AppleCurrentKeyboardLayoutInputSourceID com.apple.keylayout.French" /Library/Preferences/com.apple.HIToolbox.plist
See you current keyboard layout: ~/Library/Preferences/com.apple.HIToolbox.plist
Security
System Integrity Protection
Aka SIP
/System
/usr
/bin
/sbin
apps that are pre-installed with OS X
Some specific softwares require to disable it
in Terminal:
csrutil status
to check statusrestart
hold down command-R to boot into the Recovery System
in Utilities > Terminal
csrutil disable; reboot
orcsrutil enable; reboot
based on what you want
SIP only applies to the volume you're currently booted from, so [one can] boot from the backup volume to delete [files] CCC updated for El Capitan | Carbon Copy Cloner | Bombich Software
just boot into "Recovery" mode by pressing "CMD+R" while rebooting.
open Terminal
your disk will be mounted in
/Volumes/Macintosh HD
(based on your drive name)update files (ex: delete files via
rm
): you have absolute control in that terminal
/Library/SystemMigration/History/Migration-[some UUID]/QuarantineRoot/
Terminal access error
If a command return an error like Operation not permitted
, or cat: ~/Library/path/to/file: Operation not permitted
, a SIP protected file is read.
Lift the restriction for Terminal: Operation not permitted - Mojave security?
App Sandbox
~/Library/Containers
Downloaded file quarantine
find ~/Downloads/geeklog-1.6.1 -type f -exec xattr -d com.apple.quarantine {} \;
or
xattr -d -r com.apple.quarantine ~/Downloads
Disable
defaults write com.apple.LaunchServices LSQuarantine -bool NO
# Set com.apple.quarantine attribute
# Quarantine state flags (as 4 hexdigits):
# 0. ?
# 1. ?
# 2. ?
# 3. ?
# 4. ?
# 5. App was opened
# 6. "Verified by Gatekeeper"
# 7. ?
# 8. ?
# 15. ?
# See also:
# - https://stackoverflow.com/questions/59974353/checking-if-macos-app-has-ever-been-un-quarantined-and-fully-launched
# - https://eclecticlight.co/2017/08/15/quarantined-more-about-the-quarantine-extended-attribute/
# - https://stackoverflow.com/questions/46198557/understanding-output-of-xattr-p-com-apple-quarantine
flags=$(printf "%04x;" "$((2#0000000000000010))")
uuid=$(uuidgen)
application="Firefox"
# application="Google\x20Chrome"
date=$(printf %x $(date +%s))
attr -w com.apple.quarantine "${flags};${date};${application};${uuid}" filename
# Insert UUID into Database
date=$(($(date +%s) - 978307200))
download_url="http://example.com/file.zip"
# fields of LSQuarantineEvent: LSQuarantineEventIdentifier, LSQuarantineTimeStamp, LSQuarantineAgentBundleIdentifier, LSQuarantineAgentName, LSQuarantineDataURLString, LSQuarantineSenderName, LSQuarantineSenderAddress, LSQuarantineTypeNumber, LSQuarantineOriginTitle, LSQuarantineOriginURLString, LSQuarantineOriginAlias
# see also https://web.archive.org/web/20210506210117/http://www.zoharbabin.com/hey-mac-i-dont-appreciate-you-spying-on-me-hidden-downloads-log-in-os-x
sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV2 "INSERT INTO \"LSQuarantineEvent\" VALUES('${uuid}',${date},NULL,'${application}','${download_url}',NULL,NULL,0,NULL,'${url}',NULL);"
# Check if UUID exists in Database
sqlite3 ~/Library/Preferences/com.apple.LaunchServices.QuarantineEventsV2 "SELECT * FROM LSQuarantineEvent WHERE LSQuarantineEventIdentifier == '${uuid}'"
Certificats
Delete Known Government-Linked Certificate Authorities: https://github.com/sammcj/delete-unknown-root-ca
FileVault
FileVault display a loginwindow at startup hask the user to decrypt the disk with its password.
FileVault is not allowed for all users
diskutil cs list | grep "Conversion Progress"
diskutil apfs list | grep "FileVault"
Conversion Progress: Optimizing 39%
FileVault: Yes (Unlocked)
FileVault: No (Encrypted at rest)
To select which user can decrypt FileVault disk:
login as admin local account
open System Preferences
open Security & Privacy
select FileVault
click on "Allow Users" (bottom of the window)
sudo fdesetup list
sudo sysadminctl -adminUser <adminUser> -adminPassword <adminPassword> -secureTokenOn <managementToken> -password <managmentPassword>
sudo fdesetup add -usertoadd <username> -keychain
Set a FileVault recovery key for computers in your institution - Apple Support - Use same master key
Firmware password
Users
Handled by OpenDirectory
UIDs < 500 are reserved.
auto login user
defaults read /Library/Preferences/com.apple.loginwindow | grep autoLoginUser | awk '{ print $3 }' | sed 's/;//'
dscl . -read /Users/<username>
dscl . list /Users | grep -v '_'
(prefixed user are daemons, etc.)dscacheutil -q user
/var/db/dslocal/nodes/Default/users/*.plist
data of OpenDirectorysudo dscl . create /Users/<username> IsHidden 1
, hide user on loginwindow and fast user switching: Hide a user account in macOS - Apple Supportdisable guest user:
ppen System Preferences
go to "Users & Groups" and click the unlock icon
click on “Guest User”
uncheck the box for "Allow guests to log in to this computer"
hide a user from login screen:
sudo defaults write /Library/Preferences/com.apple.loginwindow HiddenUsersList -array-add <username>
, to remove that config:sudo defaults delete /Library/Preferences/com.apple.loginwindow HiddenUsersList
Non interactive user
loginwindow UI will consider a user as one that can't be logged in if the following occur
the shell is /usr/bin/false
or
the AuthAuthority has ;disableduser; in it.
or
the AuthAuthority doesn't exist or contains ;basic; and the password is missing or is a single asterisk.
or
the record name is missing or blank [RealName?]
or
the uid is missing
loginwindow UI doesn't care about the UIDs number.
But the user still appears in System Preferences > Sharing > File Sharing | Screen Sharing | etc. > Add User dialog.
macports-base/portutil.tcl at 1d1bcde3157908ef4ee58e72425f42d2265cdff3 · macports/macports-base - How macports in
adduser
function set the user as non interactive user
Applications
Self-signed application
Create a self signed certificate MyCertificateName
with Keychain and trust it for all the system
sudo codesign -s MyCertificateName -f /path/to/MyAppName.app --deep
That fix the issue with macOS open the alert popup "Do you want to the application MyAppName.app to accept incoming network connections?"
Define PATH
globaly
PATH
globalySet export PATH=/my/path:$PATH
in ~/.profile
for command line, but not used by launched application (by spotlight, dock, finder, start restored windows)
A security update could break/change something:
it seems SIP strips env variables if an application is launched from another application
Open application (twice and so on)
open -n /Applications/VOTRE_APPLICATION.app
Or add this as Automator script
do shell script "open -n /Applications/VOTRE_APPLICATION.app"
Pass command line arguments to Application
Automator application
Automator > create an Application with Library/Utilities/Run Shell Script
open -a "Google Chrome" --args -pinned-tag-count=4
Replace app icon: Get Info
on original App, select icon, Cmd+C
-> Get Info
on target App, select icon, Cmd+V
Application bundle
See Create new application bundle. Not work anymore
Edit /Applications/Firefox.app/Contents/Info.plist
, change for CFBundleExecutable
or Executable File
the value to firefox-bin-with-args.sh
(the original is firefox-bin
)
In /Applications/Firefox.app/Contents/MacOS/
, create a file firefox-bin-with-args.sh
(called like change in Info.plist
)
#!/usr/bin/env bash
exec exec $(dirname "$0")/firefox-bin -ProfileManager
chmod +x firefox-bin-with-args.sh
http://superuser.com/questions/271678/how-do-i-pass-command-line-arguments-to-dock-items
Create new application bundle
Script app (bash script) can't start anymore with OSX 10.10: "Can’t open the application %s because PowerPC applications are no longer supported."
xattr -d com.apple.quarantine /Applications/My\ App.app
Allow Apps from Anywhere in Gatekeeper
"Allow apps downloaded from" "Anywhere" (from macOS Sierra)
"%s can’t be opened because it is from an unidentified developer"
sudo spctl --master-disable
# allow apps you trust without turning off code signing entirely
sudo spctl --add --label "It's OK, they're with me" /path/to/My.app
xattr -dr http://com.apple.quarantine /path/to/My.app
Crtl + Click on the App > click on "Open" button to add the app to the approved list Right click > Open
Build-in Apache
Conf: /etc/apache2
Extensions: /usr/libexec/apache2
HTTPD_ROOT
httpd -V
Restart Apache:
sudo /usr/sbin/apachectl restart
or
sudo apachectl -k restart
FileMerge
Xcode
"Agreeing to the Xcode/iOS license requires admin privileges, please re-run as root via sudo."
Accept for this account:
xcodebuild -license
Accept for all accounts:
sudo xcodebuild -license
Install Xcode Command Line Tools:
xcode-select --install
Macports
Why use Macports instead of Homebrew: El Capitan and Homebrew | Hacker News TLDR: because it place packages in /opt/local
and require sudo
Macports install in /opt/local
where Homebrew install in /usr/local
.
/usr/local
, for self, inhouse, compiled and maintained software./opt
is for non-self, external, prepackaged binary/application bundle installation area
https://guide.macports.org/chunked/installing.macports.uninstalling.html
http://trac.macports.org/wiki/Migration
https://www.macports.org/install.php
Macports is installed as root and uses its own account macports for some things.
Update and upgrade ports:
sudo port selfupdate && sudo port upgrade outdated
# later to remove old version
sudo port uninstall inactive
MacPorts Guide - Common Tasks
Install ports:
# 1. Install Xcode Command Line Tools: `xcode-select --install`
# 2. Accept Xcode licence: `sudo xcodebuild -license`
# 3. Check installed version (newer version can exist for php, node, python, perl, ruby, JDK, etc.)
sudo port install \
wget rsync \
bash bash-completion \
coreutils diffutils findutils gsed gawk gpatch \
watch \
p5-file-rename \
openssl \
gzip gnutar \
git \
curl \
gettext \
ffmpeg \
ImageMagick +rsvg \
p5-image-exiftool \
cmake \
apache-ant \
httrack \
xorg-server
# Start D-Bus
sudo port install dbus
sudo port load dbus
#sudo launchctl load -w /Library/LaunchDaemons/org.freedesktop.dbus-system.plist
#launchctl load -w /Library/LaunchAgents/org.freedesktop.dbus-session.plist
# Add `/opt/local/libexec/gnubin` to PATH
if ! grep -q "export PATH=/opt/local/libexec/gnubin:" ~/.profile
then
echo "" >> ~/.profile
echo "# Use GNU coreutils by default (installed with macport)" >> ~/.profile
echo "export PATH=/opt/local/libexec/gnubin:\$PATH" >> ~/.profile
fi
# To use bash_completion, add the following lines at the end of your .bash_profile:
if ! grep -q "/opt/local/etc/profile.d/bash_completion.sh" ~/.bash_profile
then
echo "" >> ~/.bash_profile
echo "# Enable bash-completion" >> ~/.bash_profile
echo "if [ -f /opt/local/etc/profile.d/bash_completion.sh ]; then" >> ~/.bash_profile
echo " . /opt/local/etc/profile.d/bash_completion.sh" >> ~/.bash_profile
echo "fi" >> ~/.bash_profile
fi
# NodeJS
# Note: nodejs and npm without version specified are not the lastest available
# sudo port install nodejs npm
sudo port install nodejs15 npm6
# Add to profile node config
if ! grep -q "export NODE_PATH=" ~/.profile
then
echo "" >> ~/.profile
echo "# Use global node modules (installed with macport)" >> ~/.profile
echo "export NODE_PATH=/opt/local/lib/node_modules:\$NODE_PATH" >> ~/.profile
fi
# NPM can be updated with:
# sudo npm install -g npm@latest
# Install globally some tools
# use --python=python2.7 if required
#npm install -g sqlite3
# Note: never install globaly/system-wide npm packages (via `-g`). Install in ./node_module instead
# Clean cache: `sudo npm cache clean`
# If so packages are in /opt/local/lib/node_modules/ and remains even if npm is uninstalled or deactivate via macport
# To see outdated packages, use `npm outdated -g --depth=0`
# To update global packages, use `npm update -g`
# Install PHP and composer (PHP package manager)
sudo port install php
sudo port install php80-intl php80-openssl
#sudo port select --set php php80
# Create PHP config (dev only)
sudo cp /opt/local/etc/php80/php.ini-development /opt/local/etc/php80/php.ini
# [#42344 (new composer port request) – MacPorts](https://trac.macports.org/ticket/42344)
sudo port install php74-iconv php74-mbstring
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/opt/local/bin
sudo ln -s composer.phar /opt/local/bin/composer
# Or use in each project's folder `php -r "readfile('https://getcomposer.org/installer');" | php && php composer.phar install`
# Will install packages in ./vendor
# Install python and pip (Python package manager)
sudo port install python39 py39-pip
#sudo port select --set python python39
#sudo port select --set python3 python39
#sudo port select --set pip pip39
# Or for OSX's default python come with easy_install
#sudo easy_install pip
#pip install --user package
# or
#python -m pip install --user package
# will install package in ~/Library/Python/X.Y/lib/python/site-packages
# could also be in ~/.local/lib/pythonX.Y/site-packages
# See
# - https://pip.pypa.io/en/latest/user_guide/#user-installs
# - https://www.python.org/dev/peps/pep-0370/
# - https://stackoverflow.com/questions/15912804/easy-install-or-pip-as-a-limited-user
# Install Python BeautifulSoup
pip install --user beautifulsoup4
# or with macports (system-wide):
#sudo port install py38-beautifulsoup4
# Then check
#python -c "help('modules')" | grep bs4
# Note: never install python packages system-wide http://scicomp.stackexchange.com/a/2988 (use always `--user`)
# Install ntfs-3g https://trac.macports.org/wiki/howto/Ntfs3gFinder (need to disable SIP)
sudo port install ntfs-3g
# TODO. See link
# TestDisk and photorec
sudo port install testdisk
# Ruby and gems (Ruby package manager)
sudo port install ruby27 rb-rubygems
#sudo port select --set ruby ruby27
# Add to profile user's gems folder
if ! grep -q "export GEM_HOME=" ~/.profile
then
echo "" >> ~/.profile
echo "# Use user gems (rb-rubygems installed with macport)" >> ~/.profile
echo "export PATH=~/.gem/bin:\$PATH" >> ~/.profile
echo "export GEM_HOME=~/.gem" >> ~/.profile
echo "export GEM_PATH=~/.gem:\$GEM_PATH" >> ~/.profile
fi
# Java / Open JDK
sudo port install openjdk15
How to fix "Failed to build osxfuse: command execution failed":
install builded version then create a symlink to
fuse.pc
:sudo ln -s /usr/local/lib/pkgconfig/fuse.pc /opt/local/lib/pkgconfig/fuse.pc
App store
Aka MAS (macOS App Store)
Preference pane
~/Library/PreferencePanes/
/Library/PreferencePanes/
Right click to remove prefpane
jlongman/speedlimit: Network bandwidth limiter for testing iphone apps - Network banwidth limiter
MySQL :: MySQL 5.7 Reference Manual :: 2.4.4 Installing and Using the MySQL Preference Pane - MySQL Preference Pane
hschmidt/EnvPane: EnvPane - An OS X preference pane for environment variables - Change environment variables
specialunderwear/Hosts.prefpane: a Cocoa GUI for /etc/hosts - Change hosts files (works with SIP enabled)
(old, replace by SwiftDefaultApps) Rubicode - RCDefaultApp - "allows a user to set the default application used for various URL schemes, file extensions, file types, MIME types, and Uniform Type Identifiers / UTIs"
Arcana Research - StartupSound.prefPane - "controls the volume of the startup sound of your Macintosh computer"
/System/Library/CoreServices/Applications/Archive Utility.app/Contents/Resources/Archives.prefPane
Quicklook generators
Aka QLGenerator
To view handle types:
qrmanage -m
Precedence :
The order is currently (from the less important to the most important):
System generators (in
/System/Library/QuickLook
- for Apple only)Local (in
/Library/QuickLook
)Home (in
~/Library/QuickLook
)Embedded in apps. (usally
./Contents/Library/QuickLook
)
It's impossible to desactivate a QLGenerator for same level or above other than juste rename it folder or update it's Info.plist
to reflect only wanted format support How to disable auto preview for *.doc *.docx in finder? - Ask Different http://lists.apple.com/archives/quicklook-dev/2010/Jun/msg00011.html
Spotlight
Aka Metadata Server (mds
)
See also Extended attribute
Once the macOS does kick-off the extraction of metadata from a file, it does so through a Spotlight Importer. Spotlight Importers are plug-ins for the Mac OS that a developer provides specifically for helping files created by their applications to be searchable within Spotlight. Spotlight crawls through its list of changed files, handing each one to the appropriate importer. The importers then read the files, compile a list of metadata, and then hand the metadata back to Spotlight. At this point, the changed file is available for searching within Spotlight.
/System/Library/Spotlight
/Library/Spotlight
~/Library/Spotlight
App
./Content/Library/Spotlight
/System/Library/Frameworks/CoreServices.framework/Frameworks/Metadata.framework/Versions/A/Support/mdworker
/System/Library/LaunchDaemons/com.apple.metadata.com.apple.metadata.mds.scan.plist
/System/Library/Frameworks/CoreServices.framework/Frameworks/Metadata.framework/Support/mds
/System/Library/PrivateFrameworks/SpotlightDaemon.framework/Versions/A/SpotlightDaemon
/System/Library/Frameworks/CoreSpotlight.framework/CoreSpotlightService
/System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/Metadata.framework/Versions/A/Support/corespotlightd
Turn off:
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
System Preferences > Spotlight > Privacy
(need to be verified) ignore files and directories ends with
.noindex
(and.build
) and all (hidden) files start with.
.sudo defaults read /.Spotlight-V100/VolumeConfiguration.plist Exclusions
(that depends the filesystem)sudo defaults write /.Spotlight-V100/VolumeConfiguration.plist Exclusions -array-add 'path/to/exclude'
sudo defaults write /.Spotlight-V100/Store-V1/Exclusions Exclusions -array-add 'path/to/exclude'
sudo defaults write /System/Volumes/Data/.Spotlight-V100/VolumeConfiguration.plist Exclusions -array-add 'path/to/exclude'
sudo /usr/libexec/PlistBuddy -c "Add :Exclusions: string path/to/exclude" /System/Volumes/Data/.Spotlight-V100/VolumeConfiguration.plist
sudo find / -type d -exec defaults write /.Spotlight-V100/VolumeConfiguration.plist Exclusions -array-add {}
sudo launchctl stop com.apple.metadata.mds && sudo launchctl start com.apple.metadata.mds
put in
~/Library/
,/System/
.metadata_never_index
at the root of a volume, directory / folder (see also.metadata_never_index_unless_rootfs
)
launchctl stop com.apple.metadata.mds && sudo launchctl start com.apple.metadata.mds
# Rename all node_modules to node_modules.noindex and create a symlink node_modules -> node_modules.noindex
find /path/to/projects -type d \( -path '*/.*' -o -path '*node_modules/*' -o -path '*node_module.noindex/*' \) -prune -o -type d -name 'node_modules' -exec mv '{}' '{}.noindex' \; -exec ls -s '{}.noindex' '{}' \;
Note: extended attribute com.apple.FinderInfo
doesn't have any impact, chflags hidden /path/to/file
, touch folder-to-exclude/.metadata_never_index
too
Reindex drive
# Here the main drive mounted at /
# turn indexing off
sudo mdutil -i off /
# delete Spotlight folder
sudo rm -rf /.Spotlight*
# turn indexing on
sudo mdutil -i on /
# rebuild
sudo mdutil -E /
Reindex (eq. Finder's Search not work properly): find . -name "*.md" -exec mdimport {} \;
or sudo mdutil -E /
(where /
affect the whole volume, or all volumes)
sudo launchctl unload -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.metadata.mds.plist
List file indexing (where PID is pid of process of mdworker
, use ps -e | grep mdworker
):
sudo opensnoop -n mdworker
# Use 0.1 or 0,1 depends locale or prepend command with `LANG=C`: (eg. `LANG=C sudo watch -n 0.1 "CMD"`)
sudo watch -n 0 "lsof +p PID"
sudo watch -n 0 "lsof -c mdworker"
strace -p PID -e trace=open,close
sudo fs_usage -w -f filesys mdworker | grep "open" | less +F --follow-name
Erase all Spotlight data (all volumes):
sudo mdutil -avE
Queries:
# Find all files
mdfind "*"
mdfind -onlyin "/" "kMDItemFSSize>0"
# List all metadata for a specific file
mdls /path/to/file
# Find DMG files
mdfind -0 "kMDItemFSName=*.dmg"
# Find Finder excluded files
mdfind "_kMDItemFinderExcluded=*"
mdfind "_kMDItemFinderExcluded=1"
# Find user tags / colors set by user
mdls -plist - -name _kMDItemUserTags
# Find ghost files ("if the Finder is in the middle of a copy and the source disk is suddenly disconnected") that aren't deletable ("Item XYZ is used by Mac OS X and can’t be opened.")
mdfind -onlyin /path/to/files -0 "kMDItemFSTypeCode==brok && kMDItemFSCreatorCode==MACS" | xargs -0 -n1 xattr -d com.apple.FinderInfo
# find all encrypted DMG
mdfind -0 "kMDItemFSName == '*.dmg'" | xargs -0 -IX ksh -c ' if hdiutil isencrypted "X" 2>&1 | grep -q "encrypted: YES" then echo "X -ENCRYPTED" fi'
Metadata importer
Aka Spotlight importers
# List all available metadatas
mdimport -X
# Infos about metadatas (nosearch, noindex, notokenize, multivalued, uniqued)
mdimport -r ~/Library/Spotlight/SomeImporter.mdimporter
Add to /System/Library/Spotlight/RichText.mdimporter/Contents/info.plist
(get file format mdimport -n -d1 somefile.ext
) to search inside source code:
<string>public.c-header</string>
<string>public.c-plus-plus-header</string>
<string>public.c-source</string>
<string>public.objective-c-source</string>
<string>public.c-plus-plus-source</string>
<string>public.objective-c-plus-plus-source</string>
<string>com.sun.java-source</string>
<string>public.perl-script</string>
<string>public.python-script</string>
<string>public.csh-script</string>
<string>public.shell-script</string>
<string>public.ruby-script</string>
<string>public.php-script</string>
<string>com.netscape.javascript-source</string>
Markdown to Spotlight Mac OSX Spotlight Enhancement
Printer & scanner
Most post 2013 printers implement IPP Everywhere. AirPrint is based on IPP
VueScan Scanner Software for Windows, macOS Catalina and Linux - scanner application support old scanners
Printer and scanner drivers for Mac - Apple Support - list of old devices that don't implement IPP that macOS can auto install required drivers
Print on Windows shared printer
Will ask username / password for shared printer, use Windows auth credentials or guest
for the username and password. If not asked, delete the entry of password in keychain app
macos - How to add a network printer on mac that requires authentication - Ask Different - Add advanced network printer via smb://someaddress/Some%20printer%20name URLs
Calendar and contact accounts
CardDav, CalDav
SQLite3 with principalInfo
binary PropertyList (plutil -convert xml1 -o - - < data.plist
) (ZVALUE
)
~/Library/Accounts/Accounts3.sqlite
Old (not used to store accounts config):
~/Library/Calendars/XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX.caldav
~/Library/Application Support/AddressBook/Sources/XXXXXX-XXXX-XXXX-XXXX-XXXXXXXXX/Configuration.plist ??
Howto: CardDAV in Mac OS X Addressbook with owncloud - Page 2 - ownCloud Forums and https://github.com/owncloud/documentation/blob/stable6/user_manual/pim/sync_osx.rst
See also the possibility to create configuration profiles:
Clipbload CLI
pbcopy < file.txt
echo "test" | pbcopy
pbpaste
pbpaste > file.txt
Simulate UI clicks from CLI
Corrupted executable script
Create a bash script and execute give:
bad interpreter: Operation not permitted
chmod u+x file.sh
xattr -d com.apple.quarantine file.sh
Scanning
VueScan Scanner Software for Windows, Mac OS X and Linux - Support of old scanners
SANE:
chrspeich/SaneNetScanner: A Mac OS X Scanner Driver for sane net devices - This allow to use network scanner that support SANE with Image Capture, Preview See also Possible bridge for TWAIN scanner: Image Capture → SaneNetScanner → localhost/saned → Scanner · Issue #13 · chrspeich/SaneNetScanner
Install SANE drivers – BeagleScan - Install SANE drivers on macOS (
sane-find-scanner
,scanimage -L
,TWAINBridge.app
reinstall,open /System/Library/Image Capture/Devices/TWAINBridge.app
, SANE > Open Scanner)SwingSane - Java SANE client
phpSANE download | SourceForge.net - SANE frontend in PHP
SimulPiscator/AirSane: Apple AirScan compatible SANE web frontend. - Install that frontend on the device where SANE backend are used (where the USB scanner is connected) to share the scanner over AirScan See also David Poole: Scanning from Apple AirPrint + AirScan`
TWAIN Scanners in OS X Maverick (and Yosemite) | janegil.net - TWAINBridge Maverick Fix, not useful on macOS 10.11 due to SIP
Axel-Erfurt/Sane-OSX-Xojo: Sane Scanner GUI with Xojo - SANE frontend written in Xojo include support of tesseract (OCR lib)
Automator
Delete core dump files
In /cores
folder
Only deletes core files older than 24 hours.
find /cores -name "core.*" -ctime 1 -delete
Use cron or launchd
Screens and monitors
waydabber/BetterDummy: Software Dummy Display Adapter for Apple Silicon/Intel Macs to Have Custom HiDPI Resolutions. - also useful for headless Macs (servers)
Custom screen resolution or HiDPI
OSCAR LCD Panel 1024 × 768 (HiDPI) fix
Find screen DisplayVendorID and DisplayProductID
ioreg -l -w0 -d0 -r -c AppleDisplay
Or in IORegistryExplorer (/Developer/Applications/Utilities/IORegistryExplorer.app
) or IOJones, something like IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/P0P2@1/IOPP/GFX0@0/NVDA,Display-B@1/NVDA/display0/AppleDisplay
IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/P0P2@1/IOPP/GFX0@0/NVDA,Display-A@0/NVDA/display0/AppleBacklightDisplay
is for built-in screen on Macbook Pro.
Map to /System/Library/Displays/Overrides/DisplayVendorID-XXXXX/DisplayProductID-YYYYY
where XXXXX
and YYYYY
are 1 to N hexa char
http://www.opensource.apple.com/source/IOKitUser/IOKitUser-120.4/graphics.subproj/IOGraphicsLib.c
Icon can be change be changed in /System/Library/Displays/Overrides/Icons.plist
.
EDID can be override with IODisplayEDID
. See [HOW TO] Advanced EDID Injection - Graphics Cards - InsanelyMac Forum
Problems
In log org.freedesktop.dbus-system
Service exited with abnormal code: 1
org.freedesktop.dbus-system
Service exited with abnormal code: 1
Shutdown
pmset -g
log show --predicate 'eventMessage contains "Previous shutdown cause"' --last 24h
DSLR as a webcam
Aka camera as webcam
Cam Link 4K | elgato.com - Hardware HDMI-to-USB Webcam
For Linux use gphoto2 -> ffmpeg -> v4l2loopback. See How to use your DSLR from 2008 as a webcam in 2022 (NixOS) (see also this post on Hacker News)
Old, use Camtwist and Syphon or an OBS plugin:
Java
Java 8 is the only supported version which runs applets
/System/Library/Frameworks/JavaVM.framework/Versions/A/Commands/java
is Apple's Java version. Keep it. (/usr/libexec/java_home
and/usr/bin/java
point to it). See "Do NOT remove any content in the JavaVM.framework"/System/Library/Java/JavaVirtualMachines/
is JDK location where Apple's Java 6 is installed (still the case?)/Library/Java/JavaVirtualMachines/
default location of JDK installs/usr/libexec/java_home -V
get list of installed installed JVMs
Install JDK with sudo port install openjdk14
or download it from JDK Builds from Oracle. See also:
Uninstall Oracle Java by deleting the plug-in file (JRE, for applets):
sudo rm -rf "/Library/Internet Plug-Ins/JavaAppletPlugin.plugin"
sudo rm -rf "/Library/PreferencePanes/JavaControlPanel.prefpane"
sudo rm -fr "~/Library/Application Support/Oracle/Java"
Uninstall Oracle Java JDK:
sudo rm -rf "/Library/Java/JavaVirtualMachines/jdk-interim.update.patch.jdk"
macOS is Unix
And mostly POSIX-compatible
Screen capture
Aka screen cast, screenshot
Virtualization
See also:
Interoperability
WineBottler (Abandonware)
Wineskin
Troubleshooting
ANS2 Recoverable Panic
panic(cpu 0 caller 0xfffffff025234744): ANS2 Recoverable Panic - assert failed: [14083]:low wA f7 i2070711 s3131392 n16 d0 w1.5 tGC6 tL30, d:0x12401, a2:0x42f0000, a3:0x60000000 - power(13)
assert failed: [14083]:low wA f7 i2070711 s3131392 n16 d0 w1.5 tGC6 tL30, d:0x12401, a2:0x42f0000, a3:0x60000000
RTKit: RTKit_iOS-1827.140.2.release - Client: t8012.release-AppleStorageProcessorANS2-1274.100.6~1055~1274.100.6~1055
Last updated
Was this helpful?