Czy budując nowe jądro w oparciu o poprzednią konfigurację, istnieje sposób na zautomatyzowanie make oldconfig
procesu, aby ustawiał nowe opcje na wartości domyślne?
Edycja: Mam na myśli to, że gdy używasz .config (z /boot/config-*
lub /proc/config.gz
) na nowszym jądrze, make oldconfig
proces zapyta czy chcesz włączyć opcje, które nie były dostępne w twoim starszym jądrze. Możesz odpowiedzieć T / n / m lub naciśnij klawisz Enter, aby zaakceptować wartość domyślną. Chciałbym automatycznie zaakceptować ustawienia domyślne bez interakcji użytkownika.
Odpowiedzi:
Użyj polecenia:
Polecenie „tak” wielokrotnie wyświetla wiersz ze wszystkimi określonymi ciągami lub domyślnie „y”.
Możesz więc użyć go po prostu do „wciśnięcia enter”, co spowoduje użycie domyślnej wartości dla polecenia „make oldconfig”.
źródło
jest tym, czego chcesz. Z pomocy (
make help
w katalogu źródła jądra)źródło
Tak. Jest przechowywany w „.config” na najwyższym poziomie katalogu źródłowego.
Dodatkowo, jeśli używasz jądra dystrybucji, niektóre dystrybucje, takie jak RedHat, przechowują go w katalogu / boot / config - $ (uname -r). (wersja jądra) [1]
Wreszcie, jeśli skompilowany w uruchomionym jądrze, jest dostępny w /proc/config.gz. Zapominam, która wersja wprowadziła tę opcję.
[1] Te opcje:
Edytować
Sprawdź /usr/src/linux/kernel/Documentation/kbuild/kconfig.txt (lub odpowiednią ścieżkę). Możesz użyć niektórych z ich zaleceń, aby napisać rozwiązanie. Użyłbym kombinacji skryptów i textutils, aby osiągnąć to, co opisujesz.
Edytuj 2
Dodatkowo jest to zły pomysł. Co się stanie, jeśli opcjonalna obsługa sprzętu zmieni się w Twoim środowisku, ale nie będzie domyślna? Co się stanie, jeśli wystąpią negatywnie wpływające zmiany? To naprawdę powinno być interaktywne. Możesz dokonać konfiguracji i zautomatyzować resztę.
„make silentoldconfig” jest nieco mniej gadatliwy, co może być pomocne. Nadal jest interaktywny.
źródło
make silentoldconfig
źródło