Canister for Mac

Installers

The latest installer for macOS is available here: https://hedge.video/download/canister/macos

Preflight Checks

Using LTO on a Mac requires a range of drivers to be installed properly. Getting your drivers sorted out can be a bit of a hassle, especially on Big Sur and later macOS versions.

Canister's Preflight Checks functionality tries to help you as much as possible by detecting any missing, outdated, inconsistent, or incomplete drivers when LTO hardware is detected.

Upon each app start, Canister will do a complete systems check - looking for Thunderbolt devices, Host Bus Adapters, and SCSI devices. On the software side, Canister checks for all required frameworks and drivers.

In a nutshell:

🟢 Everything green - you're good to go, and Canister will automatically continue.

🟠 Orange indicates a part of your setup is not 100% up to date, but it's fine to continue as is.

🔴 Red means your setup won't do. Preflight Checks will tell you how to resolve it, if possible.

Downloads

For reference, here's a list of all drivers and dependencies. Thanks to Canister Preflight Checks, you don't need these - we'll serve you the ones you need based on your system.

That said, sometimes it helps to have direct links. We regularly update this list of drivers, so there's no need to worry about checking if they're the latest version.

Hardware

A full list of compatible hardware is available here

Each Thunderbolt-based LTO drive consists of three devices:

  1. The Thunderbolt-to-PCI board

  2. A Host Bus Adapter (or "HBA"), a device translating PCI to SCSI

  3. The LTO drive itself

Non-Thunderbolt LTO drives, connected via SAS or Fibre Channel, will connect to a HBA that lives in an external box or as a PCI card inside your computer.

The only part of your hardware that requires a driver is the HBA.

Since Big Sur's release, Apple no longer ships drivers for HBAs. HBA drivers are macOS kernel extensions. Starting with Big Sur, kernel extensions require additional steps to install. On top of that, Apple silicon devices require you to change security settings to allow those extensions to run. Configuring these settings is expected behavior with Apple silicon, but cumbersome nonetheless.

We've tried to smooth out the process as much as possible, but be prepared for a bunch of successive reboots and raised eyebrows 🤷‍♂️

Host Bus Adapters

HBAs come in different flavors, and (to make life easy) not all work with LTFS.

  • Most brands, including recent mLogic units, use ATTO. Three possible ATTO drivers make matters easy: 6G, 12G PCI-3, and 12G PCI-4 ("GT").

  • Most MagStor units use Areca, but sometimes they use ATTO.

  • Old mTape units also house Areca cards (eg. ARC-1320). These tend to be incompatible with LTFS.

  • Some brands might use SANPoint or HighPoint "RocketStor" HBAs.

  • Older LSI HBAs do not work on a Mac. These cards are also sold under HP's brand name.

MagStor

If Canister detects a MagStor LTO Thunderbolt device, it will ask you to input its serial and serve you the correct driver for the HBA inside. Not all units are made equal, so don't rely on memory. Through our partnership with MagStor, we have an up-to-date list of products, serials, and HBAs.

Locate your serial on the back or bottom of your unit.

mLogic

If you have a mLogic Thunderbolt device, Canister will ask you for its serial and provide the correct driver for the HBA.

Locate your serial on the back or bottom of your unit - it should be five characters. If it's six, keep reading:

mLogic made a bit of a mess of their serials by not tracking which HBA was used with which unit. This wasn't a problem until Apple decided to stop shipping drivers with each macOS version. Depending on your unit, it either requires an ATTO or Areca driver. You can try to install both drivers, and see which one works:

https://hedge.video/external/canister/hba/atto-6

https://hedge.video/external/canister/hba/arecaM1 (for Apple silicon)

https://hedge.video/external/canister/hba/areca (for Intel)

Note: there's no need to uninstall unused kexts afterwards.

Symply

Symply exclusively uses ATTO HBAs, but the model varies with the unit. To find out which driver you need, ask Symply support or check their documentation.

OWC

Other World Computing's Mercury LTO devices use various HBA types. Reach out to OWC to learn which driver you setup needs.

Other Vendors

If your setup is not mentioned above, you'll need to install your HBA driver by hand. In most cases it's easiest to ask the vendor for support. If you are running a HBA inside a Thunderbolt enclosure, then you'll already know which driver to install.

Installing drivers

Installing drivers (AKA kernel extensions or system extensions) can be a tedious ordeal, thanks to Apple. If you run into trouble, grab a coffee, carve out some time, and we'll walk you through the process with this documentation.

If your Mac is managed through MDM, stop now and contact your System Administrator. The following steps below will not apply when using MDM.

Apple silicon and Reduced Security

On Apple silicon, you'll first need to set your Mac's security policy to "Reduced Security" to be able to load signed kernel extensions. If you're on Intel, you can skip to Installing the HBA driver.

Apple's use of "Reduced Security" language is misleading. With it, your Mac's security is on par with the level of security you've come to expect with previous versions of macOS.

  1. Shut down your Apple silicon Mac.

  2. Press and hold down the power button until your Mac boots. Your Mac will either send you directly into macOS' Recovery environment, or you'll see an Options button leading to that.

  3. Log in with your user account and select the disk you want to use.

  4. In the menu bar, go to Utilities, then select Startup Security Utility.

  1. Click Security Policy...

  1. Select Reduced Security, then enable: Allow user management of kernel extensions from identified developers .

  1. Click OK.

  2. In the menu bar, select Shut Down.

  3. Turn the Mac back on (press but don't hold the power button this time) and log in.

Installing the HBA driver

Now, install the driver for your HBA that Canister provides.

During installation, you'll see a System Extension Blocked or System Extension Updated dialog appear.

Confirm which version of macOS you're using with Canister, then follow these steps to approve the HBA driver to load in macOS:

  1. In the System Extension Blocked or System Extension Updated dialog, click Open System Settings.

  2. System Settings will launch, taking you to Privacy & Security > Security.

  3. Under the System software from developer "(Name of HBA Driver Vendor)"… prompt, click Allow.

  4. Two Privacy & Security dialogs will appear:

    1. In the first Privacy & Security dialog (Privacy & Security is trying to modify your system settings.), enter the password from a local macOS Administrator account, then click Modify Settings.

    2. In the second Privacy & Security dialog (Privacy & Security needs to authenticate to continue.), enter your macOS account’s password, then click OK.

  5. Restart your Mac. It may restart multiple times.

After rebooting, macOS might prompt you to Open System Settings or Open Security Preferences and do the whole thing again (and sometimes, a third time.)

Next, launch Canister. If Canister detects the driver isn't loaded, it will tell you to Allow driver in system settings to trigger macOS to show the much-coveted Allow button.

When successful, Canister will show you this:

Is there a 🟢 next to LTO? You may proceed to installing theSoftware bits 🥳

If not, keep reading. We suggest finding a cozy spot and a big bag of patience.

Troubleshooting kexts

We've found multiple workarounds and listed them in order of success rate. If one doesn't work for you, be sure to try the other suggestions.

Install macFUSE first

Try installing macFUSE first, then reinstall the HBA driver. Even though the install FUSE link is greyed out in Canister, you can still click it. Installing macFUSE first seems to get macOS out of its not-showing-the-Allow-button funk.

Manually load the kernel extension

Since most people use ATTO HBAs, we'll use those as an example. But you can use these steps with any kext.

First, look up your driver's name in /Library/Extensions :

  • For ATTO 6G, use ATTOExpressSASHBA2.kext

  • For ATTO 12G (PCI-3), use ATTOExpressSASHBA4.kext

  • For ATTO 12GT (PCI-4), use ATTOExpressSASHBA5.kext

Then, try loading the kernel extension manually in Terminal:

sudo /usr/bin/kmutil load -p /Library/Extensions/ATTOExpressSASHBA2.kext

You'll need to enter your password. Then, open the Security & Privacy pane again – it should show you the Allow button.

Remove the kernel extension

If you finished the installation, and your LTO drive works but stops working after each reboot, forcing you to load the kernel extension over and over again, there's likely a remnant of an older ATTO driver of your system. Here's how to remedy that:

Suppose you finished the installation, and your LTO drive works. However, after each reboot, it stops working, forcing you to load the kernel extension over (and over) again. There's likely a remnant of an older ATTO driver in your system. Here's how to remedy that:

  1. In Finder, hit Shift-Command-G, then go to /Library/Extensions .

  2. Delete any ATTOSASHBA*.kext in that folder (password required, most of the time).

  3. In Terminal, copy/paste this: sudo kextcache --clear-staging (password required).

  4. Reboot if macOS doesn't already force you to.

  5. Reinstall the ATTO driver your LTO machine requires.

Talk to IT

If any of the Terminal commands above return errors like system policy prevents loading, your computer is very likely under IT management policies that prevent kernel extensions from loading. Talk to your IT department first; they'll know what to do.

Reset the Local Kernel Extension Database in macOS

Starting in macOS Big Sur, the local kernel extension (i.e. kext) database in macOS may not retain your decisions on approving third-party system or kernel extensions to load in macOS. If macOS doesn't load a kernel extension despite multiple approvals from you, you can safely reset macOS' kext database, which revokes approval for all third-party kexts installed on your system volume.

Once you reset the local kext database, you can log back into macOS and approve any/all system or kernel extensions installed on your Mac.

  1. Save any open work and quit any open apps.

  2. Power down your Mac.

  3. Once your Mac is fully powered down, power up your Mac again in Recovery mode.

  4. Choose your system volume, log in with a macOS Administrator account, then launch Terminal.

  5. Use this command to reset your Mac's Kernel Extension database:

    1. kmutil trigger-panic-medic --volume-root /Volumes/(SYSTEM VOLUME)

      • If your system volume has a space in its name (e.g. Macintosh HD), enclose the volume name in quotation marks (e.g. "/Volumes/Macintosh HD").

    2. Press the (Return) key.

      • If you entered this command correctly, you'll see this response, All third party kexts have been unapproved and uninstalled from /Volumes/(SYSTEM VOLUME).

  6. Restart your Mac.

Once you log into macOS, you'll likely be greeted with multiple dialog boxes saying...

  • System Extension Updated

  • System Extension Blocked

...along with confirmation that you triggered the Panic Medic Boot.

You've successfully reset your local kext database in macOS.

Now you can approve the HBA driver, macFUSE, and any other existing system or kernel extensions to load in macOS.

Reinstall macOS

Do you keep running into non-loading kernel extensions? Then there's something wrong with your macOS install, likely due to upgrading your OS instead of doing a fresh install. At this point, it's just faster to reinstall macOS. Less daunting than it sounds and won't take long, thanks to APFS:

https://support.apple.com/en-gb/HT204904

Software

Now that you have installed your HBA drivers, the biggest hurdle is behind you. Let's move on:

Installing macFUSE

To make LTFS work, you'll first need to install macFUSE. LTFS uses it to represent the data onto the tape as a volume on your computer. It's also a kernel extension, so yes, more reboots.

Confirm which version of macOS you're using with Canister, then follow these steps to approve macFUSE to load in macOS:

  1. In the System Extension Blocked or System Extension Updated dialog, click Open System Settings.

    • If you clicked OK instead, click Open Security & Privacy System Preferences in the installer.

  2. System Settings will launch, taking you to Privacy & Security > Security.

  3. Under the System software from developer "Benjamin Fleischer"… prompt, click Allow.

  4. Two Privacy & Security dialogs will appear:

    1. In the first Privacy & Security dialog (Privacy & Security is trying to modify your system settings.), enter the password from a local macOS Administrator account, then click Modify Settings.

    2. In the second Privacy & Security dialog (Privacy & Security needs to authenticate to continue.), enter your macOS account’s password, then click OK.

  5. Restart your Mac. It may restart multiple times.

Not getting that Allow button?

Use this command in Terminal (all on one line):

sudo /usr/bin/kmutil load -p /Library/Filesystems/macfuse.fs/Contents/Extensions/11/macfuse.kext

Again, you'll need to enter your password, then open the Security & Privacy pane – it should show you the Allow button.

Installing LTFS

When Canister detects an HBA and LTO drive, it will deduce which LTFS you need. LTFS has a dependency called ICU to support international characters, so Canister will tell you to install ICU first. Then, you install LTFS. No reboots are needed; it's pretty straightforward.

Installing Catalogs

From 24.1 Catalog support is bundled with the Canister installer. This section is retained for legacy purposes, but no longer supported.

Up until 23.2, Catalogs requires additional drivers. Preflight Checks will prompt you to install Apple's Command Line Tools ("CLT") first:

If CLT doesn't download (it happens, as Apple hosts it themselves), you can do so manually with this Terminal command:

xcode-select --install

Then, continue with the Catalog install either by clicking "finish installation" or by downloading the Catalog installer from here.

If the Catalog installer states "The Installation failed"

Sometimes, macOS won't properly finish the Catalogs installer, stating the installation failed. If so, CLT most likely wasn't installed properly or completely. Reinstalling CLT will fix that:

  1. Delete the folder /Library/Developer/CommandLineTools. (If this folder isn't present, CLT wasn't installed anyway.)

  2. Reinstall Command Line Tools by using the following Terminal command: xcode-select --install

  3. When done, run this command to make sure the installation is correct (all on one line):

PATH="/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/libexec"; export PATH; m4 --version
  1. It will output some text, which should look like this:

GNU M4 1.4.6 Copyright (C) 2006 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Written by Rene' Seindal.

  1. Then, rerun the Catalog installer.

Still not successful? Send us your Catalog installer log.

  1. Immediately after installation, go to Finder and hit Shift-Command-G.

  2. Go to /tmp.

  3. Locate the canister-catalog-installer.log file, and email that to us.

"My LTO was showing up, but now it won't."

If your LTO drive previously worked, but your Mac no longer can see an LTO drive, neither can Canister.

There are typically two situations you can end up in:

Looking for LTO drives...

Your Mac doesn't detect any LTO SCSI device. Canister will keep scanning until it finds one.

Possible causes include:

  • You have an mLogic device, but your Thunderbolt cable probably isn't connected properly.

  • Your device requires a Thunderbolt cable, but you are using USB-C type instead.

  • You're using an LTO drive with a separate HBA, but the HBA likely isn't detected. Check if it's listed under System Information > SAS. If not, install its driver.

Looking for LTO devices

Your Mac somehow lost the connection to the LTO drive. Your best bet is to power cycle all gear, including the Mac.

Once the power cycle completes, check if all devices are listed in the System Information.app. You should see at least two entries on the SAS page:

  • A Host Bus Adapter, like ATTO or Areca

  • A Ultrium LTO SCSI, device made by IBM, HP (or HPE), Quantum, or Tandberg

"I give up"

Can't get up and running? Running in circles?

It can happen and is typically an indicator of a deeper problem. The company that sold you your LTO drive and/or Host Bus Adapter should be your first line of contact, as this is about your hardware - not Canister. That said, we're happy to help if that's a dead end. Don't hesitate to contact us, and be sure to include a screenshot of Canister's Preflight Checks.

We won't give up on you 👍

Last updated