So I’ve been working professionally with Linux-based systems for a few years, and while I’m not the expert I would like to be, I have got a pretty good feeling for the way those systems work. You have the bootloader, the initramfs, the boot procedure, systemd, PID 1, you can check the logs, you have all those little things that make the system work. Everything is a file, you have file permissions and selinux contexts, you have networkmanager, systemd units, you have (system) users, some just for some services, it’s all dandy… if I have a problem with a program I can usually debug it, check its logs, and get it to run.

Now for work I suddenly need to do lots of administration of Windows systems, Win11 and server, and troubleshoot deep, weird issues…

And I’ve started reading up on it, trying to use PowerShell as much as I can, but I’m just not getting the same high level overview feeling of understanding of how the system works, of how the parts work together. Or even what parts there are, and what they do.

(Especially within an Azure context.)

Books on Windows tend to be very surface level, just instructions on what menus to click through to get a working configuration.

But what’s going on underneath the hood? What do I do when I get a weird VPN issue? I mean, there’s Get-EventLog to check for things in the logs, but… nothing feels connected.

Do you know what I mean?

(Also, how cumbersome is PowerShell? No proper paging like with less in bash, I mean, you can’t go back a page, not with windows more or that powershell pager command, and you have to type sooo many words… and yeah, everything is an object, and I see how that can be a nice idea, but man, does that force you to select properties of those objects like crazy. Is this really a good thing, once you have it figured out?)

Are there one-to-one equivalents between Windows and Linux distros that could help me understand? Or is there a really good book that spells it all out, that sets me on a path where I can someday debug ANY issue and understand what I am seeing and doing?

…and I mean, where do I even start out debugging and understanding things like Entra ID issues in Windows365 machines, and hybrid Azure domains… the Microsoft help usually just seems to be steps on how to configure the stuff, but not understanding how it works…

Sorry, this is all over the place, but I’m just lost right now 🤷‍♂️ maybe someone has felt those same things before and has something wise to tell me?

  • Tja@programming.dev
    link
    fedilink
    arrow-up
    12
    ·
    13 hours ago

    I think it’s the same as with Linux, solving problems slowly gives you familiarity with the system and you start knowing where to look for things. Generally speaking, Windows is way more centralized than Linux.

    Half of the things you listed for Linux are optional (selinux, networkmanager, systemd,…) and different distros (or different programs) use different solutions. I still remember moving from sysV init to systemd or from /var/log to journal, to give a few examples. To this day I can’t stand storing coredumps in the journal, although I understand the rationale behind it. You get the idea.

    Same as with Linux, I started Windows admin with NT 4.0 so over time you learn things (and re-learn as needed) as you solve problems. There are sysadmin trainings that go a bit deeper. I like Mark Russinovich and his tools and books, you can look into them but it’s subjective.

    • WhyJiffie@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      3
      ·
      1 hour ago

      I have used all windows versions since xp, and I have only used windows systems for 15-20 years, starting from when I was a little kid that couldn’t even read. I am relatively very familiar with the system.

      I’ve been using linuxes mostly just for the past 7 years, only 3 of which was on graphical environments, and I think understand linux a lot more. here it’s not the location of the menu that I remember (sure, there’s often not a menu for it) but what do I want to achieve, and which component deals with that. all the while windows is still just a thing to me that I know on the surface, but under that it is all held together by black magic.

      someone said that a major reason it’s very hard to understand windows like you do with linux is that it’s intentionally obfuscated. there’s also strange decisions and very strange components, and strange things we just got used to, like why does a troubleshooter or the windows update search take ages to complete while not using the cpu, the disk and not even the network.

      • Tja@programming.dev
        link
        fedilink
        arrow-up
        1
        ·
        34 minutes ago

        I can’t say if it’s intentional or not, but there’s a lot of “don’t ask” in many guides (and even in first level responses here, just telling with button to press but not what happens under the hood).

        There’s a bunch of windows internals books from Mark either as main author or co-author, here’s a good place to start: https://learn.microsoft.com/en-us/sysinternals/resources/