- Какой дистрибутив будет загружаться быстрее?
- Самый быстрый дистрибутив Linux
- Самые быстрые дистрибутивы Linux
- 1. Clear Linux
- 2. Gentoo
- 3. Alpine Linux
- 4. Chrome OS
- 5. Raspbian
- Выводы
- Ускорение загрузки Linux
- Как проходит загрузка Linux
- Анализ загрузки Systemd
- Ускорение загрузки Linux
- Настройка системы
- Ускорение загрузки Linux отключением сервисов
- Выводы
Какой дистрибутив будет загружаться быстрее?
Собственно сабж, интересует что будет бысрее всего грузится. А то убунта, жуть как долго, 1-2 сек до граба, после выбора ОС до загрузки ДЕ 10-12 сек.
Юзай ждущий режим вместо выключения.
На ноуте не удобно, часто таскаю его.
Сколько примерно будет грузится? От нажатия кнопки вкл. до ДЕ?
дык и таскай, ждущий режим причём?
Боюсь батарея будет быстрее разряжаться.
На ноуте не удобно, часто таскаю его.
Порвал мой парсер. Именно что на ноуте и именно что только спящий режим! Закрыл и пошёл. Открыл и через 100ms оно уже рабочее.
В «закрытом» состоянии ноут живёт где-то неделю-две без подзарядки. Т.ч. не понимаю я этих гонцов за скоростью бута.
ssd + урезать автозапуск по вкусу.
Зависит от количество демонов для запуска, но никак не от дистрибутива. И с каких пор 10 секунд это долго? Вы там совсем заржались.
ssd поставь уже
Таки путаешь спящий и ждущий?
Долго грузится не дистрибутив, а инит, демоны и само ДЕ. Разница именно между дистрибутивами будет минимальна, если натсроить это одинаково (поотключать загрузку ненужного, распараллелить загрузку нужного).
Ну а если вообще интересует, как можно, меня от граба арч до готовности грузится 6 секунд, это вместе с запуском firefox, deadbeef, awesome и ещё некоторой мелочи. Это на ssd и i5. Это с ненужно-d. Можно сократить до четырёх. Ещё меньше, думаю, никак не получится, хотя я вообще по этому поводу не заморачивался, это десктоп, и пусть он хоть минуту грузится, ребут примерно два раза в месяц, можно и подождать.
Тебе надо узнать, что именно грузится эти 12 секунд. Если там есть что-то ненужное, отключить. Если там секунд 8 запускается какой-нибудь dhcpcd (запросто может быть, часто сеть дольше всего и инициализируется), то можно попробовать сделать так, чтобы всё остальное его не ждало.
Если в ноуте не ssd, а hdd, то наверное лучше просто забить, сильно много от этих 10–12 секунд и не выиграешь.
У меня ноут хоть и загружается быстрее 10 сек, но он у меня всегда в спяшем, аптаймы до месяца доходят, так что тоже непонятны негодования
На ноуте не удобно, часто таскаю его.
ну тогда hibernate юзай. С tuxonice реально быстро получается. Хотя и родной тоже довольно быстр.
Может быть. Я про тот, что to-RAM, а не тот, что to-Disk. Одним словом suspend.
после выбора ОС до загрузки ДЕ 10-12 сек
толсто. загрузка DE или окно логина?
А то убунта, жуть как долго, 1-2 сек до граба, после выбора ОС до загрузки ДЕ 10-12 сек.
прям эпоха сменилась за 12 сек
Если тебе важна скорость загрузки, юзай suspend; если часто таскаешь — hibernate c TuxOnIce (особенно если памяти много — он умеет сжимать, соотв ускорять засыпание/просыпание) или mixed mode (вообще прикольная штука).
А грузиться быстро может любой дистрибутив если ты его так настроишь; в этом плане дистрибутивы не отличаются. Помочь в этом тебе может bootchart.
TuxOnIce выглядит вкусно, его просто установить и гибернацию юзать?
5 сек до окна логина, после кеды 12 сек(много висит в автозагрузке) Железо i7-4930K, 32 гб оперативы, ssd 250 gb sata3.
сжимать, соотв ускорять засыпание/просыпание
Не лучше ли, если свежее ядро, zswap?
кстати с zswap у меня своп забивается чем-то и не используется, хотя ядро думает, что своп есть. после swapoff swapon опять всё по нулям.
suspend, suspend, suspend
TuxOnIce выглядит вкусно, его просто установить и гибернацию юзать?
. и сжатие включить. Моя рекомендация — да.
Вон, greenman еще zswap предложил; я про него не знаю, но посмотри.
Ключ: сжатие может ускорить гибернацию, так как запись на диск / чтение с диска как правило медленные, и предварительно сжимая данные можно достичь ускорения, даже с учетом времени на сжатие.
Не лучше ли, если свежее ядро, zswap?
Источник
Самый быстрый дистрибутив Linux
Все мы хотим, чтобы наш дистрибутив работал как можно быстрее и был оптимизирован для максимальной производительности при решении наших задач. Но из-за того, что популярные дистрибутивы рассчитаны на широкий круг устройств и поддерживают большое количество аппаратных архитектур, они не содержат многих оптимизаций, которые могли бы ускорить работу системы в определенных условиях.
В этой статье мы рассмотрим самые быстрые дистрибутивы Linux, причем это будут не легковесные дистрибутивы, которые предназначены для установки на слабые машины, а именно быстрые, специально оптимизированные или позволяющие себя очень просто настроить для вашего оборудования или ваших задач. Одни из них уже содержат всё возможные рациональные улучшения, другие же предоставляют вам возможность настроить и скомпилировать всё во время установки.
Самые быстрые дистрибутивы Linux
1. Clear Linux
Clear Linux — это дистрибутив Linux с открытым исходным кодом, основанный на кодовой базе Red Hat Enterprice Linux и включающий наработки CentOS, Fedora и SUSE Linux. Это проект компании Intel, который предназначен, как для использования на серверах, так и для рабочих станций.
Разработчики Intel использовали различные оптимизации чтобы добиться максимальной производительности на оборудовании компании Intel. В дистрибутив включены по умолчанию более восьмидесяти оптимизаций, среди которых FMV (Function Multiversioning) и AutoFDO (Automatic Feedback-Directed Optimizer). Учитывая всё это и множество тестов на Phoronix, можно сказать, что это самый быстрый дистрибутив Linux 2020.
Дистрибутив имеет несколько редакций: для сервера, для рабочих станций, для разработчиков приложений, а также контейнерная редакция, которую можно использовать в качестве контейнера Docker. Но не стоит его путать с дистрибутивом ClearOS, предназначенным только для серверов.
2. Gentoo
Этот особый дистрибутив мы не могли обойти вниманием. Gentoo совсем по-другому относится к установке программного обеспечения и оптимизации. Здесь вам придется собирать свою систему самому и для себя. Вам предлагается готовый каркас из нескольких самых важных утилит, всё остальное придется компилировать самому с помощью специального менеджера пакетов, в том числе и ядро.
Вы получаете возможность включить все возможные флаги оптимизации кода, использовать более производительные и правильные компиляторы, а также собрать программы именно под свое аппаратное обеспечение. Учитывая такой подход к делу, можно сделать вывод, что этот дистрибутив не для начинающих: вам уже нужно иметь кое-какую базу знаний, чтобы полноценно всё настроить и сделать свою систему действительно эффективной.
В Gentoo нет четкой ориентации на серверы или домашние компьютеры. Это просто каркас, из которого вы можете соорудить всё, что вам нужно, и сделать это так, чтобы работало лучше всего.
3. Alpine Linux
Alpine Linux — это дистрибутив, ориентированный на встраиваемые системы. Его основные преимущества: безопасность, нетребовательность к ресурсам и скорость. Для более быстрой работы здесь используются особые компоненты вместо привычных нам.
Все пакеты дистрибутива собраны с использованием флагов PaX и SSP для защиты от переполнения стека. Стандартная библиотека Си здесь заменена на musl, также используется набор утилит BusyBox. По умолчанию дистрибутив загружается и работает полностью из оперативной памяти, а это весомое преимущество.
Дистрибутив ориентирован для использования на различных фаерволах, роутерах и серверах, а также для виртуализации, при чем упор делается именно на безопасность системы. Сейчас этот дистрибутив из-за своей скорости и безопасности применяется на многих платформах виртуализации, использующих docker.
4. Chrome OS
Каждая из рассмотренных сегодня операционных систем предназначена для использования в определенной сфере, каждая из них уникальна, и Chrome OS не исключение. Но в отличие от других дистрибутивов она ориентирована на обычных домашних пользователей.
У этой операционной системы особенный концепт: большинство приложений выполнены в форме веб-приложений и работают в браузере. Поэтому главная задача Chrome OS — запустить и поддерживать работу браузера.
ChromeOS разработана компанией Google, и это уже говорит само за себя. Эта операционка основана на дистрибутиве Gentoo, содержит множество улучшений и оптимизаций для увеличения скорости и безопасной работы системы. Например, здесь используется особый механизм обновления, происходящий путем замены образа корневого раздела, а также во время работы корневой раздел монтируется в режиме «только для чтения».
5. Raspbian
Операционная система Raspbian попала в этот список потому что она тоже в своём роде самая быстрая для своей платформы. Этот дистрибутив разработан и оптимизирован специально для ARM и Raspberry Pi. Дистрибутив идеально поддерживает эту платформу и использует различные оптимизации чтобы работать оптимально быстро.
Выводы
Сегодня мы рассмотрели самые быстрые дистрибутивы Linux, причем не просто легковесные, которых действительно очень много, а именно быстрые. Теперь вы можете выбрать быстрый дистрибутив Linux для своего компьютера или ноутбука. Если вы знаете другие шустрые дистрибутивы, которые специально оптимизированы для скорости, перечислите их в комментариях!
Источник
Ускорение загрузки Linux
Скорость загрузки вашей операционной системы — это очень важный момент в работе компьютера. Никому не хочется смотреть на заставку загрузки по несколько минут. Чем быстрее загрузится система и будет готова к работе, тем лучше.
Но порой система инициализации выполняет много лишних задач во время загрузки, иногда некоторые сервисы ожидают загрузки других и завершаются только по таймауту через некоторое время. В таких случаях система может загружаться до нескольких минут. В этой статье мы рассмотрим как ускорить загрузку Linux, что нужно для этого настроить, что удалить. А также немного поговорим о процессе загрузки. Мы сосредоточимся на системе инициализации systemd.
Как проходит загрузка Linux
Во всех подробностях процесс загрузки Linux описан в отдельной статье, здесь же мы рассмотрим только то, что будет касаться ускорения.
На то как BIOS тестирует устройства и запускает загрузчик мы повлиять не можем. Работу загрузчика тоже ускорить не получится, можно только убрать ожидание выбора пункта меню.
Но самое интересное начинается дальше. Перед тем как начать загрузку системы ядро выполняет несколько проверок, загружает модули и так далее. Не все проверки нужно выполнять и не все модули нам нужны.
После того как ядро передало управление системе инициализации, начинается монтирование дисков. Это тоже отнимает время, лучше не использовать виртуальные разделы дисков, например, raid или lvm, да и вообще, чем меньше разделов — тем лучше. Идеальный вариант — только корневой раздел, тогда скорость загрузки linux будет максимальной. Но это очень невыгодный в плане удобства вариант, поэтому найдите золотую серединку. Перед тем как примонтировать каждый диск, система инициализации пытается проверить файловую систему на ошибки, это тоже замедляет загрузку.
Загрузка сервисов отнимает больше всего времени и больше всего работы придется проделать здесь, определить какие сервисы не нужны и отключить их также скрыть те сервисы, которые отключить нельзя. Чтобы понять что именно отключать нам нужно знать сколько времени занимает загрузка каждого сервиса. Давайте рассмотрим анализ скорости загрузки systemd.
Анализ загрузки Systemd
Анализ скорости загрузки системы важен не только в самом процессе оптимизации, но и для того, чтобы оценить насколько эта оптимизация удалась. Перед и после оптимизации нужно замерять время загрузки, чтобы понять чего мы смогли добиться.
Давайте посмотрим насколько быстро грузится наша система сейчас:
Да, здесь 17 секунд, не так уж плохо, но будет еще лучше после завершения ускорения загрузки. На загрузку ядра уходит 5.405, а на все остальные сервисы 11.611. Чтобы понять какие именно сервисы замедляют систему нам нужна более подробная информация, мы можем ее получить с помощью параметра blame:
У нас есть список сервисов, которые загружаются дольше всего, но этот список ни о чем нам не говорит, потому что в Systemd параллельная загрузка сервисов. Если бы во время загрузки была какая-нибудь проблема, мы бы ее увидели, но проблем здесь нет. Нам нужен более детализованный график с указанием не только времени загрузки сервиса, но и с отображением параллельных загрузок и мы можем его получить командой:
systemd-analyze plot > graph.svf
Утилита сгенерирует svf файл с графиком, откройте его в браузере:
Вот теперь у нас есть вся информация, чтобы оптимизировать систему. Здесь отображается не только время загрузки каждого сервиса, но также время когда он начал загружаться и когда завершил. Дальше начнем ускорение загрузки Linux.
Ускорение загрузки Linux
Начнем мы с оптимизации ядра 5 секунд, это не так много, но можно же еще улучшить. Мы не будем пересобирать ядро, хотя и это дало бы больший эффект, мы просто настроим его работу с помощью параметров загрузки.
Настраивать Grub будем правильно. Параметры загрузки ядра находятся в файле /etc/default/grub, а именно в строчке GRUB_CMDLINE_LINUX_DEFAULT. Откройте этот файл:
Теперь приводим интересующую нас строчку к такому состоянию:
GRUB_CMDLINE_LINUX_DEFAULT=»quiet rootfstype=ext4 libahci.ignore_sss=1 raid=noautodetect selinux=0 plymouth.enable=0 lpj=12053560″
Разберем подробнее за что отвечает каждый параметр:
- quiet — вывод, это долго, поэтому говорим ядру что на экран нужно выводить минимум информации
- rootfstype=ext4 — указываем в какую файловую систему отформатирован корень. У меня ext4.
- libahci.ignore_sss=1 — Ignore staggered spinup flag, ускоряет загрузку жестких дисков
- raid=noautodetect — raid я не использую, думаю вы тоже поэтому отключаем.
- selinux=0 — система полномочий selinux на домашней машине тоже ни к чему, без нее будет быстрее.
- plymouth.enable=0 — заставка plymouth тоже занимает много времени, поэтому убираем заставку
- lpj=12053560 — позволяет задать константу loops_per_jiffy, что позволит ядру не вычислять ее каждый раз и сэкономит до 250 миллисекунд. Это значение индивидуально для каждого компьютера.
Чтобы узнать значение последнего параметра выполните:
dmesg | grep ‘lpj=’
Нас будет интересовать значение lpj=, укажите его в своем конфигурационном файле.
Также для указания корневого раздела желательно не использовать всякие там UUID, быстрее будет если написать прямо. Для того чтобы конфигуратор grub не использовал grub добавьте в тот же файл строчку:
Сохраните файл и обновим конфигурацию grub:
Проверяем, действительно ли установлены нужные опции:
Да, все правильно, перезагружаем компьютер, и смотрим что вышло:
Почти на одну секунду быстрее, и то хорошо. Возможно, у вас эффект будет намного лучше. Теперь идем разбираться с сервисами.
Настройка системы
Во-первых SELinux отключен не полностью. Для полного отключения добавляем строку в файл /etc/selinux/config:
sudo vi /etc/selinux/config
Во-вторых, проверка файловых систем тоже может занять некоторое время. Оставляем проверку на ошибки только для корня. Для этого откройте файл /etc/fstab и приведите строчку для корня к такому виду:
/dev/sda3 / ext4 defaults 1 1
Последний параметр отвечает за проверку, 1 — проверять, 0 — не проверять. Установите для всех других разделов 0. К тому же boot раздел лучше монтировать по требованию. Для этого изменяем его запись:
/dev/sda1 /boot ext4 noauto,comment=systemd.automount 1 0
Затем давайте перенесем папку /tmp в оперативную память, чтобы уменьшить количество операций на жестком диске:
tmpfs /tmp tmpfs defaults 0 0
Ускорение загрузки Linux отключением сервисов
Вот мы и добрались к сервисам. Оптимизация сервисов заключается в том, чтобы отключить лишнее, а также использовать только возможности, встроенные в systemd, так будет быстрее. Сначала перенесем всю функциональность на systemd.
Первым отключим rsyslog. В systemd используется свой механизм записи логов journald, поэтому вести еще один не нужно. Для отключения выполните:
sudo systemctl disable rsyslog
$ sudo systemctl mask rsyslog
Опция mask позволяет спрятать юнит, система будет думать что его не существует и не сможет загрузить. Восстановить такой юнит можно командой systemctl unmask.
В systemd реализована своя служба настройки сети — networkd, поэтому необязательно использовать NetworkManager. Работа со встроенной службой будет намного быстрее. Здесь нужно заметить, что если вы используете wifi и не хотите настраивать его вручную, через консоль, то отключать NetworkManager не стоит.
Отключаем NetworkManager и включаем networkd:
sudo systemctl disable NetworkManager
sudo systemctl enable systemd-networkd
Службу networking тоже можно отключить, если не используете:
sudo systemctl disable networking
Включаем resolved, который отвечает за настройку DNS серверов:
sudo systemctl enable systemd-resolved
sudo systemctl start systemd-resolved
Даем символическую ссылку на файл /etc/resolv.conf
sudo rm /etc/resolv.conf
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
Осталось настроить динамическое получение ip адреса при загрузке:
sudo vi /etc/systemd/network/20-dhcp.network
[Match]
Name=enp*
[Network]
DHCP=yes
enp0* значит, что сеть нужно подымать только для устройств, имена которых начинаются на enp0. Готово, сеть настроена.
В systemd есть свое решение для выполнения задач по расписанию, поэтому cron можно не использовать:
sudo systemctl disable cron
С заменой разобрались, перейдем к удалению лишнего. Отключаем фаервол, на домашней машине, за маршрутизатором он не нужен:
sudo systemctl disable ufw
$ sudo systemctl mask ufw
Отключаем apport (служба отчетов об ошибках):
sudo systemctl disable apport
Я не использую ppp и мобильные соединения, поэтому и эти сервисы можно отключить.
sudo systemctl disable pppd-dns
sudo systemctl mask pppd-dns
sudo systemctl disable ModemManager
sudo systemctl mask ModemManager
Если вы не используете Avahi, его тоже можно отключить:
sudo systemctl disable avahi-daemon
Систему AppArmor тоже можно отключить:
sudo systemctl disable apparmor
Также если у вас загружаются такие программы, как postfix (почтовый сервер), apache (веб-сервер), mysql (сервер баз данных) лучше их тоже убрать из автозагрузки и запускать потом вручную.
Перезагружаемся и проверяем скорость загрузки:
У меня скорость загрузки linux выросла на пять секунд. Но это нормально, учитывая, что используется VirtualBox, на реальной машине можно получить и больше. А самая лучшая оптимизация — купить SSD, там можно достичь даже скорости загрузки до двух-трех секунд.
Выводы
Вот и все, в этой статье мы рассмотрели как ускорить загрузку Linux. Если у вас долго грузится Linux вы уже знаете что нужно делать. Если вы знаете другие способы ускорить загрузку Linux, напишите в комментариях!
Источник