Hallo. Die Frage mag etwas blöd klingen - aber kann man bei Linux eine PCI Karte "abschalten"? Also quasi die Treiber/Kernelmodule die die Karte zum Leben erwecken auf Befehl deaktivieren? Wie würde man die Kernelmodule identifizieren? danke
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
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.
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
danke! Die Variante mit "/sys/bus/pci/drivers/foo/unbind" funktioniert ... Supi!!!
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...
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.