Меню Рубрики

Ssd диск для linux

Установка Linux на SSD

Диски, использующие электронные ячейки памяти (SSD — Solid State Drive), мало весят, работают бесшумно и потребляют втрое меньше энергии, чем жёсткие диски (HDD). Однако главная причина их популярности – фантастическая скорость работы. Операционная система загружается быстро, операции с файлами большого размера выполняются значительно быстрее.

Недостаток твердотельных накопителей – износ ячеек. Память деградирует в процессе перезаписи данных. В среднем через 0,5-3 года диск может выйти из строя. Для того, чтобы продлить жизнь накопителя, использование Linux на SSD должно подчиняться определённым правилам. Каким – рассмотрим в этом материале.

Особенности работы SSD

Классические жёсткие диски (HDD) хранят данные в магнитном слое. Для чтения и записи используется позиционируемая магнитная головка. Перемещение считывателя требует какого-то времени, поэтому скорость работы HDD ограничена.

Принцип работы SSD основан на использовании электронных ячеек памяти. Единицу информации хранит заряд внутри транзистора, обращение к ячейкам выполняет контроллер. Задержки при чтении или записи минимальны.

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

Инженеры успешно работают над продлением срока службы SSD, но сами пользователи также могут продлив срок жизни накопителя, правильно настроив операционную систему.

В Интернете есть сотни советов, выдаваемых поисковиками по запросу «Установка Linux на SSD», однако мы советуем воспринимать написанное с осторожностью. Остановимся на моментах, способствующих улучшению состояния SSD-хранилища без риска потери данных.

Как установить Linux на SSD?

Внешне установка операционной системы Linux на твердотельный накопитель выглядит так же, как и на магнитный диск. Могут отличаться лишь настройки файловой системы, раздела подкачки и параметры монтирования разделов.

1. Выбор файловой системы

На данном этапе для Unix разработаны специальные файловые системы, учитывающие особенности работы SSD-дисков:

  • Extended4 (ext4) – самая популярная и стабильная файловая система в этой среде, поддерживающая отключаемое журналирование, а также функцию TRIM.
  • BtrFS – файловая система, разработанная инженерами Oracle, поддерживает зеркальные копии структур данных и контрольные суммы, что позволяет легко восстанавливать файлы при повреждении. Журналы не ведутся, поэтому дополнительной нагрузки на диск не возникает.
  • XFS – файловая система, разработанная Silicon Graphics для работы с большими файлами, журналы ведутся только для регистрации изменений структур данных.
  • Flash-Friendly File System (F2FS) – разработка Samsung специально для флешек и SSD. Учитывает особенности износа памяти, собирает данные в пакет, который затем записывает в свободные области за один цикл.

Как видим, выбор богат, поле для экспериментов широкое. Однако если вы спросите, какая файловая система на SSD для Linux будет наилучшей, мы посоветуем остановиться на проверенной годами ext4. Прочие системы продолжают дорабатываться, в них могут быть критические ошибки.

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

Оперативной памяти много не бывает. Если у вас её меньше, чем 4 Гб, рекомендуем докупить и установить дополнительные планки. В этом случае файл подкачки будет меньше задействован операционной системой. Отсюда следует резонный вопрос: нужен ли swap для Linux на SSD?

При установке системы мы всё же рекомендуем создать файл подкачки. В тех случаях, когда памяти недостаточно, Linux начинает выгружаться на диск, но не падает. У вас будет шанс обнаружить и выгрузить слишком ресурсоёмкую программу.

Специфика выгрузки сегментов памяти в Linux в файл подкачки регулируется параметром swappiness. По умолчанию его значение равно 60. Чем меньше эта величина, тем сильнее должна быть перегружена система перед началом выгрузки памяти на диск.

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

В нашем случае установлено значение по умолчанию. Для того, чтобы его изменить, необходимо отредактировать файл /etc/sysctl.conf. Откройте файл в редакторе с помощью команды:

sudo nano /etc/sysctl.conf

Перейдите в конец файла, нажав на клавиатуре сочетание Alt-/, и добавьте строку:

Закройте редактор, сохранив изменения в отредактированном файле. Новые настройки вступят в силу после перезагрузки операционной системы.

3. Настройка монтирования в fstab

После того, как установка Linux на SSD завершена, рекомендуется изменить настройки монтирования. Особенностью Unix-систем является наличие специального атрибута у файлов — времени последнего доступа (access time stamp). Этот атрибут перезаписывается каждый раз при обращении какого-либо процесса к файлу. Необходимость атрибута сомнительна, а нагрузка на SSD существенна.

Обновление атрибута времени последнего доступа отключается, если добавить в строку монтирования дисков опцию noatime. Для изменения настроек необходимо отредактировать файл /etc/fstab. Это системный файл, поэтому для его редактирования нужны права суперпользователя:

sudo nano /etc/fstab

С помощью стрелок установите курсор в позицию после обозначения типа файловой системы (ext4) и после пробела впишите ключевое слово noatime. После него поставьте запятую. Обратите внимание, что пробела между запятой и следующим словом быть не должно.

Изменённые строки должны выглядеть так:

UUID=xxxxxxx / ext4 noatime,errors=remount-ro 0 1

UUID=xxxxxxx /storage ext4 noatime,defaults 0 1

4. Настройка TRIM

Настройка SSD в Linux близится к завершению. Остаётся рассмотреть метод TRIM. Так как ячейки памяти изнашиваются, встроенный контроллер каждый раз записывает данные в новые блоки. Когда свободное место подходит к концу, диск начинает притормаживать.

Файлы в операционной системе исправляются, затираются, удаляются. Задача команды TRIM (Data Set Management) – сообщить контроллеру SSD, что те или иные блоки данных уже пусты и в них можно опять записывать информацию.

В Linux команда TRIM по умолчанию выполняется раз в неделю. В случае повышенной интенсивности использования компьютера этого недостаточно, желательно запускать оптимизацию чаще.

Проверьте установки таймера, запускающего выполнение команды TRIM:

systemctl cat fstrim.timer

Убедитесь, что в секции [Timer] значение OnCalendar установлено как weekly (неделя). Для того, чтобы добавить новую настройку, выполните следующие команды:

sudo mkdir -v /etc/systemd/system/fstrim.timer.d

Теперь откройте созданный файл с помощью редактора Nano:

sudo nano /etc/systemd/system/fstrim.timer.d/override.conf

Добавьте в файл следующие строки:

[Timer]
OnCalendar=
OnCalendar=daily

Закройте редактор, сохранив изменения в отредактированном файле. Для применения настроек перегрузите компьютер или выполните команду:

sudo systemctl daemon-reload

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

systemctl cat fstrim.timer

Всё в порядке, команда TRIM теперь будет выполняться ежедневно.

Выводы

Твердотельный накопитель работает в 100 раз быстрее, чем магнитный диск, однако также имеется и своя специфика использования. Последние версии Windows или Ubuntu учитывают особенности SSD, поэтому могут быть рекомендованы к использованию с этими устройствами. Для того, чтобы установить Linux на SSD, не нужны какие-то особые знания. Мастер установки подскажет, какие шаги надо выполнить.

Скорость SSD в Linux можно измерить с помощью команды:

В результате выполнения команды на экран будет выведено время загрузки системы. Для продления срока службы SSD с обычных 3-5 до 10 лет вновь установленную систему следует правильно настроить. Не нужно выполнять советы, взятые из непроверенных источников. Достаточно выполнить важные настройки, устраняющие выполнение лишних операций записи на SSD.

Источник

Рекомендации по использованию SSD в Linux

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

Размеры разделов

Размеры разделов должны быть кратны 512 МБ. Кроме того, настоятельно рекомендуется создать раздел на жестком диске для хранения данных в /home. А также наличие как минимум двух разделов, где в одном мы будем хранить /boot, а остальное будет /.

Мы поставим /home на жесткий диск, из-за некоторых недостатков, которые приходят с дисками SSD, т.к. они теряют скорость записи, когда место на диске подходит к концу. Эта проблема исправляется с выходом новых драйверов, которые лучше управляют очисткой данных, но на данный момент она все еще существует.

Форматирование разделов

Более целесообразными являются следующие форматы:

  • ext4 (рекомендуется)
  • btrfs
  • f2fs
  • xfs
  • jfs

Все эти форматы поддерживают TRIM. Зачем так важен TRIM? Потому что он позволяет операционной системе сообщать какие блоки данных не используются и могут быть удалены. Это имеет особое значение в случае твердотельных накопителей, поскольку флэш-память типа NAND, которые используют в SSD, не может перезаписать существующие данные. Прежде чем записывать новые данные поверх существующих, необходимо сначала их удалить. Эта проблема усугубляется тем, что минимальной единицей стирания является блок, так как единицей минимальной записи является страница (блок-64 страницы).

Это означает, что с течением времени диск SSD будет, определенным образом фрагментироваться внутри (не так, как традиционные жесткие диски), являясь страницами с пустыми блоками, которые в какой-то момент, даже когда у вас есть свободное пространство на SSD, не будут пустыми страницами для записи. Это снизит производительность, за счет которой для записи новых данных будет та группа блоков, которая рассредоточена, копируя их в буферную память, стирая и собирая вместе с ними все снова на одной странице.

При удалении файла ОС помечает его как удаленный в файловой системе, но не переданный на твердотельный диск. Именно поэтому TRIM, который, как мы уже говорили, отвечает за информирование твердотельного диска, который удаляется, помогает нам избежать вышеупомянутых проблем.

Конфигурация отделки

Сначала мы проверим, поддерживает ли наш SSD TRIM следующей командой:

# hdparm -I /dev/sdX | grep TRIM

Где X-буква вашего SSD. Ответ команды будет ясен, если он показывает вам что-то подобное, как на следующем скриншоте есть поддержка TRIM, если ничего не появляется у вас её нет.

Вы можете настроить TRIM тремя способами: вручную, настроив fstab и запланировав выполнение fstrim с помощью cron или systemd.

Вручную

Мы установим пакет fstrim:

# aptitude install fstrim

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

# fstrim -v [Точка монтирования]

В точке монтирования вы указываете, где монтируется наш SSD. Можно указать просто / (Root).

Настройка /etc/fstab

С помощью опции discard в файле fstab мы можем настроить наш SSD для использования TRIM. Просто добавить опцию как показано в примере ниже:

Планирование выполнения fstrim

Наиболее эффективным методом является запланированное выполнение fstrim, которое позволяет нам пользоваться его преимуществами без какого-либо влияния на производительность.

С помощью cron

Создаём следующий файл /etc/cron.daily/trim и добавляем в него:

Предоставление прав для выполнения:
# chmod +x /etc/cron.daily/trim

С использованием systemd

Если ваш Linux использует systemd, вы можете сделать это следующим образом. Сначала мы создаем файл в /lib/systemd/fstrim.service который содержит следующее:

Примечание: где / точка монтирования корня (root).

Используем systemctl для запуска службы:

# systemctl start fstrim

Монтирование разделов

Еще одна вещь, которую мы рассмотрим, это монтирование разделов. В конфигурационном файле /etc/fstab есть опция noatime для повышения производительности диска.

Использование параметров noatime, nodiratime или relatime может повысить производительность диска. По умолчанию Linux хранит запись (записывает на диск) каждого чтения, сделанного atime. Это полезно при использовании Linux для серверов, но не имеет большого значения при использовании для рабочего стола. Недостатком опции по умолчанию atime является то, что даже чтение файла из кэша памяти (чтение из памяти, а не с диска напрямую), даже в этом случае, он будет зарегистрирован! Использование параметра noatime полностью отключает обновление времени доступа к файлам при каждом чтении файла. Мы не добавляем два варианта noatime и nodiratime, потому что noatime уже включает nodiratime.

Временные каталоги

Также настройки временных каталогах (для/tmp, /VAR и/boot, в папке /var/lock и /var/log) в оперативной памяти, чтобы избежать записи на диск. Если у вас мало оперативной памяти, еще лучше иметь раздел на жестком диске на всю жизнь. Параметры монтирования noatime,nodiratime, nodev и nosuid.

Настройка GRUB: вход/выход планировщика

В целом, подавляющее большинство Linux используют CFQ для планирования устройств ввода / вывода. Однако для дисков SSD есть и другие варианты, которые являются более удачными:

  • noop (рекомендуется)
  • deadline

Если SSD будет единственным носителем информации компьютера, мы настроим GRUB изменяя файл /etc/default/grub.

Мы будем искать в файле что-то вроде «GRUB_CMDLINE_LINUX=»» и оставим его так же:

Сохраните изменения и обновите grub с помощью этой команды:

# update-grub

SWAP или без SWAP?

Если не волноваться за срок полезного использования, мы все равно можем настроить своп (в том случае, если у нас очень мало оперативной памяти) но с несколькими нюансами:

  • Уменьшить процент использования SWAP/RAM 1%
  • Уменьшить значение блоков данных кэша со 100 до 50
  • Изменить частоту обращений к диску от 500 до 1500

Для этого мы модифицируем следующий файл /etc/sysctl.conf и меняем или добавляем эти значения:

Сокращение количества проверок файловых систем

Как известно, каждый раз при запуске система автоматически выполняет проверку файловых систем на предмет того, все ли в порядке.

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

С помощью tune2fs вы можете изменить это значение, а также сделать много других вещей, всегда указывая на раздел, на котором мы хотим действовать:
# tune2fs -c 80 /dev/sda1 (каждые 80 перезагрузок)
# tune2fs -i 2m /dev/sda1 (каждые 2 месяца)
# tune2fs -i 2w /dev/sda3 (каждые 2 недели)
# tune2fs -i 2d /dev/sda1 каждые 2 дня)
# tune2fs -l /dev/sdb1 (просмотр полной записи раздела)
# tune2fs -l /dev/sda3 | grep ‘Last checked’ (просмотр даты последнего сканирования)
# tune2fs -l /dev/sda3 | grep -i check (время проверки)
# tune2fs -i 0 /dev/sda3 (отключить проверку)

Испытание Скорости

С помощью команды hdparm-Tt /dev/sdX , мы можем сделать тест скорости записи, так что вы можете увидеть разницу я сделал два теста, один на SSD и другой на жестком диске. Вот результат:

/dev/sdb:
Timing cached reads: 2070 MB in 2.00 seconds = 1034.96 MB/sec
Timing buffered disk reads: 646 MB in 3.00 seconds = 215.11 MB/sec

/dev/sda:
Timing cached reads: 28842 MB in 2.00 seconds = 14435.64 MB/sec
Timing buffered disk reads: 1232 MB in 3.01 seconds = 409.76 MB/sec

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

  • Последняя версия операционной системы mac os
  • Последняя версия mac os как называется
  • Последняя версия mac os x lion
  • Последнее обновление mac os sierra
  • После установки windows mac os не загружается