I have a server running for which I want to have a possility to access it with a screen connected to VGA (very rarely, most of the time it's accessed via SSH). Therefore I have a PCI-e graphic cards plugged in and the VGA cable removed. The graphic card is passively cooled and if I open the case and touch the cool body I can feel a noticable warmth and conclue that it's consuming energy (there're no consumers close to it that could transmit the thermal energy in any way).
If I unplug the card (as suggested in Should I Disable an unused graphic card?) I have to built it in every time I want to connect a screen. I would like to avoid that as well as the energy consumption.
The de- and re-activation needs to take place on the OS level (e.g. via SSH) because otherwise I'd need a screen to configure the UEFI (or do that blindly which is no alternative) and run into a chicken-egg-problem.
I'm using Ubuntu 15.04 with Linux 4.0.2. The graphic card is labeled XFX HD 5450 850M and has a VGA, HDMI and D-SUB connector. The mainboard is an ASRock X99-Extreme without integrated graphic.
EDIT: After blacklisting used modules listed in sudo lspci -v (following @WhimsicalWombat's promising answer below) (in my case I had to use the modprobe.blacklist=module_to_blacklist kernel parameter - see https://askubuntu.com/questions/110341/how-to-blacklist-kernel-modules for more details - for radeon and snd_hda_intel) the PCIe graphic card still heats up (passive cooler has > 60 degrees and there's no heat source closeby) and no modules are listed in lspci -v for the devices. The output of lspci -v for the devices is not
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Cedar [Radeon HD 5000/6000/7350/8350 Series] (prog-if 00 [VGA controll
er])
Subsystem: XFX Pine Group Inc. Device 303e
Physical Slot: 4
Flags: bus master, fast devsel, latency 0, IRQ 11
Memory at e0000000 (64-bit, prefetchable) [size=256M]
Memory at fbe20000 (64-bit, non-prefetchable) [size=128K]
I/O ports at e000 [size=256]
Expansion ROM at fbe00000 [disabled] [size=128K]
Capabilities: [50] Power Management version 3
Capabilities: [58] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [150] Advanced Error Reporting
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Cedar HDMI Audio [Radeon HD 5400/6300 Series]
Subsystem: XFX Pine Group Inc. Device aa68
Physical Slot: 4
Flags: bus master, fast devsel, latency 0, IRQ 10
Memory at fbe40000 (64-bit, non-prefetchable) [size=16K]
Capabilities: [50] Power Management version 3
Capabilities: [58] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [150] Advanced Error Reporting
EDIT 2: https://askubuntu.com/a/138953/173287 suggests to do echo 0 > /sys/bus/pci/slots/$N/power and I have a /sys/bus/pci/slots/$N where $N is number of the slot listed in lspci -v, but there's no power file.
EDIT 3: adding the modaliases of /sys/bus/pci/devices/[device]/modalias to modprobe.blacklist= kernel parameters has no effect on Ubuntu mainline kernels from http://kernel.ubuntu.com/~kernel-ppa/mainline/ and a custom 4.0.5 build with make localmodconfig and activation of all PCI options causes the "Loading initramfs [version]" screen to remain visible for ever while the graphic card is still heating up.