Hacker News new | ask | show | jobs
by teddyh 3824 days ago
> I have a server without a monitor I'd like to VNC to.

That’s your problem right there. You can’t (or, rather, don’t) “VNC” to Unix servers. For normal remote access, you use SSH. If you really need to run a graphical X program continuously on a server, you run a virtual X server program like “Xvfb”, and point your graphical X program to that. You can then “VNC” all you like to this virtual X server. All without a monitor or even a graphics card or a mouse on the actual server.

This thinking – the idea that a server has something one can refer to as “the” screen, or “the” mouse – is completely and utterly wrong, and betrays a thinking born from Microsoft Windows and other desktop-only-oriented operating systems.

3 comments

> the idea that a server has something one can refer to as “the” screen, or “the” mouse – is completely and utterly wrong

I don't disagree with your point per se but the reality is a little more nuanced that you suggest. For example, UNIX provided green screens to null terminals long before Windows Server was a thing. And mouse enabled Linux / UNIX terminal tools (eg elinks or aptitude) support mouse input even over SSH.

Though I do appreciate you were referring to "monitors" specifically when you discussed "screens", it's still worth noting that the old thin client model of computing has come back into trend again with Windows desktops available in the cloud (typically aimed at organisations that want a managed deployment of workstations - akin to a hosted Windows Terminal Services).

So it really depends on your workloads and what your definition of "screens" are :)

Microsoft is going to ship a headless version of Windows Server:

https://technet.microsoft.com/en-us/library/mt126167.aspx

I had a play with the headless Windows 2016 TP3 on Azure late last year and blogged my experience here [1]. You can even run GUI programs on it; I found it useful to run Sys Internals Process Explorer to track what was really happening with the Containers. Obviously there's no desktop with file explorer etc.

[1] https://etrading.wordpress.com/2015/10/13/windows-containers...

Microsoft started down the headless server route quite a while back with the Server Core [0] installations (started with server 2008)

IIRC starting with server 2012 or 2012 R2, all configuration and management functionality was exposed via powershell commandlets, as Server Core was the default installation type and server management was meant to be done via winRM/remote powershell sessions.

[0]: https://en.wikipedia.org/wiki/Server_Core

The problem is that all server software written with Windows in mind already assume that their interface is a screen and a mouse, and will try to create a main window, dock icon, and show popups when something happens. How will they work on a headless Windows server?
Not all software will work, but plenty of Windows Server services can be controlled via remote procedure calls. Even Active Directory has supported remote administration via LDAP. These protocols can be wrapped around GUI applications or run via Powershell - either of which would obviously run from your client workstation like PuTTY / xterm would when SSHing into Linux.
Confused: remote desktop makes any server not headless.
So, if I understand you correctly, Windows’ new “headless” servers are not actually headless, they simply have an invisible head – it’s still there, you just can’t see it.
It sure doesn't seem like it is there reading the page I linked.

I guess the software you mention that depends on having a desktop will do some combination of not working and working poorly, but they aren't targeting legacy applications with it, they are fleshing out their cloud offering.

Ah. No remote login.
You may not VNC to servers. I would like to. I also use SSH.

This is a clear flaw in Linux/X - don't try to excuse it with the tired old "why would you want to do that?" refrain.