Настраиваем и оптимизируем работу SSD-накопителя в Windows и Ubuntu

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

Команда TRIM

Память твердотельного накопителя состоит из блоков, а блоки состоят из страниц. Чтобы обновить информацию в странице, нужно стереть весь блок целиком и только потом записать новые данные. Операция удаления не удаляет данные физически, а только помечает их для удаления. При перезаписи блока добавляется дополнительная операция очистки, из-за которой падает скорость операции. Команда TRIM очищает блоки в фоновом режиме, чтобы наготове всегда были свободные и скорость записи оставалась максимальной.

Чтобы определить состояние TRIM в Windows введем в консоли:

DisableDeleteNotify = 1 – TRIM отключен

DisableDeleteNotify = 0 – TRIM включен

Рис. 1. Определение состояния службы TRIM в WindowsРис. 1. Определение состояния службы TRIM в Windows

Для включения TRIM введем в командной строке:

Для выключения TRIM:

Проверим, включена ли команда TRIM в Ubuntu следующей командой:

Если у столбцов DISC-GRAN и DISC-MAX нулевые значения, то TRIM выключен.

Рис. 2. Определение состояния службы TRIM в UbuntuРис. 2. Определение состояния службы TRIM в Ubuntu

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

Служба SysMain

Служба SysMain (Windows 10) в предыдущих версиях Windows называлась Superfetch. Когда ОЗУ недостаточно, SysMain не записывает данные в файл подкачки, а сжимает их в ОЗУ. Также служба объединяет страницы с одинаковым содержимым. Получаем снижение объема записи на диск. Отключать нет смысла.

Как проверить состояние SysMain:

  1. В меню Пуск введем Службы .
  2. Найдем службу SysMain и запустим или остановим ее.

Служба Prefetcher

Служба Prefetcher отслеживает какие файлы запускаются при старте Windows и сохраняет их в папке C:\Windows\Prefetch . При следующем запуске компьютера Windows ссылается на эти файлы, чтобы ускорить процесс запуска. Эту папку не нужно удалять самостоятельно, она является самодостаточной и обновляется сама. Если ее удалить, то потребуется больше времени для запуска системы, так как Prefetch нужно будет собрать данные заново. У современных SSD-накопителей большой ресурс по количеству записываемых данных в день (десятки, сотни гигабайт), следовательно эту службу тоже можно не отключать.

Как проверить состояние Prefetch:

  1. Откроем Пуск и введем regedit .
  2. Перейдем в HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\PrefetchParameters и дважды щелкнем по EnablePrefetcher .
  3. Чтобы включить Superfetch введем 3 , включить только для программ – 2 , включить для файлов загрузки системы – 1 , для выключения службы – 0 .

Система индексирования Windows

Служба Windows Search индексирует файлы и папки. Эту службу можно отключить, а для поиска использовать бесплатную программу Everything , которая находит файлы и папки практически мгновенно.

Как отключить индексацию файлов:

  1. Откроем проводник и кликнем правой кнопкой мыши на диск → Свойства .
  2. Снимем флажок Разрешить индексировать содержимое файлов. .

Режим гибернации

Режим гибернации сохраняет содержимое оперативной памяти на SSD перед выключением компьютера. При включении данные с SSD загружаются в ОЗУ. Если сверхбыстрый запуск ОС не нужен, а достаточно быстрого запуска с SSD, то гибернацию можно отключить.

Чтобы отключить гибернацию в Windows откроем консоль и введем:

Для включения гибернации используем команду:

Точки восстановления системы

Отключение точек восстановления лишит пользователя возможности восстановить систему. Чем больше места, тем больше точек восстановления имеется в распоряжении. Старые точки восстановления удаляются автоматически, когда все место под них занято и нужно создать новую. Отключать не стоит.

Как проверить состояние точек восстановления:

  1. Откроем меню Пуск , введем Система и откроем панель управления.
  2. Кликнем на Защита системы .
  3. Выберем нужный диск и кликнем Настроить .

Быстрый доступ к настройкам восстановления системы:

  1. Нажмем Win + R и введем systempropertiesprotection .

Служба дефрагментации и автоматического обслуживания

Начиная с Windows 7 система научилась определять тип накопителя и отключает дефрагментацию для SSD, а взамен выполняет TRIM. Как оказалось, не всегда.

Как посмотреть состояние службы дефрагментации:

  1. Откроем меню Пуск и введем dfrgui .

Чтобы посмотреть журнал оптимизации и дефрагментации дисков откроем PowerShell из меню пуск и введем следующую команду:

Мои диски С и P расположены на твердотельных накопителях и Windows почему-то провела дефрагментацию этих дисков. Это связано с тем, что я переустанавливал Windows и это было первое выполнение задачи оптимизации по расписанию. Потом ОС выполняла только оптимизацию дисков.

Рис. 9. Журнал дефрагментации и оптимизации SSD-накопителя в WindowsРис. 9. Журнал дефрагментации и оптимизации SSD-накопителя в Windows

Файл подкачки

Когда ОЗУ недостаточно, Windows обеспечивает надежную работы программы, перемещая неиспользуемые данные на диск в файл подкачки. При его отключении некоторые программы могут работать некорректно, поэтому рекомендуется выбирать его размер в автоматическом режиме. Если файл подкачки неоправданно велик, то задать его размер вручную.

Настройка файла подкачки:

  1. Нажмем клавиши Win + R и введем sysdm.cpl .
  2. Перейдем в Дополнительно → Быстродействие → Параметры .
  3. Дополнительно → Виртуальная память → Изменить .

Выравнивание разделов

Разделы выравнивают, чтобы физические ячейки объема соответствовали логическим ячейкам и сократилось количество дисковых операций. Если разделы отличаются по длине – один кластер перекрывает два блока секторов, как в HDD, – удваивается число операций чтения и записи, накопитель работает медленнее и повышается его износ (рис. 11 ).

Рис. 11. Иллюстрация не выровненных разделов в HDDРис. 11. Иллюстрация не выровненных разделов в HDD

В SSD также нужно выравнивать разделы, чтобы продлить срок службы накопителя.

Чтобы узнать размер кластера в Windows введем в консоли:

Рис. 13. Информация о размере сектора и кластера в WindowsРис. 13. Информация о размере сектора и кластера в Windows

Как изменить размер кластера в Windows:

  1. В меню Пуск введем Создание и форматирование разделов жесткого диска .
  2. Кликнем правой кнопкой мыши по нужному тому и выберем Форматировать , либо Создать новый том . При форматировании данные на диске будут удалены.
  3. В следующем окне зададим размер кластера.

Как узнать размер кластера в Ubuntu:

/dev/sda1 – путь к разделу.

Рис. 14. Информация о размере сектора и кластера в UbuntuРис. 14. Информация о размере сектора и кластера в Ubuntu

Как изменить размер кластера в Ubuntu (все данные будут удалены):

mkfs.ntfs – форматирование в NTFS ( mkfs.ext4 – форматирование в ext4).

-c – проверка на наличие битых блоков на устройстве.

4096 – размер кластера.

Как узнать выровнен ли раздел в Windows:

  1. Введем в меню Пуск команду msinfo .
  2. Выберем Компоненты → Запоминающие устройства → Диски .
  3. Если значение Начальное смещение раздела делится на 4096 без остатка, то раздел выровнен.

Как узнать выровнен ли раздел в Ubuntu:

1 – номер раздела. Например, у sda1 будет единица.

Рис. 16. Проверка, выровнен раздел в Ubuntu или нетРис. 16. Проверка, выровнен раздел в Ubuntu или нет

Чтобы узнать номер раздела введем в консоли:

На что смотреть при покупке SSD

У твердотельных дисков есть два параметра, которые определяют его долговечность:

  1. TBW – количество циклов перезаписи, то есть общее количество данных, которое гарантированно запишется на диск в течение всего срока службы. Выражается в ТБ.
  2. DWPD – количество полных перезаписей всего накопителя в день. Выражается в (количество перезаписей)/день. Для накопителя 240 ГБ этот параметр в среднем составляет 0.3-0.4, то есть от 72 до 96 Гб в день, что очень много. Поэтому нет смысла проводить тонкую настройку SSD, отключая все службы. Вероятнее всего накопитель поменяют, чтобы увеличить объём, а не вследствие поломки.

Чем больше значение этих параметров, тем лучше.

Рис. 17. Количество циклов перезаписи SSD-накопителя с разными типами памятиРис. 17. Количество циклов перезаписи SSD-накопителя с разными типами памяти

Как оптимизировать работу SSD-накопителя

  1. Проверить, включен ли TRIM. В Windows 7, 8, 10 TRIM запускается по расписанию один раз в неделю.
  2. Не проводить дефрагментацию накопителя вручную. Windows и Ubuntu сами не дефрагментируют твердотельный накопитель.
  3. Выровнять разделы. При установке Windows и Ubuntu разделы выравниваются автоматически.

Мы узнали какие службы действительно продлевают жизнь и ускоряют твердотельный накопитель, а какие нет. Про SSD для рядового потребителя можно сказать одно – установил и забыл, так как все важные службы работают в автоматическом режиме, а ненужные отключены.

Вы пропустили

AEGIS Algorithms Android Angular Apache Airflow Apache Druid Apache Flink Apache Spark API API Canvas AppSec Architecture Artificial Intelligence Astro Authentication Authorization AutoGPT AWS AWS Aurora AWS Boto3 AWS EC2 AWS Lambda Azure Babylon.js Backend bash Beautiful Soup Bento UI Big Data Binary Tree Browser API Bun Career Cassandra Charts ChatGPT Chrome Extension Clean Code CLI ClickHouse Coding Codux Combine Compose Computer Context Fusion Copilot Cosmo Route CProgramming cron Cryptography CSS CTF Cypress DALL-E Data Analysis Data science Database dbt dbt Cloud deno Design Design Patterns Detekt Development Distributed Systems Django Docker Docker Hub Drizzle DRY DuckDB Express FastAPI Flask Flutter For Beginners Front End Development Game Development GCN GCP Geospatial Git GitHub Actions GitHub Pages Gitlab GMS GoFr Golang Google Google Sheets Google Wire GPT-3 GPT3 Gradio Gradle Grafana Graphic Design GraphQL gRPC Guidance HMS Hotwire HTML Huawei HuggingFace IndexedDB InfoSec Interview iOS Jackknife Java JavaScript Jetpack Compose JSON Kafka Kotlin Kubernetes LangChain Laravel Linux LlaMA LLM localStorage Logging Machine Learning Magento Math Mermaid Micro Frontends Mobile Mobile App Development mondayDB MongoDB Mongoose MySQL Naming NestJS NET NetMock Networks NextJS NLP Node.js Nodejs NoSQL NPM OOP OpenAI OTP Pandas PDF PHP Playwright Plotly Polars PostgreSQL Prefect Productivity Programming Prometheus Puppeteer Pushover Python Pytorch Quarkus Rabbitmq RAG Ramda Raspberry Pi React React Native Reactor Redis REST API Revolut Riverpod RProgramming Ruby Ruby on Rails Rust Scalene SCDB ScyllaDB Selenium Servers Sklearn SLO SnowFlake Snowkase Software Architecture Software Development Solara Solid Spring Boot SQL SQLite Streamlit SudoLang Supabase Swift SwiftUI Tailwind CSS Taipy Terraform Testing Transformers TURN TypeScript Ubuntu UI Design Unix UX UX Design Vim Vite VSCode Vue Web Architecture Web Components Web Development Web Frameworks Web Scraping Web-разработка Webassembly Websocket Whisper Widgets WordPress YAML YouTube Zed Наука о данных Разное Тренды

Современный подход к разработке с использованием Next.js