3

Moving this over here to try and garner some insight.

I'm currently in the process of trying to upgrade my Linux kernel from 4.4.0-63 to 4.10.12 (I have made some edits to the files here). I'm running on Ubuntu 14.04 x86_64 and I've gotten through the steps of: make menuconfig (I accepted the defaults) -> make -> make modules -> make modules_install

Though once I try to do "make install" I get the following error:

user@thiscomp:/usr/src/linux-4.10.12$ sudo make install
sh ./arch/x86/boot/install.sh 4.10.12 arch/x86/boot/bzImage \
        System.map "/boot"
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.10.12 
/boot/vmlinuz-4.10.12
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.10.12 
/boot/vmlinuz-4.10.12
update-initramfs: Generating /boot/initrd.img-4.10.12
W: Possible missing firmware /lib/firmware/ast_dp501_fw.bin for module ast

gzip: stdout: No space left on device
E: mkinitramfs failure cpio 141 gzip 1
update-initramfs: failed for /boot/initrd.img-4.10.12 with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
make[1]: *** [install] Error 1
make: *** [install] Error 2

First, I checked to see if /boot was full, but it seemed like it wasn't:

user@thiscomp:/usr/src/linux-4.10.12$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev             16G  4.0K   16G   1% /dev
tmpfs           3.2G  1.2M  3.2G   1% /run
/dev/dm-0       252G   43G  197G  18% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none             16G  152K   16G   1% /run/shm
none            100M   32K  100M   1% /run/user
/dev/sda1       236M   75M  149M  34% /boot

From what I've seen online, this usually has to do with past kernel versions s ticking around longer than they need to. Though, from what I was able to see, there weren't past versions hanging out after running "dpkg -l linux-image*":

un  linux-image     
ii  linux-image-4.4.0-63-generic  
ii  linux-image-extra-4.4.0-63-generic
ii  linux-image-generic-lts-xenial

Finally, there weren't any errors installing into tmpfs:

user@thiscomp:/usr/src/linux-4.10.12$ sudo mount -t tmpfs none /boot
user@thiscomp:/usr/src/linux-4.10.12$ sudo make install
sh ./arch/x86/boot/install.sh 4.10.12 arch/x86/boot/bzImage \
        System.map "/boot"
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 4.10.12         
/boot/vmlinuz-4.10.12
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 4.10.12                 
/boot/vmlinuz-4.10.12
update-initramfs: Generating /boot/initrd.img-4.10.12
W: Possible missing firmware /lib/firmware/ast_dp501_fw.bin for module ast
run-parts: executing /etc/kernel/postinst.d/pm-utils 4.10.12 /boot/vmlinuz-
4.10.12
run-parts: executing /etc/kernel/postinst.d/update-notifier 4.10.12 
/boot/vmlinuz-4.10.12
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 4.10.12 
/boot/vmlinuz-4.10.12
user@thiscomp:/usr/src/linux-4.10.12$ df -h
Filesystem      Size  Used Avail Use% Mounted on
udev             16G  4.0K   16G   1% /dev
tmpfs           3.2G  1.2M  3.2G   1% /run
/dev/dm-0       252G   43G  197G  18% /
none            4.0K     0  4.0K   0% /sys/fs/cgroup
none            5.0M     0  5.0M   0% /run/lock
none             16G  152K   16G   1% /run/shm
none            100M   32K  100M   1% /run/user
none             16G  310M   16G   2% /boot

I'm not sure where else to look to figure out the problem (especially since it seems like /boot isn't full). Is there anyway to make the installation smaller while still installing what is necessary (or a way to resize /boot without wiping the system?).

edit (To add comment requested commands):

user@thiscomp:/usr/src/linux-4.10.12$ df -i
Filesystem       Inodes  IUsed    IFree IUse% Mounted on
udev            4108437    534  4107903    1% /dev
tmpfs           4113275    609  4112666    1% /run
/dev/dm-0      16777216 470608 16306608    3% /
none            4113275     14  4113261    1% /sys/fs/cgroup
none            4113275      6  4113269    1% /run/lock
none            4113275      6  4113269    1% /run/shm
none            4113275     25  4113250    1% /run/user
/dev/sda1         62248    307    61941    1% /boot

edit2Adding File sizes after mounting tmpfs:

user@thiscomp:/usr/src/linux-4.10.12$ ls -l /boot/initrd.img-4.10.12 
/boot/vmlinuz-4.10.12 
-rw-r--r-- 1 root root 312429420 Apr 26 07:02 /boot/initrd.img-4.10.12
-rw-r--r-- 1 root root   7149280 Apr 26 07:01 /boot/vmlinuz-4.10.12

edit3 Module counts:

user@thiscomp:/usr/src/linux-4.10.12$ grep -o '=m' /boot/config-4.4.0-63-
generic | wc -l
4409
user@thiscomp:/usr/src/linux-4.10.12$ grep -o '=m' .config | wc -l
4332
  • please edit your question and provide the full output of df -h – Yaron Apr 26 '17 at 5:53
  • Edited. Apologies, elsewhere they had asked me to remove the extra information from df -h – MangoOfFury Apr 26 '17 at 6:01
  • Your filesystem may be out of inodes. Please edit your question and add the output of 'df -i' – Yaron Apr 26 '17 at 6:07
  • edited and updated – MangoOfFury Apr 26 '17 at 6:10
  • What are the sizes of the files generated when you mount the tmpfs, including the size of the /boot/initrd.img-4.10.12? Can you copy those files manually from the tmpfs somewhere else, unmount the tmpfs, and then copy them to /boot/? – dirkt Apr 26 '17 at 8:17
1

The problem ended up being that I didn't strip the modules before running make_install, so the kernel that was being installed was huge in comparison to my current kernel (see here: https://stackoverflow.com/a/43624752/3776230)

Basically, had to run make "make INSTALL_MOD_STRIP=1 modules_install" when installing the modules.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.