Традиционное расположение для сборки ядер - это /usr/src/linux-{version} с символической ссылкой оттуда на /usr/src/linux для удобства исходного кода, который ищет заголовочные файлы ядра Linux. Другие места (например, ваш собственный домашний каталог) должны работать. Я недавно не проверял, есть ли какое-то более новое местоположение, которое стало стандартом, так как я изучил это много лун назад.
Да, файлы ядра и скомпилированные ядра занимают много места. Если вы не работаете на носителе с очень ограниченным пространством (например, на планшете или нетбуке с крошечным MMC-диском), я рекомендую вам сохранить скомпилированное ядро - хотя бы на некоторое время. Я часто нахожу, что локально скомпилированное ядро может работать хорошо, но затем я сталкиваюсь с проблемой - отсутствующим драйвером или необходимостью настройки опции времени компиляции, которую я упустил. В таких случаях часто гораздо быстрее и проще настроить один параметр и перекомпилировать (что может потребовать компиляции одного или двух файлов, а не всего ядра, в зависимости от того, что нужно настроить), чем начинать все заново.
Промежуточная альтернатива удалению всего дерева каталогов - сделать make clean в каталоге ядра. Это должно удалить все файлы объектов (*.o), сохранив исходный код и вашу уникальную конфигурацию ядра. Вы все равно будете использовать дисковое пространство, но не так много, как потребляет скомпилированное ядро.
Что касается используемой учетной записи, я использую мою обычную учетную запись пользователя для компиляции ядра; но необходимо быть пользователем root (или использовать sudo), чтобы скопировать файл ядра в /boot , скопировать модули в /lib/modules (через make modules_install) и создать начальный RAM-диск (с помощью команд, которые отличаются от одного дистрибутива). другому). Однако существует множество альтернативных способов компиляции и установки ядра, некоторые из которых имеют другие потребности. Кроме того, чтобы писать в /usr/src , вы должны иметь root в большинстве дистрибутивов. Если вы компилируете как обычный пользователь, для этого потребуется настроить права доступа либо к /usr/src в целом, либо к дереву ядра Linux после того, как вы извлечете его как root . (Или я полагаю, что вы можете извлечь его в другом месте как обычный пользователь, а затем переместить его в /usr/src от имени пользователя root .) Любой подход имеет последствия для безопасности, особенно в многопользовательской системе.