Down that hole
Im about to take the same plunge into Linux. Any tips for a new comer?
There are no wrong answers, donât listen to people saying âthis is betterâ or âdo it this wayâ. Maybe itâll help, but maybe itâll make you not like the community. If thatâs the way you feel, just do whatever you need to to get something to work.
Thereâs a lot of choice, so make a choice and stick to it, but at the same time be open to change.
Also make backup of your data
Donât start out with the stuff that experienced people use, youâll just get frustrated if you do.
My first experience was that windows got on my nerves so much I said âfuck it, Iâll just learn linuxâ. And Iâve been learning ever since. Just using linux as a desktop OS and figuring stuff out along the way is a great way to learn the basics.
Donât fixate on/rush switching. Even before using Linux, identify what software you need that doesnât support Linux, find multi-platform (+FOSS) alternatives and attempt to gain comfort/proficiency with them. (I wholeheartedly recommend Krita, personally I have used it for pixel art and image editing on top of normal art) WINE sometimes works, but native feels much better and switching makes more sense when you have a known-good system to switch over to.
If you remember to consider limitations, there are a few methods to try Linux (LiveCD, VM, spare hardware etc). If you have a desktop you can remove your Windows drive (particularly w/SATA) for a step more cautious than just dual-booting.
Cockpit Web GUI made finding and reading logs, restarting services and so on much easier for me as a beginner:
https://cockpit-project.org/
If you use the GNOME desktop then the ArcMenu, Dash to Panel and JustPerfection gnome extensions allow you to simulate the Windows workflow. Thereâs also many other extensions as better window tiling, showing status indicator at the bottom panel and so on.
https://extensions.gnome.org/
Screenshot example: https://i.imgur.com/tNiFiws.png
i think gnome works best without any plug-ins if youâre ok with getting used to the workflow; itâs an amazing experience out of the box if you have a touchpad/touchscreen device like a laptop.
I only have libindicator support installed (for apps that like to close to tray)
When choosing a linux distribution, or a desktop environment, or anything really, go with the most popular, âbasicâ choice. Because when you have questions and need to search them, the more popular stuff is 99.9% guaranteed to have the answer to your question on some stackoverflow thread, or the arch linux wiki (which is pretty much just âthe linux wikiâ at this point).
Also, asking AI for help (chatgpt, phind, etc) is surprisingly helpful.
Deletes all the files in the root-dir recursively (needs sudo
).
Without sudo all user-accessible files will be removed.
This will also affect all mounted drives (like USB-Drives, âŚ) and on some motherbords can also corrupt the UEFI.
and one more thing: always look up what commands will do. So you can prevent bad behaviour and learn their options to use them later on your own.
Options for help:
--help
man
- your favourite search engine
I definitely recommend getting used to --help
and man
, but after youâve become comfortable with those I find that this utility is also fantastic.
Example of the output of tldr git checkout
:
What kind of platform are you working with? laptop? desktop? RPi?
You can run Linux on trash hardware. If you have the option, start by installing Linux on something that is not your daily use computer, like an old laptop.
If you canât do that, then consider getting a second hard drive and installing Linux on that so you donât have to mess with your primary OS install.
If you canât do that, then at least prepare a USB drive/DVD installer for your primary OS (presumably Windows) now before you make any changes to your computer. Boot the installer once to make sure it works before you need it.
And before you do anything else back up your important files to an external storage of some type.
Itâs extremely useful to have a second working computer to use for doing research and downloading files/installers/recovery tools as needed. Your phone isnât good enough because you wonât be able to create an OS install drive from it if you need to.
hey, if you ever need advice on a decision, feel free to message me, iâve built up quite a knowledge.
anyways:
first: choosing a Distro:
do you want something that just works, super stable and reliable, out of your way? choose Ubuntu (donât listen to the Elitists)
do you want something similar, just with more frequent updates? OpenSUSE
do you want something thatâs super reliable that never breaks and are willing to invest a few weeks relearning your computer? a Immutable Distro will do. i personally recommend and use NixOS, as itâs the most reliable and unorthodox (a lot of overthrowing traditional convention on how to do stuff) ones of the bunch. but for something (much) simpler, use OpenSUSE MicroOS
next, the DE:
realistically you want either GNOME or KDE Plasma. i Personally like GNOME more, but KDE Plasma is just as fine. again, donât listen to any Elitists.
the Applications:
realistically you want to use Flatpaks. check the Flathub Setup guide on how to install it to your System.
installing Flatpak can never break your system, while installing through traditional package managers (apt, dnf, pacman, etc tec) might, if something goes very wrong.
Flatpaks are also updated more often, are (even if not as great as MacOS, iOS or Android) sandboxed (apps first need to get permission to do certain things such as use the Camera) and there are more people to help fix your problems.
snap are also great (again again, donât listen to the Elitists) but not a lot of apps seem to be made for it as Flatpak seems to have become the default.
now, a personal recommendation:
all the Elitists please look the other way now
i recommend you install fish and set that as your default shell.
it really is a lot better and user-friendly than any other shell there is.
this is the Link, use it or not, but i really highly recommend it. makes Terminal work just so much easier.
---------------------------------------------------- Opinion Part:
i personally use NixOS. however, i woudnât actually recommend it to you just now.
i reckognize that NixOS is very complicated at the Start and does a lot of things different and is very difficult to learn compared to other OSes (although after you get used to the System, it is a lot easier than normal Linux).
i still often have to look up Stuff, what config to use etc.
but i like the fact that all my stuff is saved in a single config and if i were to reinstall the whole system for some reason, everything would be right back to how i wanted it. (provided i changed it in the Nixos-Config File and didnât just do it in the Settings App.)
i like the fact that if i make a change on my Desktop, i can just synchronise the config-file with my Laptop, and violĂ , all the changes are now also on my Laptop.
but then again, i wouldnât recommend it to you, seeing that youâre new.
i recommend either OpenSUSE Tumbleweed or OpenSUSE MicroOS. install Flatpaks and the FISH Shell and youâre good to go for your adventure.
TAKE. NOTES.
Use a note-taking application you are comfortable with (I use Joplin) to maintain a history of what you wanted to do, why you did/did not do it, and how you did it; save relevant links to help articles, SO posts, etc⌠(this is particularly useful if you want to retrace your steps to undo something). If you end up not doing something, strike through the text and leave a note explaining why you chose not to do it after all and what alternative, if any, you went with.
This greatly expedites the learning process, in my opinion.
Edit: I realized everyone was responding to top comment, removed long winded rambling about my personal Linux journey.
I 100% second note taking - my personal favorite is ObsidianMD.
I used Joplin for many months, with WebDAV (koofr)/e2e setup for sync, till I discovered ObsidianMD.
Now: all my notes are in markdown/plantuml/mermaid/Obsidian canvas/drawio, managed primarily by ObsidianMD, but occasionally on vscode for special use cases (plantuml diagram editing⌠vscode flow is better). I use obsidian git to sync to my git repo across my machines. Still love Joplin in a pinch (mobile app on occasion) though.
- Backup. A lot. Always.
- Take notes.
- Ideally have a separate computer so you can easily google stuff if you break something, a lot of the times what you just broke is fixible with one simple command, you just need to know it.
- Start with dualboot
- Donât look for âwindows replacementâ in your new OS, this way you will be frustrated with differences, instead of seeing how the new way might be helpful.
- Backup. A lot.
-
Try out different linux distros / desktop environments in virtual machines and find out which ones you like the most. I spent about a month doing this, until I found kde neon.
-
Know that you are going to break stuff, and donât be afraid of it. Even if you are a tech savy Windows user (as i was), Linux will be a new thing for you and youâll not know the nuances. I broke my installs a bunch of times because of things like nvidia drivers, but I was running Linux in virtual machines so I just started over from scratch. Breaking things makes you learn the fastest imo, so donât be scared of it.
-
Have fun. Linux is going to give you some frustrations, so itâs important that you are using Linux because you want to so you can keep moving forward.
-
Ignore the folks with way too much time on their hands who tie their self-worth to their ability to install Arch or whatever. Just use Ubuntu*; itâs fine.
-
Once you install it, just use it like the normal desktop OS that it is. Thereâs no need to immediately go down a !unixporn rabbit-hole just because the customizability of the system facilitates it. If something you need doesnât work or otherwise bothers you, fix it, but otherwise leave the system alone and just let yourself get used to it with default stuff.
-
By the time you get done with step 2, youâll be able to know for yourself what you want to do next.
Unnumbered: Gradually come to understand that the terminal is your friend, not something to be intimidated by. You shouldnât need to use it (not with Ubuntu, anyway), but if you give it a chance youâll eventually find yourself wanting to use it because of the advantages it has, such as using the history to have a perfect record of what you did, executing a complicated sequence of commands perfectly by pasting them in instead of trying to manually follow instructions clicking around in a GUI, and creating pipelines and scripts to do complicated things (say, batch-renaming files) relatively easily.
In particular, try to understand the essential nature of UNIX: âThink of the UNIX system programs as⌠the building blocks with which you can create things. And the thing that distinguishes the UNIX system from any other system is the degree to which those building blocks can be glued together in a variety of different ways â not just obvious ways but in many cases very unobvious ways â to get different jobs doneâ
(* Yes, specifically Ubuntu, not a âsimilarâ distro like Debian or Mint or Pop! OS (let alone a dissimilar one like Arch or CentOS or Slackware). You want the distro that things like Steam officially support, not one that they unofficially work on. Picking a different âflavorâ of Ubuntu that uses a different UI, like Kubuntu or Xubuntu, is fine though.)
Edit: removed my own Linux background after realizing I didnât know how to use the app, and responses were to top comment.
Ubuntu is a great suggestion for beginners- thatâs what I install for friends and family as of now (Iâm considering alternatives). Iâm thinking about getting new folks on opensuse tumbleweed, but letâs see.
Complete agree: always mainstream distribution for new users - Fedora, opensuse tumbleweed, Ubuntu are all great choices.
Complete agree: always mainstream distribution for new users - Fedora, opensuse tumbleweed, Ubuntu are all great choices.
There are a lot of distros that are great (for beginners and in general), but I recommended Ubuntu and only Ubuntu for two reasons:
- Itâs the only distro other than SteamOS that Valve officially supports (and thereâs a reasonably decent chance folks wanting to try Linux are also gamers).
- Even merely presenting choices incurs a cost in terms of increasing cognitive load, and I think itâs important to avoid inflicting more than is absolutely necessary on newbies. I think itâs very likely that analysis paralysis on distro choice is one if the biggest barriers to entry for Linux, and saying âX, Y, and Z are good optionsâ when the person has no clue what the differences between them are or why they should care, instead of just straight-up saying âuse X,â may be doing them a disservice.
install gentoo /s
Jokes aside, donât get caught up in picking the most popular or most hipster distro or DE (desktop environment). Pick one, stick with it, get used to how Linux works.
Linux Mint, Zorin OS, Debian, MX Linux (if you got a pretty old laptop) are decent start. All have graphical installers, so just follow along.
When you get to disk partitioning, most people start with
1GB for /boot
Up to 8GB for swap
The rest for /
, EXT4 or BTRFS
Or
1GB for /boot
, FAT32
Up to 8GB for swap
, swap
64GB for /
, EXT4 or BTRFS
The rest for /home
, whichever you picked for /
You might see ZFS or people talking about it, donât worry about using it. Keep things simple for the start.
After rebooting and everything seems to work, dive in, friend.
You can also type :x
to write and quit. Just imaging the amount of time saved not pressing one extra letter. ^Could save your life.^
:x
for write and quit. But I think the more appropriate one in this situation will be :q!
which will force quit without saving any modifications, since someone who doesnât know how to exit vim
probably doesnât want to save whatever modifications they made (probably by mistake).
Also, anyone who says âtry this, itâs neatâ:
};:
Donât. Itâll lock up your computer. The markdown is adding code to the above. Ignore the âamp;â. Itâs just an ampersand.
Also anyone who tells you run level 6 is the best oneâŚ
Donât. Itâll set you in a boot loop.
Basically, Google whatever someone suggests to you just to verify theyâre not being a dick. I would say spend a bunch of time in the command line interface (CLI). Thereâs nothing wrong with the GUI desktop, but the real power of Linux is in the CLI because you can do so much with it. Itâll also get you on the road to scripting, if youâd like. That unleashes the power even more by making your Linux box so cool stuff on its own. Then learn the power of cron tables (crontab) so that you can schedule your computer to do cool things on its own.
Good luck and have fun!
A fork bomb no longer works on modern distros which use systemd btw, since systemd imposes limits on the user and system cgroups (IIRC, a user canât have more than ~10,000 tasks or something).
If you are low on memory, a fork bomb still works
I can confirm that it crashed my laptop running fedora 36 (this was a while ago lol)