11.1. | What is the X Window System? |
The X Window System (commonly Many implementations are available for different
architectures and operating systems. An
implementation of the server-side code is properly known
as an | |
11.2. | Which X implementations are available for FreeBSD? |
Historically, the default implementation of X on FreeBSD has been XFree86TM which is maintained by The XFree86 Project, Inc. This software was installed by default on FreeBSD versions up until 4.10 and 5.2. Although Xorg itself maintained an implementation during that time period, it was basically only provided as a reference platform, as it had suffered greatly from bitrot over the years. However, early in 2004, some XFree86 developers left
that project
over issues including the pace of code changes, future
directions, and interpersonal conflicts, and are now contributing
code directly to Xorg instead. At that time, Xorg updated its
source tree to the last XFree86TM release before its subsequent
licensing change (XFree86 version 4.3.99.903), incorporated
many changes that had previously been maintained separately,
and has released that software as X11R6.7.0. A separate but
related project,
freedesktop.org (or As of July 2004, in FreeBSD-CURRENT, XFree86TM has been replaced with Xorg as the default implementation. The XFree86TM ports (x11/XFree86-4 and subports) remain in the ports collection. But Xorg is the default X11 implementation for FreeBSD 5.3 and later. For further information, read the X11 section of the FreeBSD Handbook. Σημείωση:The above describes the default X implementation installed.
It is still possible to install either implementation by
following the instructions in the entry for 20040723 in
Προειδοποίηση:It is not currently possible to mix-and-match pieces of each implementation; one must choose one or the other. | |
11.3. | Will my existing applications run with the Xorg suite? |
The Xorg software is written to the same X11R6 specification
that XFree86TM is, so basic applications should work
unchanged. A few lesser-used protocols have been deprecated
( | |
11.4. | Why did the X projects split, anyway? |
The answer to this question is outside the scope of this FAQ. Note that there are voluminous postings in various mailing list archives on the Internet; please use your favorite search engine to investigate the history instead of asking this question on the FreeBSD mailing lists. It may even be the case that only the participants will ever know for certain. | |
11.5. | Why did FreeBSD choose to go with the Xorg ports by default? |
The Xorg developers claim that their goal is to release more often and incorporate new features more quickly. If they are able to do so, this will be very attractive. Also, their software still uses the traditional X license, while XFree86TM is now using their modified one. Σημείωση:This decision is still controversial. Only time will tell which implementation proves technically superior. Each FreeBSD user should decide which they prefer. | |
11.6. | I want to run X, how do I go about it? |
If you would like to add X to an existing installation, you should use the x11/xorg meta-port, which will build and install all the necessary components. Then read and follow the documentation on the xorgconfig(1) tool, which assists you in configuring Xorg for your particular graphics card/mouse/etc. You may also wish to examine the xorgcfg(1) tool, which provides a graphical interface to the X configuration process. For further information, read the X11 section of the FreeBSD Handbook. You may also wish to investigate the Xaccel server. See the section on Xi Graphics for more details. | |
11.7. | I tried to run X, but I get an
KDENABIO failed (Operation not permitted)
error when I type |
Your system is probably running at a raised securelevel.
It is not possible to start X at a raised securelevel because
X requires write access to So the question is what else you should do instead,
and you basically have two choices: set your securelevel
back down to zero (usually from See Ε: 11.14 for more information about running xdm(1) at boot time. | |
11.8. | Why does my mouse not work with X? |
If you are using syscons (the default console driver),
you can configure FreeBSD to support a mouse pointer on each
virtual screen. In order to avoid conflicting with X, syscons
supports a virtual device called
Then edit Section "InputDevice" Option "Protocol" "SysMouse" Option "Device" "/dev/sysmouse" ..... Some people prefer to use
| |
11.9. | My mouse has a fancy wheel. Can I use it in X? |
Yes. You need to tell X that you have a 5 button mouse.
To do this, simply add the lines
Παράδειγμα 11.1. «InputDevice» Section for Wheeled Mouse
in Xorg configuration file Section "InputDevice" Identifier "Mouse1" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/sysmouse" Option "Buttons" "5" Option "ZAxisMapping" "4 5" EndSection Παράδειγμα 11.2. «.emacs» example for naive page
scrolling with Wheeled Mouse (optional) ;; wheel mouse (global-set-key [mouse-4] 'scroll-down) (global-set-key [mouse-5] 'scroll-up) | |
11.10. | How do I use remote X displays? |
For security reasons, the default setting is to not allow a machine to remotely open a window. To enable this feature, simply start
X with the optional
| |
11.11. | Why do X Window menus and dialog boxes not work right? |
Try turning off the Num Lock key. If your Num Lock key is on by default
at boot-time, you may add the following line in the
# Let the server do the NumLock processing. This should only be # required when using pre-R6 clients ServerNumLock | |
11.12. | What is a virtual console and how do I make more? |
Virtual consoles, put simply, enable you to have several simultaneous sessions on the same machine without doing anything complicated like setting up a network or running X. When the system starts, it will display a login prompt on the monitor after displaying all the boot messages. You can then type in your login name and password and start working (or playing!) on the first virtual console. At some point, you will probably wish to start another session, perhaps to look at documentation for a program you are running or to read your mail while waiting for an FTP transfer to finish. Just do Alt+F2 (hold down the Alt key and press the F2 key), and you will find a login prompt waiting for you on the second «virtual console»! When you want to go back to the original session, do Alt+F1. The default FreeBSD installation has eight virtual consoles enabled. Alt+F1, Alt+F2, Alt+F3, and so on will switch between these virtual consoles. To enable more of them, edit
# Edit the existing entry for ttyv3 in /etc/ttys and change # "off" to "on". ttyv3 "/usr/libexec/getty Pc" cons25 on secure ttyv4 "/usr/libexec/getty Pc" cons25 on secure ttyv5 "/usr/libexec/getty Pc" cons25 on secure ttyv6 "/usr/libexec/getty Pc" cons25 on secure ttyv7 "/usr/libexec/getty Pc" cons25 on secure ttyv8 "/usr/libexec/getty Pc" cons25 on secure ttyv9 "/usr/libexec/getty Pc" cons25 on secure ttyva "/usr/libexec/getty Pc" cons25 on secure ttyvb "/usr/libexec/getty Pc" cons25 on secure Use as many or as few as you want. The more virtual
terminals you have, the more resources that are used; this
can be important if you have 8MB RAM or less. You may also
want to change the Σημαντικό:If you want to run an X server you must leave at least one virtual terminal unused (or turned off) for it to use. That is to say that if you want to have a login prompt pop up for all twelve of your Alt-function keys, you are out of luck - you can only do this for eleven of them if you also want to run an X server on the same machine. The easiest way to disable a console is by turning it off. For example, if you had the full 12 terminal allocation mentioned above and you wanted to run X, you would change settings for virtual terminal 12 from: ttyvb "/usr/libexec/getty Pc" cons25 on secure to: ttyvb "/usr/libexec/getty Pc" cons25 off secure If your keyboard has only ten function keys, you would end up with: ttyv9 "/usr/libexec/getty Pc" cons25 off secure ttyva "/usr/libexec/getty Pc" cons25 off secure ttyvb "/usr/libexec/getty Pc" cons25 off secure (You could also just delete these lines.) Next, the easiest (and cleanest) way to activate the
virtual consoles is to reboot. However, if you really do not
want to reboot, you can just shut down the X Window system
and execute (as
It is imperative that you completely shut down X Window if it is running, before running this command. If you do not, your system will probably appear to hang/lock up after executing the kill command. | |
11.13. | How do I access the virtual consoles from X? |
Use Ctrl+Alt+F Once you are back to a text console, you can then use
Alt+F To return to the X session, you must switch to the
virtual console running X. If you invoked X from the
command line, (e.g., using | |
11.14. | How do I start XDM on boot? |
There are two schools of thought on how to start
xdm(1). One school starts xdm from
The ttys method has the advantage of documenting which vty X will start on and passing the responsibility of restarting the X server on logout to init. The rc.local method makes it easy to kill xdm if there is a problem starting the X server. If loaded from rc.local, If you are to start :0 local /usr/local/bin/X vt4 The above example will direct the X server to run in
| |
11.15. | Why do I get Couldn't open console when I run xconsole? |
If you start X
with
This is because of the way console permissions are set by default. On a multi-user system, one does not necessarily want just any user to be able to write on the system console. For users who are logging directly onto a machine with a VTY, the fbtab(5) file exists to solve such problems. In a nutshell, make sure an uncommented line of the form /dev/ttyv0 0600 /dev/console is in | |
11.16. | Before, I was able to run XFree86TM as a regular user. Why does
it now say that I must be |
All X servers need to be run as
Obviously, running an X server as the
| |
11.17. | Why does my PS/2 mouse misbehave under X? |
Your mouse and the mouse driver may have somewhat become out of synchronization. In rare cases the driver may erroneously report synchronization problem and you may see the kernel message: psmintr: out of sync (xxxx != yyyy) and notice that your mouse does not work properly. If this happens, disable the synchronization check code
by setting the driver flags for the PS/2 mouse driver to 0x100.
Enter UserConfig by giving the
boot: Then, in the UserConfig command line, type: UserConfig> | |
11.18. | Why does my PS/2 mouse from MouseSystems not work? |
There have been some reports that certain model of PS/2 mouse from MouseSystems works only if it is put into the «high resolution» mode. Otherwise, the mouse cursor may jump to the upper-left corner of the screen every so often. Specify the flags 0x04 to the PS/2 mouse driver to put
the mouse into the high resolution mode. Enter
UserConfig by giving the
boot: Then, in the UserConfig command line, type: UserConfig> See the previous section for another possible cause of mouse problems. | |
11.19. | I want to install different X server. |
FreeBSD versions prior 5.3 will use the default
XFree86TM 4.X,
while latter versions will default to
Xorg.
If you want to run a different X11 implementation
than the default one, add the following line to
X_WINDOW_SYSTEM= xorg This variable may be set to | |
11.20. | How do I reverse the mouse buttons? |
Run the command
| |
11.21. | How do I install a splash screen and where do I find them? |
FreeBSD have a feature to allow the display of
«splash» screens during the boot
messages. The splash screens currently must be a 256 color
bitmap ( To use a splash screen, you need to modify the startup files that control the boot process for FreeBSD. You need to create
a include /boot/loader.4th start and a splash_bmp_load="YES" bitmap_load="YES" This assumes you are using
splash_pcx_load="YES" bitmap_load="YES" bitmap_name="/boot/splash.pcx" Now all you need is a splash screen. For that you can
surf on over to the gallery at
| |
11.22. | Can I use the Windows(R) keys on my keyboard in X? |
Yes. All you need to do is use xmodmap(1) to define what function you wish them to perform. Assuming all «Windows(R)» keyboards are standard then the keycodes for the 3 keys are
To have the left Windows(R) key print a comma, try this.
You will probably have to re-start your window manager to see the result. To have the Windows(R)
key-mappings enabled automatically every time you start X either
put the xmodmap $HOME/.xmodmaprc to your For example, you could map the 3 keys to be F13, F14, and F15, respectively. This would make it easy to map them to useful functions within applications or your window manager, as demonstrated further down. To do this put the following in
keycode 115 = F13 keycode 116 = F14 keycode 117 = F15 If you use The following entries in
Key F13 FTIWS A Iconify Key F14 FTIWS A RaiseLower Key F15 A A Menu Workplace Nop | |
11.23. | How can I get 3D hardware acceleration for OpenGL(R)? |
The availability of 3D acceleration depends on the version of XFree86TM or Xorg that you are using and the type of video chip you have. If you have an NVIDIA chip, you can use the binary drivers provided for FreeBSD on the Drivers section of their website. For other cards with XFree86TM-4 or Xorg, including the Matrox G200/G400, ATI Rage 128/Radeon, and 3dfx Voodoo 3, 4, 5, and Banshee, information on hardware acceleration is available on the XFree86-4 Direct Rendering on FreeBSD page. |
Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/
Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την
τεκμηρίωση πριν να επικοινωνήσετε με την
<questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην
<doc@FreeBSD.org>.