New command-line tools in High Sierra

1 October 2017, 09:08

Feature head image

Here’s a list of the differences between the main command-line tool listings in High Sierra compared to its predecessor Sierra. What’s new? What’s gone? Here you can find out.

There are not very many new tools, and none seem vital from an everyday-usage perspective. Perhaps of most interest is the removal of the command-line ftp and telnet programs – although surely this was a long time coming considering how insecure these are.

There’s also a new yaa archive filetype that I can’t find any information about online. But take a look at the list see what you think. If you can provide more info of any of the tools then share the info in the comments below.

To get this information I simply diff’ed the file listings of /bin, /sbin, /usr/sbin and /usr/bin on Sierra and High Sierra – these being listed in the $PATH for a standard macOS user (/usr/local/bin/ is also listed, but does not exist within a default install of macOS).

To compare the contents of the paths, I used a virtual machine with a fresh Sierra installation, and then updated it to High Sierra. Notably, the Xcode command-line tools were NOT installed, and nor were any third-party command-line managers like brew. It’s possible a virtual machine installation doesn’t install certain services common to an actual bare-metal installation of macOS. Therefore some command-line tools might be missing from this list.

In each case I’ve provided the summary in the man page for that command, or the description that appears when you type the command followed by ––help.

Here’s the new tools provided within High Sierra. See later in this blog post for tools that have disappeared.

/bin & /sbin
All filenames identical.

Contents of /usr/bin

Control the macOS content cache (from AssetCache manpage: “AssetCache speeds up the download of software and content distributed by Apple by locally caching assets that were previously downloaded on your network. AssetCache is launched automatically by the system. Users should not run AssetCache manually.”) MacKungFu note: This is part of the new caching server provided with the client macOS installation, and which was formerly part of macOS Sierra Server.)

This tool generates files that permit Apple to investigate issues with the disk and storage configuration of your device and to help improve related Apple products.

Configures the Disk Mount Conditioner. The Disk Mount Conditioner is a kernel provided service that can degrade the disk I/O being issued to specific mount points, providing the illusion that the I/O is executing on a slower device.

ktrace can configure the system to trace events, or record them to a file, and print a human-readable representation of the events.

yaa creates and manipulates YAA archives. MacKungFu note: I can’t find this archive file format mentioned anywhere online. Bizarre.

Contents of /usr/sbin

The Bluetooth daemon handles SDP transactions, link key management, and incoming connection acceptance. It cannot be used directly by the user. (MacKungFu note: the older blued is no longer in High Sierra but is present in Sierra.)

Control and report on CKKS (MacKungFu note: Appears to be CloudKit-related.)

skywalkctl is a utility used to interact with the Skywalk subsystem, which provides the plumbing between various networking-related pieces of software and hardware. It should only be used in a test and debug context. Using it for any other purpose is strongly discouraged.

The wfsctl utility allows administrators to start, stop, and check the status of the WebDAV File Sharing service (WFS). It also allows administrators to create and delete WebDAV share points. It operates by configuring the Apache httpd server. The wfsctl command requires root privileges.

Tools removed from High Sierra
Here are the tools in Sierra that have been removed from High Sierra. Note that I have not included tools that have been removed but that are still actually present with updated version numbers.

/bin & /sbin
As above, all filenames are identical.

Contents of /usr/bin

Control the macOS caching server.
Utility to verify certificates. The verify command verifies certificate chains.
Internet file transfer program. ftp is the user interface to the Internet standard File Transfer Protocol. The program allows a user to transfer files to and from a remote network site.
Server and Clients for Emacs
Server and Clients for Emacs
Server and Clients for Emacs
Server and Clients for Emacs
User interface to the TELNET protocol. The telnet command is used to communicate with another host using the TELNET protocol.
No man page but it’s part of the Ruby on Rails framework.
In its first form, tethered-caching creates a tethered network, starts a caching service, and prepares all tethered iOS devices to use that network and caching service. The caching service in macOS Server is configured and started if macOS Server is installed on this computer.

Contents of /usr/sbin

apxs is a tool for building and installing extension modules for the Apache HyperText Transfer Protocol (HTTP) server.
The Mac OS X Bluetooth daemon.
The timed utility is a time server daemon which may be invoked at boot time via launchd.
The timedc utility is used to control the operation of the timed program.

Leave a comment...