Port 5901, im Allgemeinen gemäß Konvention Port 5900 + XDisplaynumber, ist der TCP-Port, den der VNC-Dienst überwacht. Das ist ihre Beziehung. Tatsächlich können Sie beliebige TCP-Ports mit beliebigen Xdisplay-Nummern verwenden.
Der VNC-Dienst soll Eingaben (Maus, Tastatur) vom Client zum Server und Ausgaben (ein Bild) vom Server zum Client transportieren. Dies muss mit X nichts zu tun haben. Beispielsweise wird in der Virtualisierung häufig VNC verwendet, um das "physische" Terminal einer virtuellen Maschine remote zugänglich zu machen.
Das X11-System ist viel komplexer und wird von Programmen verwendet, um mit dem Xserver und untereinander zu interagieren. Die Formulierung in der X-Welt ist zunächst etwas unintuitiv, daher muss die Bedeutung von Ausgabe, Sitz, Bildschirm, Anzeige, Server und Client gelernt werden und einige Überlegungen verdienen.
Zu Ihrer Frage: Ein Xdisplay ist der logische Kern jeder X-Instanz. Wenn Sie ein Programm starten, ist dieses Programm ein Xclient und stellt eine Verbindung zur bereitgestellten Anzeige eines Xservers her. :1.0
ist eigentlich eine Abkürzung und bedeutet "Anzeige 1 bei localhost". Sie können einen Hostnamen oder eine IP-Adresse angeben, z. B. DISPLAY = 192.168.1.2: 3.0, damit das Programm, mit dem Sie sich befassen, eine Verbindung zu Xdisplay 3 auf dem (Remote-) Computer mit der angegebenen IP-Adresse herstellt.
X und VNC sind zwei völlig unterschiedliche Dienste, die für unterschiedliche Zwecke mit unterschiedlichen Zielen implementiert werden. (Man kann argumentieren, dass einige / die meisten VNC-Ziele auch Ziele bei der Entwicklung von X waren, aber das ist eher akademisch und sehr ausführlich.)
Bei Verwendung von Xvncserver werden beide Konzepte hintereinander kombiniert. Es gibt also einen Xserver, mit dem Xclients "auf normale Weise" kommunizieren. Anstatt jedoch die für die Interaktion mit einem Benutzer verfügbare Hardware zu verwenden, implementiert der Xvncserverit einen VNC-Server, mit dem ein VNC-Client eine Verbindung herstellen kann.