четверг, 28 мая 2026 г.

Принудительная установка значения APM для внешних ноутбучных HDD (2,5 дюйма)

Боксы для установки в них 2,5 дюймовых дисков и дальнейшего подключения к компьютеру/ноутбуку через usb бывают разными. В том числе они отличаются по возможностям их электронной части. Это заметно в случае необходимости избавиться от периодической парковки головок, что было мной замечено при использовании HDD Toshiba и Hitachi. В качестве примера ниже приводятся снимки экрана при просмотре параметров SMART.

На этих снимках экрана электронная часть бокса транслирует все нужные возможности отображения SMART. Обратите внимание на доступность для просмотра данных во вкладках Atributes и Statistics. Вывод информации производится через дополнительно установленное ПО smartmontools и gsmartcontrol.





В плане рассматриваемого вопроса во вкладке General (самый первый рисунок). На рисунке видно, что значение APM Level отображается как 254 (максимальная производительность), то есть как будто бы на установленном в компьютере диске в утилите "Диски" в настройках диска в параметрах дополнительного управления электропитанием (APM) было установлено, что снижение оборотов запрещено.

Другим способом посмотреть установленный уровень APM является результат выполнения терминальной команды  sudo hdparm -I /dev/sdХ, где x – это третья буква, указанная для смонтированного устройства в утилите "Диски".


Введённая для рассматриваемого случая команда  sudo hdparm -I /dev/sdс  покажет такой же результат (см. в разделе Capabilities:):

Advanced power management level: 254

Более "печальная" картина имеет место при использовании другого бокса. Как видно из рисунков ниже, доступно отображение только вкладки General:



При запросе  sudo hdparm -I получены значения APM для диска Toshiba – 128, а для диска Hitachi – 1. Значение 1, если не ошибаюсь, соответствует 10 минутам и менее, а 128 – 15 минутам (подробности).



Следовательно, если длительное время держать подключенный к компьютеру такой бокс, то значение 193 SMART будет постоянно расти. И хотя ресурс парковок для ноутбучных HDD достаточно высокий (300-500 тысяч), но износа механизма хотелось бы поменьше. С целью принудительной установки APM в значение 254 при использовании таких боксов для своих нужд был создан небольшой сценарий (скрипт) sh

1. Запрашивается список смонтированных устройств.

2. На основании информации п.1 в поле ввода указывается нужный диск.

3. Для выбранного диска устанавливается APM=254

4. Проверяется текущее значение APM (произошло ли назначение APM).

Ниже приводится листинг скрипта и снимки экрана его работы. Установленные величины пауз sleep можно изменить на свои, которые обеспечат комфортное восприятие процесса. В ходе выполнения скрипта определяется, указан ли диск. Если диск не указан, то отображается уведомление о том, что диск указан не был.

#!/bin/bash
lsblk
sleep 5
zenity --width=200 --title "Disk" --text="Указать диск sda, sdb, sdc и т.п.:" --entry > /tmp/apm.txt
echo " "
echo " "
if [ -s /tmp/apm.txt ]; then
    echo "        Установка значения APM"
    echo " "
    sudo hdparm -B 254 /dev/$(cat /tmp/apm.txt)
    echo " "
    echo " "
    echo " "
    echo "        Проверка значения APM"
    echo " "
    sudo hdparm -I /dev/$(cat /tmp/apm.txt) | grep "Advanced power management level"
    echo " "
    echo " "
    sleep 20
  else
    echo " "
    echo " "
    echo "        Не указан диск."
    echo "        Повторите скрипт,"
    echo "        выбрав нужный диск."
    echo " "
    echo " "
    sleep 10
fi
rm /tmp/apm.txt
exit


Из рисунка выше видно, что подключены два внешних диска: sde и sdf. Диск sde, размером в 1 ТБ (931,5 ГБ после форматирования файловой системы) является диском HHD 3,5' и не нуждается в установке значения APM. В изменении значения APM нуждается диск sdf hfpvthjv d 500 ГБ (465,8 ГБ после форматирования), который и является ноутбучным 2,5' диском.





По злой иронии судьбы, у меня все нужные значения SMART отображаются при установке дисков в более дешёвые боксы, у которых крышки на защёлках. А при установке дисков в более дорогие боксы, у которых крышка на полозьях, значения SMART отображают только General. К первым (по данным вывода lsusb) относятся устройства JMicron USA Technology Corp. JMS578 и Initio Corporation MQ01ABF050, а ко вторым – Ugreen Storage Device и Realtek Semiconductor Corp. RTL9201.

Описанное выше, скорее всего, не будет работать с таким устройством:



понедельник, 25 мая 2026 г.

TRIM на SSD через USB в Linux Mint

 

После приобретения носителей SSD Apacer и Digma, которые подключаются через внешний бокс, возник вопрос о выполнении на них команды TRIM. Если диск SSD устанавливается как системный, то при установке ОС система автоматически назначает еженедельное задание TRIM, которое выполняется в ночное время. Однако если компьютер в это время не будет включён, то задание система будет считать "отложенным" и выполнит его позднее при первом же запуске компьютера в пределах 100 минут после его включения.

Посмотреть время выполнения предыдущего и следующего заданий TRIM можно командой systemctl list-timers

В двух первых столбцах NEXT и LEFT отображаются дата и время следующего запуска.
В следующем столбце LAST отображаются дата и время предыдущего запуска.
В крайних столбцах PASSED UNIT и ACTIVATES ищите записи fstrim.timer и fstrim.service

В /etc/systemd/system/timers.target.wants найден fstrim.timer, являющийся ссылкой на /lib/systemd/system/fstrim.timer

[Unit]
Description=Discard unused filesystem blocks once a week
Documentation=man:fstrim
ConditionVirtualization=!container
ConditionPathExists=!/etc/initrd-release

[Timer]
OnCalendar=weekly
AccuracySec=1h
Persistent=true
RandomizedDelaySec=100min

[Install]
WantedBy=timers.target


Для проверки поддержки внешним боксом команды TRIM выполните

sudo hdparm -I /dev/sdc | grep TRIM

📍  В данном примере /dev/sdc – это мой внешний носитель, определённой как /dev/sdc  (см. Стандартные – Диски), так как в приводимом примере у компьютера имеется два внутренних диска sda и sdb. Соответственно, следующим подключённым диском будет sdc.

Если получен ответ Data Set Management TRIM supported (limit 8 blocks), то ваш внешний бокс команду TRIM поддерживает.

В завершение осталось сформировать две кнопки запуска, каждая из которых будет запускать TRIM на соответствующем носителе. Так как мои носители SSD имеют метки файловых систем Digma и SD-1, то мной и созданы две кнопки запуска, в параметрах лаунчера которых указано, что выполняются в терминале:

sudo fstrim -v /media/minter/Digma

sudo fstrim -v /media/minter/SD-1

Ниже приводятся результаты выполнения указанных выше команд:

/media/minter/Digma: 68,2 GiB (73248145408 bytes) trimmed

/media/minter/SD-1: 113,5 GiB (121923174400 bytes) trimmed

Запуск TRIM был произведен после записи и удаления больших объёмов данных.