Загружать при запуске linux

Загрузка Linux

В этой статье описаны основные этапы загрузки операционной системы Linux. Эта тема которую неплохо бы было знать любому ИТ-специалисту.

Основные этапы загрузки хоста с ОС Linux:

  1. BIOS/UEFI -> MBR/GPT
  2. MBR/GPT -> Boot loader (GRUB2)
  3. Boot loader (GRUB2) -> Инициализация ядра (Kernel)
  4. Инициализация ядра (Kernel) -> Init (Systemd)

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

BIOS

Первый шаг процесса загрузки не имеет ничего общего с Linux. Это аппаратная часть процесса загрузки, которая является одинаковой для любой операционной системы. При включении питания запускается BIOS (basic input/output system базовая система ввода-вывода), которая запускает POST (Power-On Self-Test — «самотестирование при включении»), который является частью BIOS. В случае сбоя BIOS POST, компьютер нельзя будет использовать, поэтому процесс загрузки не продолжится.

BIOS POST проверяет базовую работоспособность оборудования, а затем BIOS определяет местонахождение главных загрузочных записей (MBR) на всех подключенных загрузочных устройствах. Первый обнаруженный загрузочный сектор, содержащий действительную загрузочную запись, загружается в ОЗУ, а затем управление передается коду (GRUB2), который был загружен из загрузочного сектора.

GRUB2

В большинстве современных дистрибутивов используются загрузчик GRUB2 (можно также встретить GRUB и LILO). GRUB2 (GRand Unified Bootloader, version 2) — это программа, которая делает компьютер достаточно умным, чтобы найти ядро ​​операционной системы (Kernel) и загрузить его в память.

GRUB2 позволяет загружать многие версии Linux и другие бесплатные операционные системы; он также может загружать по цепочке загрузочную запись проприетарных операционных систем. А также, может позволить пользователю выбрать загрузку из нескольких различных ядер для любого данного дистрибутива Linux. Это дает возможность загрузить предыдущую версию ядра, если обновленная версия даст сбой или будет несовместима с важной частью программного обеспечения. GRUB2 можно настроить с помощью файла /boot/grub/grub.conf.

Читайте также:  Linux directory source code

Функция GRUB2 состоит в том, чтобы найти и загрузить ядро ​​Linux в оперативную память и передать управление компьютером ядру. Ядро и связанные с ним файлы находятся в каталоге /boot. Файлы ядра можно идентифицировать, так как все они имеют имена, начинающиеся с vmlinuz. Вы можете посмотреть содержимое каталога /boot, чтобы увидеть установленные в настоящее время ядра в вашей системе. По умолчанию GRUB2 предоставляет предзагрузочное меню установленных ядер, включая опцию rescue и, если настроено, опцию recovery.

GRUB2 загружает выбранное ядро ​​в память и передает управление компьютером ядру.

Kernel (ядро)

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

Так как файловые системы еще не смонтированы, ядро при запуске использует временную файловую систему из файла initrd.img, для того чтобы загрузиться полностью. После извлечения оно загружает инициализацию операционной системы — Systemd (PID 1) и передает ей управление.

Systemd

Systemd является основным родителем для всех процессов, имеет первый номер процесса (PID 1) и отвечает за доведение хоста Linux до состояния, в котором можно выполнять работу.

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

Загрузка linux с UEFI

Новые компьютеры используют UEFI (Unified Extensible Firmware Interface) вместо BIOS. UEFI содержит множество преимуществ перед BIOS, одна из которых — поддержка GPT, который позволяет использовать большие диски и помещать загрузчик на специальный раздел, а также позволяет создавать много разделов.

Раньше диски разбивались на разделы с помощью MBR, но было ограничение — диск не мог быть больше 2 TB, а разделов не могло быть больше четырёх. При этом таблица разделов и первичный загрузчик помещались на первый сектор диска в MBR. Диск разбитый с помощью GPT в первом секторе продолжает хранить MBR запись, для того, чтобы старые системы с BIOS могли использовать диски с таблицей разделов GPT.

Читайте также:  Установка linux для сервера centos

UEFI не использует загрузчик MBR, вместо этого используется загрузчик со специального раздела на диске, который отформатирован в FAT32 и называется ESP или EFI. Обычно это файл /efi/boot/bootx64.efi. Дальше процесс такой же как и загрузкой с помощью BIOS.

Источник

Добавление приложения в автозагрузку Linux (как запускать программу автоматически при старте ОС Linux)

avtozagruzka-linux

Всех приветствую!

Сегодняшний вопрос (насчет автозагрузки приложений) весьма популярен, причем, как при работе в Windows, так и Linux. Разумеется, в Linux он имеет свои особенности.

Наверное, для начала сразу же следует сказать, что в Linux несколько уровней (режимов) автозагрузки. Например, есть автозагрузка на уровне ядра, на уровне скриптов (rc.local), bash, и пр. малопонятные для начинающего пользователя аббревиатуры.

И в этой заметке я бы не хотел рассматривать все «эти тонкости», а показать наипростейшие варианты добавить обычное приложение (Chrome, Firefox, и т.д. и т.п.) в автозагрузку Linux (так, чтобы оно стартовало вместе с загрузкой ОС). Думаю, большинство пользователей именно это и интересует. 😉

Если в процессе настройки вам понадобиться указать программу вручную (которую требуется авто-загружать) — ищите исполняемый файл в каталоге: /usr/bin (для отдельных приложений, запускаемых от имени админа: /usr/sbin ).

Примеры настройки автозагрузки

Вариант 1

Для начала совет банальный — откройте настройки того приложения, которое вам нужно добавить в автозагрузку. Возможно, что среди его параметров будет заветный «флажок», позволяющий запускать приложение при старте системы. См. пример на скрине ниже. 👇

Примечание : в некоторых системах Linux подобная опция в настройках приложения может ничего не дать. (т.е. приложение не будет запускаться при загрузке ОС).

Настройки конкретного приложения

Настройки конкретного приложения / параметры запуска

Вариант 2

Теперь пару слов о панелях управления тех дистрибутивов Linux, которые я рекомендовал.

Читайте также:  Установка арч линукс wifi

Linux Mint

В этом дистрибутиве всё гораздо проще, чем просто «просто». 👌

Сначала необходимо открыть меню ПУСК/параметры системы и перейти во вкладку «Автозагрузка» .

Параметры системы - автозагрузка (Linux Mint)

Параметры системы — автозагрузка (Linux Mint)

После кликнуть по «плюсику» и выбрать нужное приложение из списка. Это всё. ✌

Добавляем нужно приложение (Linux Mint)

Добавляем нужно приложение (Linux Mint)

Elementary OS

Здесь все делается практически аналогично, как в Linux Mint.

Сначала необходимо открыть параметры системы и перейти во вкладку «Приложения» .

Параметры системы - приложения (Elementary OS)

Параметры системы — приложения (Elementary OS)

После раскрыть меню «Автозапуск» , нажать на «плюс» и выбрать нужное приложение.

Автозапуск — выбор нужного приложения (Elementary OS)

Автозапуск — выбор нужного приложения (Elementary OS)

Если когда-то потом приложение необходимо будет убрать из автозагрузки — просто переведите ползунок в режим «Выкл.» . Пример см. на скриншоте ниже. 👇

Теперь приложение для мониторинга будет запускаться при старте Linux

Теперь приложение для мониторинга будет запускаться при старте Linux

Ubuntu

В Ubuntu также есть специальное ПО для решения этой задачи: необходимо перейти во вкладку «Система → Параметры → Запускаемые приложения» .

Для добавления своей программы необходимо нажать на кнопку «Добавить» , как в моем примере 👇. Потребуется указать имя, команду (об этом далее) и описание.

Ubuntu — добавить программу

Ubuntu — добавить программу

После необходимо будет указать нужный исполняемый файл (программу) — обычно, они копируются в каталог /usr/bin (для ПО, запускаемых от имени админа — /usr/sbin ). В редких случаях может быть задействован каталог /usr/opt (один из примеров ниже 👇).

Находим нужное приложение в каталоге

Находим нужное приложение в каталоге

Deepin

Этот дистрибутив (на мой взгляд) в плане простоты работы выигрывает у предыдущих!

Представьте, чтобы добавить программу в автозагрузку — достаточно просто кликнуть по ее значку правой кнопкой мыши и в контекстном меню выбрать оное. 👇

Как вам. (так просто даже в Windows не сделаешь!)

Как добавить ярлык на раб. стол или программу в автозагрузку

Как добавить ярлык на раб. стол или программу в автозагрузку

Разумеется, для исключения приложения из автозагрузки — нужно проделать обратную операцию: также кликнуть ПКМ по значку.

Теперь на приложении спец. значок — оно будет стартовать вместе с системой (Deepin)

Теперь на приложении спец. значок — оно будет стартовать вместе с системой (Deepin)

Источник

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