2

When I check the processes while booting using this command:

dmesg > ~/dmesg.txt

it shows delay here:

[   46.534002] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[  895.868866] audit_printk_skb: 126 callbacks suppressed

Is there any solution ?

2 Answers2

2

You can use UEFI boot/coreboot if your computer supports after first moving your installation outside a wubi container. To do this, create three new partitions on your HDD(make sure your wubi installation will fit into those partitions). I have reduced my boot time from 40 secs to 18 secs.

First step(do this on a live CD)

-Issue sudo dd if=<path-to-your-wubi-rootfs-imagefile> of=/dev/sda3 bs=512 from a Ubuntu or another Linux live cd in a terminal. Moving installation in this manner works, I had made a similar VM-to-real PC transistion. Do not copy swap partition, recreate it instead. Separate your home directory into a ext4 partition by using your favorite partition editor(GParted is available on Ubuntu Live) and a file manager(move files from your rootfs's /home directory to newly created partition-nautilus or mv <path1>/home/* <path2>/ will help in such a case). You can share Documents directory among Windows and Linux.(this unfortunately does not apply to home directories). After moving rootfs and creating the other partitions, now you can install GRUB2 by grub-install --boot-directory=<rootfs-partition-mount-point>/boot /dev/sda.

Second step(do this on your new destination)

Do a UEFI conversion according to steps described here: How can I change/convert a Ubuntu MBR drive to a GPT, and make Ubuntu boot from EFI? Be careful about not losing ability to boot Microsoft Windows. Try disabling IPv6 after moving your installation outside WUBI. WUBI is the primary cause of slowdown here.

1

You can disable IPv6 if you don't need it. There are a few configurations, where IPv6 can significantly slow down startup time.

As root user or preprend with sudo:

  • echo 1 > /proc/sys/net/ipv6/conf/all/disable_ipv6
  • echo "net.ipv6.conf.all.disable_ipv6 = 1" > /etc/sysctl.d/01-disable-ipv6.conf
  • echo "net.ipv6.conf.default.disable_ipv6 = 1" >> /etc/sysctl.d/01-disable-ipv6.conf
  • echo "net.ipv6.conf.lo.disable_ipv6 = 1" >> /etc/sysctl.d/01-disable-ipv6.conf
  • sysctl -p

Then reboot and tell us if it worked. Did fine for me. You can also blacklist the ipv6-module, but I'd recommend not doing so because other modules might need it to function properly.