Please open Telegram to view this post
VIEW IN TELEGRAM
❤9😁6🦄3👍2
Как собрать ядро Linux с нуля
Оно связывает аппаратное и программное обеспечение компьютера, а также отвечает за распределение доступных ресурсов.
Если вы хотите отключить несколько опций и драйверов или попробовать экспериментальные исправления, то вам необходимо будет собрать ядро вручную.
Подготовка и начальная конфигурация
Загрузка исходного кода
Откройте сайт kernel.org и найдите архив с исходными кодами самой свежей версии ядра (Latest Release).
Затем откройте терминал и с помощью команды wget скачайте архив с исходным кодом ядра Linux:
Распаковка архива с исходным кодом
Распакуйте архив, применив команду tar:
Установка необходимых пакетов
Нам потребуются дополнительные утилиты, с помощью которых мы произведем компиляцию и установку ядра.
Для этого выполните следующую команду:
Пользователям #Debian/#Ubuntu/Linux #Mint:
Пользователям #CentOS/#RHEL/#Scientific Linux:
Пользователям #Fedora:
Конфигурирование ядра
Исходный код ядра #Linux уже содержит стандартный файл конфигурации с набором различных настроек.
Однако вы можете сами изменить его в соответствии с вашими потребностями.
Перейдите в каталог с исходным кодом:
Скопируйте существующий файл конфигурации:
Чтобы внести изменения в файл конфигурации, выполните команду make:
Данная команда запускает меню конфигурации, включающее такие параметры, как:
⏺ Firmware Drivers – настройка прошивки/драйверов для различных устройств
⏺ Virtualization – настройки виртуализации
⏺ File systems – настройки различных файловых систем
Для навигации по меню применяются стрелки на клавиатуре. Пункт < Help > поможет вам узнать больше о различных параметрах.
Когда вы закончите вносить изменения, выберите пункт < Save >, а затем выйдите из меню с помощью пункта < Exit >.
🐧 Linux Club
Ядро Linux является основой дистрибутивов Linux.
Оно связывает аппаратное и программное обеспечение компьютера, а также отвечает за распределение доступных ресурсов.
Если вы хотите отключить несколько опций и драйверов или попробовать экспериментальные исправления, то вам необходимо будет собрать ядро вручную.
Подготовка и начальная конфигурация
Загрузка исходного кода
Откройте сайт kernel.org и найдите архив с исходными кодами самой свежей версии ядра (Latest Release).
Затем откройте терминал и с помощью команды wget скачайте архив с исходным кодом ядра Linux:
$ wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.12.10.tar.xz
Распаковка архива с исходным кодом
Распакуйте архив, применив команду tar:
$ tar xvf linux-5.12.10.tar.xz
Установка необходимых пакетов
Нам потребуются дополнительные утилиты, с помощью которых мы произведем компиляцию и установку ядра.
Для этого выполните следующую команду:
Пользователям #Debian/#Ubuntu/Linux #Mint:
$ sudo apt-get install git fakeroot build-essential ncurses-dev xz-utils libssl-dev bc flex libelf-dev bison
Пользователям #CentOS/#RHEL/#Scientific Linux:
$ sudo yum groupinstall "Development Tools"
$ sudo yum install ncurses-devel bison flex elfutils-libelf-devel openssl-devel
Пользователям #Fedora:
$ sudo dnf group install "Development Tools"
$ sudo dnf install ncurses-devel bison flex elfutils-libelf-devel openssl-devel
Конфигурирование ядра
Исходный код ядра #Linux уже содержит стандартный файл конфигурации с набором различных настроек.
Однако вы можете сами изменить его в соответствии с вашими потребностями.
Перейдите в каталог с исходным кодом:
$ cd linux-5.12.10
Скопируйте существующий файл конфигурации:
$ sudo cp -v /boot/config-$(uname -r) .config
Чтобы внести изменения в файл конфигурации, выполните команду make:
$ make menuconfig
Данная команда запускает меню конфигурации, включающее такие параметры, как:
Для навигации по меню применяются стрелки на клавиатуре. Пункт < Help > поможет вам узнать больше о различных параметрах.
Когда вы закончите вносить изменения, выберите пункт < Save >, а затем выйдите из меню с помощью пункта < Exit >.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥4
Как собрать ядро Linux с нуля
Первая часть поста по теме
Компиляция и установка ядра
⏺ Сборка ядра
Для старта сборки ядра выполните следующую команду:
Процесс сборки и компиляции ядра #Linux занимает довольно продолжительное время.
Во время этого процесса в терминале будут перечисляться все выбранные компоненты ядра Linux.
Такие как: компонент управления памятью, компонент управления процессами, драйверы аппаратных устройств, драйверы файловых систем, драйверы сетевых карт и пр.
Затем установите модули с помощью следующей команды:
Установите новое ядро:
⏺ Обновление загрузчика
Загрузчик #GRUB – это первая программа, которая запускается при включении системы.
Пользователям #Debian/#Ubuntu/Linux #Mint:
Команда make install автоматически обновит загрузчик.
Для того, чтобы обновить загрузчик вручную, вам необходимо сначала обновить initramfs до новой версии ядра:
Затем обновить загрузчик GRUB с помощью следующей команды:
Пользователям #CentOS/#RHEL/#ScientificLinux:
Вы можете подтвердить детали с помощью следующих команд:
⏺ Перезагрузка системы
После выполнения вышеописанных действий перезагрузите свой компьютер.
Когда система загрузится, проверьте версию используемого ядра с помощью следующей команды:
🔥 Как видите, теперь в системе установлено собранное нами ядро Linux-5.12.10.
🐧 Linux Club
Первая часть поста по теме
Компиляция и установка ядра
Для старта сборки ядра выполните следующую команду:
$ make
Процесс сборки и компиляции ядра #Linux занимает довольно продолжительное время.
Во время этого процесса в терминале будут перечисляться все выбранные компоненты ядра Linux.
Такие как: компонент управления памятью, компонент управления процессами, драйверы аппаратных устройств, драйверы файловых систем, драйверы сетевых карт и пр.
Затем установите модули с помощью следующей команды:
$ sudo make modules_install
Установите новое ядро:
$ sudo make install
Загрузчик #GRUB – это первая программа, которая запускается при включении системы.
Пользователям #Debian/#Ubuntu/Linux #Mint:
Команда make install автоматически обновит загрузчик.
Для того, чтобы обновить загрузчик вручную, вам необходимо сначала обновить initramfs до новой версии ядра:
$ sudo update-initramfs -c -k 5.12.10
Затем обновить загрузчик GRUB с помощью следующей команды:
$ sudo update-grub2
Пользователям #CentOS/#RHEL/#ScientificLinux:
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
$ sudo grubby --set-default /boot/vmlinuz-5.6.9
Вы можете подтвердить детали с помощью следующих команд:
grubby --info=ALL | more
grubby --default-index
grubby --default-kernel
После выполнения вышеописанных действий перезагрузите свой компьютер.
Когда система загрузится, проверьте версию используемого ядра с помощью следующей команды:
$ uname -r
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9👍3
Обновление конфигурационных файлов при обновлении пакетов в Linux
Рассмотрим ситуацию, когда менеджер пакетов вашего дистрибутива #Linux (#Debian, Linux #Mint, #Ubuntu, #Kali Linux) спрашивает про обновление конфигурационного файла.
При некоторых обновлениях некоторых пакетов меняется структура конфигурационного файла.
Как правило, в новом файле содержаться директивы и настройки, которые необходимы для новой версии программы, без которых она не может работать.
Конечный файл может быть результатом длительной работы с конфигурацией и множества тестов. На это могут быть потрачены часы или даже дни.
Поэтому при необходимости обновить конфигурацию, возникает дилемма:
• не обновлять конфиг, в результате чего новая версия пакета не будет нормально работать
• обновить конфиг и стереть результаты настройки службы
Именно по этой причине система спрашивает у вас каждый раз, что нужно сделать, если с обновлением программы обновляется и конфигурационный файл?
Примеры команд:
1️⃣ dpkg: Для просмотра изменений в конфигурационном файле после обновления можно использовать команду dpkg --status <package_name>.
2️⃣ apt: После обновления пакета apt иногда предлагает вам решить конфликт по конфигурационным файлам. Вы можете использовать команду apt diff <package_name>, чтобы просмотреть различия между версиями файлов.
3️⃣ diff: Вы можете использовать стандартную утилиту #diff для сравнения конфигурационных файлов до и после обновления.
4️⃣ vimdiff: Для сравнения двух файлов в #Vim используйте команду vimdiff.
5️⃣ meld: Это графическая утилита для сравнения файлов, которая может быть удобна для визуального сравнения изменений в конфигурационных файлах.
🐧 Linux Club
Рассмотрим ситуацию, когда менеджер пакетов вашего дистрибутива #Linux (#Debian, Linux #Mint, #Ubuntu, #Kali Linux) спрашивает про обновление конфигурационного файла.
Что нужно делать и как получить конфигурационный файл последней версии?
При некоторых обновлениях некоторых пакетов меняется структура конфигурационного файла.
Как правило, в новом файле содержаться директивы и настройки, которые необходимы для новой версии программы, без которых она не может работать.
Настройка службы — это почти всегда изменение конфигурационных файлов.
Конечный файл может быть результатом длительной работы с конфигурацией и множества тестов. На это могут быть потрачены часы или даже дни.
Поэтому при необходимости обновить конфигурацию, возникает дилемма:
• не обновлять конфиг, в результате чего новая версия пакета не будет нормально работать
• обновить конфиг и стереть результаты настройки службы
Именно по этой причине система спрашивает у вас каждый раз, что нужно сделать, если с обновлением программы обновляется и конфигурационный файл?
Примеры команд:
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2❤1 1
7 полезных команд в Linux
⏺ dhclient — утилита для работы с DHCP-протоколом (получение динамического IP-адреса, настройка сетевых интерфейсов и пр.).
⏺ dmidecode — позволяет получить информацию об аппаратных компонентах системы, а также другую полезную информацию: характеристики процессора, оперативной памяти (DIMM), детали BIOS и т.д.
⏺ eject — позволяет извлекать съемный носитель (обычно CD-ROM, дискету, ленту, JAZ- или ZIP-диск) с помощью программного обеспечения.
⏺ expand — позволяет конвертировать табуляции в пробелы в файле, а когда файл не указан, то данные считываются со стандартного ввода.
⏺ expr — вычисляет заданное выражение и отображает результат.
⏺ fc — используется для перечисления, редактирования или повторного выполнения команд, ранее введенных в интерактивную оболочку.
⏺ fc-cache — сканирует каталоги шрифтов (и создает их кэш), которые используют fontconfig для обработки шрифтов.
🐧 Linux Club
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2❤1
Наиболее часто используемые команды iptables:
1️⃣ Команда используется для отображения текущих правил таблицы фильтрации пакетов.
2️⃣ Команда используется для отображения текущих правил таблицы преобразования сетевых адресов (NAT).
3️⃣ Команда добавляет правило в таблицу INPUT, которое разрешает все входящие TCP-пакеты на порту 80.
4️⃣ Команда добавляет правило в таблицу FORWARD, которое разрешает все пакеты UDP на порту 53 (DNS-трафик).
5️⃣ Команда добавляет правило в таблицу OUTPUT, которое разрешает все исходящие TCP-пакеты на порту 22 (SSH-трафик).
6️⃣ Команда добавляет правило в таблицу INPUT, которое блокирует все входящие TCP-пакеты на порту 22 (SSH-трафик).
7️⃣ Команда используется для добавления правила в таблицу nat, которое маскирует IP-адрес источника при отправке пакетов через интерфейс eth0.
8️⃣ Команда добавляет правило в таблицу FORWARD, которое разрешает все пакеты, пересылаемые между интерфейсами eth0 и eth1.
9️⃣ Команда добавляет правило в таблицу INPUT, которое разрешает все входящие пакеты на интерфейсе loopback (lo).
1️⃣ 0️⃣ Команда используется для отображения номеров сетевых интерфейсов вместе с текущими правилами таблицы фильтрации пакетов.
🐧 Linux Club
iptables -L
iptables -t nat -L
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A FORWARD -p udp --dport 53 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j DROP
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o eth1 -j ACCEPT
iptables -A INPUT -i lo -j ACCEPT
iptables -L -n
Please open Telegram to view this post
VIEW IN TELEGRAM
👍16
Почему Linux более безопасен, чем Windows?
В данной статье мы рассмотрим несколько ключевых причин, почему Linux обеспечивает более высокий уровень безопасности по сравнению с Windows.
1️⃣ Привилегии пользователя
Windows, по умолчанию, предоставляет пользователям права администратора, что делает их уязвимыми для вредоносных программ. В отличие от этого, в Linux стандартные пользователи не обладают административными привилегиями, что значительно снижает риск заражения системы вирусами.
2️⃣ Размер аудитории
Linux имеет значительно меньшую долю рынка по сравнению с Windows, что делает его менее привлекательной целью для хакеров. Меньшее количество пользователей Linux уменьшает вероятность массового заражения вирусами и другим вредоносным ПО.
3️⃣ Разнообразие систем
Существует огромное количество различных дистрибутивов Linux, что усложняет задачу злоумышленникам в нападении на широкий спектр систем. Это делает Linux менее предсказуемым для атак и повышает его общую безопасность.
4️⃣ Выявление багов
Философия открытости и коллективного тестирования кода в мире Linux позволяет быстрее обнаруживать и исправлять ошибки. Благодаря широкому сообществу разработчиков и пользователей, проблемы в коде Linux часто находятся и устраняются намного быстрее, чем в мире Windows.
⚡️ По совокупности этих факторов Linux обеспечивает более высокий уровень безопасности и стабильности, что делает его предпочтительным выбором для многих пользователей и организаций.
🐧 Linux Club
В данной статье мы рассмотрим несколько ключевых причин, почему Linux обеспечивает более высокий уровень безопасности по сравнению с Windows.
Windows, по умолчанию, предоставляет пользователям права администратора, что делает их уязвимыми для вредоносных программ. В отличие от этого, в Linux стандартные пользователи не обладают административными привилегиями, что значительно снижает риск заражения системы вирусами.
Linux имеет значительно меньшую долю рынка по сравнению с Windows, что делает его менее привлекательной целью для хакеров. Меньшее количество пользователей Linux уменьшает вероятность массового заражения вирусами и другим вредоносным ПО.
Существует огромное количество различных дистрибутивов Linux, что усложняет задачу злоумышленникам в нападении на широкий спектр систем. Это делает Linux менее предсказуемым для атак и повышает его общую безопасность.
Философия открытости и коллективного тестирования кода в мире Linux позволяет быстрее обнаруживать и исправлять ошибки. Благодаря широкому сообществу разработчиков и пользователей, проблемы в коде Linux часто находятся и устраняются намного быстрее, чем в мире Windows.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔6👍5💯2🔥1
Управление дисками в Linux с помощью LVM
Виртуализация пространства на жестких дисках становится все более важной в мире администрирования серверов.
Давайте рассмотрим основные шаги и практические советы по использованию LVM
⏺ Создание физического тома (Physical Volume, PV): Для начала добавьте ваш диск или раздел диска в LVM как физический том. Используйте команду
⏺ Создание группы томов (Volume Group, VG): После создания физического тома добавьте его в группу томов. Это делается с помощью команды
⏺ Создание логического тома (Logical Volume, LV): Теперь вы можете создать логический том внутри вашей группы томов с помощью команды
⏺ Форматирование и монтирование логического тома: После создания логического тома форматируйте его нужной файловой системой с помощью команды
⏺ Расширение или уменьшение размера логического тома: В будущем вы можете легко изменить размер вашего логического тома, добавив дополнительное пространство или уменьшив его с помощью команд
🐧 Linux Club
Виртуализация пространства на жестких дисках становится все более важной в мире администрирования серверов.
Logical Volume Manager (LVM) в Linux предоставляет мощные инструменты для гибкого управления дисками и томами данных.
Давайте рассмотрим основные шаги и практические советы по использованию LVM
pvcreate с указанием пути к вашему диску или разделу.pvcreate /dev/sdb1
vgcreate, указав имя для вашей группы томов и путь к физическому тому.vgcreate my_vg /dev/sdb1
lvcreate. Укажите размер логического тома и его имя.lvcreate -L 10G -n my_lv my_vg
mkfs и монтируйте его в файловую систему с помощью команды mount.mkfs.ext4 /dev/my_vg/my_lv
mount /dev/my_vg/my_lv /mnt/my_mount_point
lvextend и lvreduce соответственно.Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤2👍1
Давайте разберем один из частых вопросов, который может быть задан на собеседовании и как на него отвечать./etc/pam.d/system-auth", в котором мы определяем требования к паролям. В ОС, основанных на #Debian, для этих же целей служит файл "
/etc/pam.d/common-password".Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤2
Полный курс по Linux для начинающих 2023
📎 Смотреть курс
#Курсы #Linux
🐧 Linux Club
Если вы новичок в Linux, этот курс для начинающих - для вас. Вы познакомитесь со многими инструментами, которые каждый день используются как системными администраторами Linux, так и миллионами людей, использующих дистрибутивы Linux, такие как Ubuntu, на своих ПК.
Этот курс научит вас ориентироваться в графическом пользовательском интерфейсе Linux и экосистеме мощных инструментов командной строки.
#Курсы #Linux
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤2
5 забавных команд в Linux, которые оживят ваш терминал
Среди всего множества команд и скриптов существуют такие команды, которые хоть и не могут похвастаться своей практичностью, но настроение поднять могут.
⏺ Команда sl
Команда sl (сокр. от «steam locomotive») очень похожа на команду
Исходя из того, насколько скучными являются визуальные эффекты терминала, разнообразить его вы можете с помощью движущегося локомотива, который вызывается данной командой.
Сначала нужно установить
А затем можно использовать:
⏺ Команда cmatrix
Если вы видели голливудский фильм «Матрица», то сразу поймете, что делает данная команда.
Сначала нужно установить
А затем можно использовать:
⏺ Команда oneko
Команда oneko добавляет на экран терминала котёнка, который будет следовать за вашим курсором.
Сначала нужно установить
А затем можно использовать:
⏺ Команда aafire
Вы когда-нибудь задумывались, как будет выглядеть огонь на черном фоне терминала?
Благодаря команде
Сначала нужно установить
А затем можно использовать:
⏺ Команда cowsay
Команда cowsay выводит в консоль изображение коровы в ASCII-формате, которая произносит фразу, переданную вами в качестве параметра.
Сначала нужно установить
А затем можно использовать:
🐧 Linux Club
Среди всего множества команд и скриптов существуют такие команды, которые хоть и не могут похвастаться своей практичностью, но настроение поднять могут.
Команда sl (сокр. от «steam locomotive») очень похожа на команду
ls, поэтому её часто вызывают по ошибке. Исходя из того, насколько скучными являются визуальные эффекты терминала, разнообразить его вы можете с помощью движущегося локомотива, который вызывается данной командой.
Сначала нужно установить
sl:$ sudo apt install sl
А затем можно использовать:
$ sl
Если вы видели голливудский фильм «Матрица», то сразу поймете, что делает данная команда.
Сначала нужно установить
cmatrix:$ sudo apt install cmatrix
А затем можно использовать:
$ cmatrix
Команда oneko добавляет на экран терминала котёнка, который будет следовать за вашим курсором.
Сначала нужно установить
oneko:$ sudo apt install oneko
А затем можно использовать:
$ oneko
Вы когда-нибудь задумывались, как будет выглядеть огонь на черном фоне терминала?
Благодаря команде
aafire вы сможете это увидеть.Сначала нужно установить
aafire:$ sudo apt install libaa-bin
А затем можно использовать:
$ aafire
Команда cowsay выводит в консоль изображение коровы в ASCII-формате, которая произносит фразу, переданную вами в качестве параметра.
Сначала нужно установить
cowsay:$ sudo apt install cowsay
А затем можно использовать:
$ cowsay [текст]
Please open Telegram to view this post
VIEW IN TELEGRAM
😁6❤3🔥1
🛡️🐧 ""Защитный барьер Linux: Как система обеспечивает безопасность пользователей и групп"" 🚨💡
Привет, стражи кибербезопасности и энтузиасты Linux! Сегодня мы раскроем секреты встроенных механизмов безопасности в Linux, которые защищают пользователей и группы от внешних угроз и внутренних ошибок. 🚀🔐
Linux, как крепость с открытым исходным кодом, оснащен мощными инструментами для управления пользователями и группами, обеспечивая надежную защиту данных и системных ресурсов. От уникальных идентификаторов (UID и GID) до сложных прав доступа (permissions) и политик безопасности (security policies), каждый элемент системы играет свою роль в создании непроницаемой стены безопасности.
1. UID и GID: Эти идентификаторы уникальны для каждого пользователя и группы, обеспечивая, чтобы права и ресурсы были строго распределены и контролировались.
2. Права доступа: Linux использует детальную систему прав доступа для файлов и каталогов, позволяя администраторам точно настраивать, кто может читать, писать и выполнять файлы.
3. Политики безопасности: Системы, такие как SELinux и AppArmor, предоставляют дополнительный уровень контроля, ограничивая поведение приложений и процессов в соответствии с заранее определенными правилами.
4. Централизованное управление: Инструменты, такие как LDAP и Active Directory, позволяют администраторам управлять пользователями и группами в больших масштабах, обеспечивая единообразие и упрощение административных задач.
5. Шифрование: Linux предлагает различные инструменты для шифрования данных, от домашних каталогов до целых разделов, защищая чувствительную информацию от несанкционированного доступа.
🐧 Linux Club
Привет, стражи кибербезопасности и энтузиасты Linux! Сегодня мы раскроем секреты встроенных механизмов безопасности в Linux, которые защищают пользователей и группы от внешних угроз и внутренних ошибок. 🚀🔐
Linux, как крепость с открытым исходным кодом, оснащен мощными инструментами для управления пользователями и группами, обеспечивая надежную защиту данных и системных ресурсов. От уникальных идентификаторов (UID и GID) до сложных прав доступа (permissions) и политик безопасности (security policies), каждый элемент системы играет свою роль в создании непроницаемой стены безопасности.
1. UID и GID: Эти идентификаторы уникальны для каждого пользователя и группы, обеспечивая, чтобы права и ресурсы были строго распределены и контролировались.
2. Права доступа: Linux использует детальную систему прав доступа для файлов и каталогов, позволяя администраторам точно настраивать, кто может читать, писать и выполнять файлы.
3. Политики безопасности: Системы, такие как SELinux и AppArmor, предоставляют дополнительный уровень контроля, ограничивая поведение приложений и процессов в соответствии с заранее определенными правилами.
4. Централизованное управление: Инструменты, такие как LDAP и Active Directory, позволяют администраторам управлять пользователями и группами в больших масштабах, обеспечивая единообразие и упрощение административных задач.
5. Шифрование: Linux предлагает различные инструменты для шифрования данных, от домашних каталогов до целых разделов, защищая чувствительную информацию от несанкционированного доступа.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤3🤔3🔥1
Linux с нуля до DevOps-инженера 2023
📎 Ссылка на курс: Клик!
#Курсы #Linux #DevOps
🐧 Linux Club
Полный курс по Linux. В нём вы узнаете все тонкости работы с операционной системой, необходимые для начала освоения профессии.
#Курсы #Linux #DevOps
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥2