Linux: PCI Karte "abschalten" ?

#2982930
Lesenswert?

Ja, das ist einfach: in lspci -v nach der Karte schauen, da steht 
"kernel driver in use: <name>"; dann einfach "sudo rmmod <name>".
So komplett abgeschaltet wird die Karte dadurch allerdings nicht, kriegt 
immer noch Strom etc. Was willst du denn erreichen?

Grüße,
Sven
#2982940
Lesenswert?

Sven B. schrieb:
> Ja, das ist einfach: in lspci -v nach der Karte schauen, da steht
> "kernel driver in use: <name>"; dann einfach "sudo rmmod <name>".

dann entfernst du aber den ganzen treiber aus dem kernel. der selbe 
treiber kann aber von verschiedenen karten genutzt werden - die gehen 
dann alle nicht mehr. außerdem kann der treiber auch fest in den kernel 
compiliert sein, dann geht das sowieso nicht so.

du kannst über das sysfs die verknüpfung zwischen karte und treiber 
aufheben. dazu suchst du dir unter /sys/bus/pci/devices das richtige 
device raus (vorher mit lspci nach der adresse schauen).

dort gibts dann nen symlink "driver" und dort die datei "unbind". dort 
schreibst du dann die pci-adresse rein um den befehl zum trennen zu 
geben:
echo 0000:00:19.0 > /sys/bus/pci/drivers/foo/unbind

damit ist die karte aber noch "da", sie hat nur keinen treiber mehr. 
wenn du sie wirklich auf pci-ebene abschalten willst, gibt es im sysfs 
unter /sys/bus/pci/devices noch "enable" und "remove" die man auch über 
echo ansteueren kann.
Gast #2982948
Lesenswert?

danke für die schnelle Antwort.

Was ich erreichen will ist folgendes:
Ich habe eine eSATA/USB3 Karte im Rechner - an der hängt ein NAS (über 
USB3) ... das NAS schaltet sich selbst in nen Standby Modus wenn der 
Rechner abgeschalten wird oder das NAS an keinem Rechner hängt.
Meine Vermutung ist, dass das NAS sich auch so verhält, wenn die Karte 
nicht mehr aktiv ist.

Grad probiert ... scheint aber nicht so einfach zu sein:

lspci -v

...
01:00.0 USB controller: NEC Corporation uPD720200 USB 3.0 Host 
Controller (rev 03) (prog-if 30 [XHCI])
        Flags: bus master, fast devsel, latency 0, IRQ 16
        Memory at f7c00000 (64-bit, non-prefetchable) [size=8K]
...
        Kernel driver in use: xhci_hcd
...

rmmod xhci_hcd
ERROR: Module xhci_hcd does not exist in /proc/modules
Gast #2982962
Lesenswert?

Warscheinlich ist xhci_hcd fest im Kernel (usb3 = xhci) d.h. du must 
entweder den Kernel neu kompilieren oder mittels "find /sys/|grep xhci" 
nach den Parametern suchen welche per User geändert werden dürfen 
vielleicht kannst du da ja per "echo 0>/sys/device.../xhci*/power" die 
Spannungsversorgung abschalten oder so in etwa...

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren