Debian

The new user blues

So I figured I’d write this to give anyone interested a first hand look at the experience and first impressions of new-to-Linux user.

I can be snarky and sarcastic sometimes and probably will be now also, but I’m not trying to denigrate or ridicule anything really, I’m just telling it like is and giving an honest retelling of my experiences as a 20 year Windows user, desktop support tech, Windows server admin, and Cisco network engineer. I figure that maybe my experience might give Linux developers and enthusiasts an idea of why more mainstream users and admins won’t/don’t embrace Linux, and what might improve that.

Over the years I’ve dabbled with Linux here and there out of professional necessity, but up until recently I’ve never had the time or inclination to become a “Linux guy”. I also never really gave a damn about that either, mostly because I just didn’t have the time to care about it. I think as basically as I can put it is – I never had the time for Linux, I was too busy doing other things, but from a distance I did appreciate its technical dexterity and let other people have at it, and have always wanted to explore it further.

Lately I decided it was time to get off my butt and become more familiar with it, so I spun up some VMs on my home server and queued up Debian, Ubuntu, and Mint, planning on installing, familiarizing, and road testing them in that order.

I started with Debian 10 kind of excited to be taking on a new technical challenge, only I made it exactly one step past installation before running into a “Resuming from hibernation” error where I couldn’t even log in to the new machine that I’d just installed. Puzzled and thinking that I did something stupid, I blew the VM away and started over. Twice. Only after each reinstall it did the same thing.

So right from the beginning there was confusion, Google searches, and wasted time simply trying to log into a brand new OS install, and that wound up being a timesink I quickly grew tired of. At the suggestion of a Reddit forum I then ditched Debian and moved on to Mint, bypassing Ubuntu completely.

Installation of Mint was smooth enough, perhaps a little confusing in a couple of spots as there were a few prompts that I didn’t quite understand what was being asked of me. I don’t recall all of the prompts, but I do recall saying to myself “What would a less knowledgeable user think or do right now?” Regardless, I got it installed with a minimum of fuss. From there I had a few basic objectives for the VM, namely to have it run as a member of my domain as a TFTP, MySQL, and torrent download/seed server with RDP access, so I went about setting those things up.

I initially set up uTorrent, but instead of a straightforward installation/configuration, it turned into a long and fairly ridiculous process where in the end I learned that uTorrent (that I’ve been using for as long as I can remember) was outdated and no longer supported on Linux. So after successfully configuring it by reading more help articles than I care to admit, (this was a five minute operation on Windows), I wound up ditching it completely for the built-in Transmission which seemed to work well enough for my purposes. I didn’t like having to waste all of my time just to find out it was no longer supported, but I wrote it off as just one of those “oh well” type of things and moved on.

The MySQL platform installed okay, at least after some rudimentary Googling anyway. I exported an old database and imported it into the new server and it generally went along without a hitch, and with my uTorrent experience fading into the rearview mirror I moved on to configuring the TFTP server, satisfied that things were going well and thinking that maybe I would actually keep a Linux server around on my network. That optimism was quickly dashed though.

Setting up the TFTP server bordered on the absurd even more than uTorrent did. Here I was expecting the most primitive of file transfer methods to be a basic install and configuration, but instead it led to an inordinate amount of researching that rapidly began to sour my opinion of Linux in general. What was a three minute process on a Windows machine became a caricature of the end-user experience. I didn’t actually time how long it took because I never expected such a basic endeavor to be such a time sink in the first place, but installing and configuring TFTP sent me down one Google rabbit hole after another simply trying to get a barebones TFTP server to run successfully. Eventually I did get it to work, but I was shocked at how arduous a process it was. I’ll admit that my own ignorance of Linux was a factor in how long it took, but at the same time though… it was just a TFTP server! On a Windows platform the same process from download to install to configuration to successful connection was perhaps a five minute affair, at most. I’d say it took me over an hour to finally figure out what to install and how to configure it on Mint. That didn’t bode well moving forward.

I then looked into enabling the ability to RDP into the server. This too was an unintuitive and borderline mind-numbing experience where finding the actual process of enabling RDP was muddled tremendously by all the different OS versions and then by the version numbers themselves. Eventually this too was finally overcome, but it wasn’t without fighting, cursing, and multiple rabbit holes trying to figure out how to get a basic functionality enabled. The biggest obstacle was learning that Mint apparently will not allow an RDP login if someone is already logged into the machine. (Although it won’t tell you that, you have to figure it out for yourself.) After fighting this obstacle though, RDP did work flawlessly from then on.

Once I had my basic services set up successfully, I moved on to joining the VM to the existing Windows domain.

Ai caramba!

Perhaps foolishly, or naively, or pick your word for it, I assumed that there was a consistent process for joining a Linux machine to a domain. I assumed that by 2019 there would be a process that, perhaps different from Windows with a moderate learning curve as I explored the Linux way of doing things, it would still be… streamlined? At least fairly intuitive for someone with experience? Consistent? Much to my disappointment I found none of this to be correct. I wound up going down multiple paths trying to figure out how to do this, as the available information would change not only depending on the Debian/Ubuntu/Mint platform, but also by the version number of the platform itself. Because of that the numerous knowledge bases had information that was outdated and contradictory. Eventually this too was accomplished though, but it was after MUCH time was invested. (And I couldn’t even duplicate the process now if I had to, I’d have to go back to the knowledge base for reference and repeat my steps.)

Once the new VM was finally added to the domain, I then looked into logging into the VM with domain credentials.

Double ai caramba!

This was the worst experience of them all, as besides getting conflicting information based on whether it was a Debian/Ubuntu/Mint forum, there was also conflicting info depending on what version the platform was. On top of that it also depended on what user interface you were using to log into any of them, as each interface acted differently. The end result was just a sea of information for an otherwise basic and fundamental task.

In the end I couldn’t find information on the actual problem that I was having, which was login loop every time I attempted to log in with domain credentials. (Where it would appear to log in successfully, only I wind up back at the login screen.) I still haven’t solved this problem, and after spending HOURS of time trying to remedy this, I’ve almost given up. I simply want to log into the machine, but despite many hours of research I still cannot do it.

Temporarily giving up on the domain login ability, I then attempted to simply share a drive to users in the domain. This issue proved to be a close second place to the horrific domain login experience, as I wound up spending considerable time trying to understand how Linux shares things. This was compounded by the usual lack of information or by conflicting information, and in the end I made the problem worse by installing System-Config-Samba, which apparently is now no longer supported and shouldn’t have been installed in the first place, even though it seemed like a useful and intuitive tool and even though it was available for installation.

Despite many hours of trying, I have yet to successfully share a drive to my Active Directory users, although I did manage to successfully share to another Mint machine, which was a Windows 7-era laptop that still worked fine but was bogged down with Windows 10. This machine didn’t need much, just basic office functionality, Putty, Wireshark, and RDP ability to other machines, so I dual booted into Mint and was able to get most of that set up with a minimum of fuss. (It was probably easier due to me being more familiar with Mint at this point since I’d done it already on the VM.) But this machine had issues as well, with research required to find out what exactly to RDP with (settling on Remmina), and then Remmina immediately throwing off the error:

“You requested an h264 GFX mode for server <server name>, but your libfreerdp does not support h264. Please check color depth settings.”

Having no idea how to resolve this, I was off to Google and managed to find a solution fairly quickly, but it still confused me how such a basic and simple feature could be error-ridden enough to require a knowledge base to remedy it.

Other things that just complicated everything:

* Apparently my sudo credentials disappeared. Why? Don’t know. All I know is that I could no longer do anything and had to spend a lot of time figuring out what was happening and how to remedy it. (I don’t even remember how it was remedied, there were so many rabbit holes that I ran down I can’t remember that particular hole.)
* The Login Preferences window just stopped launching from the menu. This still doesn’t work and I have to go to command line to start it with *sudo pkexec lightdm-settings*, however the menu item has that exact command in the launcher and it doesn’t work. But it did before.
* Something else couldn’t run from the launcher either, I had to manually edit the menu item to make it work (Can’t remember what it was though.)
* Torrents in Transmission randomly pause and need to be manually restarted

So from where I sit now, if I had to summarize my experience and opinion I would have to classify Linux as “time impractical” for me. (Which it has been all along.) I appreciate the entire spirit of open source and I certainly appreciate anything that’s an alternative to Microsoft, but at some point practicality comes into play and the alternatives have to be PRACTICAL alternatives, at least in regards to time investments. When a five minute operation on a Microsoft platform turns into a multi-hour research project on Linux, that’s… just not practical. For those of us who can’t dedicate that kind of time, it puts Linux off into a special category of “could be cool but has a long way to go to be fully usable”. Which really disappoints me because I’m more than willing to embrace it, I just don’t have the apparently inordinate amount of time required to invest in it.

I have some newb questions if anyone is willing to answer them –

* For newbs like me, is there a method or a specific resource that will allow for knowledge base searches to be less broad? Something I can do where search results don’t wind up being just a sea of conflicting information? What I mean is… I never really had a problem finding Linux help articles, but I had a giant problem determining what actually applied to my particular Linux flavor and version.
* Is there anywhere that’s recommended for Linux newbs to start with? An online “Linux For Dummies” so to speak? There’s lots of terms and processes involved with Linux that I don’t really understand, and this also makes minor problems difficult to remedy also.
* Is there something in particular that I can start doing to help remove the feeling that I’m handling nitroglycerin when dealing with Linux? Many of the problem resolutions that I’ve come across involve editing critical files with a variety of commands that I know little of what they do, so taking the advice of an online stranger to edit system files which may or may not even apply to my particular operating system… it makes for a harrowing self-help experience! 🙁
* Is there a reason why my experience was what it was? I feel like I’m missing a piece of the picture, and because Linux is heavily dependent on the knowledge of the user, maybe I’m dropping the ball here and not going into the experience prepared for it.

Thanks!


View Reddit by ReyAce00View Source

Sending
User Review
0 (0 votes)

4 Comments

Click here to post a comment

  • So, one thing to remember in being a long-term user of OS-type-foo is that you’ve already spent years of your life getting used to the idiosyncracies and weirdnesses of type-foo. Then you go to OS-type-bar and suddenly you’re hit full in the face with a full, fresh batch of idiosyncracies, and you get to see them all at once. It doesn’t matter if you’re non-technical or highly-advanced; both types of user have long learning curves with any but the most curated OSes (eg: mobile OSes are pretty heavily curated). A 20-year unix veteran will have just as many frustrations moving to windows as you’re having with unix.

    Another thing that you’re having problems with is that you’re doing some “Windows-specific” things and wondering why the experience is suboptimal on non-windows. Active Directory isn’t “an IT thing”, it’s a “Windows thing”, for example. Yes, *nix does have a problem in terms of fragmentation (eg: “which method of managing users to use!?”), but it’s exacerbated here by expecting a windows-like behaviour from a non-windows OS. Yes, there are also AD integrations, but again, they are basically compatibility shims, not ‘native support’ from the manufacturer of Active Directory. It’s the same in the other direction, too – windows trying to do “unix” things is suboptimal (eg: filesystem support – it’s the reason why FAT is so popular on mobile phone flash cards, because Windows doesn’t support anything decent other than NTFS, which it doesn’t let other people play with very well)

    I myself started out on Windows, and switched about 10 years ago over a licensing issue with a remote lab and CALs not showing up as registered – it was the straw that broke the camel’s back. The number of licensing issues I’ve had since have been exactly zero. The biggest cultural change for me was going from Windows *”It’s not a problem if a reboot fixes it”* to unix’s “*what the fuck are you doing rebooting? you’re losing the stateful info you need to actually fix the problem”*. I really don’t miss the Windows-style “*I really hope someone somewhere has written a tool to solve my particular problem… now, which is the right ‘Download’ button on this site… is the site trustworthy anyway”* problem. If I have to work on Windows now, I feel like one arm is tied behind my back because Windows doesn’t let you “at” the system very much. In contrast, you get full control on *nix… but you also get lots of fragmentation (which is a consequence of so many people with full control)

    &#x200B;

    >Is there anywhere that’s recommended for Linux newbs to start with?

    [https://linuxjourney.com/](https://linuxjourney.com/) is apparently popular, but I haven’t dug into it

    &#x200B;

    >Is there something in particular that I can start doing to help remove the feeling that I’m handling nitroglycerin when dealing with Linux?

    Yep. “Gain experience”. Same as any OS. If you erased all your knowledge of windows (eg: “what’s so important about “C:\”??) or cisco (eg: “why are ‘passwords’ not actually ‘secret’???”) and started afresh, you’d feel exactly the same way about them. Making mistakes is part of learning – don’t take the frustrations too much to heart. Running an OS is easy. Bending an OS to your will is hard.

    &#x200B;

    >because Linux is heavily dependent on the knowledge of the user

    As mentioned above, you’re not seeing your 20 years of scar tissue with your work on other OSes 🙂 Adminning *nix does require a bit more knowledge as a general admin I reckon, but you do get more flexibility and power from that. Bite off chunks and chew them thoroughly before moving on, I reckon.

  • Thanks for your write-up and sharing your experiences. Not to take away from or at all invalidate or the like, … but stuff to be learned by all from it. So, … *some* of my thoughts/comments/observations … and pardons if I didn’t read every word of your (long) post … I skimmed some bits. And my reply, a bit more Debian focused/oriented … as this is r/debian, and Debian is my preference (over 20 years Debian experience) and the bulk of my Linux experience (unless perhaps too, one counts the other Linux $work goop). So, some points, etc. …

    * Debian can be an excellent choice 🙂 of Linux distros, but as for a “first” Linux, or even what Linux distro(s) to start with, I typically recommend starting with question(s) – most notably what are the objectives, and the environment where this will be deployed. So, yes, sure, Debian, excellent, absolutely 🙂 … but it’s not necessarily the easiest newbie (at least to Linux) place to start, and may not necessarily be the best fit depending upon intended audience/sysadmin/user(s) and deployment environment – at least (and especially?) initially. On the other hand :-), if one is (a bit) more technically inclined, wants to more fully understand, configure, make lots of decisions on how to set up the operating system, etc. (not that one *has* to make that many decisions, but with Debian, one certainly can make many many choices/decisions, and to a great deal of depth/detail, at least and especially if one wishes to). So, yes, Debian, very much about choices and freedom. Some other operating systems, e.g. most of Microsoft, some other Linux distros, etc., many of those choices have already been made for you – whether that’s to one’s liking, or not.
    * Linux is not Microsoft Windows (nor is Unix, BSD, Minux, Plan9, various mainframe operating systems, etc.). So, if you go into it presuming things will be much like Microsoft Windows and smoothly and/or (near) seamlessly and with negligible complication well and quite highly integrate with Microsoft Windows, you’re generally making invalid presumptions. E.g., Active Directory, while pretty ubiquitous to Microsoft Windows, is to other operating systems, including Linux, essentially (if even supported at all), a foreign entity, and it’s often significantly non-trivial to integrate (if even supported at all), Active Directory. Same can be said for Microsoft Windows Shares, and a bunch of other Microsoft-specific or Microsoft-centric protocols (e.g. WINS). The common ground for most operating systems is Internet Protocol (IP) … things like DNS, http, https, ftp, telnet, (and to lesser degree) ssh. RDP is again very Microsoft-specific/centric. Going “Oooh, I’m gonna fire up a Linux, and join it to my AD domain and authenticate and login with that” is about as (in)valid an assumption as “Oooh, I’m gonna install Microsoft Windows, join it to my Linux/Unix Kerberos server realm, and login and authenticate with that using ssh and X11 over ssh to access my Microsoft Windows desktop”. Not that those things are impossible, but that’s (mostly) not how they’re done – at least not most commonly. Some fair bit of this has already been well stated else-comments, so don’t think I’ll add more to that at present.
    * Where to get help/information. Sure, you can search ‘da Interwebs, but as I often say, about 20% of what you get on ‘da Internet is anywhere from somewhat wrong/incomplete, to downright dangerously dead wrong … so you can typically expect that in most of your search results … and especially if you’re just searching on some topic/subject/question, maybe along with “Linux” and/or distro name, and not much else nor more highly specific and targeted … notably also refining what source(s) one accepts accepts information from (filters results to/from). So, e.g., in many cases, when searching Debian stuff on Google, I’ll often do a search like:
    (site:debian.org OR site:debian.net) …
    That greatly reduces the crud results of folks offering up opinions and their ideas of what to do on Debian, and often poor – or even much worse – advice. Doesn’t guarantee one will get 100% perfect results, but that alone will greatly improve the results. One can also ask in much more appropriate places. [Where to ask](http://www.catb.org/~esr/faqs/smart-questions.html#forum) is important. Ask on “some Linux forum”, or even r/debian, you may not get the best/answers regarding Debian – and in many cases may even get some downright incorrect/hazardous/”dangerous” “advice”/responses. More appropriate places to ask regarding Debian? Try some of these excellent starting points:
    [Support](https://www.debian.org/support)
    [On-line Real Time Help Using IRC](https://www.debian.org/support#irc)
    [Mailing Lists](https://www.debian.org/MailingLists/)
    [Mailing List Archives](https://lists.debian.org/)
    Another great starting point / resource is Linux User Groups (LUGs) … see if there’s a LUG or LUGs near you – maybe even Debian one(s). Also, even if they’re not conveniently close, most LUGs will generally have mailing list(s) / forum(s) – those can be excellent resources and typically good places to ask questions.
    If I were making recommendations on where to look for Arch Linux support, I’d probably say to restrict that mostly to the Arch wiki – a quite excellent wiki (and likely the Linux distro with the best wiki … as Arch appears to use that as their primary information source/reference).

    (oops, too long, splitting – see my reply to this)

  • > why more mainstream … admins won’t/don’t embrace Linux

    I must admit this claim set me up for an entertaining read when you listed windows-specific technologies, so I’m glad others were able to respond in more helpful manner than my initial reaction, sorry.

    > When a five minute operation on a Microsoft platform turns into a multi-hour research project on Linux, that’s… just not practical.

    To confirm what they’re saying about familiarity, I really enjoyed this whole paragraph, because it exactly describes my frustration with the opposite direction. I had a linux desktop at my previous job for years, current one got me so wound up over little things (yes I’ve tried WSL, it’s not the same) that I now have a fullscreen Debian VM as my daily workstation. Most things in Debian are one, maybe two, steps away – install package name and maybe edit config file, that’s it.

    > I had a giant problem determining what actually applied to my particular Linux flavor and version.

    Okay, this one I can help with. Install [dwww](https://packages.debian.org/buster/dwww), ensure you can access http://localhost/dwww/ then install all the relevant -doc packages you can find e.g. wireshark-doc and check they’ve been indexed. Even if you find the google search more convenient, you can then search your offline documentation to find the exact version-specific information. I also find https://manpages.debian.org/ very useful, again because it will have the exact parameters available on your system.

    > “Resuming from hibernation”

    This is new, prominent and completely misleading in buster so probably not the source of your problems – at a complete guess I’d say your boot is failing due to nVidia proprietary hardware. In no way are my systems actually resuming, but yet I get that message spit out on every boot – you’ve convinced me to report it in the bug tracker (or at least check if it’s already there).

  • If by any chance you remember anything about the missing sudo issue please reply because mine are gone on install as the installer seems to be broken in several versions now as far as this goes and as a result Debian is unusable. I don’t want to use Mint or Ubuntu but it’s like they’re trying to force me to by making this impossible to use.