Configuring an Xserver used to be a task that required fiddling with the X server configuration files, and you needed to perform this every time you set up a new system. Today, the X server will often automagically detect all available hardware and come up with some reasonable settings without any configuration file at all.

You only need to create an xorg.conf if you want to modify some of the defaults. Most of the time, this just means running

Xorg -configure 

And to copy the configuration file to your /etc/X11 directory. If you system has two graphic cards, then the configuration might abort with the following error message:

Number of created screens does not match number of detected devices. Configuration failed.

Xorg -configure does create a xorg.conf, which contains a two Monitor sections, two Screen sections, and two Device sections. An example output might look like this:

Section "ServerLayout"
    Identifier     "X.org Configured"
    Screen      0  "Screen0" 0 0
    Screen      1  "Screen1" RightOf "Screen0"
    InputDevice    "Mouse0" "CorePointer"
    InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "Files"
    ModulePath   "/usr/lib/xorg/modules"
    FontPath     "/usr/share/fonts/X11/misc"
    FontPath     "/usr/share/fonts/X11/cyrillic"
    FontPath     "/usr/share/fonts/X11/100dpi/:unscaled"
    FontPath     "/usr/share/fonts/X11/75dpi/:unscaled"
    FontPath     "/usr/share/fonts/X11/Type1"
    FontPath     "/usr/share/fonts/X11/100dpi"
    FontPath     "/usr/share/fonts/X11/75dpi"
    FontPath     "built-ins"
EndSection

Section "Module"
	Load  "glx" 
EndSection

Section "InputDevice"
	Identifier  "Keyboard0"
	Driver      "kbd"
EndSection

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option	    "Protocol" "auto"
    Option	    "Device" "/dev/input/mice"
    Option	    "ZAxisMapping" "4 5 6 7"
EndSection

Section "Monitor"
	Identifier   "Monitor0"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Monitor"
	Identifier   "Monitor1"
	VendorName   "Monitor Vendor"
	ModelName    "Monitor Model"
EndSection

Section "Device"
    ### Available Driver options are:-
    ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
    ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
    ### <percent>: "<f>%"
    ### [arg]: arg optional
    #Option     "SWcursor"           	# [<bool>]
    #Option     "HWcursor"           	# [<bool>]
    #Option     "NoAccel"            	# [<bool>]
    #Option     "ShadowFB"           	# [<bool>]
    #Option     "VideoKey"           	# <i>
    #Option     "WrappedFB"          	# [<bool>]
    #Option     "GLXVBlank"          	# [<bool>]
    #Option     "ZaphodHeads"        	# <str>
    #Option     "PageFlip"           	# [<bool>]
    #Option     "SwapLimit"          	# <i>
    #Option     "AsyncUTSDFS"        	# [<bool>]
    #Option     "AccelMethod"        	# <str>
    #Option     "DRI"                	# <i>
	Identifier  "Card0"
	Driver      "nouveau"
	BusID       "PCI:1:0:0"
EndSection

Section "Device"
    ### Available Driver options are:-
    ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",
    ### <string>: "String", <freq>: "<f> Hz/kHz/MHz",
    ### <percent>: "<f>%"
    ### [arg]: arg optional
    #Option     "ShadowFB"           	# [<bool>]
    #Option     "DefaultRefresh"     	# [<bool>]
    #Option     "ModeSetClearScreen" 	# [<bool>]
    Identifier  "Card1"
    Driver      "vesa"
    BusID       "PCI:0:2:0"
EndSection

Section "Screen"
	Identifier "Screen0"
	Device     "Card0"
	Monitor    "Monitor0"
	SubSection "Display"
		Viewport   0 0
		Depth     1
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     4
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     8
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     15
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     16
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection

Section "Screen"
	Identifier "Screen1"
	Device     "Card1"
	Monitor    "Monitor1"
	SubSection "Display"
		Viewport   0 0
 		Depth     1
    EndSubSection
    SubSection "Display"
    	Viewport   0 0
    	Depth     4
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     8
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     15
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     16
	EndSubSection
	SubSection "Display"
		Viewport   0 0
		Depth     24
	EndSubSection
EndSection

If you can decide which graphic card should be used in the configuration, you can simply delete the other irrelevant sections from you configuration file. If I only want to have the nouveau driver running, then I remove all references to Monitor1, Screen1, and Card1 from the configuration. Make sure to adopt the ServerLayout section as well.