Компиляция ядра: заставить все модули запекаться в

361
user9830364

Я собираю ядро ​​с OpenWrt для аппаратного устройства. Поскольку не будет нового подключаемого оборудования, которое будет добавлено позже, я хочу убедиться, что все модули ядра встроены в ядро. Таким образом, я могу отключить загрузку модулей и остановить кибератаки, которые зависят от загрузки кода через модули.

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

1
Обычно не рекомендуется, но вы можете попробовать отредактировать файл ядра **. Config ** и заменить все `= m` на` = y`. sawdust 6 лет назад 0

1 ответ на вопрос

0
cybernard

Если вы сделаете это, все 3000+ модулей будут собраны и встроены в ваше ядро. Ваше ядро ​​будет сильно увеличено.

Это ужасная идея, но:

make allyesconfig 

Вам необходимо временно иметь исходный код ядра на соответствующем устройстве. Как только вы выполните make localmodconfig, вы можете скопировать файл .config на другой компьютер, если хотите, и скомпилировать его там.

Что вы должны сделать, это:

сделать localmodconfig

Затем отредактируйте файл конфигурации

.config

и сделать поиск и заменить м, заменив его на у

Теперь у вас будет только около 110 модулей, и он будет загружаться быстрее, и при этом он не будет слишком большим.

Спасибо! но есть ли ярлык для изменения m на y? или только ручное редактирование? user9830364 6 лет назад 0
кот .config | sed 's / = m / = y / g'> .config2. Переместите .config в папку резервной копии. переименовать .config2 .config cybernard 6 лет назад 0
Спасибо! Извините, у меня недостаточно репутации, чтобы проголосовать. user9830364 6 лет назад 0

Похожие вопросы