other:x_conf
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
other:x_conf [2022/08/09 14:06] – [What do we mean exactly with Local and Remote computers?] jypeter | other:x_conf [2024/07/10 10:54] (current) – [Using X forwarding in a Windows Powershell] jypeter | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Installing and configuring an X server ====== | ====== Installing and configuring an X server ====== | ||
+ | |||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | This detailed and easy-to-understand page will help you **set up things correctly on your own**, and help you **understand what you are doing** | ||
+ | |||
+ | Or you can ask somebody to quickly configure everything for you, and keep on believing that things work by magic... | ||
+ | </ | ||
+ | |||
===== What is an X server? ===== | ===== What is an X server? ===== | ||
Line 7: | Line 15: | ||
* An //X server// **is** basically a program running on your **local** computer that understands the [[https:// | * An //X server// **is** basically a program running on your **local** computer that understands the [[https:// | ||
+ | * This page will mention a //'' | ||
===== What do we mean exactly with Local and Remote computers? ===== | ===== What do we mean exactly with Local and Remote computers? ===== | ||
Line 16: | Line 24: | ||
* The **remote computer or server** is another computer that you also want to interact with (using the screen+mouse+keyboard of your local computer) | * The **remote computer or server** is another computer that you also want to interact with (using the screen+mouse+keyboard of your local computer) | ||
+ | * [[other: | ||
* We only consider on this page the case of a **remote //Linux// machine** that **requires a local running //X server//** | * We only consider on this page the case of a **remote //Linux// machine** that **requires a local running //X server//** | ||
Line 33: | Line 42: | ||
===== Using an X server on Windows ===== | ===== Using an X server on Windows ===== | ||
- | There are several | + | There are several available |
+ | ==== Using X forwarding in a Windows Powershell ==== | ||
+ | |||
+ | **You have to type '' | ||
+ | |||
+ | < | ||
+ | [...] | ||
+ | > | ||
+ | DISPLAY: Undefined variable. | ||
+ | > | ||
+ | Connection to obelix closed. | ||
+ | |||
+ | PS C:\> $env: | ||
+ | |||
+ | PS C:\> $env: | ||
+ | PS C:\> $env: | ||
+ | localhost:0 | ||
+ | |||
+ | PS C:\> ssh -X obelix | ||
+ | [...] | ||
+ | Warning: untrusted X11 forwarding setup failed: xauth key data not generated | ||
+ | [...] | ||
+ | > | ||
+ | DISPLAY: Undefined variable. | ||
+ | |||
+ | PS C:\> ssh -Y obelix | ||
+ | [...] | ||
+ | Warning: No xauth data; using fake authentication data for X11 forwarding. | ||
+ | [...] | ||
+ | > | ||
+ | localhost: | ||
+ | > | ||
+ | [1] 30038 | ||
+ | </ | ||
==== Installing VcXsrv ==== | ==== Installing VcXsrv ==== | ||
Line 49: | Line 91: | ||
=== VcXsrv Configuration === | === VcXsrv Configuration === | ||
- | You need to configure '' | + | You need to configure '' |
* Start the // | * Start the // | ||
Line 71: | Line 113: | ||
This is an //X server//, and you will get the same functionalities as what is already provided for free by [[other: | This is an //X server//, and you will get the same functionalities as what is already provided for free by [[other: | ||
* Once installed, '' | * Once installed, '' | ||
- | * If you move to another computer, you can install '' | + | * If you move to another computer, you can install '' |
- | * There seem to be more (useful) updates than for '' | + | * There seems to be more (useful) updates than for '' |
* The interface is more modern, with more options, and there is a lot of useful information on the web site | * The interface is more modern, with more options, and there is a lot of useful information on the web site | ||
* The '' | * The '' | ||
Line 85: | Line 127: | ||
* Start '' | * Start '' | ||
- | * It will seem that nothing happens, but an '' | + | * It will seem that nothing happens, but an '' |
* Right-click on the '' | * Right-click on the '' | ||
- | * Select '' | + | * Select '' |
- | * It' | + | * It is possible to **automatically start '' |
* Open the **Windows Task Manager** (Right-click on '' | * Open the **Windows Task Manager** (Right-click on '' | ||
* Go to the '' | * Go to the '' | ||
Line 96: | Line 138: | ||
===== Using an X server on a Mac ===== | ===== Using an X server on a Mac ===== | ||
+ | ==== Installing XQuartz ==== | ||
- | ===== Configuration on the remote Linux server ===== | + | Type: <wrap em> |
- | ==== If you are connecting with ssh or PuTTY ==== | + | Download the installer from [[https:// |
- | Nothing special to do, if you are using [[other: | + | === XQuartz configuration === |
- | ==== If you are using WSL ==== | + | <WRAP center round tip 60%> |
+ | Nothing to configure! | ||
+ | </ | ||
- | You need to know what you consider as the //Local machine//, and what is the //Remote server// | + | The '' |
- | * **Local machine**: your local **Windows computer**, where you have installed | + | Check the [[https:// |
+ | < | ||
+ | | ||
+ | ===== Configuration on the remote Linux server ===== | ||
- | * **Remote server** : we consider 2 types of remote servers: | + | ==== If you are connecting with ssh or PuTTY ==== |
- | * an **actual remote server** | + | |
- | * The **WSL computer** running on a **virtual machine inside your local Windows computer**. This can be considered as a different and //remote// computer, even it is running on the local computer\\ You need your local //X server// to display graphics generated in WSL | + | |
- | * **Define the '' | + | |
- | * //bash// shell: '' | + | |
- | * //tcsh// shell: '' | + | |
- | * You probably want to define the '' | + | |
+ | Nothing special to do, if you are using [[other: | ||
+ | ==== If you are using Windows Subsystem for Linux ==== | ||
+ | |||
+ | In that special case, you will need the //X server// to display graphics [[other: | ||
+ | |||
+ | You have to make sure that the '' | ||
===== Testing ===== | ===== Testing ===== | ||
+ | |||
+ | ==== Testing plan ==== | ||
The idea is to: | The idea is to: | ||
- | * Open a terminal and check that the '' | + | * Open a terminal and check that the '' |
+ | * If we use [[other: | ||
* Connect to the remote machine | * Connect to the remote machine | ||
* Check that a (new) '' | * Check that a (new) '' | ||
- | * Check that you can start an application using graphics | + | * Check that we can start an application using graphics |
+ | |||
+ | Test application: | ||
+ | * We need a simple graphical application that is likely to be already installed on the remote machine | ||
+ | * The **test is declared successful** if we get a new window and we can interact with it.\\ Note: some applications may start with their window iconified, and you may have to check the part of your screen where the iconified windows go... | ||
+ | * Do not forget to **cleanly quit the test application** when you have checked that it seems to work | ||
+ | * It's enough to test one application | ||
+ | * '' | ||
+ | * '' | ||
- | ==== On a Linux computer ==== | + | The test may fail, due to the [[other: |
+ | ==== On a Linux computer | ||
- | Some basic commands in a terminal | + | Open a //terminal// ([[other: |
< | < | ||
Line 145: | Line 205: | ||
localhost: | localhost: | ||
- | [Remote] $ xterm</ | + | [Remote] $ xterm &</ |
==== On a Windows computer with only an X server installed ==== | ==== On a Windows computer with only an X server installed ==== | ||
- | We just open a '' | + | We just open a '' |
< | < | ||
Line 169: | Line 229: | ||
localhost: | localhost: | ||
- | [Remote] $ xterm</ | + | [Remote] $ xterm &</ |
Line 183: | Line 243: | ||
localhost: | localhost: | ||
- | [Remote] $ xterm</ | + | [Remote] $ xterm &</ |
==== On a Windows computer with WSL+Linux and an X server installed ==== | ==== On a Windows computer with WSL+Linux and an X server installed ==== | ||
- | We assume that [[other: | + | We assume that [[other: |
- | Open a WSL terminal (you should know how, if you have installed WSL) and type some basic commands | + | Open a //WSL// terminal (you should know how, if you have installed |
< | < | ||
name_of_your_local_machine | name_of_your_local_machine | ||
+ | |||
[Local WSL] $ echo $DISPLAY | [Local WSL] $ echo $DISPLAY | ||
localhost: | localhost: | ||
- | [Local WSL] $ xterm | + | |
+ | [Local WSL] $ xterm & | ||
[Local WSL] $ ssh -X some_login@some_remote_server | [Local WSL] $ ssh -X some_login@some_remote_server | ||
Line 203: | Line 265: | ||
[Remote] $ echo $DISPLAY | [Remote] $ echo $DISPLAY | ||
localhost: | localhost: | ||
- | [Remote] $ xterm</ | + | |
+ | [Remote] $ xterm &</ | ||
+ | |||
+ | |||
+ | |||
+ | |||
===== Troubleshooting ===== | ===== Troubleshooting ===== | ||
+ | |||
==== Nothing works! ==== | ==== Nothing works! ==== | ||
That's unfortunate, | That's unfortunate, | ||
- | * Have you turned on your computer? | + | * Have you turned on your computer? |
- | * Do you have network access, and an account on a remote server? | + | * Do you have network access, and an account on a remote server? :-? |
* Have you run the [[other: | * Have you run the [[other: | ||
- | * Have you installed and configured the //X server// correctly? Is it really running? | + | * Have you [[other: |
* Have you configured [[other: | * Have you configured [[other: | ||
- | * Is the '' | + | |
+ | | ||
- | === When DISPLAY is not defined correctly === | + | |
+ | ==== Error when there is no X server running ==== | ||
+ | |||
+ | If the '' | ||
+ | |||
+ | < | ||
+ | xterm: Xt error: Can't open display: localhost: | ||
+ | |||
+ | Time to [[other: | ||
+ | |||
+ | ==== Error when there is no space left in your home directory ==== | ||
+ | |||
+ | If there is no space left in your home directory (usually the home directory of the remote server), or if you have exceeded your [[other: | ||
+ | |||
+ | < | ||
+ | xterm: Xt error: Can't open display: localhost: | ||
+ | |||
+ | **Solution**: | ||
+ | ==== Error when DISPLAY is not defined correctly | ||
If the '' | If the '' | ||
Line 225: | Line 313: | ||
$ echo $DISPLAY | $ echo $DISPLAY | ||
+ | $ setenv DISPLAY CRAP_DISPLAY | ||
+ | $ xterm | ||
+ | xterm: Xt error: Can't open display: CRAP_DISPLAY | ||
</ | </ | ||
- | Make sure that you are using '' | + | * Make sure that you are using '' |
- | === When there is no X server running | + | * If you use '' |
+ | |||
+ | ==== Can't start a graphical application by clicking on its desktop shortcut | ||
+ | |||
+ | Check the shortcut and run the command directly in a terminal to check the error message | ||
+ | |||
+ | There is a good chance that [[other: | ||
- | If the '' | ||
- | $ connect localhost port 6000: Connection refused | ||
- | xterm: Xt error: Can't open display: localhost: | ||
- | Time to [[other: | ||
==== OpenGL related settings ==== | ==== OpenGL related settings ==== | ||
other/x_conf.1660046780.txt.gz · Last modified: 2022/08/09 14:06 by jypeter