Что мы узнаем в этом блоге?

  1. Введение в ядро ​​Linux (Часть-1)
  2. Пространство ядра и пространство пользователя (Часть-1)
  3. Работа с оборудованием (Часть-1)
  4. Последовательность загрузки Linux (часть 2)
  5. СИСТЕМНЫЕ ЦЕЛИ (УРОВНИ) (Часть 2)
  6. Файловые системы и иерархия (Часть 2)

Последовательность загрузки Linux

Процесс загрузки Linux состоит из 4 простых шагов:

  1. BIOS POST
  2. Загрузчик (GRUB2)
  3. Инициализация ядра
  4. Процесс INIT (systemd)

когда должна начаться последовательность загрузки Linux?

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

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

1. POST BIOS. Этот тест не имеет ничего общего с Linux. Этот пост-тест, т. Е. самотестирование при включении, запускается в качестве первого шага. Этот тест проверяет всю конфигурацию оборудования, чтобы убедиться, что они готовы к запуску или нет. Если в начальном процессе возникнут какие-либо проблемы, то он не перейдет ко второй последовательности.

2. Загрузчик (GRUB2) - GRand Unified Bootloader (GRUB2). Это самый продвинутый загрузчик, который поставляется предварительно собранным в большинстве дистрибутивов Linux. Эта последовательность вступает в силу после POST BIOS. В основном это даст вам возможность выбрать свои конфигурации. Его функция - взять на себя управление BIOS во время загрузки, загрузить саму себя, загрузить ядро ​​Linux в память и затем передать выполнение ядру. Он передает параметры, необходимые для инициализации ядра, и загружается в память ядра для следующего шага, т. Е. инициализации ядра.

3. Инициализация ядра - Этот процесс инициализации ядра загружает память, проверяет параметры, назначает память. Выполняет все операции по управлению памятью, запускает управление процессами, т. Е. Необходимо для запуска сервисных процессов на следующем этапе.

4. Процесс INIT (systemd) - И вот последний процесс последовательности загрузки Linux, в котором мы запустим службы вместе с некоторым содержимым GUI / CLI. systemd отвечает за установку последовательности файлов и многое другое. мы изучим systemd более подробно. до systemd была systerm5, которая выполняет ту же работу. но главное преимущество использования systemd по сравнению с system5 (sis5), поскольку оно занимает гораздо меньше времени, поскольку запускает службу, загружается в параллельном режиме, поэтому она намного быстрее, чем sysstem5.

Чтобы проверить, что вы используете system5 или systemd, выполните следующую команду.

СИСТЕМНЫЕ ЦЕЛИ (УРОВНИ ЗАПУСКА)

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

Позвольте мне рассказать вам, почему это происходит 😅

Если вы запустите эту команду, вы получите этот результат, в то время как я выполню ту же команду, я получу этот результат

Ага, вы все правильно поняли. Это вся игра, в которую играли на уровне бега.

хочу глубоко погрузиться, чтобы почувствовать, как атмосфера уходит 😝

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

Функция, которая загружает графический интерфейс, известна как уровень выполнения 5 и имеет значение systemd.target = graphical.target.

в то время как

Функция, которая загружает многопользовательский интерфейс, известна как уровень выполнения 3 и имеет значение systemd.target = multi-user.target

Итак, вот ваш ответ о том, как изменить экран графического интерфейса пользователя по умолчанию на экран интерфейса командной строки по умолчанию.

Итак, наконец, вы - разработчик интерфейса командной строки, поздравляю 😚 добро пожаловать в команду, Homey!

Так много изменений, которые я внес в свою первоначальную конфигурацию, чтобы показать вам примеры, теперь мне нужно вернуться назад 😝. Я прилагаю столько усилий, поэтому, пожалуйста, поделитесь этим блогом со своими друзьями

Типы файлов в Linux

Все в Linux - это файл, даже каталог - это тип файла.

Обычно файлы Linux делятся на 3 типа -

  1. Обычный файл. Обычные файлы - это те типы файлов, которые содержат обычные данные, текст, изображения и некоторую конфигурацию.
  2. Каталог - это особый тип файла. он содержит директорию и под директорией несколько файлов. пример- ваш домашний реж.
  3. Специальные файлы - специальные файлы делятся на 5 типов.

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

б) Блокировать файлы - мы очень подробно обсудили файлы БЛОКИРОВКИ УСТРОЙСТВА. часы part-1 eg- ram, жесткий диск

в) Ссылки. Ссылки позволяют соединить два файла вместе.

жесткая ссылка - в этом типе два файла используют одни и те же данные, и удаление одного файла приводит к удалению другого.

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

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

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

Как проверить, к какому типу относится конкретный файл?

Запустите команду File и используйте имя файла, file dir. в качестве аргумента.

вы также можете использовать альтернативную команду, например

Здесь первая буква вывода будет определять тип файла. проверьте первую букву с рисунком ниже и стрелкой 😅

Файл Иерархия

Итак, вот основная файловая директория, с которой вы столкнетесь при работе с Linux. так что давайте учиться построчно

/ home - это домашний каталог, в котором находятся все данные, кроме корневого.

/ root - это главный и корень всех каталогов.

/ opt - это каталог, в котором вы можете загрузить сторонние .lets. Предположим, нам нужно отключить веб-сервер, поэтому / opt будет правильным выбором.

/ bin - это каталог, в котором находятся основные команды Linux, такие как mkdir, mv и все эти команды.

/ dev - это каталог, в котором находятся все файлы блочных устройств и символьные файлы.

/ etc - используется для хранения большинства файлов конфигурации Linux.

/ lib - это каталог, в котором находятся все общие библиотеки, такие как lib_64 программой.

/ media - это каталог, в котором находятся все носители, как и содержимое USB-накопителя, которое мы вставили в последний блог 😅

/ var - в случае возникновения ошибки, этот каталог содержит журналы, которые вам помогут.

/ tmp - это временный файл, в котором находятся все временные данные.

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

/ usr - это место, где находятся все данные о пользователях, такие как Firefox.

Практические упражнения

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

  1. Какой процесс инициализации используется в этой системе?
  2. Какая цель systemd по умолчанию установлена ​​в этой системе?
  3. Измените это значение по умолчанию на многопользовательскую цель.
  4. Вас попросят установить в систему новую стороннюю среду IDE. Какой каталог рекомендуется выбрать для установки?
  5. В каком каталоге находятся файлы, относящиеся к блочным устройствам, которые можно увидеть при запуске команды lsblk?
  6. Как называется производитель контроллера Ethernet, используемого в этой системе?

Попробуйте ответить на все вопросы, чтобы проверить себя, и дайте мне знать

Удачного обучения 😃

Подпишитесь на нас в Twitter , чтобы присоединиться к нам в инициативе изучения Devops за 60 дней.

до встречи в следующем блоге, оставайтесь счастливыми 😄