Linux для чайника – Telegram
Linux для чайника
20K subscribers
88 photos
4 files
79 links
Linux
- Разбор утилит / инструментов
- Новости / факты
- Опросы для проверки знаний, навыков
и многое другое.

Только по вопросам сотрудничества: @altmainf

Регистрация в перечне РКН https://clck.ru/3EpL9L
Download Telegram
Build-essential

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

В состав build-essential входят следующие основные компоненты:

1. Компиляторы: В основном это GCC, который является стандартным компилятором в среде разработки Linux.
2. Библиотеки разработчиков (dev-пакеты): Это заголовочные файлы и статические библиотеки, необходимые для разработки и сборки программ.
3. Util-linux: Этот пакет содержит различные утилиты командной строки, которые помогают в разработке и сборке программ (chroot, fdisk, mount).
4. dpkg-dev: Этот пакет содержит инструменты, необходимые для создания и управления пакетами в формате Debian (.deb).
5. make: Это универсальный инструмент для автоматизации сборки программ.
GNU Autotools

Набор инструментов для автоматической конфигурации, сборки и установки программного обеспечения в операционных системах на базе Unix.

Набор инструментов GNU Autotools включает в себя следующие компоненты:
1. GNU Autoconf — инструмент для создания скриптов "configure" автоматически. С помощью Autoconf можно определить зависимости программы, проверить наличие библиотек и других компонентов, а также установить различные параметры конфигурации.

2. GNU Automake — инструмент для создания Makefile из специализированного файла "Makefile.am".

3. GNU Libtool — инструмент для упрощения создания и использования динамических библиотек. Libtool абстрагирует сложности, связанные с созданием и использованием различных форматов библиотек (например, .so или .dll), обеспечивая переносимость программного кода между различными платформами.
Checkinstall

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

При установке программы с помощью Checkinstall создается пакет, который можно добавить в систему через менеджер пакетов.

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

Основное преимущество Checkinstall заключается в простоте установки, отслеживании и удалении программ, установленных из исходного кода.
rpmbuild

Командный инструмент, входящий в пакет rpm-build, используемый для сборки RPM-пакетов из исходных файлов(RPM — формат пакетов и утилита для управления пакетами в системах на базе Red Hat).

Чтобы создать RPM-пакет с помощью rpmbuild, вам нужно создать специальный файл спецификации (.spec), в котором указываются все необходимые детали и инструкции для сборки пакета.

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

После создания .spec файла и необходимых исходных файлов, вы можете запустить команду rpmbuild, указав путь к .spec файлу. rpmbuild выполнит сборку пакета в соответствии с указанными настройками и создаст готовый RPM-пакет.
dh_make

Утилита в ОС на базе Debian, которая помогает автоматизировать создание файла спецификации (debian/control) и других файлов, необходимых для упаковки программного обеспечения в формате Debian-пакета.

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

Затем dh_make создает стандартный набор файлов и директорий, основываясь на указанных исходных файлах. В результате получается основа для пакета, которую вы можете дальше настраивать.

Обратите внимание, что dh_make представляет собой только исходный набор файлов и структуру папок для пакета Debian. Вы по-прежнему должны вручную настроить содержимое и файлы конфигурации для вашего пакета.
GNU Autoconf

Набор утилит и макросов, разработанных в рамках проекта GNU, предназначенный для облегчения процесса автоматической конфигурации ПО на различных платформах и ОС.

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

Этот процесс конфигурации основан на использовании файла "configure.ac", который содержит инструкции на специальном языке макроопределений M4. С помощью Autoconf и M4, "configure.ac" преобразуется в скрипт "configure", который может быть запущен на целевой системе для автоматической проверки и настройки программного обеспечения.
GNU Automake

Инструмент, который упрощает процесс создания и управления файлами сборки (Makefile).

Automake основан на системе сборки GNU Make и позволяет разработчикам определить зависимости между файлами и задать правила для сборки проекта. Automake использует скрипты Makefile.am, которые содержат инструкции для создания Makefile. Затем, с помощью утилиты "automake", эти скрипты обрабатываются и преобразуются в соответствующие Makefile.

Automake обеспечивает автоматическую генерацию сложных правил сборки, включая компиляцию, линковку, установку и тестирование проекта.
GNU Libtool

Инструмент, который упрощает процесс создания и управления динамических библиотек в проектах.

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

Libtool часто используется вместе с GNU Autoconf и GNU Automake, чтобы обеспечить полную систему автоматической настройки, сборки и установки проектов.
Легковесная оболочка LXDE в Linux

Это одна из самых легких и быстрых графических сред в Linux.

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

LXDE имеет низкие требования к системным ресурсам, что делает его подходящим выбором для старых компьютеров или компьютеров с ограниченной памятью.
Легковесная оболочка Xfce в Linux

Графическая среда Xfce также известна своей легкостью и производительностью.

Она обладает большим набором функций и более современным дизайном по сравнению с LXDE.

Также она более настраиваемая и предлагает пользовательские панели инструментов, окна и темы, позволяя адаптировать макет рабочего стола под свои потребности.
LDAP-сервер в Linux

1. Для установки LDAP-сервера в Ubuntu или Debian, выполните команду:
sudo apt-get install slapd

2. Во время установки LDAP-сервера будет предложено задать пароль для административной учетной записи. Задайте пароль и запомните его

3. Отредактируйте файл /etc/ldap/slapd.conf, указав базовый DN, а также некоторые дополнительные параметры, такие как максимальный размер БД и файл журнала.

4. В файле конфигурации определите используемые схемы и манифесты.
Например:
include /etc/ldap/schema/core.schema
include /etc/ldap/schema inetorgperson.schema
include /etc/ldap/schema/nis.schema

5. Создайт базу данных и административную учетную запись, выполнив команду:
sudo dpkg-reconfigure slapd

6. Перед запуском LDAP-сервера убедитесь, что настройки в файле конфигурации заданы правильно, выполнив команду:
sudo slaptest -u

7. Если ошибок нет, запустите LDAP-сервер:
sudo service slapd start
nftables

Утилита командной строки для управления брандмауэром в Linux, которая заменяет устаревшую команду iptables.

Примеры использования:
1. Создание таблицы и цепочки:
Создать таблицу:
nft add table inet mytable
Создать цепочку в таблице:
nft add chain inet mytable mychain

2. Добавление правил:
Добавить правило для разрешения доступа из конкретного IP-адреса:
nft add rule inet mytable mychain ip saddr 192.168.1.100 accept
Добавить правило для блокировки порта:
nft add rule inet mytable mychain tcp dport 22 drop
Добавить правило для перенаправления порта: nft add rule inet mytable mychain tcp dport 80 redirect to :8080

3. Удаление правил:
Удалить правило:
nft delete rule inet mytable mychain handle 5
Удалить все правила из цепочки:
nft flush chain inet mytable mychain

4. Сохранение и загрузка правил:
Сохранить правила в файл:
nft list ruleset > myfile.nft
Загрузить правила из файла:
nft -f myfile.nft
Iptables vs Nftables

Выбор между iptables и nftables зависит от ваших потребностей и уровня опыта.

Если вам уже знаком iptables или вам требуется использовать определенные функции, то iptables может быть хорошим выбором. Однако, если вы начинаете и хотите более простой и удобный в использовании вариант, то рекомендуется попробовать nftables.

Необходимо отметить, что nftables представляет будущее развитие брандмауэра в Linux и будет заменять iptables в перспективе.
Apache в Linux

Apache - один из самых популярных и мощных веб-серверов, который часто используется в Linux-системах для хостинга веб-сайтов.

Ключевые функции веб-сервера Apache:
⁃ Виртуальные хосты
⁃ SSL и безопасность
⁃ Управление доступом и аутентификацию на основе IP-адреса или пароля.
⁃ Настройка перенаправлений (редиректов) или URL-переадресаций.
⁃ Настройка сжатия и кэширования файлов для улучшения производительности.
⁃ Логирование и анализ логов для отслеживания активности на сервере и выявления проблем.

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

Apache - один из самых популярных и мощных веб-серверов, который часто используется в Linux-системах для хостинга веб-сайтов.

Виртуальные хосты позволяют вам хостить несколько веб-сайтов на одном сервере с разными доменными именами или IP-адресами.

Для настройки виртуальных хостов с помощью Apache, вам потребуется настроить отдельные конфигурационные файлы для каждого веб-сайта.

Конфигурационные файлы Apache обычно находятся в директории /etc/httpd/conf.d/ или /etc/apache2/sites-available/ в зависимости от дистрибутива Linux.
SSL и безопасность в Apache

Apache - один из самых популярных и мощных веб-серверов, который часто используется в Linux-системах для хостинга веб-сайтов.

SSL (Secure Sockets Layer) - это протокол безопасного соединения, позволяющий шифровать данные между клиентами и серверами, чтобы защитить информацию от несанкционированного доступа.

Для настройки SSL на веб-сервере Apache, вам потребуется установить SSL-сертификат, который выдает доверенная организация. Затем вы можете настроить конфигурационный файл Apache для включения поддержки SSL и указания пути к вашему сертификату.
Postfix

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

- имеет простую и интуитивно понятную конфигурацию, что делает его легким в установке и настройке.
- активно обновляется и поддерживается, чтобы быть защищенным от известных уязвимостей. Он имеет механизмы защиты от спама, фильтрации и обнаружения вредоносных программ.
- разработан для обработки большого объема почты с высокой скоростью и низкими задержками, что делает его идеальным для организаций с большим потоком электронных сообщений.
- предоставляет множество параметров и возможностей настройки, которые позволяют пользователям адаптировать его под свои потребности и требования.
Настройка Postfix в Linux

1. Сначала установите Postfix, для Ubuntu это можно сделать с помощью команды:
sudo apt-get install postfix.

После установки вы можете изменить основные параметры конфигурации Postfix, которые находятся в файле /etc/postfix/main.cf.

2. Postfix поставляется с дополнительными инструментами для борьбы со спамом, такими как SpamAssassin и Amavisd-new. Установите эти инструменты с помощью пакетного менеджера.
- Настройте и интегрируйте их для автоматического обнаружения и обработки спам-почты.

3. При администрировании Postfix важно обеспечить безопасность вашего почтового сервера. Некоторые меры безопасности включают:
⁃ Обновление Postfix и связанных пакетов регулярно, чтобы исправить уязвимости безопасности.
⁃ Установка и настройка файрвола, чтобы ограничить доступ к почтовому серверу только к необходимым портам и IP-адресам.
⁃ Настройка SSL/TLS для шифрования соединений между почтовым клиентом и сервером.
Настройка маршрутизации в Linux

В Linux существуют различные инструменты, такие как iproute2 и net-tools.

Они позволяют управлять таблицами маршрутизации, устанавливать маршруты, добавлять или удалять маршрутизационные правила и многое другое.

Это позволяет определять путь, по которому должен идти трафик в сети.
Настройка Bridge в Linux

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

В Linux мосты поддерживаются с помощью программы Bridge Utils.

Она позволяет создавать мосты, добавлять и удалять интерфейсы в мост, настраивать STP (Spanning Tree Protocol) и другие параметры.