Anwendungen
Portal
Forum
Wiki
Ikhaya
Planet
Mehr
Anmelden

Problem mit udev Regel zum Ausschalten der internen Wlan-Karte

Ausgangssituation: An einem Mac Powerbook habe ich einen D-Link WLanstick (der viel schneller als die interne Broadcom43 legacy Karte ist). Elektronenblitz61 hat mir irgendwo hier (leider finde ich den Thread nicht mehr) geholfen mittel eine udev-Regel den internen chip abzuschalten, wenn der Wlanstick angehängt ist.

Mein File '/etc/udev/rules.d/10-wlan-stick.rules' sieht so aus:

# UDEV-Regel für externe WLAN-Sticks
# entlädt/lädt Treiber für int. WLAN-Karte

ACTION=="add", GOTO="device_check"
ACTION=="remove", GOTO="onboard_load"

LABEL="device_check
### WLAN-Stick erkannt, Onboard-Karte deaktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe -rf b43-pci-bridge"

GOTO="rules_end"

LABEL="onboard_load"
### WLAN-Stick entfernt, Onboard-Karte aktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe b43-pci-bridge"

LABEL="rules_end"

Nach einem kürzlichen upgrade auf kernel 3.2.0-1 ppc (von 3.1.0-1 ppc) notiere ich nun beim Booten, dass a) der Bootvorgang deutlich länger braucht und b) bei genauerem Hinsehen finde ich die Meldung, dass der key 'BUS' nicht von den udev Regeln akzeptiert wird (die genaue Formulierung weiss ich nicht mehr, ich habe ich durch die verschiedenen log files in /var/log versucht durchzuwühlen, aber nichts gefunden; natürlich weil ich nicht genau weiss, wo zu suchen wäre).

Ich habe den Verdacht, dass da etwas grundlegend falsch läuft, denn auch mein "getreuer" Blueman ;-) versagt seither den Dienst (ob das damit im Zusammenhang steht, ist nur eine Spekulation in der Dunkelheit meines Nichtwissens über die (Un?)Tiefen von Linux).

Ich wäre für jeden Tip dankbar.

Hallo,

das Modul heisst entweder b43 oder b43legacy, nicht b43-pci-bridge, siehe

lsmod

Der Thread ist hier ;-)

Sollte ich das also in "meinem" script ändern?

PS. Habe ich inzwischen gemacht, aber die Fehlermeldungen tauchen immer noch auf.

elektronenblitz63. . .

aut. Umschaltung zwischen int. WLAN-Karte und WLAN USB-Stick

Erstelle zur Lösung des Problems eine neue udev-Regel mit einem Texteditor. Das funktioniert auch ohne größere Änderung des nachfolgend gezeigten Codes mit verschiedenen WLAN-Sticks. Die int. Karte wird automatisch abgeschaltet wenn ein Stick angeschlossen wird und auch wieder aktiviert, sobald dieser wieder entfernt wird.

gksu gedit /etc/udev/rules.d/10-wlan-stick.rules 

Inhalt:

# UDEV-Regel für externe WLAN-Sticks
# entlädt/lädt Treiber für int. WLAN-Karte

ACTION=="add", GOTO="device_check"
ACTION=="remove", GOTO="onboard_load"

LABEL="device_check
### WLAN-Stick erkannt, Onboard-Karte deaktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe -rf ipw2200"

GOTO="rules_end"

LABEL="onboard_load"
### WLAN-Stick entfernt, Onboard-Karte aktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe ipw2200"

LABEL="rules_end"

udev neu starten:

sudo service udev reload 

Bei anderen int. WLAN-Karten ist das hier verwendete Treibermodul ipw2200 natürlich durch die Bezeichnung des tatsächlich verwendeten Moduls im Code zu ersetzen.

Eine Frage: Wenn man wicd als Networkmanager einsetzt, braucht man dann ein solches Script? Dort ist doch in den Preferences festgelegt, ob man wlan0 oder wlan1 benutzt (wobei wlan0 automatisch dem onboardchip zugeordnet ist; oder verstehe ich da etwas falsch).

Moderiert von "Elektronenblitz63":

Beiträge zusammengeführt.

Hallo,
das kann man auch so machen. Ich weise allen meinen Adaptern z.B. die Bezeichnung wlan0 zu, damit ich die Einstellungen in Wicd und auch div. Skripte nicht zu ändern brauche. Außerdem stören sich die Geräte dann nicht gegenseitig wenn nur ein Adapter tatsächlich aktiv ist. Der Network-Manager scannt z.B. auch über das momentan dann nicht verwendete Interface die WLAN-Umgebung.

elektronenblitz63 schrieb:

Hallo,
das kann man auch so machen. Ich weise allen meinen Adaptern z.B. die Bezeichnung wlan0 zu, damit ich die Einstellungen in Wicd und auch div. Skripte nicht zu ändern brauche. Außerdem stören sich die Geräte dann nicht gegenseitig wenn nur ein Adapter tatsächlich aktiv ist. Der Network-Manager scannt z.B. auch über das momentan dann nicht verwendete Interface die WLAN-Umgebung.

Dumme Frage, wie würde man das machen?

Wenn also alle wireless Adapter wlan0 zugeordnet sind, dann bräuchte man das script, damit sich die Adapter nicht stören? So wie es im Augenblick bei mir ist, wird wicd "blind" für den Router, wenn ich den W-Lanstick abziehe. Erst wenn ich die Preferences auf wlan0 ändere sieht er ihn wieder, mit dem internen Broadcomadapter.

"Network-Manager" meint: jeden, also auch wicd, oder nur den network-manager und network-manager-gnome (die ich beide, glaube ich, gelöscht habe, weil ich irgendwo den Hinweis gefunden habe, dass deren Existenz bei wicd das Passwortproblem verursacht)?

elektronenblitz63 schrieb:

Hallo,
das kann man auch so machen. Ich weise allen meinen Adaptern z.B. die Bezeichnung wlan0 zu, damit ich die Einstellungen in Wicd und auch div. Skripte nicht zu ändern brauche. Außerdem stören sich die Geräte dann nicht gegenseitig wenn nur ein Adapter tatsächlich aktiv ist. Der Network-Manager scannt z.B. auch über das momentan dann nicht verwendete Interface die WLAN-Umgebung.

Dumme Frage, wie würde man das machen?

Wenn also alle wireless Adapter wlan0 zugeordnet sind, dann bräuchte man das script, damit sich die Adapter nicht stören? So wie es im Augenblick bei mir ist, wird wicd "blind" für den Router, wenn ich den W-Lanstick abziehe. Erst wenn ich die Preferences auf wlan0 ändere sieht er ihn wieder, mit dem internen Broadcomadapter.

"Network-Manager" meint: jeden, also auch wicd, oder nur den network-manager und network-manager-gnome (die ich beide, glaube ich, gelöscht habe, weil ich irgendwo den Hinweis gefunden habe, dass deren Existenz bei wicd das Passwortproblem verursacht)?

Farinet schrieb:

Dumme Frage, wie würde man das machen?

Über die /etc/udev/rules.d/70-persistent-net.rules

"Network-Manager" meint: jeden, also auch wicd, oder nur den network-manager und network-manager-gnome ...

Network-Manager meint nur (K)Network-Manager.

... (die ich beide, glaube ich, gelöscht habe, weil ich irgendwo den Hinweis gefunden habe, dass deren Existenz bei wicd das Passwortproblem verursacht)?

Geht auch parallel wenn man den NM deaktiviert. Siehe Wicd.

Wenn also alle wireless Adapter wlan0 zugeordnet sind, dann bräuchte man das script, damit sich die Adapter nicht stören?

Genau, so mache ich das zumindest um einfach und schnell verschiedene USB WLAN-Sticks/Adapter verwenden zu können und nicht immer manuell die Treiber der int. Karte entladen zu müssen.

Vielen Dank für die Tips.

Die Datei '70-persistent-net-rules' gibt es bei mir nicht. Nur eine entsprechend numerierte für cd . . . (?)

Ansonsten bin ich mit wicd - auch dank Deiner vielen guten Tips - als Netzwerkdienstprogramm vollkommen zufrieden. Es leistet zuverlässig all das, was ich brauche. Wenigstens bis anhin :)

PS. Ich glaube ich habe ein Problem mit dem Script zum Ein- und Ausschalten. Aber ich verstehe nicht warum - siehe hier: http://forum.ubuntuusers.de/topic/problem-mit-udev-regel-zum-ausschalten-der-int/

Farinet schrieb:

Vielen Dank für die Tips.

Die Datei '70-persistent-net-rules' gibt es bei mir nicht. Nur eine entsprechend numerierte für cd . . . (?)

Was ist das für eine Linux-Version/Distribution?

Was ergibt

locate *.rules
uname -a
cat /etc/lsb-release 
lsmod
lspci -nnk

elektronenblitz63 schrieb:

Farinet schrieb:

Vielen Dank für die Tips.

Die Datei '70-persistent-net-rules' gibt es bei mir nicht. Nur eine entsprechend numerierte für cd . . . (?)

Was ist das für eine Linux-Version/Distribution?

Was ergibt

locate *.rules
uname -a
cat /etc/lsb-release 
lsmod
lspci -nnk

'locate *rules':

/etc/udev/hdparm.rules
/etc/udev/mouseemu.rules
/etc/udev/rules.d/025_mouseemu.rules
/etc/udev/rules.d/10-wlan-stick.rules
/etc/udev/rules.d/70-persistent-cd.rules
/etc/udev/rules.d/z60_hdparm.rules
~/Downloads/compat-wireless-2010-11-22/udev/50-compat_firmware.rules
~/Downloads/compat-wireless-2010-11-22/udev/ubuntu/50-compat_firmware.rules
/lib/udev/rules.d/40-hplip.rules
/lib/udev/rules.d/40-usb-media-players.rules
/lib/udev/rules.d/42-qemu-usb.rules
/lib/udev/rules.d/50-udev-default.rules
/lib/udev/rules.d/55-dm.rules
/lib/udev/rules.d/56-hpmud_support.rules
/lib/udev/rules.d/56-lvm.rules
/lib/udev/rules.d/60-alsa-firmware-loaders.rules
/lib/udev/rules.d/60-cdrom_id.rules
/lib/udev/rules.d/60-crda.rules
/lib/udev/rules.d/60-fuse.rules
/lib/udev/rules.d/60-gnupg.rules
/lib/udev/rules.d/60-libgphoto2-2.rules
/lib/udev/rules.d/60-libsane.rules
/lib/udev/rules.d/60-pcmcia.rules
/lib/udev/rules.d/60-persistent-alsa.rules
/lib/udev/rules.d/60-persistent-input.rules
/lib/udev/rules.d/60-persistent-serial.rules
/lib/udev/rules.d/60-persistent-storage-dm.rules
/lib/udev/rules.d/60-persistent-storage-lvm.rules
/lib/udev/rules.d/60-persistent-storage-tape.rules
/lib/udev/rules.d/60-persistent-storage.rules
/lib/udev/rules.d/60-persistent-v4l.rules
/lib/udev/rules.d/61-accelerometer.rules
/lib/udev/rules.d/64-xorg-xkb.rules
/lib/udev/rules.d/69-cd-sensors.rules
/lib/udev/rules.d/69-libmtp.rules
/lib/udev/rules.d/69-xserver-xorg-input-wacom.rules
/lib/udev/rules.d/70-printers.rules
/lib/udev/rules.d/70-udev-acl.rules
/lib/udev/rules.d/75-cd-aliases-generator.rules
/lib/udev/rules.d/75-net-description.rules
/lib/udev/rules.d/75-persistent-net-generator.rules
/lib/udev/rules.d/75-probe_mtd.rules
/lib/udev/rules.d/75-tty-description.rules
/lib/udev/rules.d/78-sound-card.rules
/lib/udev/rules.d/80-drivers.rules
/lib/udev/rules.d/80-networking.rules
/lib/udev/rules.d/80-udisks.rules
/lib/udev/rules.d/80-uvcdynctrl.rules
/lib/udev/rules.d/85-hplj10xx.rules
/lib/udev/rules.d/85-hwclock.rules
/lib/udev/rules.d/85-lirc.rules
/lib/udev/rules.d/85-regulatory.rules
/lib/udev/rules.d/85-usbmuxd.rules
/lib/udev/rules.d/90-hal.rules
/lib/udev/rules.d/90-libgpod.rules
/lib/udev/rules.d/91-permissions.rules
/lib/udev/rules.d/95-cd-devices.rules
/lib/udev/rules.d/95-keyboard-force-release.rules
/lib/udev/rules.d/95-keymap.rules
/lib/udev/rules.d/95-udev-late.rules
/lib/udev/rules.d/95-upower-battery-recall-dell.rules
/lib/udev/rules.d/95-upower-battery-recall-fujitsu.rules
/lib/udev/rules.d/95-upower-battery-recall-gateway.rules
/lib/udev/rules.d/95-upower-battery-recall-ibm.rules
/lib/udev/rules.d/95-upower-battery-recall-lenovo.rules
/lib/udev/rules.d/95-upower-battery-recall-toshiba.rules
/lib/udev/rules.d/95-upower-csr.rules
/lib/udev/rules.d/95-upower-hid.rules
/lib/udev/rules.d/95-upower-wup.rules
/lib/udev/rules.d/97-bluetooth-hid2hci.rules
/lib/udev/rules.d/97-bluetooth.rules
/lib/udev/rules.d/usbmount.rules

'uname -a':

Linux pbg4 3.2.0-1-powerpc #1 Wed Feb 1 08:01:50 UTC 2012 ppc GNU/Linux

'cat /etc/lsb-release':

cat: /etc/lsb-release: Datei oder Verzeichnis nicht gefunden

'lsmod':

Module                  Size  Used by
sg                     24068  0 
radeon                679582  0 
ttm                    50193  1 radeon
drm_kms_helper         25389  1 radeon
drm                   154890  3 radeon,ttm,drm_kms_helper
power_supply           10967  1 radeon
aes_generic            30338  1 
iptable_nat             7196  0 
nf_nat                 16269  1 iptable_nat
nf_conntrack_ipv4      13646  3 iptable_nat,nf_nat
nf_conntrack           56236  3 iptable_nat,nf_nat,nf_conntrack_ipv4
nf_defrag_ipv4          4531  1 nf_conntrack_ipv4
iptable_filter          4656  0 
ip_tables              13910  2 iptable_nat,iptable_filter
x_tables               15181  3 iptable_nat,iptable_filter,ip_tables
snd_hrtimer             5016  1 
uinput                 10395  2 
cpufreq_ondemand        8916  0 
cpufreq_conservative     8441  0 
cpufreq_powersave       4142  0 
cpufreq_userspace       5092  1 
cpufreq_stats           5673  0 
parport_pc             25738  0 
lp                     10962  0 
parport                30823  2 parport_pc,lp
bnep                   13866  2 
rfcomm                 34630  17 
binfmt_misc            10081  1 
fuse                   62418  3 
nfsd                  213186  2 
nfs                   324588  0 
lockd                  65965  2 nfsd,nfs
fscache                35708  1 nfs
auth_rpcgss            36123  2 nfsd,nfs
nfs_acl                 5591  2 nfsd,nfs
sunrpc                177935  6 nfsd,nfs,lockd,auth_rpcgss,nfs_acl
ext2                   64798  1 
therm_adt746x          10467  0 
snd_powermac           56435  1 
snd_pcm_oss            40032  0 
snd_mixer_oss          16811  1 snd_pcm_oss
snd_pcm                64087  2 snd_powermac,snd_pcm_oss
snd_seq_midi            7856  0 
snd_rawmidi            20509  1 snd_seq_midi
snd_seq_midi_event      7856  1 snd_seq_midi
snd_seq                48463  3 snd_seq_midi,snd_seq_midi_event
snd_timer              20029  3 snd_hrtimer,snd_pcm,snd_seq
snd_seq_device          8180  3 snd_seq_midi,snd_rawmidi,snd_seq
snd                    50966  11 snd_powermac,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_rawmidi,snd_seq,snd_timer,snd_seq_device
soundcore               7962  1 snd
snd_page_alloc          8949  1 snd_pcm
loop                   17767  0 
rt2800usb              14673  0 
arc4                    4454  2 
btusb                  13673  2 
rt2800lib              43154  1 rt2800usb
bluetooth             135522  23 bnep,rfcomm,btusb
crc_ccitt               4499  1 rt2800lib
rt2x00usb              11586  1 rt2800usb
rt2x00lib              36179  3 rt2800usb,rt2800lib,rt2x00usb
mac80211              205926  3 rt2800lib,rt2x00usb,rt2x00lib
cfg80211              147699  2 rt2x00lib,mac80211
rfkill                 17419  4 bluetooth,cfg80211
i2c_powermac            6651  0 
evdev                  12574  24 
yenta_socket           23856  0 
pcmcia_rsrc            11069  1 yenta_socket
ext4                  373174  1 
mbcache                 7893  2 ext2,ext4
jbd2                   59971  1 ext4
crc16                   4487  2 bluetooth,ext4
dm_mod                 67587  6 
usbhid                 36583  0 
hid                    72046  1 usbhid
firewire_ohci          32950  0 
ohci_hcd               33077  0 
ehci_hcd               44650  0 
usbcore               129999  7 rt2800usb,btusb,rt2x00usb,usbhid,ohci_hcd,ehci_hcd
firewire_core          48263  1 firewire_ohci
sd_mod                 33562  3 
sungem                 30339  0 
crc_t10dif              4488  1 sd_mod
crc_itu_t               4507  1 firewire_core
sungem_phy             12769  1 sungem
sr_mod                 17180  0 
cdrom                  36889  1 sr_mod
pcmcia_core            14542  2 yenta_socket,pcmcia_rsrc
usb_common              4034  1 usbcore

lspci -nnk':

0000:00:0b.0 Host bridge [0600]: Apple Computer Inc. UniNorth 2 AGP [106b:0034]
	Kernel driver in use: agpgart-uninorth
0000:00:10.0 VGA compatible controller [0300]: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10] [1002:4e50]
	Subsystem: ATI Technologies Inc RV350 [Mobility Radeon 9600 M10] [1002:4e50]
	Kernel driver in use: radeonfb
0001:10:0b.0 Host bridge [0600]: Apple Computer Inc. UniNorth 2 PCI [106b:0035]
0001:10:12.0 Network controller [0280]: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller [14e4:4320] (rev 02)
	Subsystem: Apple Computer Inc. AirPort Extreme [106b:004e]
0001:10:13.0 CardBus bridge [0607]: Texas Instruments PCI1510 PC card Cardbus Controller [104c:ac56]
	Kernel driver in use: yenta_cardbus
0001:10:17.0 Unassigned class [ff00]: Apple Computer Inc. KeyLargo/Intrepid Mac I/O [106b:003e]
	Kernel driver in use: macio
0001:10:18.0 USB controller [0c03]: Apple Computer Inc. KeyLargo/Intrepid USB [106b:003f]
0001:10:19.0 USB controller [0c03]: Apple Computer Inc. KeyLargo/Intrepid USB [106b:003f]
0001:10:1a.0 USB controller [0c03]: Apple Computer Inc. KeyLargo/Intrepid USB [106b:003f]
	Kernel driver in use: ohci_hcd
0001:10:1b.0 USB controller [0c03]: NEC Corporation USB [1033:0035] (rev 43)
	Subsystem: NEC Corporation Hama USB 2.0 CardBus [1033:0035]
	Kernel driver in use: ohci_hcd
0001:10:1b.1 USB controller [0c03]: NEC Corporation USB [1033:0035] (rev 43)
	Subsystem: NEC Corporation Hama USB 2.0 CardBus [1033:0035]
	Kernel driver in use: ohci_hcd
0001:10:1b.2 USB controller [0c03]: NEC Corporation USB 2.0 [1033:00e0] (rev 04)
	Subsystem: NEC Corporation USB 2.0 [1033:00e0]
	Kernel driver in use: ehci_hcd
0002:24:0b.0 Host bridge [0600]: Apple Computer Inc. UniNorth 2 Internal PCI [106b:0036]
0002:24:0d.0 Unassigned class [ff00]: Apple Computer Inc. UniNorth/Intrepid ATA/100 [106b:003b]
	Kernel driver in use: pata-pci-macio
0002:24:0e.0 FireWire (IEEE 1394) [0c00]: Apple Computer Inc. UniNorth 2 FireWire [106b:0031] (rev 81)
	Subsystem: Apple Computer Inc. iBook G4 2004 [106b:5811]
	Kernel driver in use: firewire_ohci
0002:24:0f.0 Ethernet controller [0200]: Apple Computer Inc. UniNorth 2 GMAC (Sun GEM) [106b:0032] (rev 80)
	Kernel driver in use: gem

Systemtreiber für die int. Karte ...

0001:10:12.0 Network controller [0280]: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller [14e4:4320] (rev 02)

... müsste eigentlich b43 sein. Da wird ja momentan kein Treibermodul geladen. Funktioniert die Udev-Regel jetzt doch? Verwende ansonsten mal folgende Konfiguration:

# UDEV-Regel für externe WLAN-Sticks
# entlädt/lädt Treiber für int. WLAN-Karte

ACTION=="add", GOTO="device_check"
ACTION=="remove", GOTO="onboard_load"

LABEL="device_check
### WLAN-Stick erkannt, Onboard-Karte deaktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe -rf ssb b43"

GOTO="rules_end"

LABEL="onboard_load"
### WLAN-Stick entfernt, Onboard-Karte aktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe b43 ssb"

LABEL="rules_end"

Teste auch mal ein

sudo udevadm trigger

um die 70-persistent-net-rules zu erzeugen.

elektronenblitz63 schrieb:

Systemtreiber für die int. Karte ...

0001:10:12.0 Network controller [0280]: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller [14e4:4320] (rev 02)

... müsste eigentlich b43 sein. Da wird ja momentan kein Treibermodul geladen. Funktioniert die Udev-Regel jetzt doch?

Nein! Ich hatte das von Hand durch

1
sudo /sbin/modprobe -rf b43legacy

ausgeschaltet. Ich brauche b43legacy. Wenn ich die beiden modprobe Befehle von Hand im Terminal eingebe mit b43, passiert gar nichts. Mit b43legacy heisst das Resultat von 'lspci -nnk' NACH DEM EINSCHALTEN

0001:10:12.0 Network controller [0280]: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller [14e4:4320] (rev 02)
	Subsystem: Apple Computer Inc. AirPort Extreme [106b:004e]
	Kernel driver in use: b43-pci-bridge

und NACH DEM AUSSCHALTEN

0001:10:12.0 Network controller [0280]: Broadcom Corporation BCM4306 802.11b/g Wireless LAN Controller [14e4:4320] (rev 02)
	Subsystem: Apple Computer Inc. AirPort Extreme [106b:004e]

Verwende ansonsten mal folgende Konfiguration:

# UDEV-Regel für externe WLAN-Sticks
# entlädt/lädt Treiber für int. WLAN-Karte

ACTION=="add", GOTO="device_check"
ACTION=="remove", GOTO="onboard_load"

LABEL="device_check
### WLAN-Stick erkannt, Onboard-Karte deaktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe -rf ssb b43"

GOTO="rules_end"

LABEL="onboard_load"
### WLAN-Stick entfernt, Onboard-Karte aktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe b43 ssb"

LABEL="rules_end"

Ich habe die beiden modprobe Befehle einmal von Hand (im Terminal) eingegeben. Es scheint zu funktionieren (ist das richtig, dass beim Wiedereinschaltbefehl 'ssb' nachgestellt wird?

Teste auch mal ein

sudo udevadm trigger

um die 70-persistent-net-rules zu erzeugen.

So passiert, scheinbar, gar nichts. Muss ich noch irgendetwas dazu eingeben?

Ich würde gerne die Fehlermeldung bezüglich des Ein/Ausschaltscripts hier angeben, aber ich finde sie in den log msgs nicht. Wo könnte ich suchen? Ansonsten kann ich versuchen mitzuschreiben, auch wenn das nicht ganz einfach ist . . . ;-)

Ok, dann bitte so versuchen

...
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe -rf ssb b43legacy"

GOTO="rules_end"

LABEL="onboard_load"
### WLAN-Stick entfernt, Onboard-Karte aktivieren
BUS=="usb", KERNEL=="wlan*" RUN+="/sbin/modprobe b43legacy ssb"
...

Udev nach einer Änderung immer neu starten.

sudo service udev reload

Wurde die Datei erzeugt?

locate 70-persistent-net.rules

Auch nach der Änderung in dem script bekomme ich beim Booten immer noch eine Fehlermeldung. Sie lautet so in etwa:

udev[245] invalid rule in /etc/udev/rules.d/10-wlan-stick.rules . . . Und dann kann ich noch erkennen, dass die Zeilen angegeben werden, nämlich 9 und 15.

Noch einmal: Wenn ich wüsste wie, würde ich den log hier ausgeben. Aber ich weiss nicht, wo ich den finde. Habe schon ziemlich alles in /var/log angeschaut, diese Meldung aber nicht gefunden.

Nein, die Datei wurde nicht erzeugt.

PS. Das script funktioniert effektiv nicht, denn die Ausgabe von 'lspci -nnk" nach dem Booten zeigt an: Kernel driver in use: b43-pci-bridge