Andy Melnikov (nponeccop) wrote,
Andy Melnikov
nponeccop

Categories:

Тормоза в каждый дом

В рамках программы по изучению мира говнолинукса я сижу в ArchBang - школьной поделке на основе Arch Linux с GUI на основе OpenBox из коробки.

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

Одним из кусков такого говна является скрипт /usr/bin/archbey2, незатейливо вставленный в bashrc установщиком системы.

Мне было наплевать на него, но несколько смущал долгий старт терминала, особенно в первый раз после загрузки системы.

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

Встал вопрос: а какого хуя что-то связанное с ключами (которые можно переписать только под рутом) происходит при запуске нерутового терминала.

Полез, и обнаружил фейспалм. Этот archbey2 печатает в псевдографике логотип Арчбенга и рядом с ним всякую инфу о системе вроде свободных памяти и месте на диске.

Исследование выявило, что исторически был питоновский скрипт, который с целью облегчения (чтобы можно было не ставить питон в систему) переписали на Баше. Скрипт отрабатывает 190 ms, из которых

Cобственно печать - 7 ms
Всего/свободно на диске - 7 ms
Тип шелла - 4 ms
Использованно памяти - 5 ms
Всего памяти - 5 ms
Название процессора - 3 ms
Кол-во установленных пекеджей - 130 ms

Facepalm. Наименее ненужная инфа жрет больше всего времени. И это в закешированном варианте, т.е. по старту системы медленнее.

Убрал из bashrc.
Subscribe

  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 3 comments