- Использование ALT Linux на твердотельных дисках
- Выравнивание разделов
- Минимизация записи
- временные файлы
- журналы
- своп
- Настройки
- block layer
- VFS
- файловые системы
- общие
- ext4
- btrfs
- Примечания
- Ссылки
- обзорные
- предметные
- Использование ALT Linux на твердотельных дисках
- Выравнивание разделов
- Минимизация записи
- временные файлы
- журналы
- своп
- Настройки
- block layer
- VFS
- файловые системы
- общие
- ext4
- btrfs
- Примечания
- Ссылки
- обзорные
- предметные
- ОС не видит NVMe SSD
Использование ALT Linux на твердотельных дисках
SSD (Solid State Drive, твердотельный накопитель) — перспективный вид постоянной памяти, отличающийся высокой скоростью и низкой латентностью доступа, который уже пригоден для использования в десктопных и серверных задачах.
Несмотря на эти достоинства и совместимость с обычными SATA HDD по интерфейсу большинства моделей, начинка радикально отличается по поведению и без учёта этой разницы можно получить снижение производительности и сокращение срока службы.
Выравнивание разделов
Вкратце — как и для HDD с размером сектора более 512 байт или страйповых RAID, для получения разумной производительности необходимо учитывать размер физического блока [1] при разбиении устройства на разделы. Может быть достаточно отделить первые 1—4 [2] двоичных (sic!) мегабайта и начинать первый раздел с 2048-го или 8192-го сектора размером в 512 байт; текущий fdisk сделает это автоматически, инсталер 6.0+ — тоже.
Минимизация записи
Количество циклов перезаписи для flash-памяти ограничено, поэтому при всех предпринимаемых производителями мерах по wear leveling стоит по возможности снизить запись на разделы, размещённые на SSD-накопителе (особенно мелкоблочную случайного характера).
временные файлы
Рекомендуется /tmp на tmpfs (по умолчанию в 4.0+) совместно с pam_mktemp. Можно обдумать отключение дискового кэша браузера.
журналы
- десктоп: рекомендуется отключить ( chkconfig syslogd off; service syslogd stop )
- сервер: стоит пересмотреть конфигурацию syslog (см. /etc/syslog.conf ).
своп
При достаточном количестве RAM можно обдумать/проверить работу без раздела/файла подкачки (либо вынести его на HDD).
Настройки
block layer
Рекомендуется выставить планировщик ввода-вывода noop или deadline [3] , добавив в /etc/sysfs.conf ( sysfsutils ) строку
block/sda/queue/scheduler = deadline
echo noop > /sys/block/sda/queue/scheduler
VFS
Рекомендуется добавить в /etc/sysctl.conf строку
файловые системы
Некоторые ФС уже обзавелись [4] поддержкой SSD, которую стоит задействовать — сперва проверив при помощи mount -o remount,option=value вручную и затем аккуратно зафиксировав в /etc/fstab .
общие
ext4
- обязательно при поддержке TRIM накопителем: discard
- желательно: data=writeback,delalloc,nobarrier
- возможно [6][7] : stripe=1024,commit=NN,max_batch_time=NNNNN,min_batch_time=NNNN
для использования опции монтирования data=writeback для корневой файловой системы (/) нужно также добавить в параметры загрузки ядра: rootflags=data=writeback
btrfs
Примечания
- ↑ . даже если про него железка смело врёт, что «512 bytes»!
- ↑ см. тж. flashbench и здесь
- ↑deadline вроде как больше подходит для контроллеров недорогих SSD, которые могут «захлебнуть» запись; noop чуть дешевле по CPU
- ↑ Linux 2.6.33++
- ↑ также включаетnodiratime
- ↑ почитайте man mount и подгоните под свою ситуацию!
- ↑ замечено, что как минимум под 2.6.39-pure-emerald-alt6 max_batch_time получает значение min_batch_time, см. /proc/mounts
Ссылки
обзорные
предметные
Использование ALT Linux на твердотельных дисках
SSD (Solid State Drive, твердотельный накопитель) — перспективный вид постоянной памяти, отличающийся высокой скоростью и низкой латентностью доступа, который уже пригоден для использования в десктопных и серверных задачах.
Несмотря на эти достоинства и совместимость с обычными SATA HDD по интерфейсу большинства моделей, начинка радикально отличается по поведению и без учёта этой разницы можно получить снижение производительности и сокращение срока службы.
Выравнивание разделов
Вкратце — как и для HDD с размером сектора более 512 байт или страйповых RAID, для получения разумной производительности необходимо учитывать размер физического блока [1] при разбиении устройства на разделы. Может быть достаточно отделить первые 1—4 [2] двоичных (sic!) мегабайта и начинать первый раздел с 2048-го или 8192-го сектора размером в 512 байт; текущий fdisk сделает это автоматически, инсталер 6.0+ — тоже.
Минимизация записи
Количество циклов перезаписи для flash-памяти ограничено, поэтому при всех предпринимаемых производителями мерах по wear leveling стоит по возможности снизить запись на разделы, размещённые на SSD-накопителе (особенно мелкоблочную случайного характера, для которой ожидаема высокая степень write amplification).
временные файлы
Рекомендуется /tmp на tmpfs (по умолчанию в 4.0+) совместно с pam_mktemp. Можно обдумать отключение дискового кэша браузера.
журналы
- десктоп: рекомендуется отключить ( chkconfig syslogd off; service syslogd stop )
- сервер: стоит пересмотреть конфигурацию syslog (см. /etc/syslog.* ).
своп
При достаточном количестве RAM можно обдумать/проверить работу без раздела/файла подкачки (либо вынести его на HDD).
Настройки
block layer
Можно выставить планировщик ввода-вывода noop или deadline [3] , добавив в /etc/sysfs.conf ( sysfsutils ) строку
block/sda/queue/scheduler = deadline
echo noop > /sys/block/sda/queue/scheduler
VFS
Рекомендуется добавить в /etc/sysctl.conf строку
файловые системы
Некоторые ФС уже обзавелись [4] поддержкой SSD, которую стоит задействовать — сперва проверив при помощи mount -o remount,option=value вручную и затем аккуратно зафиксировав в /etc/fstab .
В последнее время считается, что рекомендуемым вариантом является периодическое выполнение команды fstrim -a , а не применение опций ФС для немедленной отработки TRIM по освобождаемому пространству. Одновременное применение опций ФС и fstrim не имеет смысла.
общие
ext4
- желательно: data=writeback,delalloc,nobarrier
- при поддержке TRIM накопителем: discard
- возможно [6][7] : stripe=1024,commit=NN,max_batch_time=NNNNN,min_batch_time=NNNN
для использования опции монтирования data=writeback для корневой файловой системы (/) нужно также добавить в параметры загрузки ядра:
btrfs
- ssd (btrfs автоматически применяет опцию ssd, если видит SSD)
- при поддержке TRIM накопителем: discard
Примечания
- ↑ . даже если про него железка смело врёт, что «512 bytes»!
- ↑ см. тж. flashbench и здесь
- ↑deadline вроде как больше подходит для контроллеров недорогих SSD, которые могут «захлебнуть» запись; noop чуть дешевле по CPU
- ↑ Linux 2.6.33++
- ↑ также включаетnodiratime
- ↑ почитайте man mount и подгоните под свою ситуацию!
- ↑ замечено, что как минимум под 2.6.39-pure-emerald-alt6 max_batch_time получает значение min_batch_time, см. /proc/mounts
Ссылки
обзорные
предметные
ОС не видит NVMe SSD
Купил ноут с ссдшником, скачал бубунту, накатил на флешку с помощью rufus с параметрами GPT / UEFI, загрузился в лайв режиме, а установить не могу потому, что линух не видит ничего, кроме самой загрузочной флешки. Зашёл в биос, выключил Fast boot и Secure boot, но это проблему не решило. Может у кого есть идеи на этот счет?
у меня тоже когда то такая проблема была.
Только после полного сноса винды (полное форматирование диска) смог установиться линукс.
Никакие настройки биоса/UEFI не помогли.
Можно ещё было попробовать пересоздать таблицу разделов, флаги на разделах поменять там, тип разделов и тд.
ну это для случая, если очень хочется оставить виду.
Это не должно повлиять на венду, вантузная uefi загрузка не такая хрупкая, как с bios.
Что говорят lsmod | grep nvme и ls -l /dev/nvme* ?
ну это для случая, если очень хочется оставить виду.
А может ну эту винду в виртуальную машину, правл же, винда от этого только выиграет.
ничего, нету упоминаний об NVMe
Тогда тебе нужно как минимум выполнить modprobe nvme от рута, чтобы загрузить модуль nvme.
Сделал, ничего не поменялось, ls -l /dev/nvme* всё так же пуст, но модуль загрузился, да
valentin13 ★ ( 22.12.19 22:54:20 MSK )
Последнее исправление: valentin13 22.12.19 22:54:53 MSK (всего исправлений: 1)
Тогда не знаю. Осталось только в lspci посмотреть. Там должно быть видно Non-Volatile memory controller, если он действительно подключен. Правда, что дальше с этим делать, не смогу подсказать.
Вообще, надо бы написать модель ноутбука и диска. В Деллах рекомендуют переключать в настройках SATA с RAID на AHCI (в ссылке выше это упоминается).
В UEFI накопитель видно хоть?
Может у кого есть идеи на этот счет?
lspci крайне бы не помешало.
00:17.0 RAID bus controller: Intel Corporation 82801 Mobile SATA Controller [RAID mode] (rev 30)
Ноутбук Acer Extensa 15, в биосе нет переключателя с RAID на AHCI
Что пишется в контроллере по lspci -k?
Deleted ( 21.01.20 21:50:01 MSK )
Последнее исправление: Deleted 21.01.20 21:52:10 MSK (всего исправлений: 1)
00:17.0 RAID bus controller: Intel Corporation 82801 Mobile SATA Controller [RAID mode] (rev 30) Subsystem: Acer Incorporated [ALI] 82801 Mobile SATA Controller [RAID mode] Kernel driver in use: ahci Kernel modules: ahci
На официальном сайте нет обновлений для биоса, значит… наверное да
00:00.0 Host bridge: Intel Corporation Device 3e34 (rev 0c) Subsystem: Acer Incorporated [ALI] Device 1357 00:02.0 VGA compatible controller: Intel Corporation UHD Graphics 620 (Whiskey Lake) (rev 02) Subsystem: Acer Incorporated [ALI] UHD Graphics 620 (Whiskey Lake) Kernel driver in use: i915 Kernel modules: i915 00:08.0 System peripheral: Intel Corporation Skylake Gaussian Mixture Model Subsystem: Acer Incorporated [ALI] Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th Gen Core Processor Gaussian Mixture Model 00:12.0 Signal processing controller: Intel Corporation Cannon Point-LP Thermal Controller (rev 30) Subsystem: Acer Incorporated [ALI] Cannon Point-LP Thermal Controller Kernel driver in use: intel_pch_thermal Kernel modules: intel_pch_thermal 00:14.0 USB controller: Intel Corporation Cannon Point-LP USB 3.1 xHCI Controller (rev 30) Subsystem: Acer Incorporated [ALI] Cannon Point-LP USB 3.1 xHCI Controller Kernel driver in use: xhci_hcd Kernel modules: xhci_pci 00:14.2 RAM memory: Intel Corporation Cannon Point-LP Shared SRAM (rev 30) Subsystem: Acer Incorporated [ALI] Cannon Point-LP Shared SRAM 00:15.0 Serial bus controller [0c80]: Intel Corporation Device 9de8 (rev 30) Subsystem: Acer Incorporated [ALI] Device 1357 Kernel driver in use: intel-lpss Kernel modules: intel_lpss_pci 00:15.1 Serial bus controller [0c80]: Intel Corporation Device 9de9 (rev 30) Subsystem: Acer Incorporated [ALI] Device 1357 Kernel driver in use: intel-lpss Kernel modules: intel_lpss_pci 00:16.0 Communication controller: Intel Corporation Cannon Point-LP MEI Controller (rev 30) Subsystem: Acer Incorporated [ALI] Cannon Point-LP MEI Controller Kernel driver in use: mei_me Kernel modules: mei_me 00:17.0 RAID bus controller: Intel Corporation 82801 Mobile SATA Controller [RAID mode] (rev 30) Subsystem: Acer Incorporated [ALI] 82801 Mobile SATA Controller [RAID mode] Kernel driver in use: ahci Kernel modules: ahci 00:1c.0 PCI bridge: Intel Corporation Cannon Point-LP PCI Express Root Port (rev f0) Kernel driver in use: pcieport 00:1d.0 PCI bridge: Intel Corporation Cannon Point-LP PCI Express Root Port (rev f0) Kernel driver in use: pcieport 00:1d.1 PCI bridge: Intel Corporation Device 9db1 (rev f0) Kernel driver in use: pcieport 00:1f.0 ISA bridge: Intel Corporation Cannon Point-LP LPC Controller (rev 30) Subsystem: Acer Incorporated [ALI] Cannon Point-LP LPC Controller 00:1f.3 Audio device: Intel Corporation Cannon Point-LP High Definition Audio Controller (rev 30) Subsystem: Acer Incorporated [ALI] Cannon Point-LP High Definition Audio Controller Kernel driver in use: snd_hda_intel Kernel modules: snd_hda_intel, snd_soc_skl 00:1f.4 SMBus: Intel Corporation Cannon Point-LP SMBus Controller (rev 30) Subsystem: Acer Incorporated [ALI] Cannon Point-LP SMBus Controller Kernel driver in use: i801_smbus Kernel modules: i2c_i801 00:1f.5 Serial bus controller [0c80]: Intel Corporation Cannon Point-LP SPI Controller (rev 30) Subsystem: Acer Incorporated [ALI] Cannon Point-LP SPI Controller 01:00.0 3D controller: NVIDIA Corporation GP108M [GeForce MX230] (rev a1) Subsystem: Acer Incorporated [ALI] GP108M [GeForce MX230] Kernel modules: nouveau 02:00.0 Network controller: Qualcomm Atheros QCA9377 802.11ac Wireless Network Adapter (rev 31) Subsystem: Lite-On Communications Inc QCA9377 802.11ac Wireless Network Adapter Kernel driver in use: ath10k_pci Kernel modules: ath10k_pci, wl 03:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 15) Subsystem: Acer Incorporated [ALI] RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller Kernel driver in use: r8169 Kernel modules: r8169