Сетевая загрузочная флешка из смартфона
Привет, пикабу!
Решил оставить свой след в истории и поделиться рецептом загрузочной "флешки" из старого смартфона.
Текста не очень много, но пост будет достаточно объемный.
Думаю, многие знают такую Android-программку под названием DriveDroid.
И все в ней достаточно неплохо, пусть и не без мелких проблем. Огорчает больше всего отсутствие больших объемов постоянной памяти в современных и не очень смартфонах. Хорошо, если не требуется большого количества образов или позволяет место на флешке/внутренней памяти разместить необходимое их количество, но что делать в противном случае?
Я вышел в интернет с таким вопросом. Ничего путного не добившись от гугла (наверное, просто не так и не там искал), подумал "а почему бы не подцепить самба шару и не попытаться подгрузить образ с нее?". Глаза пусть боятся, а мы с руками займемся делом.
Внимание! Спасибо за внимание. Для всего перечисленного требуются root-права.
В первую очередь выяснилось, что ядро поддерживает cifs. Хорошо.
Затем предстоит переключить selinux в permissive mode, например, выполнив под рутом setenforce 0 или воспользовавшись одной из программ, таких как SELinuxModeChanger.
Я его переключил перманентно (т.к. смартфон более никак не используется), каким образом уже не вспомню, но скорее всего в TWRP кнопочкой Fix Contexts. На форумах приводятся более щадящие методы перманентного переключения, но не стоит постоянно держать его в таком состоянии. Достаточно переключить в permissive, смонтировать шару и вернуть обратно.
Для монтирования я использую CifsManager последней версии. Так удобнее. Конечно, еще удобнее было бы монтировать и отмонтировать шелл скриптом, но каждый раз в терминал лезть лень, а вменяемых вариантов вывода иконки скрипта на рабочий стол я найти не смог, везде какие-то неприятные проблемы, мешающие нормальному выполнению скрипта.
Если все смонтировалось нормально, то на экране появится текстовое подтверждение, как на скрине, а точка рядом с каталогом станет зеленой.
Так выглядит смонтированный каталог.
Как только шара смонтирована, мы сразу же увидим в DriveDroid весь список образов на шаре.
Не буду описывать работу с приложением, инструкций в сети более чем достаточно.
Остается только подключиться кабелем к подопытному ПК и стартануть установку.
Устройство обычно отображается как Linux File-CD Gadget, его и выберем на этапе загрузки.
Грузится само собой не супер быстро, но в целом сносно, даже по такой неторопливой штуке как OpenVPN. Успешно прошел проверку за тысячу километров от дома.
Хотелось бы попробовать реализовать тоже самое на webdav, только руки никак не доходят и модуля davfs в ядре нет, что тоже может доставить мороки.
Будет интересно услышать ваше мнение, друзья, а также подсказки, как лучше реализовать те или иные моменты. Спасибо!