Скорость загрузки линукс команда

🖌 Узнайте, сколько времени занимает загрузка вашей системы Linux

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

Вы проверяли, сколько времени это заняло?

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

Но что, если вам интересно узнать, как долго ваша Linux-система загружается?

Запуск секундомера – это один из способов выяснить это, но в Linux у вас есть лучшие и более простые способы узнать время запуска вашей системы.

Проверка времени загрузки в Linux с помощью systemd-analysis

Нравится вам это или нет, но systemd работает на большинстве популярных дистрибутивов Linux.

В systemd есть ряд утилит для управления вашей системой Linux.

Одна из этих утилит – systemd-analyze.

Команда systemd-analysis дает подробную информацию о том, сколько сервисов работало при последнем запуске и сколько времени они заняли.

Если вы запустите следующую команду в терминале:

Как вы можете видеть в выводе выше, моей системе потребовалось около 35 секунд, чтобы добраться до экрана, где я мог ввести свой пароль.

Я использую Dell XPS Ubuntu Edition.

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

Вы можете дополнительно разбить время загрузки на каждое устройство с помощью следующей команды:

Источник

Загрузка Linux за 5 секунд

На Конференции «Сантехников» Линукс (Linux Plumbers Conference) Arjan van de Ven, разработчик решений для линукс из Intel, автор PowerTOP, и Auke Kok, разработчик из Intel’овского Open Source Technology Center, продемонстрировали систему на базе линукс, которая загружается всего 5 секунд. Аппаратной основой для этой системы служил Asus EEE PC, с SSD диском. Разработчики преодолели рубеж в «загрузку за 5 секунд» в двух вариантах: модифицированная Fedora и модифицированный Moblin. EEE PC грузился быстрее, чем проектор успечал распознать сигнал с видеовыхода устройства, поэтому им пришлось обойтись без него и попросту поднести ноутбук поближе к зрителям.

Как им это удалось? Arjan сказал, что все началось с правильной постановки задачи: «Заставить систему не ‘загружаться быстрее’, а заставить ее ‘загружаться за пять секунд’.» Вместо того, чтобы экономить секунду здесь, секунду там, был установлен временной лимит на весь процесс загрузки, каждый этап загрузки должен быть сделан в пределах этого времени. И никакого мошенничества: «Завершение загрузки означает прекращение обращений к диску и нагрузки на процессор,» — сказал Arjan. Меряется время не до загрузки рабочего стола, пока службы продолжают загружаться в фоновом режиме (хотя некоторые компании меряют время загрузки своей ОС именно до этого момента). Время загрузки не включает включение сети, но включает запуск NetworkManager. Система с традиционным жестким диском грузится дольше, но Arjan сообщил, что он запускал систему на ThinkPad — и она загружалась менее, чем за 10 секунд

На этом железе Fedora загружается за 45 секунд — от включения питания до экрана ввода пароля. Bootchart, инструмент, созданный Ziga Mahkovec, раскрывает нам подробности загрузки. На графике загрузки Fedora (рис 1.), видно, что в процессе загрузки системы есть некоторые времяпожирающие моменты. Она использует целую секунду для запуска loopback-интерфейсов — на проверку, являются ли все сетевые интерфейсы loopbak-интерфейсами. 2 секунды требуются для запуска sendmail. «’Платят’ все, несмотря на то, что возможности sendmail требуется далеко не каждому,» — сказал Arjan, и предположил, что для домашнего использования -SMTP только для исходящей почты — может использоваться ssmtp.

Рис. 1

Еще одним затратным процессом в Fedora является «setroubleshootd», полезный инструмент для поиска проблем с настройками Security Enhanced Linux (SELinux), он занимает целых пять секунд. Нет повода винить Fedora — некоторые самостоятельные проекты используют непонятное количество времени/ресурсов для работы. Система X Window запускает собственный C препроцессор и компилятор при загрузке, только для того, чтобы составить собственные таблицы символов (keyboard mappings).

Рис. 2

Загрузка Ubuntu практически такая же — на 2 секунды быстрее (рис. 2). Она тратит 12 секунд на modprobe, только для того, чтобы загрузить единственный модуль. Инструмент для загрузки проприетарных драйверов использует 2,5 секунды — на системе, которой не нужны проприетарные драйверы. «Все платят за возможность использовать закрытые драйвера,» — сказал Arjan. И, наконец, GDM Ubuntu занимает 2,5 секунды чистого процессорного времени, только для того, чтобы отобразить фоновую картинку.

Читайте также:  Драйвера видеокарты для nvidia geforce 710m для windows

Оба дистрибутива используют сплеш скрины. И Arjan, и Auke согласились: «Мы ненавидим сплеш скрины. За то время, что тратится на то, чтобы вы их увидите, мы хотим, чтобы все уже было сделано». Время, которое разработчики дистрибутива тратят на сплеш скрины, намного больше, чем команда Intel потратила для того, чтобы грузится за такое время, что сплеш скрин просто не нужен.

Как они это сделали: Ядро

Первым шагом является план. Одну секунду на загрузку ядра со всеми модулями. «Ранняя загрузка (Early boot)» включая загрузочные скрипты и фоновые задания — еще одна секунда. X Server — еще одна секунда, и 2 секунды на программы рабочей среды.

Ядро было пересобрано без initrd, который требует пол секунды «ни для чего». Все модули, которые необходимы — встраиваем в ядро. Arjan по этому поводу сказал: «Есть набор модулей, который покроет нужды 95% лаптопов».Он предположил, что нужно просто сделать отдельный дистрибутив с ядром, использующим initrd для оставшихся 5%.
Некоторая работа над ядром позволяет сделать параллельной загрузку некоторых подсистем. Например, модифицированное ядро запускает инициализацию Advanced Host Controller Interface (AHCI) для управления хранилищами в то же время, что и Universal Host Controller Interface (UHCI), для управления USB (рис. 3). «Наверное, мы смогли бы сократить время до половины секунды, но, доведя время до секунды, мы остановились,» — сказал Arjan. Время загрузки ядра должно сократиться до полусекунды к релизу 2.6.28, благодаря новому патчу модуля поддержки AHCI, написанному им.

Рис. 3

Еще одним изменением ядра был маленький патч для поддержки readahead. Ядро терерь отслеживает, какую информацию необходимо читать во время загрузки, чтобы сделать ее сразу же доступной в пространстве пользователя (userspace) по окончанию своей загрузки. Все это вместе, делает возможным использование readahead, который является частью ранней загрузки.

Как они это сделали: readahead и init

Fedora использует Upstart как замену «init»- первой запускаемой программе в пространстве пользователя. Но команда Intel вернулась к оригинальному init. Порядок задач, которые выполняет init, был изменен для того, чтобы можно было делать 3 вещи одновременно: сначала процесс «sReadAhead» для чтения данных с диска и кеширования их в оперативной памяти, затем критический момент — проверка файловой системы, затем D-Bus истема межпроцессного взаимодействия, затем X- графическая подсистема, затем рабочий стол. Ну, и третий набор программ для запуска Hardware Abstraction Layer (HAL), затем udev — менеджер устройств «горячего подключения», затем сеть. Udev используется только для поддержки устройств, которые могут быть подключены позднее — система использует традиционную /dev папку, таким образом, загрузка не зависит от udev.

Упорядочивание задач помогает более эффективно использовать процессор. Например, X делает паузу в пол секунды ожидая получения информации о поддерживаемых видеорежимах. Это время использует HAL для своей загрузки (рис. 4)

Рис. 4

В графике использования диска и процессора, оба используются по максимуму практически все время загрузки: спасибо sReadAhead. Когда стартует X, ему не требуется время на чтение с диска, поскольку все данные уже есть в кеше ОЗУ. sReadAhead основан на Readahead от Fedora, но он модифицирован, чтобы использовать преимущество списка данных для чтения, полученного от ядра. sReadAhead уже должен быть опубликован на moblin.org, и патч для ядра будет выложен как только Arjan сделает его совместно с Ted Ts’o (разработчик файловой системы ext3) — во время встречи Ted сделал некоторые предложения, как можно реорганизовать блоки на диске, чтобы увеличить скорость еще больше.

В этом проекте есть одно жесткое ограничение: 75 мегабайт для чтения с диска — 3 секунды передачи информации со скоростью 25 МБ/сек — ограничение SSD накопителей. «Таким образом, мы вынуждены были не читать файлы целиком. Мы читали только те куски файлов, которые мы на самом деле используем,» — сообщил Arjan. sReadAhead использует только время простоя дисковой подсистемы, таким образом, если что-то другое требует доступ к диску — оно его получает. Без использования readahead система загружается за 7 секунд, с его использованием — мы получаем нашу цель — загрузку за пять секунд!

X до сих пор является проблемой. «Нам было необходимо нанести множество «повреждений» X», сказал Arjan. Часть работы была направлена на предотвращение запуска компилятора C, путем повторного использования таблиц символов, но остальная работа была более временной. Текущее направление разработки X направлено на перенос большей части определения и настройки оборудования в ядро, что должно сократить общее время загрузки. Пока часть времени ядра уже используется на определение оборудования, это время можно использовать для инициализации большего количества устройств одновременно — это более эффективное использование времени, инициализировать видеокарту в то же время, что и USB и ATA. Разработчик X Keith Packard (также сотрудник Intel), предложил свою помощь. В итоге установка видеорежима производится ядром во время инициализации остального оборудования (рис. 3). Представленная быстрозагружающаяся система не использует GDM (экран ввода пароля), она грузится прямо в пользовательскую сессию, с окружением XFCE. Arjan предложил, вместо GDM — загрузить сессию последнего пользователя, но загружать вместе со скринсейвером который блокирует использования истемы без ввода пароля. Если другой пользователь захочет войти, он должен использовать кнопку скринсейвера «переключить пользователя».

Читайте также:  Эквалайзер для windows 10 микрофон

В заключении Arjan сказал: «Не останавливайтесь на ‘сделать загрузку быстрее’. Это неправильная постановка задачи. Правильная задача ‘сделать загрузку быстрой’. И не заставляйте всех пользователей ждать из-за того, что кому-то нужен какой-то модуль или sendmail на их ноутбуке. Сделайте так, чтобы пользователи платили только за то, что они реально используют. Разработчики дистрибутивов не должны делать отдельные initrd и не-initrd дистрибутивы,» — сказал он позже: «Ядро должно попробовать загрузится без initrd, и использовать его только если оно не может увидеть /sbin/init (как может случится, если отсутствует модуль для монтирования корневой файловой системы).»
PowerTOP вызвал шквал изменений для экономии энергии во всех областях программного обеспечения Linux.

Рис. 5

Конференция закончилась в пятницу (доклад был во вторник), и глава конференции Kyle McMartin сообщил, что и Fedora и Ubuntu исправили некоторые необоснованные задержки в их процессе загрузки, что вызвало шквал аплодисментов и одобрений.

Источник

Мониторинг пропускной способности и скорости сети в Linux

Вкратце: в этой статье мы перечислим некоторые утилиты с открытым исходным кодом для мониторинга сетевого трафика, пропускной способности и скорости интернета в Linux.

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

Инструменты для мониторинга интернет-трафика и скорости сетевого соединения в Linux

Я представляю вам различные утилиты, которые помогут мониторить скорость вашего интернет соединения. Также я добавил инструкции по установке для дистрибутивов на основе Ubuntu/Debian, также данные утилиты могут быть легко установлены и в других дистрибутивах.

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

1. NetSpeed ​​- расширение оболочки GNOME для пользователей ПК

NetSpeed — это расширение оболочки GNOME, которое отображает суммарные скорости загрузки и скачивания на панели gnome. При нажатии на него выводятся отдельные значения в выпадающем списке.

Это применимо, только если вы используете рабочую среду GNOME. Если еще не знакомы, прочитайте руководство, чтобы узнать, как использовать расширения GNOME Shell .

2. Fast — тестировщик скорости интернета от Netflix

Fast — это CLI-утилита с открытым исходным кодом, работающая на сервисе Netflix fast.com . Хотя код самого сайта не является открытым исходным кодом, Netflix объяснил, как он работает здесь . Fast — это идеальный инструмент для тех, кто хочет проверить скорость скачивания простым способом.

После установки вы можете запустить утилиту, напишите:

И через несколько секунд вы еще раз получите свой результат

Скорость интернета на дисплее snap Fast

3. speedtest-cli: проверка скорости загрузки и скачивания

speedtest-cli — это интерфейс командной строки с открытым исходным кодом для тестирования пропускной способности интернета с использованием speedtest.net (код самой страницы не является открытым). Это быстрый и легкий инструмент для проверки скорости загрузки и скачивания.

speedtest-cli доступен в большинстве дистрибутивов и может быть легко установлен с помощью менеджера пакетов. В Debian/Ubuntu вы можете написать следующую команду:

Установили — запустите, просто напишите:

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

4. NetHogs — проверка использования пропускной способности для каждой программы

NetHogs — это простая утилита с открытым исходным кодом, которая запускается в терминале. Вместо того, чтобы разбивать трафик по протоколу или подсети, он группирует полосы пропускания по процессам. Это очень полезно для нахождения PID зависшей программы или просто для просмотра того, что съедает вашу пропускную способность. Он опирается в основном на команду /proc , поэтому большинство функций доступно только для Linux.

К счастью, NetHogs входит во многие дистрибутивы. Это означает, что вы можете установить и удалить его с помощью обычного менеджера пакетов. В Debian/Ubuntu вы можете написать такую команду:

Читайте также:  Самый мощный архиватор для windows 10

Чтобы запустить ее, напишите:

Удобно, что вы можете указать устройства после команды (например, sudo nethogs eth0 ). Также есть дополнительные параметры, такие как: выбор интервала для частоты обновления ( -d ), информация о версии ( -V ), режим трассировки ( -t ) и некоторые другие, о них вы можете прочитать в мануале (man nethogs ).

5. nload — мониторинг интернет-трафика в режиме реального времени

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

Вы можете установить его в дистрибутивах на основе Debian и Ubuntu, используя команду:

Для запуска напишите:

Вы можете посмотреть его различные параметры в мануале ( man nload ).

6. CBM — измеритель полосы пропускания с цветным интерфейсом

CBM — очень простая утилита, которая отображает (в цвете) сетевой трафик на всех подключенных устройствах очень лаконично.

CBM — немного устаревшая программа, которую можно найти в большинстве дистрибутивов. Поэтому устанавливать и удалять ее с помощью менеджера пакетов очень просто.

Запустить CBM так же просто, как и установить. Пишем:

Команды отображаются в нижней части вашего терминала, чтобы вы могли легко их выбрать.

7. iPerf — тестирование производительности сети между двумя хостами

iPerf — это инструмент, используемый для измерения и настройки производительности сети, который может производить стандартизированные измерения производительности для любой сети. Он имеет функциональные возможности клиента и сервера и может создавать потоки данных для измерения пропускной способности, потери данных и других параметров между двумя узлами сети в одном или обоих направлениях. Существует две версии: исходная iPerf (iPerf2) и не совместимая с предыдущей версия iPerf3.

Самый простой способ установить (или удалить) iPerf или iPerf3 — использовать менеджер пакетов. Например, в Ubuntu таким образом:

Далее запускаем нужную вам версию:

Примечание. Для всех дальнейших примеров, если вы используете iPerf3, просто замените все случаи iperf на iperf3 .

Однако при этом будут отображаться только ваши параметры. Чтобы запустить iPerf , вам нужно минимум 2 устройства: один для работы в качестве клиента и один для работы в качестве сервера . Для сервера напишите:

Это откроет устройство для прослушивания через порт 5001. Чтобы подключиться к другому устройству и запустить тест, используйте команду:

Где server_address — это, конечно, адрес сервера, к которому вы пытаетесь подключиться. Это может быть либо IP-адрес , либо что-то вроде ping.online.net . У команды iPerf3 есть список серверов для тестирования. Рекомендуется прочитать Топ-31 лучших игр для Linux, в которые можно играть бесплатно

iPerf — это широко используемый инструмент, который имеет множество конкретных применений и специальных возможностей. Я не буду вдаваться в них, поскольку это выходит за рамки этой статьи. Тем не менее, вы можете почитать о них в мануале ( man iperf / man iperf3 ) или в этой документации .

8. vnStat — логгер сетевого трафика

vnStat — это монитор сетевого трафика на основе консоли с открытым исходным кодом, который использует статистику сетевого интерфейса, предоставляемую ядром в качестве источника информации, для своих периодических логов. Это означает, что vnStat, на самом деле, не будет анализировать трафик, а также гарантирует низкую загрузку процессора. Он может быть запущен без root прав.

Как и многие другие сетевые инструменты, vnStat входит в большинство хранилищ дистрибутивов. Это означает, что вы можете очень легко установить (и удалить) его, используя менеджер пакетов.

Чтобы использовать его в обычном виде, напишите:

vnStat также предлагает вам расширенные возможности, такие как возможность использования базы данных (их импорт или экспорт данных в файл). Вы можете прочесть об этом в мануале ( man vnstat ). Больше примеров можно найти на официальном сайте .

9. iftop — «топ» использования сети

iftop — это бесплатный программный инструмент мониторинга c командной строкой и открытым исходным кодом, который выводит часто обновляемый список сетевых подключений между парой хостов. Соединения могут быть упорядочены по разным параметрам, но по умолчанию они упорядочены в зависимости от использования пропускной способности, при этом отображаются только «верхние» потребители пропускной способности.

Заключение

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

Какой ваш любимый инструмент и как вы его используете? Дайте нам знать в разделе комментариев!

Источник

Оцените статью