Possible to uninstall ethernet port driver?

4 replies [Last post]
Lef
Lef
Offline
Joined: 11/20/2021

I have a thinkpad x230. I'd like to completely disable all networking except when I plug in a usb wifi adapter to it.

The network card is easy... the thinkpad x230 doesn't have a libre one so I don't need to worry about it.

Though how would I uninstall the ethernet port's drivers? I do not want a simple 'disable port' in software, I want it to be such that it's useless I reinstall a deb from outside or something.

Thanks.

jxself
Offline
Joined: 09/13/2010

The drivers are in the kernel so it would be necessary to re-compile the kernel (after first updating the kernel config to not build that kernel module.) Further, every time you wanted a newer kernel version (perhaps there's a security update) you'd need to compile that new version in order to get it, because the Trisquel kernels will come with module.

Lef
Lef
Offline
Joined: 11/20/2021

I feared such. Thanks for the info.

andyprough
Offline
Joined: 02/12/2015

On the other hand, compiling your own kernel is a relatively simple and straightforward process. I've built hundreds of them, and @jxself has probably built thousands of them, or tens of thousands.

Maybe we should write an updated How-to for building the Linux-libre kernel for use with Trisquel? We could use your configuration option to remove the ethernet port driver as an example.

EDIT: We already have documentation on how to compile the Linux-libre kernel right here: https://trisquel.info/en/wiki/compiling-gnu-linux-libre-kernel

jxself
Offline
Joined: 09/13/2010

make-kpkg is old and bitrotted - I don't recommend it be used anymore so I made an update to that page. It might still be worth making more changes.

It should be straight forward to turn off whatever's needed during, say make menuconfig or whatever. Once the name of the kernel module is known, do a search (I think it's F8???) in the config screen there to find the location of that module. And turn it off.

Of course, another option is to blacklist the module so that it doesn't get loaded. I thought of mentioning that the first time around but it didn't seem quite like what the person was asking for.