Компилируя ядро ​​Linux, какой размер нужен?


13

Я скачал самое новое самое стабильное ядро ​​Linux, 2.6.33.2.

Я думал, что я проверю это с помощью VirtualBox. Поэтому я создаю жесткий диск динамического размера размером 4 ГБ. И установил CentOS 5.3 с минимальными пакетами.

Я установил make menuconfigтолько с настройками по умолчанию.

После этого я запустил makeи получил следующую ошибку:

net/bluetooth/hci_sysfs.o: final close failed: No space left on device
make[2]: *** [net/bluetooth/hci_sysfs.o] Error 1
make[1]: *** [net/bluetooth] Error 2
make: *** [net] Error 2

Количество места, которое я оставил:

# df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
                      3.3G  3.3G     0 100% /
/dev/hda1              99M   12M   82M  13% /boot
tmpfs                 125M     0  125M   0% /dev/shm

Мой виртуальный размер составляет 4 ГБ, но фактический размер составляет 3,5 ГБ.

$ ls -hl
total 7.5G
-rw-------. 1 root root 3.5G 2010-04-13 14:08 LFS.vdi

Какой размер я должен дать при компиляции и установке ядра Linux? Есть ли какие-либо рекомендации, которым нужно следовать при этом? Это мой первый раз, так что просто экспериментирую с этим.

Ответы:


1

Апрель 2010 года ядро ​​Linux составляет около 60 МБ архива bzip2, который после распаковки и компиляции занимает около 400-500 МБ.

Вы можете проверить размер вашего каталога с помощью du -hs:

/mnt/storage/linux-2.6.33$ du -hs                               
437M    .

1
Здравствуйте, если это так, то почему все мое дисковое пространство используется. Я выделил 4 ГБ жесткого диска и установил только CentOS только с инструментами разработки и библиотеками. Не должно занимать столько места на диске. Когда я установил CentSO, я просто настроил 1 раздел для root и ничего больше. Есть проблемы с этим?
ant2009

Вы можете исследовать, что потребляет ваше пространство, с помощью du -h --max-depth=1run в корневом каталоге (/). Возьми самый большой каталог, зайди в него, повтори. Делайте это до тех пор, пока не найдете свои дисковые боровы.
Иван Петрушев

1
Для просмотра списка файлов в текущем каталоге, отсортированного по размеру ls -lhS, и для просмотра 10 самых больших файлов в текущем каталоге ls -lhS|head -10.
Иван Петрушев

4
Проблема в том, что пространство используется во время компиляции, а не распаковки метинков.
Никана Рекламикс

Подтверждая, большая часть места используется при компиляции.
летчик

3

Перейдите по этой ссылке >> https://ubuntuforums.org/showthread.php?t=2266609

Я скомпилировал / сделал ядро ​​Linux 4.0.0-rc1 на своем HP Stream 13 (2 ГБ ОЗУ, двухъядерный Intel Celeron N2840) на основе четкой инструкции на https://wiki.ubuntu.com/KernelTeam/GitKernelBuild , и это мое опыт:

После «git clone git: //git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git» используемый диск в отдельном каталоге ядра: 1691 МБ

Во время сборки / компиляции дисковое пространство использовалось до 15674 МБ. Итак: более 15Гб ...

Общее время компиляции составило: 299 минут или 5 часов. Довольно долго, вероятно, из-за моего медленного процессора и медленного диска.


Git это совершенно другой зверь. Вы обычно скачиваете снимок. Репозиторий git содержит всю историю разработки ядра. Кроме того, компиляция никогда не займет так много времени, когда неактуальные параметры не выбраны.
Даниэль Б

3

В моей последней сборке AMD64 4.4.0-57 в Ubuntu 16.04 мне потребовалось около 14,5 ГБ места для выходных данных сборки.

Это кажется много, и кажется, что это в основном временные файлы (например, .oфайлы, полученные в результате компиляции .cфайла).


2

Из руководства,

ПРИМЕЧАНИЕ. Если у вас недостаточно места на диске в / usr / src, вы можете распаковать исходный пакет ядра в любом разделе, где у вас есть свободное место на диске (например, / home). Поскольку для компиляции ядра требуется много дискового пространства для объектных файлов, таких как * .o. По этой причине / usr / src / linux ДОЛЖЕН быть мягкой ссылкой, указывающей на ваш исходный каталог.


В этом ответе также отсутствует объем свободного дискового пространства (в ГБ), необходимого для компиляции ядра: 1,7 ГБ и 5,4 ГБ недостаточно для сборки ядра amd64-3.11.0 в Ubuntu 13.10.
Pro Backup
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.