You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
25 lines
947 B
25 lines
947 B
#!/bin/bash
|
|
|
|
ENABLED=no
|
|
[[ ${ENABLED} == "yes" ]] || exit 0
|
|
|
|
DEBUGMODE=no
|
|
. /usr/lib/ublinux/functions
|
|
. /usr/lib/ublinux/default
|
|
debug_mode "$0" "$@"
|
|
|
|
WHITELISTMODULES="$(cmdline_value whitelist | tr ',;' ' ')"
|
|
SOURCE=${SYSCONF}/config; [ -f ${SOURCE} ] && . ${SOURCE} 2>/dev/null
|
|
|
|
echo -n > /etc/modprobe.d/blacklist-ublinux-dkms.conf
|
|
|
|
LC_ALL=C lspci -k | grep "Kernel modules: " | grep ", " | sed s/.*"Kernel modules: "// | sed s/", "/"\n"/g > /tmp/kernel_mods_lspci
|
|
find /var/lib/dkms-binary -type f | grep -Ev "nvidia|virtualbox|vbox" | egrep .ko$"|".ko.xz | gawk -F/ '{print $NF}' | sed s/[.]ko.*// | sort -u | grep -f /tmp/kernel_mods_lspci | while read a ;do
|
|
lspci -nn | grep -q -f /usr/share/ublinux/hwdata/dkms/$a 2>/dev/null && continue
|
|
echo "$WHITELISTMODULES" | grep -q "$a" && continue
|
|
modprobe -r "$a" 2>/dev/null
|
|
echo "blacklist $a" >> /etc/modprobe.d/blacklist-ublinux-dkms.conf
|
|
done
|
|
|
|
rm -f /tmp/kernel_mods_lspci
|