Не включается trim mac os catalina

Как включить поддержку TRIM для SSD сторонних производителей в Mac OS X

Тема будет актуальна в первую очередь владельцам старых маков, когда нет возможности установить OS X Yosemite (10.10.4) или новее, но вы решили дать своему компьютеру или ноутбуку вторую жизнь, заменив обычный диск на SSD. Впрочем, для владельцев более свежих устройств тоже найдется полезная информация, если вы самостоятельно делали апгрейд и установили сторонний SSD.

Поддержка TRIM появилась с выходом Windows 7, а в Mac OS X начиная с версии 10.6.6. Однако Apple и тут отличилась, включив поддержку данной команды исключительно для оригинальных дисков, поставляемых вместе с компьютерами Mac, любые сторонние диски этой возможности оказались лишены.

Как такое возможно? Дело в том, что за работу команды TRIM в операционной системе отвечает драйвер, в Mac OS эта роль возложена на расширения ядра — kext (kernel extension) IOAHCIFamily.kext. Тут то Apple и подложила свинью любителям самостоятельно апгрейда, проверяя наличие строки «APPLE SSD» в прошивке твердотельного накопителя. Если подобной метки не находилось, то досвидули — никакого TRIM’а для этого накопителя не будет.

Счастье пришло с выходом OS X Yosemite (10.10.4), где поддержка TRIM стала доступна для любых сторонних SSD (по умолчанию команда может быть отключена). Для ее активации достаточно в терминале ввести всего одну команду:

Еще раз обращаю внимание, что активировать TRIM необходимо только при установке сторонних SSD в Mac. Если накопитель был установлен изначально, то он работает в оптимальном режиме по умолчанию.

Назревает вопрос, откуда вдруг такая щедрость? Дело в том, что с новыми моделями ноутбуков Apple нашла другой путь навязывать свои фирменные комплектующие — каждое новое поколение современных Macbook теперь имеет собственный уникальный разъем подключения SSD, но об этом расскажу в одной из следующих статей.

Активация TRIM в Mac OS X (ниже 10.10.4) для любых SSD накопителей

Активировать TRIM для изначально неподдерживаемых SSD накопителей в MacOS всё-таки можно путём некоторой правки системного кекста IOAHCIFamily.kext, который отвечает за поддержку TRIM. Суть метода в следующем — в бинарнике кекста строчка «APPLE SSD» (встречается в двух местах) заменятся нулями. Таким образом логика его работы меняется на следующую: если искомая строка равна «ничего», то активируется TRIM для этого накопителя.

Данный метод придуман не мной, описание можно найти в интернете. Я лично проверял работу этого метода на паре Mac mini, так что всё реально работает. Команды удобно выполнять в терминале копированием-вставкой, так вы избежите ошибок.

  1. Получаем права администратора (root’а):
  2. Делаем резервную копию оригинального драйвера: cp /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage-orig
  3. Патчим бинарный файл в кексте IOAHCIFamily.kext.

а) Для Mac OS X Snow Leopard и Lion (10.6.6-10.7.4), а так же Mountain Lion 10.8.0:

perl -pi -e ‘s|(\x52\x6F\x74\x61\x74\x69\x6F\x6E\x61\x6C\x00).<9>(\x00\x51)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg’ /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage

б) Для OS X Lion и Mountain Lion (10.7.5 и выше, 10.8.1 и выше):

perl -pi -e ‘s|(\x52\x6F\x74\x61\x74\x69\x6F\x6E\x61\x6C\x00<1,20>)[^\x00]<9>(\x00<1,20>\x4D)|$1\x00\x00\x00\x00\x00\x00\x00\x00\x00$2|sg’ /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage

  • Чистим кеш: kextcache -system-prelinked-kernel; kextcache -system-caches
  • Перезагружаемся.
  • Проверить заработал ли TRIM довольно легко, достаточно посмотреть информацию о системе, выбрав пункт Последовательный-ATA (Serial-ATA), где увидим строку «Поддержка TRIM».

    Хочу отметитесь, что повторно выполнять патч нужно при любом обновлении Mac OS X (OS X 10.7.1 > 10.7.2 > 10.7.3 > . ), но думаю это не актуально. Восстановить оригинальный kext всегда можно из резервной копии, которую мы делали ранее:

    sudo mv /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage-orig /System/Library/Extensions/IOAHCIFamily.kext/Contents/PlugIns/IOAHCIBlockStorage.kext/Contents/MacOS/IOAHCIBlockStorage

    После чего снова чистим кеш и перезагружаемся:

    kextcache -system-prelinked-kernel; kextcache -system-caches

    Если считаете статью полезной,
    не ленитесь ставить лайки и делиться с друзьями.

    Источник

    [OS X] Включаем нативную поддержку TRIM для сторонних SSD

    Некоторые версии купертиновской компьютерной ОС не обещают привычного множества новых функций. Большинство изменений в таких релизах сосредоточены «под капотом», и многие из них на первый взгляд не особо заметны. Однако значимость их от этого не страдает, и об одной из таких «скромных» опций мы расскажем в данном материале.

    Выпуском новых версий своей системы Apple радует не только жаждущих бесплатного обновления пользователей более старых Mac, но и тех из них, кто решил сделать апгрейд устройства и установить вместо медленного винчестера современный твердотельный накопитель. Речь идёт, конечно, об отличных от фирменных «яблочных» SSD-дисках, ведь начиная с 10.10.4 для них добавлена возможность включить поддержку метода TRIM, с помощью которого операционная система сообщает накопителю о уже удаленных из таблицы файлов данных. Этой цели в OS X служит команда trimforce.

    Прежде, чем продолжить, настоятельно рекомендуем выполнить резервное копирование данных при помощи Time Machine или любым удобным вам способом. Также напоминаем, что выполнение операции производится на ваш страх и риск: корпорация Apple не может гарантировать работу инструмента для аппаратного обеспечения сторонних производителей, которое не прошло должного тестирования на предмет совместимости с TRIM, и, как следствие, сохранность хранимых на нём данных может оказаться под вопросом. Об этом честно уведомляет встроенное предупреждение.

    Итак, для того чтобы принудительно включить поддержку TRIM для выбранного накопителя, нам понадобится любимое народными массами приложение «Терминал», расположенное по умолчанию в папке «Утилиты». Далее вводим вот такую команду (потребуется пароль администратора, при вводе не отображаемый на экране).

    А вот и тот самый «дисклеймер».

    Разумеется, подобные манипуляции требуются не во всех случаях. Например, накопители «яблочного» производства не нуждаются в trimforce, поскольку поддержка TRIM встроена в них изначально, а некоторые сторонние производители применяют вместо неё собственные алгоритмы. Само собой, на жёстких дисках команда также не работает.

    Надеемся, этот простой совет поможет дискам прослужить вам как можно дольше. Приятной работы в OS X!

    Редакция AppleInsider.ru не несёт ответственности за возможные последствия выполнения инструкций, предоставленных третьей стороной или не рекомендуемых к выполнению корпорацией Apple, а также использование аппаратного и программного обеспечения, произведённого сторонними вендорами.

    По материалам OSXDaily

    Новости, статьи и анонсы публикаций

    Свободное общение и обсуждение материалов

    Лонгриды для вас

    Вас тоже удивляют цены на оригинальные ремешки для Apple Watch? Мы отобрали их ПОЛНЫЕ копии, которые в 10, 20 и даже в 30 раз дешевле. Можно менять ремешок хоть каждую неделю!

    Apple решила добавить в Safari для iOS поддержку полноценных расширений. Они будут универсальными и для мобильных, и для настольных устройств, а в будущем, возможно, завезут поддержку расширений для Google Chrome

    Apple планирует ещё больше расширить возможности iPhone и iPad в iOS 15, добавив недостающих функций и качественно переработав то, что уже давно нужно было переработать: iMessage, рабочий стол, систему уведомлений и много чего ещё

    Источник

    Включаем поддержку TRIM для сторонних SSD в macOS

    SSD-диски намного быстрее, чем стандартные варианты HDD, но их производительность тоже может деградировать, если не включена функция TRIM. Рассказываю, что это за функция, кому она нужна, и как ее включить.

    Для начала расскажу немного о том, что представляет из-за себя TRIM.

    Если кратко: Функция ускорения SSD-дисков при повторном использовании заполненного пространства.

    Если подробнее: Специальная команда очистки SSD-диска, уничтожающая удаленные данные с хранилища в фоновом режиме между процедурами записи и чтения информации.

    На HDD-дисках новые данные всегда записывались поверх старых «удаленных». В случае с SSD-дисками такое невозможно. Необходимо сначала зачистить остатки файлов и документов, и только потом начинать записывать новые данные. Это занимает много времени, и каждый процесс записи затягивается. TRIM зачищает диск в фоновом режиме, когда вы не пользуетесь жестким диском.

    На компьютерах Apple TRIM включен по умолчанию, но если вы поменяли жесткий диск (например, старый сломался, или вы захотели добавить диск с увеличенным объемом), то эта функция будет выключена.

    Чтобы ее включить:

      Открываем программу «Терминал». Это можно сделать, запустив поиск Spotlight и введя туда название приложения «Терминал», или попросить Siri сделать это за вас.

    Один из простейших способов запуска программ в macOS

    Здесь вводим команду и пароль

    Эту процедуру нужно повторять каждый раз после установки новой версии операционной системы или обновления.

    Как проверить, включен ли TRIM

    Чтобы убедиться в том, что TRIM включен и работает, делаем следующее:

    1. Открываем основное меню Apple (пиктограмма с яблоком в левом верхнем углу).
    2. Выбираем пункт «Об этом Mac».

    Это меню доступно из любого приложения

    В этом окне можно ознакомиться с техническим оснащением компьютера

    Если напротив этого пункта написано «Да», значит, TRIM работает. Соответственно, если — «Нет», то не работает.

    Как включить TRIM с помощью сторонней программы

    В старых версиях macOS (до 10.11 El Capitan) процедура включения поддержки TRIM — сложнейший квест с прошивкой специальных драйверов и системных компонентов. К счастью, нашлись умельцы, которые обернули все эти сложные задачи в одну удобную программу. Правда, она стоит денег. Речь идет об утилите TRIM Enabler от компании Cindori.

    • Запускаем программу.
    • Выбираем вкладку Trim в верхней части интерфейса.
    • Переводим переключатель в активное положение, чтобы включить функцию TRIM.

    Используем это окно, чтобы не возиться с терминалом и драйверами

    В этой же программе можно посмотреть общее состояние SSD-диска. Для этого просто открываем вкладку Health. TRIM Enabler автоматически проводит ряд тестов и составляет общий отчет о состоянии «здоровья» накопителя.

    Тут можно выяснить, в чем еще может быть причина медленной работы жесткого диска

    Источник

    chris1111 / TirmEnabler Catalina.command

    #! /bin/bash
    # Simple script by chris1111
    # Vars
    apptitle= » Trim Enabler Catalina «
    version= » 1.0 «
    # Set Icon directory and file
    iconfile= » /System/Library/CoreServices/Expansion Slot Utility.app/Contents/Resources/AppIcon.icns «
    # Select Trim Choice
    response= $( osascript -e ‘ tell app «System Events» to display dialog «Enable or Disable the Trim in macOS Catalina\n\nCancel for Exit» buttons <"Enable","Disable","Cancel">default button 1 with title » ‘ » $apptitle » ‘ ‘ » $version » ‘ » with icon POSIX file » ‘ » $iconfile » ‘ » ‘ )
    action= $( echo $response | cut -d ‘ : ‘ -f2 )
    # Action is user select Disable
    if [ » $action » == » Disable » ] ; then
    response= $( osascript -e ‘ tell app «System Events» to display dialog «Your Choice is Disable Trim Enabler Catalina\n\n» buttons <"Cancel","OK">default button 2 with title » ‘ » $apptitle » ‘ ‘ » $version » ‘ » with icon POSIX file » ‘ » $iconfile » ‘ » ‘ )
    answer= $( echo $response | grep » OK » )
    # Cancel if unable
    if [ ! » $answer » ] ; then
    echo » Program closing User cancelled
    Exit «
    exit 012345
    fi
    sudo mount -uw /
    killall Finder
    sudo trimforce disable
    exit 0
    fi
    # Action is user select Enable
    if [ » $action » == » Enable » ] ; then
    response= $( osascript -e ‘ tell app «System Events» to display dialog «Your Choice is Enable Trim Enabler Catalina\n\n» buttons <"Cancel","OK">default button 2 with title » ‘ » $apptitle » ‘ ‘ » $version » ‘ » with icon POSIX file » ‘ » $iconfile » ‘ » ‘ )
    answer= $( echo $response | grep » OK » )
    # Cancel if unable
    if [ ! » $answer » ] ; then
    echo » Program closing User cancelled
    Exit «
    exit 012345
    fi
    sudo mount -uw /
    killall Finder
    sudo trimforce enable
    exit 0
    fi
    # Cancel is user selects Cancel
    if [ ! » $imagepath » ] ; then
    echo » Program closing User cancelled
    Exit «
    exit 012345
    fi

    This comment has been minimized.

    Copy link Quote reply

    chris1111 commented Jul 20, 2019

    See Choice Enable


    This comment has been minimized.

    Copy link Quote reply

    driscollxy commented Oct 13, 2019 •

    First of all, thank you for your script.
    After run script, I found it has issue on sudo mount -uw /:
    ./trim_enable.sh
    Password:
    mount_apfs: volume could not be mounted: Operation not permitted
    mount: / failed with 77
    IMPORTANT NOTICE: This tool force-enables TRIM for all relevant attached
    devices, even though such devices may not have been validated for data
    integrity while using TRIM. Use of this tool to enable TRIM may result in
    unintended data loss or data corruption. It should not be used in a commercial
    operating environment or with important data. Before using this tool, you
    should back up all of your data and regularly back up data while TRIM is
    enabled. This tool is provided on an “as is” basis. APPLE MAKES NO WARRANTIES,
    EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION THE IMPLIED WARRANTIES OF
    NON-INFRINGEMENT, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE,
    REGARDING THIS TOOL OR ITS USE ALONE OR IN COMBINATION WITH YOUR DEVICES,
    SYSTEMS, OR SERVICES. BY USING THIS TOOL TO ENABLE TRIM, YOU AGREE THAT, TO THE
    EXTENT PERMITTED BY APPLICABLE LAW, USE OF THE TOOL IS AT YOUR SOLE RISK AND
    THAT THE ENTIRE RISK AS TO SATISFACTORY QUALITY, PERFORMANCE, ACCURACY AND
    EFFORT IS WITH YOU.
    Are you sure you wish to proceed (y/N)?

    This comment has been minimized.

    Copy link Quote reply

    chris1111 commented Oct 13, 2019

    Do you have a Core Storage Volume?

    This comment has been minimized.

    Copy link Quote reply

    driscollxy commented Oct 13, 2019

    Do you have a Core Storage Volume?

    No, I have no CoreStorage.
    I list using diskutil cs list shows 2 external disks (no Macintosh HD in the list).

    This comment has been minimized.

    Copy link Quote reply

    chris1111 commented Oct 13, 2019

    I use and test / Built the script with SIP Disable

    This comment has been minimized.

    Copy link Quote reply

    driscollxy commented Oct 14, 2019

    I use and test / Built the script with SIP Disable

    Oh, I got it. Thank you for your answer about SID Disable. This case I’m ok to ignore mount: / failed with 77 for MacOS is SIP Enable.

    Источник

    Читайте также:  Windows 10 слетает монитор
    Оцените статью