this post was submitted on 13 Sep 2023
85 points (96.7% liked)

Linux

48072 readers
1 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 6 years ago
MODERATORS
 

Recently, I've been using linux(tried multiple distros). I'm curious about how linux works, it's architecture! Is there a book, guide, video, etc to learn about linux? By using linux, I get to know something. It would be better If I know how linux works!

top 50 comments
sorted by: hot top controversial new old
[–] CaptainJack42@discuss.tchncs.de 36 points 2 years ago (1 children)

If you really want the deep dive, look into LFS (Linux from scratch), besides that I've always been the learning by doing kind of guy. Got a problem? Search a solution and read up on the intricacies of the problem

[–] fbsz@lemmy.ml 3 points 2 years ago (3 children)

Hey, thanks for the great suggestion. Looked onto it and it's great to build your own linux. I think that's really the essence of linux, the freedom to build it on your own.

[–] silent_water@hexbear.net 2 points 2 years ago

no joke it's how I learned linux, bootstrapping a gentoo install from the toolchain on up, with a printed manual. it's surprisingly effective, if time-consuming (took me about 2 weeks to get to a booted system, though most of that was compilation time - took ages back then).

[–] milkjug@beehaw.org 1 points 2 years ago

One more tip, if you already have a Windows environment, spin up VMs with Hyper-V and start from there. Anytime you mess up, just nuke the VM and spin up another one. I must have burnt through hundreds of VMs (hyperbole) while testing out distros that I like.

[–] milkjug@beehaw.org 1 points 2 years ago

Another vote for LFS. I like that it is really at the right level of depth (assuming that you already have a basic grasp of computing in general). Even if you end up going with a distro, reading through LFS gave me insights as to why certain things were done in certain ways. Alot of "quick-start" style guides tell you what command to type in, but for brevity reasons, they don't explain what the command does. For example, you may come across many guides tell you to type sudo or sed or echo or | or >>. It may seem daunting at first, but gradually as you become more at ease with the CLI, all these will start to make sense.

[–] Happenchance@lemmy.world 22 points 2 years ago (1 children)

I've been dabbling with Linux for 30 years and it's only in the last few that it really clicked. I needed a project.

Go start a home server and give yourself projects to work on. Makes Linux very fast to pick up.

[–] PetDinosaurs@lemmy.world 5 points 2 years ago (1 children)

A simple distro, like one for a raspberry pi, is also helpful.

[–] Happenchance@lemmy.world 5 points 2 years ago

I actually would recommend learning a hypervisor.

Not first. For sure. But before you want to do anything serious.

Proxmox made learning home service hosting so much easier and faster to unfuck.

[–] Kangie@lemmy.srcfiles.zip 15 points 2 years ago (4 children)

IMO running through a Gentoo installation is a great way to learn.

The handbook is well documented and walks you through all of the steps that an installer would traditionally do.

You can do it in a VM or bare metal if you're feeling adventurous!

[–] banazir@lemmy.ml 4 points 2 years ago

Yeah, Gentoo is a good way to get your hands dirty. Reading the guide and trying to dig in deeper as to what you're doing will give you a decent understanding of Linux.

[–] 30p87@feddit.de 3 points 2 years ago

And for more in depth explanation of compilation, patches etc. consider LFS, or at least reading the 'book' on https://linuxfromscratch.org/

[–] doublejay1999@lemmy.world 2 points 2 years ago (2 children)

Gentoo install keeps coming up - what does it do ? What does it offer ?

[–] TheEntity@kbin.social 6 points 2 years ago* (last edited 2 years ago)

Gentoo itself is "just" a very solid distro with lots of flexibility due to being source-based (most distros just deliver the resulting binaries), so if you're the kind of person that would customize the things Gentoo exposes, Gentoo makes it easier than it would be on Debian or Arch. If not, it's an added complexity for not much benefit.

The Gentoo installation guide famously doesn't shy away from explaining what needs to be done, it isn't just a series of step-by-step instructions. For this reason it's a great way to start learning this stuff. Even if it won't explain everything completely, it will surely point at the right direction.

[–] Kangie@lemmy.srcfiles.zip 5 points 2 years ago* (last edited 2 years ago) (2 children)

The standout feature of Gentoo is its configurability; you can configure portage, the package manager, to enable and disable features of a package at build time.

Say you don't have Bluetooth. You can just exclude Bluetooth from every package by setting the use flag globally:

*/* -bluetooth

it can even manage dependencies, a good example is picking pipewire over pulse.

It's also easy to package software that isn't in the official repos - here's a post where I did just that.

The community is fantastic and supportive, and you can often get a near immediate response in IRC.

Finally the documentation is excellent, especually the handbook.

[–] doublejay1999@lemmy.world 3 points 2 years ago
[–] BackOnMyBS@lemmy.world 2 points 2 years ago

me, a Linux Mint user, reading that comment

[–] ruination@discuss.tchncs.de 2 points 2 years ago

I found that, at the cost of a few months of absolute suffering, using Gentoo as my first distro fasttracked my Linux learning.

[–] Jonas_Jones@lemmy.world 9 points 2 years ago (1 children)

A good way is to build Linux from scratch. It gives you a totally new perspective of not just Linux but any operating system and is a lot of fun! https://www.linuxfromscratch.org/

[–] RandomLegend@lemmy.dbzer0.com 15 points 2 years ago (1 children)

Fun weekend project for the whole family !

[–] Sir_Simon_Spamalot@lemmy.world 10 points 2 years ago (1 children)

Just type a bunch of stuff, then play with your kids as it compiles!

[–] RandomLegend@lemmy.dbzer0.com 5 points 2 years ago

Let your kids compile the kernel! It's super easy and fun, rated for ages 2-99.

[–] ptrckstr@lemmy.world 8 points 2 years ago (8 children)

How linux works is a nice read, tells a bit about what's going on under the hood.

load more comments (8 replies)
[–] AnUnusualRelic@lemmy.world 8 points 2 years ago (5 children)

What I did back in the day when I started Unix was mostly explore.

I looked at what was in /bin and read their manpages, or just browsed manpages to see what did what (your desktop manager will probably have a help browser nowadays that makes this much easier, in KDE it's the Help Center), and generally experimented with stuff.

Poking at things to see what they do is probably the best way, especially on a system that's not production. Also there will be a lot of reading involved, although it will mostly be to get a feel of things, as in the end, you'll essentially have to be proficient in finding information rather than memorising it for the most part.

And don't get too hung up on the whole distribution thing, in the end they all install the same stuff anyway.

load more comments (5 replies)
[–] GustavoM@lemmy.world 8 points 2 years ago (1 children)

Heres a tl;dr of some "must learn" things in order to use GNU/Linux in an acceptable fashion;

  • Package manager (how to install, remove, clean old packages)

  • The "know-hows" (Which package goes for audio, video card, webcam, etc)

  • How to make a minimal/baremetal installation (Which is a very simple process nowadays -- it takes only one package to do this)

Thats it.

[–] CaptKoala@lemmy.ml 2 points 2 years ago

Yep, having stumbled around and learned many of this the hard way (guided by a knowledgeable friend) it was a big headache, however it's stuff I'm not going to forget anytime soon.

The MANnly way is to use the man pages for things your curious on. The arch wiki is another fantastic tool

[–] hottari@lemmy.ml 7 points 2 years ago (1 children)

Nothing will teach you the basics of Linux better than a good ol' Arch installation.

[–] cerement@slrpnk.net 14 points 2 years ago (1 children)
  • Arch user sneering at Ubuntu user
  • Gentoo user sneering at Arch user
  • Linux from Scratch user sneering at Gentoo user
[–] EuroNutellaMan@lemmy.world 9 points 2 years ago

AmogOS user sneering at Linux from Scratch user

[–] Makussu@feddit.de 6 points 2 years ago

Try setup arch or even gentoo with the help of the arch wiki or gentoo wiki

[–] candle_lighter@lemmy.ml 5 points 2 years ago* (last edited 2 years ago)

If you want to learn the terminal there's a game called Hack Net that teaches you command line. IMO if you pick a distro like Ubuntu, Pop, Zorin or Vanilla you don't need the terminal tho

[–] cerement@slrpnk.net 4 points 2 years ago

if you really want to get into the details, there’s the Linux Upskill Challenge ( !linuxupskillchallenge@programming.dev and https://linuxupskillchallenge.org/ ) – runs through the nitty-gritty of running a Linux server – aimed at remoting in to a command line but it looks like the majority of the lessons would work just fine from a terminal or console on your own computer

[–] Lettuceeatlettuce@lemmy.ml 4 points 2 years ago

I would start with YT channels like Learn Linux TV, Distro Tube, and Lawrence Systems, they have a bunch of great Linux content especially for beginners and intermediate learners.

Freecodecamp.org YT channel has a free 6 hour intro to Linux course that is very good. you might want to check that out as well.

For using a distro hands on while learning, any basic distro will do. You might want to check out Arco Linux first though. It's an Arch based distro that is specifically meant for Beginner and Intermediate Linux users to dig in and learn the nuts and bolts of the Linux Operating System. They have their own resources and the majority of things you learn for one distro will carry over to any other.

If you're looking for a formal certification, Comp TIA has a Linux+ certification and there is also a Linux cert called the LPIC-1, both of these are beginner level certs. If you study on your own the earlier resources I listed, you could probably pass those certs pretty easily, but they are only useful if you are trying to get a formal job as a Linux Sys admin, and even then, most jobs want higher level certs than those.

Still, if getting a formal piece of paper is motivating for you, they might be worth looking into.

The most important thing though is to just pick a distro, open up the terminal, open up a YT vid and start pecking away. If you have a spare old computer you don't need, wipe the drive and install a distro on it. That compy becomes your dedicated learning machine for the next year. Make sure it's one you can destroy because...trust me...you will destroy your installation at least a few times if you're really trying to learn.

If you have no spare computer, fire up a distro as a VM in something like Virtual Box. This can be useful because you can save old VM states to recover if you blow something up, although learning to recover from disaster without having to literally start from scratch is a valuable skill in and of itself.

Good luck and have fun! I got started with Linux about 4 years ago and it's been an amazing ride so far!

[–] Spaniard@lemmy.world 3 points 2 years ago

Think of a project you want to do, seek how to do it and do it, then break it and fix it.

[–] macallik@kbin.social 2 points 2 years ago

I took this Udemy course for ~$10. Great lecturer who is passionate about Linux and FOSS

[–] amphetaminisiert@feddit.nl 1 points 2 years ago (1 children)

I've learned Linux (and vim) just by forcing me to use it. One day I've installed i3 and just used it forcing me to solve my problems by myself haha

[–] gigatexal@mastodon.social 2 points 2 years ago

@amphetaminisiert @fbsz i3 was so intuitive (long time Vim user) that I ditched macOS for Linux because of it.

load more comments
view more: next ›