14 ms·
That is really something, before as a dev coming from linux when I first was about to login on a Windows Server I didn't understand how to do it since it were n
by mscasts 8y ago
That is really something, before as a dev coming from linux when I first was about to login on a Windows Server I didn't understand how to do it since it were no SSH.
Administrating the server via a GUI always felt backwards somehow. Why waste CPU cycles on rendering a UI when the CLI is so great (on linux)?
- ocdtrekkie 8y agoMicrosoft has come a really long way recently towards moving to CLI-based management. Starting with Server 2016, the default installation method of Windows Server no longer includes most of the GUI (called the Desktop Experience), leaving you with a command prompt window in the middle of the screen instead. An even thinner version of Windows Server, Nano Server, is also available, and includes even less GUI, being much more like a Linux terminal UI, though it is a bit less intuitive to get started with as you can't even install it, you have to image it to deploy. Most Windows admins still prefer a lot of GUI management (I've gotten some groans in response to my statement new servers would tend not to have it), but remote desktop to the server is no longer the preferred way to do that: Remote Server Administration Tools effectively installs all of the server GUI on your desktop PC. Due to the number of legacy applications Windows Server folks tend to support, it's unlikely server GUIs are going away entirely anytime soon, but for a lot of basic server functions supported directly by Microsoft, it's doable. And in addition to not wasting processor and memory pushing pixels, Windows Servers without the GUI are susceptible to less attacks, require less changes during Windows updates, and reboot faster, all on account of just having "less" onboard.
- scarface74 8y agoI’ve been developing on and for Windows for 20 years and just started doing anything with Linux earlier this year. If you told me I had to do anything advanced with Windows using only a CLI, I wouldn’t know where to start. On the other hand, I could maneuver my way around a bash shell. I haven’t thought about that before now.....
- TimTheTinker 8y agoI think it's time for MS to develop a new ANSI/VT-compliant, text-oriented shell (to complement PowerShell, which is largely object- and API-oriented). There ought to be a default shell worth using on the other end when you ssh into a Windows server :) cmd.exe and DOS were both text-oriented but extremely buggy and inconsistent. Perhaps MS could just focus on providing a very bash-like language (perhaps even include gnu utilities) while supporting the major interactive use cases for cmd.
- ocdtrekkie 8y agoI doubt you'd see Microsoft reinvent the wheel here. They'd more likely work to give WSL more ability to interact with Windows, and then let you just use that shell if you want to.
- TimTheTinker 8y agoHow likely is it that MS will include and enable WSL by default on Windows Server just to provide a better default shell for terminal and ssh users? If I were a server admin, I’d probably turn all of that off because it’s more attack surface area. And cripple myself in the process. For that reason alone, I think a new shell is probably more likely to be helpful.
- jackfraser 8y agoWhy would they do that when Powershell is literally that, but refined beyond what's commonly available on Linux? I'm not great with it yet, but it feels intuitively like a step forward to be able to pass objects around instead of spending so much of my time using awk-ward 40 year old tools to tease text out of various fields.
- grumpydba 8y agoHowever it is far too verbose and without aliasing everything it's a big pain in the a to use.
- 8y ago
- slededit 8y agoThey started on this in the late 2000s when I was an intern there. But there was a lot to untangle. It’s the biggest refactoring job you can imagine. A decade long effort. Back then they didn’t really understand the point of ssh though. They had a vision of remote management via .net RPC and powershell.
- TimTheTinker 8y ago> Back then they didn’t really understand the point of ssh though. As an outside observer, it really looked to me like Microsoft had their head in the clouds up until about 2011. It's like the whole decade between 2005-2015 for MS was about recognizing and coming to terms with the multiple "whole worlds out there" and getting past NIH syndrome.
- kwccoin 8y agoTo be fair to Kodak, it is very hard to invent digital photography but fail greatly to use it. Or Xerox, ... or IBM who is the largest PC seller exactly the time when it was overwhelmed by Microsoft. An organisation large enough would have middle management and people who promote from within. And they are successful in one culture and it worked even for customers. Then ...
- slededit 8y agoThey understood the GUI couldn’t be everything but NIH was definitely in full swing at that time. It was enforced from the top: If you wanted to use an external product and MSFT had a competitor you needed VP approval. Same went for Open Source. Only the most senior people would even attempt it, and it was understood they were spending political capital. The one place this didn’t apply was your choice of code editor. You could use whatever you wanted and that had long been tradition. I spent a lot of effort getting VIM to work only to realize it didn’t scale well to multi-million LOC code bases.
- killjoywashere 8y agoAs someone who uses Vim on relatively large files daily (500k - 1.5M lines), where were the hangups?
- usrusr 8y agoI think it's more a compatibility thing than an original desire for more CLI. All that deployment tooling built on top of scp, protocols like git over ssh. Without ssh, Microsoft would forever be out of that game. Those things are definitely not "not CLI", but the CLI question is not in focus.
- Silfen 8y agoShameless plug: There's also remote GUI support through Windows Admin Center. You can manage your headless server through the browser on your workstation. It's also a good way to learn CLI-based management (the implementation is almost all powershell scripts, and there is a "show script" feature) https://docs.microsoft.com/en-us/windows-server/manage/windows-admin-center/overview https://docs.microsoft.com/en-us/windows-server/manage/windo...
- amaccuish 8y agoStill doesn't do AD and DNS etc. So I'm still RDPing from my Mac to get access to RSAT.
- cm2187 8y agoI am not aware that windows is rendering any pixel while no active desktop session is launched. You have less binaries and probably a smaller memory footprint without desktop but I would be surprised if the performance difference was material.
- mycall 8y agoHow does RSAT compare to the new Windows Admin Center?
- snuxoll 8y agoThe Windows Admin Center currently doesn't cover everything that the RSAT does, notable omissions include anything related to Active Directory. Personally, the Windows Admin Center is a nice-to-have tool for quick tasks by inexperienced or occasional admins - but you really should just learn Powershell.
- AnIdiotOnTheNet 8y agoWAC is a lot like the new settings panels Microsoft keeps pushing. Bloated and with half the functionality of their predecessor.
- alkonaut 8y agoThere were multiple ways to get non-GUI shells on remote machines before too. WinRm/WinRs and PowerShell are included out of the box.
- mscasts 8y agoYeah sure, but this was before Powershell was available afaik.
- minxomat 8y agoNot to mention SSH via cygwin, which worked pretty well even back on Windows XP.
- tacticus 8y agoWinrm stopped being usable if the machine was overly remote.
- new12345 8y agoMost of these alternatives are not installed on windows server for security/maintenance overhead reasons by IT administrators and developers are forced to live with slow and cumbersome RDP(not to mention zero capability for scripting) for accessing machines. Now that Microsoft has finally realized the importance of remote shell access for servers and has included it in OS by default, it will become convenient alternative to RDP.
- jodrellblank 8y agoWinRM / PS Remoting has been installed and enabled by default since Server 2012, and RDP disabled by default.
- deleted 8y ago[deleted]
- sixothree 8y agoMost of those GUIs are just wrappers for the CLI to begin with. Heck, the default installation of windows does not even have a GUI. People ahem really need to update their thinking of what it means to be Windows.
- zbentley 8y agoThat's misleading at best (GUI windows apps that technically can be emulated from the commandline often practically cannot be--CLI tools or the registry/config-file interactions required to perform actions that are clearly exposed and well-documented in the GUI often have nonexistent or terrible documentation. In even marginally complex apps, this puts the effort required to script the functionality of the GUI on par with the effort of reverse engineering it--and that's Microsoft-authored tools and Windows functionality, which is worlds ahead of most third-party software in scriptability) and just plain false at worst (huge swaths of stuff just don't have APIs that are accessible without writing and compiling code--PowerShell and very aggressive pushes by Microsoft for WMI/CMI and WinRM more recently have only just begun to erode that).
- sixothree 8y agoHow is it misleading at all? Hyper-V Manager for example is literally a wrapper for Powershell commands. Virtually all Windows administration can be done entirely in Powershell. And like I said, the literal default installation of Windows does not even include a GUI.
- EPress1970 8y agoBecause you can't see My Pictures and open Office docs via CLI
- AnIdiotOnTheNet 8y agoMicrosoft's GUI management tools were really good and generally very discoverable. IMO they were a much better way to manage an OS than cryptically named CLI programs and text files. And most of them worked remotely. And by comparison to modern software they can not even remotely be considered bloated. Every electron application ever made is larger than all of RSAT. Now of course they suck ass because MS has no idea what it's doing anymore.
- amazingman 8y agoThose cryptically named programs are scriptable, and those text files (including scripts) are easy to version and backup.
- TomMarius 8y agoWindows was and is scriptable as well (but it must be said that you mostly had to discover it yourself, documentation was lacking) Backup is done the other way around, you backup your configuration scripts
- AnIdiotOnTheNet 8y agoWindows servers used to have a NTBackup, which could just back up all the settings ("system state") if that was what you wanted for some reason.
- brian_herman__ 8y agoWindows Server Backup doesn't do this on 2016 or 2019?
- bayindirh 8y agoIt's almost 2019. Are we still fighting over this? OTOH, purely from my experience, MS's tools are good for managing a domain, or some computers. When you start to administer hundreds or thousands of servers, scriptability of CLI tools and pliability of text files trumps all computer automation. xCAT and Salt are two tools (that I use regularly) which are built on these properties and can manage thousands of servers with a "flick of a finger".
- jimmaswell 8y agoFor just one thing, I find it a lot nicer being able to edit config files in Notepad++ or something instead of vim or nano. In my case I mount the remote Linux server as a drive on Windows.
- godzilla82 8y agoMounting requires other ports to be opened, which no sysadmin will do on the internet. Ssh on the other hand can be started on a non standard port.
- cpach 8y agoIME most Windows servers are not directly exposed to the Internet, instead one would reach them via VPN.
- yrro 8y agoIt's a shame you can't use the Common Internet File System over the Internet. ️
- jimmaswell 8y agoI do it over SFTP with a program called SFTP Net Drive. No additional ports besides the existing SSH.
- dijit 8y agoSo, I am not a big fan of windows- so do not take this for defence of windows. But my understanding is that windows fleets are just administered drastically differently than Linux fleets. On Linux we have a lot of config management tools and commandline remote administration kits. In windows they have SCCM and remote access GUIs which do not get rendered on the target server. It’s very common to see a GUI program which does something pretty basic but over 500+ windows machines in windows heavy shops. In fact when I explained that I do all my scripting with a local target (because I use salt stack which is essentially a remote execution framework before it is a config management system) I was told in no uncertain terms that I was doing things the “old way”.
- voltagex_ 8y agoThis is changing: * Desired State Configuration: https://docs.microsoft.com/en-us/powershell/dsc/overview https://docs.microsoft.com/en-us/powershell/dsc/overview * Powershell Remoting (please, please let SSH replace this) * Microsoft's new command line push - cmd and the underlying console have had big updates recently * https://github.com/microsoft/console https://github.com/microsoft/console * https://blogs.msdn.microsoft.com/commandline/2018/07/20/windows-command-line-inside-the-windows-console/ https://blogs.msdn.microsoft.com/commandline/2018/07/20/wind...
- orra 8y agoDesired State Configuration is not supported by PowerShell Core v6, even on Windows. DSC is only supported by PowerShell v5 and earlier. This suggests to me that DSC has been abandoned In contrast, .NET Core supports various old Windows-only features, such as COM and soon WinForms.
- setquk 8y agoYes and no. Having used DSC and powershell remoting extensively, these create as many problems as they solve. Nothing works smoothly. Not a thing. The saving grace here will be SSH because then at least we can drive all our kit across both platforms from Ansible and be done with the entire MSFT management stack. At the moment we use Ansible but it runs over WinRM which is completely unreliable due to some architectural problems with how WinRM works. Really, automation on Windows is extremely costly compared to Linux. I've got to the point I never want to run Windows infrastructure again. Before anyone says "it's getting better". That has been the case from 10 years and it only got different.
- h1d 8y agoIt's not the CPU cycle but lag that makes me feel like I'm on a laptop from 15 years ago.