Mengkompilasi kernel Linux, berapa ukuran yang dibutuhkan?

13

Saya telah mengunduh kernel Linux paling stabil terbaru, 2.6.33.2.

Saya pikir saya akan menguji ini menggunakan VirtualBox. Jadi saya membuat harddisk berukuran 4 GB secara dinamis. Dan menginstal CentOS 5.3 hanya dengan paket minimum.

Saya mengatur make menuconfighanya dengan pengaturan default.

Setelah itu saya berlari makedan mendapatkan kesalahan berikut:

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

Jumlah ruang yang tersisa adalah:

# 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

Ukuran virtual saya adalah 4 GB, tetapi ukuran sebenarnya adalah 3,5 GB.

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

Berapa ukuran yang harus saya berikan ketika mengkompilasi dan menginstal kernel Linux? Apakah ada pedoman untuk diikuti saat melakukan ini? Ini adalah pertama kalinya saya, jadi hanya bereksperimen dengan ini.

ant2009
sumber

Jawaban:

1

Kernel linux april 2010 adalah sekitar 60MB bzip2 arsip, yang setelah membongkar dan mengkompilasi membutuhkan sekitar 400-500MB.

Anda dapat memeriksa ukuran direktori Anda dengan du -hsseperti:

/mnt/storage/linux-2.6.33$ du -hs                               
437M    .
Ivan Petrushev
sumber
1
Halo, jika itu masalahnya mengapa semua ruang disk saya digunakan. Saya telah mengalokasikan harddisk 4gb dan hanya menginstal CentOS dengan hanya alat pengembangan dan perpustakaan. Seharusnya tidak mengambil banyak ruang disk. Ketika saya menginstal CentSO saya hanya mengatur 1 partisi untuk root dan tidak ada yang lain. Ada masalah dengan itu?
ant2009
Anda dapat menyelidiki apa yang memakan ruang Anda dengan du -h --max-depth=1menjalankan di direktori root Anda (/). Ambil direktori terbesar, masuk ke dalamnya, ulangi. Lakukan ini sampai Anda menemukan disk babi Anda.
Ivan Petrushev
1
Untuk membuat daftar file dalam direktori saat ini diurutkan berdasarkan ukuran penggunaan ls -lhS, dan untuk melihat 10 file terbesar dalam penggunaan direktori saat ini ls -lhS|head -10.
Ivan Petrushev
4
Masalahnya adalah dengan ruang yang digunakan saat mengkompilasi, bukan membongkar, metode.
Nikana Reklawyks
Mengkonfirmasi, sebagian besar ruang digunakan saat kompilasi.
lethalman
4

Pada build AMD64 saya yang terbaru yaitu 4.4.0-57 di Ubuntu 16.04, saya membutuhkan sekitar 14,5 GB ruang untuk output build.

Itu kelihatannya banyak dan sepertinya sebagian besar dibutuhkan file sementara (mis., .oFile yang dihasilkan dari kompilasi .cfile).

BeeOnRope
sumber
3

Lihat tautan ini >> https://ubuntuforums.org/showthread.php?t=2266609

Saya mengkompilasi / membuat kernel linux 4.0.0-rc1 pada HP Stream 13 saya (RAM 2GB, dual core Intel Celeron N2840) berdasarkan instruksi yang jelas pada https://wiki.ubuntu.com/KernelTeam/GitKernelBuild , dan ini adalah milik saya pengalaman:

Setelah "git clone git: //git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git" disk yang digunakan dalam direktori kernel yang terpisah: 1691 MB

Selama proses make / compile, ruang disk yang digunakan mencapai 15674 MB. Jadi: lebih dari 15GB ...

Total waktu kompilasi adalah: 299 menit, atau 5 jam. Cukup lama, mungkin disebabkan oleh lambatnya CPU dan disk saya.

Deeksha Varshney
sumber
Git adalah binatang yang sama sekali berbeda. Anda biasanya mengunduh snapshot. Respositori git berisi seluruh sejarah pengembangan Kernel. Juga, kompilasi tidak akan memakan waktu lama ketika opsi yang tidak relevan terpilih.
Daniel B
2

Dari Panduan,

CATATAN: Jika Anda tidak memiliki banyak ruang disk di / usr / src maka Anda dapat membongkar paket sumber kernel pada partisi mana pun di mana Anda memiliki ruang disk kosong (seperti / home). Karena kompilasi kernel membutuhkan banyak ruang disk untuk file objek seperti * .o. Untuk alasan ini / usr / src / linux HARUS menjadi tautan lunak yang menunjuk ke direktori sumber Anda.

ukanth
sumber
Jawaban ini juga tidak memiliki jumlah ruang disk kosong (dalam GB) yang diperlukan untuk mengkompilasi kernel: 1.7GB maupun 5.4GB tidak cukup untuk membangun kernel amd64-3.11.0 di Ubuntu 13.10.
Pro Backup