Denis Yuriev

Записки бездельника

Главная » Linux » OpenWRT » Samba, Transmission и размер OpenWRT

Samba, Transmission и размер OpenWRT

В двух последних статьях мы собирали прошивку OpenWRT сначала с Samba, затем с Transmission.

У кого на борту устройства встроенная память 8мб — вряд ли заметили, как резко увеличилась наша прошивка, у кого же 4мб — у них прошивка перестала устанавливаться по банальной причине — больше места нет.
Попробуем всё таки как то сэкономить место, убрав причину лишних килобайт.

Итак, имею прошивку для TP-Link TL-WR842N/ND v2. Которая увеличилась примерно на ~2Мб после добавления в неё Samba и Transmission.

Исходный размер			5,2 Мб	5439492 байт

В ходе изучения содержания прошивки обнаружил, что имеется два пакета, выполняющих одинаковые задачи:

libopenssl			1.0.1i	681305 байт
libpolarssl			1.3.8	133887 байт

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

Логика подсказывает, что если есть OpenSSL, то PolarSSL нам как мертвому припарка. С другой стороны если нам удастся заставить программу, которая притащила в наше гнездо OpenSSL работать с PolarSSL, то можно сэкономить поболее, чем пол мегабайта.

Найдем кто втянул эти библиотеки в нашу прошивку.

Как оказалось, Transmission в зависимостях требует OpenSSL, а вот PolarSSL на данный момент он воспринимать отказывается.
А вот файловый сервер Samba притянул libcurl, а вот тот в свою очередь потребовал наличия PolarSSL, хотя, как оказалось, OpenSSL он тоже весьма поддерживает.

Запустим конфигурацию прошивки и наведем порядок:

make menuconfig

Сначала отучим curl от PolarSSL

Libraries
    -*- libcurl  --->
        Configuration  --->
            SSL library --->
                (X) OpenSSL

В принципе можно было бы вообще отключить поддержку SSL curl’ом, но мало ли что в будущем понадобится. Ведь от OpenSSL нам Transmission отказаться не позволит.

Теперь не забудем исключить PolarSSL из состава нашей прошивки

Libraries
    SSL  --->
         < > libpolarssl

И вновь пересоберем прошивку и посмотрим сколько у нас в итоге освободится места.

make clean
make -j3 V=-1

После сборки смотрим на размер

Исходный размер			5,2 Мб	5439492 байт
Без PolarSSL			5,1 Мб	5308420 байт

Не фонтан, но пока собирал, вспомнил, что Transmission я собрал и с Web-интерфейсом и возможностью удаленного управления:

transmission-remote		2.84	172279 байт
transmission-web		2.84	206814 байт

Веб-интерфейсом я не пользуюсь вообще. Логичнее от него избавиться вовсе.

Network  --->
   BitTorrent  --->
      < > transmission-web

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

Исходный размер			5,2 Мб	5439492 байт
Без PolarSSL			5,1 Мб	5308420 байт
Без PolarSSL и transmission-web	4,9 Мб	5177348 байт

Уже лучше, но хотелось бы еще сэкономить. Но это дело уже не касается связки Samba+Transmission.
Почувствовал себя ранним Билл Гейтсом и захотелось выжать максимум из прошивки. Вернее минимум из её размера, без потери необходимой функциональности.

Ждите еще статей на эту тему.

Сделай приятное автору - поделись статьей в социальной сети.

7 Комментариев

  1. zor1984qq

    Почему то в trunk’e никак не убрать галочки с этой полар ссл либки ;(…невозможно удалить ее из поставки.

  2. zor1984qq

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

  3. Денис Юрьев

    Зависимости то проверьте.

  4. zor1984qq

    ммм проверил, да, спасибо стали вроде отключатся, вопрос как их нарочито проверить, я то проверял случайно, сейчас собираюсь транк собирать себе…

  5. zor1984qq

    Я бы почувствовал себя Нео если бы впихал самбу+трансмишн+экст2 простейший и все это уместилось в мои 4мб флэшухи…+ было бы неплохо заиметь гайд по тому как и чем подготавливать юсб флэшку на 16гб под дир 320

  6. Денис Юрьев

    Из под линукса при помощи fdisk разбить на разделы можно флешку, а при помощи mkswap и mkfs.ext2 отформатировать их.

    А вот запихать с рабочим WiFi у меня до сих пор не вышло.

  7. Денис Юрьев

    Из busybox можно много мусора поудалять. Но и там экономия так себе.

Оставьте комментарий

Войти с помощью: 
Denis Yuriev DMOZ Индекс цитирования

© 2017