Yanıtlar:
Not: kara liste çekirdek görüntüsünde yerleşik modüller için çalışmaz (yani ayrı bir
.ko
dosya aracılığıyla yüklenmez . Bu tür modülleri devre dışı bırakmanın tek yolu bir çekirdek parametresi (varsa) veya çekirdeği yeniden derlemektir.
Sadece /etc/modprobe.d/blacklist
dosyanızı açın ve aşağıdaki sözdizimini kullanarak drivername ekleyin:
blacklist driver-name
EDIT: 12.10 (12.04?) Tarihinden sonraki sürümlerde dosya /etc/modprobe.d/blacklist.conf
Kutunuzu yeniden başlatın ve Linux Çekirdeğindeki modüllerin durumunu göstermek için lsmod komutunu kullanın
Not : driver-name
İstediğiniz kara liste sürücüsünün adı. Örneğin, NIC kartı sürücüsünü devre dışı bırakmak istiyorsanız, LAN kartınızın çekirdek sürücüsünün adını lspci -v
bir terminaldeki komut komutunu kullanarak bulabilirsiniz .
Örnek olarak çıktım şuydu:
........ ........ 6: 00.0 Ethernet denetleyicisi: Broadcom Corporation NetLink BCM5906M Hızlı Ethernet PCI Express (rev 02) Alt sistem: Lenovo Device 3861 Bayraklar: bus master, hızlı devsel, gecikme süresi 0, IRQ 46 B8000000’de bellek (64 bit, ön satın alınamaz) [size = 64K] Genişletme ROM'u [devre dışı] Yetenekleri: Kullanılan çekirdek sürücüsü: tg3 Çekirdek modülleri: tg3 ........ ........
Burada sürücüyü görüyorum tg3
. bu yüzden yerine tg3
(veya sürücünüzü) yazmanız gerekir driver-name
.
Bilgi Bol bulunabilir burada .
Lubuntu 12.10
), bir /etc/modprobe.d/blacklist
dosya yok. Bir /etc/modprobe.d/blacklist.conf
dosya var
blacklist.conf
Dosya mevcut gerekmez. my-mom-is-awesome
Orada adı verilen bir dosya koyabilirsin ve işe yarayabilirdi. Belirli bir dosyayı sadece belirli bir şeyin kara listeye alınması gibi bir şey yapmak istiyorsanız, istediğiniz adı yapın blacklist-nouveau
.
Ayrıca, sözdizimi ile önyükleme yaparken bunları geçici olarak grub komut satırında (linux satır) kara listeye alabilirsiniz.
module_to_blacklist.blacklist=yes
i915: unknown parameter 'blacklist' ignored
.
modprobe.blacklist=module_to_blacklist
?
modprobe.blacklist=module_to_blacklist
( man modprobe
ayrıntılar için bakınız)
Modülleri en az Ubuntu 16.04 LTS'de kara listeye almanın başka bir yolu da çekirdek komut satırına aşağıdaki satırı eklemektir:
modprobe.blacklist=MODULE_NAME
/ Etc / modprobe sistemini kullanmak en iyi yoldur, ancak GRUB komut satırınızı önyükleme sırasında düzenleyerek bir tutam içinde kullanılabilecek bir alternatiftir.
Bu, / etc / default / grub 'u düzenleyerek ve GRUB_CMDLINE_LINUX_DEFAULT
değişkene ekleyerek de kalıcı hale getirilebilir . Mesela, / etc / default / grub içinde:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash modprobe.blacklist=nouveau"
Sonra koşarım update-grub2
o zaman update-initramfs -u
. Bir yeniden başlatma işleminden sonra, önyüklemeden sonra hiçbir şey yüklenmediği sürece modülden kurtulacaksınız.
Bu yöntem aynı zamanda EL varyantlarında da çalışır (RHEL, CentOS, SciLinux), ancak grub ve initrd'i güncellemek için bu distro yöntemlerini kullanmanız gerekir.
(Nouveau'yu kara listeye almaya çalışanlara dikkat edin: X'i çalıştırarak yüklemediğinizden emin olun systemctl set-default multi-user.target
, aksi takdirde X başladığında tekrar nouveau'yu yükler!)
Daha yeni sürümlerde, kara liste dosyanızdaki yükleme yönergesini kullanmanız gerekir.
install modulename /bin/false
Modülün adı ile yukarıda "modül adı" değiştirin. Bu zorla yüklenmesini önleyecektir.
Yükleme yönergesi hakkında daha fazla bilgiyi modprobe.conf kılavuzunda bulabilirsiniz.
man modprobe.conf
/etc/modprobe/blacklist.conf
, modül hala manuel olarak yüklenebiliyor modprobe <module_name>
. install <module_name> /bin/false
Yöntemi kullanmak bu işlemi istenildiği şekilde başarısız kılar.
Bu çözümlerin hiçbiri i915.ko için 16.04 LTS'de çalışmamıştır.
Bulduğum (kirli) çözüm yeniden adlandırmaktı
/lib/modules/4.4.0-22-generic/kernel/drivers/gpu/drm/i915/i915.ko
/usr/lib/xorg/modules/drivers/modesetting_drv.so
/usr/lib/xorg/modules/drivers/intel_drv.so
Maalesef, harici VGA ekranı artık tanınmıyor: {
sudo update-initramfs -u
/etc/modeprobe.d/ dosyalarını değiştirdikten sonra