Find the answer to your Linux question:
Results 1 to 5 of 5
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1

    [SOLVED] Stop Loading Modules From RamDisk

    So, a couple days ago I ran lsmod on my Arch system and I noticed a couple modules that I do not need. These included the firewire and ipv6 modules.

    I'd like to disable these from being loaded by the ramdisk, so I edited my /etc/modprobe.d/modprobe.conf with the following:

    # disable ipv6
    options ipv6 disable=1
    # disable firewire
    options firewire_ohci disable=1
    options firewire_core disable=1
    I then added my modprobe.conf to my /etc/mkinitcpio.conf:

    Once I added that, I rebuilt my ramdisk using the following command:

    mkinitcpio -p kernel26
    I rebooted and then ran lsmod once again, I don't see the firewire module, but I still see ipv6:

    ipv6 243529 0
    Am I referencing ipv6 incorrectly in my modprobe.conf? I'd love to hear your words of wisdom!

  2. #2
    Linux Guru reed9's Avatar
    Join Date
    Feb 2009
    Boston, MA
    I believe that doesn't prevent modules from loading if called by another module. Something else is probably calling ipv6. Why not just blacklist it in rc.conf?

  3. #3
    Hmm, well that's a great idea, Reed. But for some reason, after putting it in my modules array to blacklist, it still loads!

    Weirdness.. Did I do something wrong here?

    I wonder if there is a way to find out if anything else is calling it. I'm pretty sure it has 0 dependents, that is, if I'm reading the lsmod results correctly.

    Out of curiosity, I ran the modinfo command to see if I can learn more about this module:

    # modinfo ipv6
    filename:       /lib/modules/2.6.37-ARCH/kernel/net/ipv6/ipv6.ko.gz
    alias:          net-pf-10
    license:        GPL
    description:    IPv6 protocol stack for Linux
    author:         Cast of dozens
    vermagic:       2.6.37-ARCH SMP preempt mod_unload 686 
    parm:           disable:Disable IPv6 module such that it is non-functional (int)
    parm:           disable_ipv6:Disable IPv6 on all interfaces (int)
    parm:           autoconf:Enable IPv6 address autoconfiguration on all interfaces (int)
    It looks like the first two parameters are trying to disable the module, but something called 'autoconf' is enabling IPv6. I have a feeling if I want to get to the bottom of this, I'll need to do some research into autoconf.

    I think I'll do that now, I'll be sure to update with any info I find. If you have any ideas, feel free to share

    Thanks again.

  4. $spacer_open
  5. #4
    Linux Guru reed9's Avatar
    Join Date
    Feb 2009
    Boston, MA
    You can get more aggressive if you really don't want it to load. Put this in /etc/modprobe.d/modprobe.conf

    install ipv6 /bin/true
    Anytime it tries to load it will install to /bin/true, ie, return success but do nothing.

  6. #5
    Hey, that did the trick!

    Thanks a million, I feel much better now

    I'm still clueless as to how autoconf is configured to call IPv6, even after blacklisting the module. I took a gander at autoconf documentation and it's a bit daunting. I'll dig into it one of these days..

    Until then, /bin/true will keep IPv6 off my system. That is, until a major adoption of IPv6 occurs..

    Thanks again man.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts