💡 Полезные Советы

Adblock-fast на OpenWrt 24.10: Как поднять эффективность блокировки с 40% до 96%?

30.12.25
15

Многие пользователи OpenWrt сталкиваются с одной и той же проблемой: плагин adblock-fast установлен, списки (Hagezi или OISD) выбраны, служба запущена, но реклама на сайтах и в приложениях продолжает пролезать. Тесты показывают удручающий результат блокировки - около 40-45%.

Причина кроется не в плохих списках, а в недостатке инструментов для их обработки.

В чем проблема?

По умолчанию OpenWrt использует облегченный набор утилит (BusyBox). Когда вы скармливаете роутеру огромный список блокировки (например, Hagezi Pro), встроенные "урезанные" утилиты просто захлебываются. Они не могут корректно отсортировать и очистить сотни тысяч доменов, из-за чего в память загружается лишь малая часть правил или процесс завершается с ошибкой.

На скриншотах изображен экран настроенного AdBlock-Fast:

 

Решение

Для корректной работы adblock-fast на современных прошивках (включая 24.xx) критически важно доустановить полноценные версии инструментов обработки текста.

Что нужно установить:

  • gawk

  • grep

  • sed

  • coreutils-sort

Инструкция (Терминал)

Самый быстрый способ исправить ситуацию - выполнить две команды в терминале (SSH):

opkg update
opkg install gawk grep sed coreutils-sort

Инструкция (Веб-интерфейс LuCI)

  1. Перейдите в SystemSoftware.

  2. Нажмите Update lists.

  3. По очереди найдите и установите пакеты: gawk, grep, sed и coreutils-sort.

Итого

Сразу после установки пакетов перезапустите службу Adblock. Роутер сможет корректно "переварить" тяжелые списки.

  • Было: ~40% на тестах (d3ward / AdBlock Tester).

  • Стало: 96-98% блокировки.

Важный нюанс про IPv6: Если даже после этого телефон продолжает показывать рекламу, проверьте, не использует ли он IPv6. Часто мобильные устройства обходят блокировку, получая "чистый" DNS адрес через протокол IPv6. В таком случае в настройках интерфейса LAN (DHCP Server -> IPv6 Settings) лучше выключить раздачу IPv6 (поставить в режим Disabled).

Raspberry Pi 5: Черный экран и мигание зеленого индикатора (9 или 10 раз) - Решение проблемы

28.12.25
28

Если при включении Raspberry Pi 5 вы видите черный экран, порты USB, LAN не работают, а зеленый светодиод (ACT) циклично мигает 9 или 10 раз, это указывает на проблему с загрузчиком (EEPROM) или несовместимость прошивки с вашей ревизией платы.

Эта проблема часто встречается на ранних или специфических ревизиях плат. Ниже приведено рабочее решение по откату и фиксации версии прошивки.

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

После перепрошивки, если вытащить SD-карту и подать питание на Raspberry Pi 5, можно увидеть диагностический экран: 

Инструкция по восстановлению

Шаг 1. Скачивание специальной версии прошивки

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

  1. Скачайте архив с прошивкой (bootloader) по ссылке: GitHub: rpi-eeprom v2024.09.10-2712 или зеркало с нашего сайта riopass.ru.GitHub: rpi-eeprom v2024.09.10-2712

  2. Вам нужны файлы для создания загрузочной SD-карты восстановления (Recovery).

Шаг 2. Запись прошивки EEPROM через Raspberry Pi Imager

Так как скачанный архив содержит готовый образ диска (.img), для записи нам понадобится программа Raspberry Pi Imager.

  1. Подготовка файла: Распакуйте скачанный архив. Найдите внутри файл с расширением .img (например, rpi-boot-eeprom-recovery-2024-09-10-2712-sd.img).

  2. Запуск программы: Откройте Raspberry Pi Imager.

  3. Выбор образа:

    • Нажмите кнопку "Выбрать ОС" (Choose OS).

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

    • Выберите пункт "Использовать свой образ" (Use Custom).

    • В открывшемся окне найдите и выберите распакованный ранее .img файл восстановления.

  4. Запись:

    • Нажмите "Выбрать диск" (Choose Storage) и укажите вашу карту памяти.

    • Нажмите "Записать" (Write).

  5. Прошивка платы:

    • Вставьте записанную карту в выключенную Raspberry Pi 5.

    • Подайте питание.

    • Дождитесь, пока зеленый светодиод начнет быстро и непрерывно мигать (ну если подключили монитор, то он будет полностью зеленым.). Это означает, что EEPROM успешно обновлен.

    • Отключите питание и извлеките карту.

Шаг 3. Подготовка ОС и блокировка обновлений

Теперь нужно записать операционную систему, но запретить ей обновлять EEPROM обратно до нерабочей версии.

  1. Запишите образ нужной вам системы (Raspberry Pi OS, Ubuntu и др.) на microSD карту обычным способом (через Raspberry Pi Imager или BalenaEtcher).

  2. ДО первого запуска вставьте карту в кардридер компьютера.

  3. Откройте раздел boot (или bootfs) на карте.

  4. Найдите и откройте файл config.txt с помощью текстового редактора (Notepad++, Блокнот).

  5. В самый низ файла добавьте следующий блок настроек:

    [all]
    eeprom_update=0
    BOOT_UART=0
    WAKE_ON_GPIO=1
    POWER_OFF_ON_HALT=0
    # Отключить автообновление EEPROM
    UPDATE_SELF=0

⚠️ Критически важные нюансы

  • НЕ подключайте Wi-Fi при первой настройке! Особенно это касается Raspberry Pi OS. При первом запуске мастер настройки предложит подключиться к сети. Пропустите этот шаг. Если подключить интернет сразу, система может принудительно скачать и установить последнее (проблемное для вашей платы) обновление EEPROM еще до того, как вступят в силу настройки config.txt.

  • На других системах (не RPi OS) автоматическое обновление встречается реже, но лучше перестраховаться.

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

  • Так же есть проблема, когда Raspberry Pi OS может сама принудительно обновлять EEPROM, чтобы Вы не делали, вот скриншот:

Ini, TOML
[all]
eeprom_update=0
BOOT_UART=0
WAKE_ON_GPIO=1
POWER_OFF_ON_HALT=0
# Отключить автообновление EEPROM
UPDATE_SELF=0

Инструкция по подключению автосканера ELM327 OBDII (Bluetooth)

28.12.25
26

Для Android, iOS и Windows

Автосканер ELM327 Bluetooth - это незаменимый помощник для самостоятельной диагностики автомобиля. Чтобы устройство работало корректно, важно правильно его подключить, так как процедура для разных смартфонов отличается.

Мы подготовили для вас пошаговое руководство на основе популярного приложения Car Scanner (рекомендуем скачать его заранее в Google Play или App Store).


🤖 Подключение для Android

На Android устройствах сопряжение происходит через системные настройки телефона.

  1. Подготовка Bluetooth: Зайдите в "Настройки" -> "Bluetooth" на вашем телефоне.

    Важно: Если вы ранее подключали другие сканеры ELM327, обязательно удалите их из списка сопряженных устройств ("Забыть устройство"). Только после этого подключайте новый сканер, иначе он может не заработать.

  2. Поиск устройства: Вставьте сканер в разъем OBD2 вашего авто (зажигание должно быть включено). В списке доступных устройств найдите OBD2, OBDBLE или OBDII.

  3. Сопряжение: Нажмите на имя устройства. Введите пароль сопряжения: 1234 или 0000.

  4. Настройка приложения:

    • Откройте приложение Car Scanner.

    • Введите данные вашего автомобиля при первом запуске.

    • В настройках подключения выберите марку вашего авто.

    • Совет: Если вы не знаете точный тип ЭБУ (электронного блока управления), выберите "Универсальный профиль OBD2".

  5. Готово: Нажмите кнопку "Подключить" на главном экране.


🍎 Подключение для iPhone (iOS)

Владельцам iPhone нужно быть внимательнее: процедура кардинально отличается от Android!

Внимание: НЕ заходите в настройки Bluetooth самого телефона для сопряжения. iPhone просто не увидит сканер в системном меню, либо выдаст ошибку. Все делается внутри приложения.

  1. Запуск: Вставьте сканер в разъем, включите зажигание. Сразу открывайте приложение Car Scanner.

  2. Профиль: Заполните данные авто и выберите профиль подключения (марку авто или "Универсальный профиль OBD2").

  3. Настройка адаптера (Ключевой момент):

    • Перейдите в "Настройки" (внутри приложения).

    • Выберите пункт "Адаптер OBDII ELM327" (обычно второй сверху).

    • В типе подключения смените Wi-Fi на Bluetooth LE (4.0+).

  4. Выбор устройства:

    • Далее нажмите "Выбрать устройство".

    • Приложение попросит включить Bluetooth (разрешите доступ).

    • В появившемся списке выберите OBDII или OBDBLE.

  5. Финал: Вернитесь на главный экран приложения и нажмите большую кнопку "Подключить".

💻 Подключение для Windows (Ноутбук)

Для диагностики с ноутбука потребуется наличие Bluetooth-модуля.

  1. Вставьте сканер в разъем OBD2, включите зажигание.

  2. На ноутбуке зайдите в "Параметры" -> "Устройства" -> "Bluetooth и другие устройства".

  3. Нажмите "Добавление Bluetooth или другого устройства".

  4. Выберите сканер (OBDII) и введите пин-код 1234 или 0000.

  5. Дождитесь уведомления "Устройство готово к использованию".

    • Нюанс: Вам нужно узнать, какой COM-порт система присвоила сканеру (это можно посмотреть в "Диспетчере устройств" в разделе "Порты (COM и LPT)"). Обычно это два порта, нужен тот, что "Outgoing" (Исходящий).

  6. Установите программу для диагностики (например, ScanMaster-ELM или Forscan). В настройках программы укажите тип подключения "Bluetooth" и выберите соответствующий COM-порт.

💡 Полезные советы:

  • Зажигание: Сканер получает питание от сети авто, но считывание данных происходит только при включенном зажигании (или заведенном двигателе).

  • Аккумулятор: Если вы не планируете пользоваться машиной несколько дней, лучше вытащить сканер из разъема, чтобы он не разряжал аккумулятор (хотя современные версии потребляют минимум энергии).

  • Выбор программы: Если Car Scanner вам не подошел, для Android отличной альтернативой является приложение Torque Pro, а для владельцев Ford/Mazda — Forscan.

  • Версия сканера имеет значение: Для большинства автомобилей (особенно ВАЗ, старых иномарок до 2005 года) мы рекомендуем искать сканеры с прошивкой v1.5 (две платы). Они поддерживают больше протоколов, чем урезанные версии v2.1.

❓ FAQ: Частые вопросы и решение проблем

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

В: Телефон видит сканер, но программа не подключается (надпись "Подключение к ЭБУ..." висит бесконечно). О: Чаще всего проблема в выключенном зажигании.

  1. Убедитесь, что зажигание включено (лампочки на приборной панели горят).

  2. Попробуйте сменить профиль подключения в настройках программы. Вместо "Universal OBD2" выберите конкретную марку вашего авто.

В: iPhone не видит устройство в списке Bluetooth. О: Это нормально для iPhone! Не ищите сканер в настройках телефона. Заходите сразу в приложение (например, Car Scanner), выбирайте в настройках подключение Bluetooth LE (4.0+) и ищите устройство именно там.

В: При сопряжении на Android пишет "Неверный пин-код", хотя я ввожу 1234. О: Попробуйте комбинации 0000, 12345 или 6789. Если не помогает — удалите старые сохраненные Bluetooth-устройства, перезагрузите телефон и попробуйте снова.

В: Можно ли ездить с постоянно включенным сканером? О: Можно, но не рекомендуется оставлять его на длительную стоянку (более 2-3 дней). Даже в спящем режиме он потребляет небольшое количество энергии аккумулятора.

🛠 Как прочитать и сбросить ошибку (Check Engine)

Самая популярная функция сканера — погасить лампочку "Check Engine". Вот как это сделать правильно, чтобы не навредить автомобилю.

1. Считывание ошибок

  • Подключитесь к автомобилю через приложение.

  • Нажмите кнопку "Ошибки" (или "Диагностика").

  • Нажмите "Прочитать". Приложение покажет коды (например, P0300).

  • Важно: Не сбрасывайте ошибку сразу! Нажмите на код, чтобы прочитать расшифровку. Лучше сделать скриншот или записать код, чтобы потом узнать в интернете, какая деталь требует замены.

2. Сброс ошибок (Очистка)

Процедура сброса требует соблюдения правил:

  1. Двигатель должен быть заглушен!

  2. Зажигание должно быть включено (приборная панель светится).

  3. Нажмите кнопку "Очистить" (иконка корзины или кнопка "Сброс").

  4. Подтвердите действие.

  5. Выключите зажигание на 10-15 секунд, затем заведите двигатель. Лампочка Check Engine должна погаснуть.

Примечание: Если вы просто сбросите ошибку, но не устраните поломку (например, не замените неисправный датчик), ошибка ("Чек") загорится снова через несколько километров.

Linux Screen: Как сделать терминал бессмертным (Полное руководство)

21.12.25
31

Вы когда-нибудь попадали в такую ситуацию? Вы подключились к удаленному серверу по SSH, запустили долгое обновление системы или скачивание огромного файла, и вдруг... мигнул интернет. Соединение разорвалось. Вы подключаетесь снова и видите, что ваш процесс "умер", файл недокачан, а обновление прервалось на середине. Обидно? Очень.

Знакомьтесь, Screen - утилита, которая решает эту проблему навсегда.

Что такое Screen?

Простыми словами, GNU Screen - это "оболочка внутри оболочки". Представьте, что обычное SSH-соединение - это телефонный разговор. Если связь оборвалась - разговор окончен. Screen - это голосовая почта. Вы можете позвонить, начать говорить, повесить трубку, а запись будет идти дальше. Когда вы перезвоните, вы сможете продолжить с того же места.

С технической точки зрения это терминальный мультиплексор. Он позволяет:

  1. Сохранять сессии: Программы продолжают работать на сервере, даже если вы выключили свой компьютер.

  2. Многооконность: В одном окне SSH можно создать 10 виртуальных терминалов.

Установка

В большинстве дистрибутивов (Ubuntu, Debian, CentOS) он уже установлен по умолчанию. Если нет - установка занимает секунду:

# Ubuntu / Debian
sudo apt install screen
# CentOS / Fedora
sudo yum install screen

Базовый сценарий: "Запустил и забыл"

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

1. Запуск Screen

Просто введите в консоли:

screen

Ваш терминал мигнет, появится приветственное сообщение (нажмите Space/Enter). Внешне ничего не изменится - вы увидите ту же командную строку. Но теперь вы находитесь внутри защищенной капсулы.

2. Запуск задачи

Запустите что угодно. Например, скачивание файла или htop.

htop

3. Магия «Отключения» (Detach)

Теперь самое интересное. Мы хотим отключиться от сервера, но оставить htop работать. Нажмите сочетание клавиш: 👉 Ctrl + A, затем отпустите их и нажмите D.

(D означает Detach — отсоединить).

Экран исчезнет, и вы увидите сообщение [detached from 12345.pts-0.server]. Поздравляю! Ваш htop всё еще работает там, в фоне, хотя вы его не видите. Вы можете смело закрывать SSH-клиент и выключать компьютер.

4. Возвращение (Reattach)

Прошло 2 часа. Вы снова зашли на сервер. Чтобы вернуться в свою капсулу, введите:

screen -r

(r означает Reattach — присоединить).

Бум! Вы снова видите свой htop ровно в том состоянии, в каком оставили.

Продвинутый уровень: Именованные сессии

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

screen -S update_system
# (S — заглавная, от Session)
screen -S download_logs

Посмотреть список всех сессий:

screen -ls

Вывод будет таким: 3450.update_system (Detached) 4501.download_logs (Detached)
Подключиться к конкретной сессии:

screen -r update_system

Режим "Многорукий Шива": Вкладки

Screen умеет создавать несколько окон внутри одной сессии. Это как вкладки в браузере, только в консоли.

Внутри запущенного screen все команды начинаются с "волшебной комбинации" Ctrl + A. Нажимаете её, а потом нужную букву.

КомбинацияДействие
Ctrl+A, затем cCreate. Создать новое окно (вкладку).
Ctrl+A, затем nNext. Переключиться на следующее окно.
Ctrl+A, затем pPrevious. Переключиться на предыдущее окно.
Ctrl+A, затем "Показать список всех окон и выбрать нужное.
Ctrl+A, затем kKill. Уничтожить (закрыть) текущее окно.

Шпаргалка (Cheat Sheet)

Сохраните этот список, он покроет 99% ваших задач.

В командной строке:

  • screen — запустить новую сессию.

  • screen -S имя — запустить сессию с именем.

  • screen -ls — список запущенных сессий.

  • screen -r — вернуться в последнюю сессию.

  • screen -r имя — вернуться в конкретную сессию.

Внутри Screen (сначала жмем Ctrl+A):

  • d — свернуться (вытий, оставив работать).

  • c — новое окно.

  • 0...9 — переключиться на окно по номеру.

  • Esc — войти в режим прокрутки (Copy mode), чтобы листать историю вверх стрелками.

Как правильно выйти?

Если вы закончили работу и сессия вам больше не нужна:

  1. Напишите команду exit (или нажмите Ctrl+D) внутри окна screen.

  2. Если это было последнее окно, вы увидите надпись [screen is terminating]. Это значит, что капсула уничтожена.

Screen или Tmux?

Вы наверняка слышали про tmux. Это более современный аналог screen.

  • Tmux красивее, умеет делить экран пополам вертикально и горизонтально, у него понятнее статусная строка.

  • Screen — это старая гвардия.

Почему стоит знать именно Screen? Потому что screen есть везде. Даже на старом сервере в подвале НИИ или внутри роутера. Tmux нужно устанавливать, а Screen уже ждет вас.

Использование screen — это правило хорошего тона для любого системного администратора. Возьмите за правило: "Запускаешь что-то дольше 5 минут — запускай это в screen". Это спасет ваши нервы при первом же обрыве связи.

Интересный факт: Screen старше Linux

Это взрывает мозг многим новичкам.

  • GNU Screen появился в 1987 году.

  • Первая версия ядра Linux появилась в 1991 году.

То есть screen уже существовал и работал на старых Unix-системах еще до того, как Линус Торвальдс написал первую строчку кода Linux.

Саму утилиту screen написали Оливер Лауманн (Oliver Laumann) и Карстен Борманн (Carsten Bormann) в Берлинском техническом университете в 1987 году. Изначально это была независимая программа. Но позже она была передана Фонду свободного программного обеспечения (FSF) и стала официальной частью пакета программ GNU.

Windows? История "ОС-Франкенштейна"

16.12.25
36

В мире IT принято считать, что Linux - это прямой потомок и идейный наследник Unix. Но если задать тот же вопрос про Windows, ответ будет похож на запутанный детектив. Мы разобрались в генеалогическом древе самой популярной ОС в мире и выяснили, что Windows - это своего рода "Франкенштейн", сшитый из трёх совершенно разных легендарных систем.

1 . VMS (Душа и Ядро) - Самый важный предок

Если вы спросите системного архитектора, на что похожа Windows внутри (на уровне ядра), он ответит: "На VMS". Это самый важный, но наименее известный широкой публике предок.

В конце 80-х Билл Гейтс осознал, что архитектура MS-DOS и ранних Windows 95 - это тупик. Они были ненадежными и не подходили для серьезных серверов. Ему нужна была "тяжелая артиллерия".

Что сделал Гейтс? Он переманил к себе главного архитектора системы OpenVMS из компании DEC - Дэйва Катлера. Гейтс дал ему огромный бюджет и карт-бланш с одной целью: создать "убийцу Unix". Так родилась Windows NT (New Technology), ядро которой работает сегодня в вашем компьютере.

Интересный факт: Управление памятью, драйверами и процессами в Windows идеологически взято из VMS. Существует легенда, что название WNT — это шифр. Если взять аббревиатуру VMS и сдвинуть каждую букву на одну вперед по алфавиту, получится:

  • V → W

  • M → N

  • S → T

Итог: WNT (Windows NT).

2 . CP/M (Скелет и привычки) - Откуда взялись диски C:\

Если "мозги"(ядро) Windows получила от VMS, то свои старые привычки и логику работы с файлами она унаследовала от системы CP/M (созданной Гэри Килдалом).

Именно отсюда растут корни тех вещей, которые десятилетиями удивляют пользователей Linux и macOS:

  • Буквы дисков: Почему система стоит на диске C:, а не A:? Потому что в CP/M и первых DOS буквы A и B были зарезервированы под дискеты. Эта архаичная структура жива до сих пор.

  • Обратный слеш: Использование \ вместо привычного для всего остального мира / в путях к файлам - тоже наследие CP/M и MS-DOS.

  • Имена файлов: Привычка давать файлам расширения из трех букв (.txt, .exe, .jpg) родилась из старого ограничения "8.3" (8 букв на имя, 3 на расширение).

3 . Xerox Alto и Mac OS (Лицо) - Откуда взялись окна

Внутренности от VMS и скелет от CP/M нужно было продать пользователям. Для этого требовалась красивая обертка.

Вдохновение для графического интерфейса Microsoft черпала в разработках лаборатории Xerox PARC и, позже, у Apple. Билл Гейтс, как и Стив Джобс, увидел будущее за окнами, мышкой и иконками. Первая Windows была попыткой "натянуть" красивый интерфейс (как у Mac) на старый костяк MS-DOS (клон CP/M).

 4 . Заключение

В отличие от Linux, который стремился быть "свободным Unix", Windows создавалась как коммерческий продукт-победитель. Microsoft не стеснялась брать лучшие идеи отовсюду:

  1. Ядро (Kernel): От VMS. Это дало надежность и многозадачность.

  2. Структура (CLI): От CP/M. Это подарило нам диск C: и командную строку.

  3. Интерфейс (GUI): От Xerox/Apple. Это дало нам окна и курсор мыши.

Теперь, когда вы видите синий экран загрузки или открываете "Мой компьютер", вы знаете: перед вами результат слияния трех великих технологий прошлого.

 

 

5 фактов о Bash: Шутка программистов, на которой держится весь Linux

15.12.25
50

Вы открываете терминал каждый день, видите привычный значок $ и пишете команды. Но задумывались ли вы, почему черное окно называется Bash? За этим странным словом скрывается каламбур, библейская отсылка и история борьбы за свободу кода.

Вот 5 фактов о Bash, которые должен знать каждый.

1. Скрытый смысл названия

Аббревиатура BASH расшифровывается как Bourne Again SHell. Это игра слов, которая работает на двух уровнях:

  • Прямой смысл: "Ещё одна оболочка Борна" (потому что она была создана как замена старой оболочке Bourne shell).

  • Ироничный смысл: Созвучно с выражением "Born Again" ("рожденный заново" или "возрожденный").

  • Суть шутки: Старая проприетарная оболочка "умерла" для сообщества из-за закрытой лицензии, а новая возродилась как феникс из пепла, став полностью свободной и ещё более мощной.

2. Кто такой Борн и при чем тут он?

Чтобы понять шутку, перенесемся в 1977 год. В легендарных лабораториях Bell Labs (где придумали Unix и C) работал британец Стивен Борн (Stephen Bourne). Он написал программу sh (shell - оболочка), которая стала стандартом общения человека с машиной. Её так и называли - "Оболочка Борна".

Но была проблема: sh принадлежала корпорации AT&T. Она была закрытой и платной. Вы не могли просто взять её и поставить на свой компьютер.

3. Рождение Bash (GNU и Брайан Фокс)

В 80-х Ричард Столлман запустил проект GNU. Его мечта была дерзкой: создать полностью свободную операционную систему. Им нужны были свои, бесплатные аналоги всех программ: свой редактор, свой компилятор и, конечно, своя оболочка.

Столлман нанял программиста Брайана Фокса (Brian Fox). В 1989 году Фокс выпустил первую версию Bash. Он сделал так, чтобы новая оболочка понимала все команды старой sh (для совместимости), но была удобнее и, главное, абсолютно бесплатной. Именно Фокс придумал название Bourne Again Shell как дань уважения Стивену Борну.

Интересный факт: Брайан Фокс создал Bash, но работал над ним всего пару лет. Настоящий герой - Чет Рэми (Chet Ramey). Он поддерживает и развивает Bash с начала 90-х - уже более 30 лет! Если вы сегодня найдете баг в Bash, вам ответит именно Чет.

4. Почему Bash есть в каждом Linux?

Когда в 1991 году Линус Торвальдс написал ядро Linux, у него был, по сути, только "двигатель". Ему нужны были "руль и колеса" - программы для управления ядром. Он не стал писать их с нуля, а взял готовые инструменты от проекта GNU. Поскольку Bash был лучшей свободной оболочкой на тот момент, он сразу попал в первые дистрибутивы.

С тех пор это стандарт: ставишь Linux - получаешь Bash.

5. Терминал и Bash - не одно и то же

Новички часто путают эти понятия, но разница важна:

  • 📺 Терминал (GNOME Terminal, Putty, Console) - это "телевизор". Это просто окно, которое показывает текст и передает нажатия клавиш.

  • 👨‍💻 Bash - это "телеведущий". Это программа, которая сидит внутри терминала, читает ваши команды (ls, cd, mkdir), понимает их и запускает процессы.