this post was submitted on 13 Feb 2025
13 points (100.0% liked)

Linux

8888 readers
264 users here now

Welcome to c/linux!

Welcome to our thriving Linux community! Whether you're a seasoned Linux enthusiast or just starting your journey, we're excited to have you here. Explore, learn, and collaborate with like-minded individuals who share a passion for open-source software and the endless possibilities it offers. Together, let's dive into the world of Linux and embrace the power of freedom, customization, and innovation. Enjoy your stay and feel free to join the vibrant discussions that await you!

Rules:

  1. Stay on topic: Posts and discussions should be related to Linux, open source software, and related technologies.

  2. Be respectful: Treat fellow community members with respect and courtesy.

  3. Quality over quantity: Share informative and thought-provoking content.

  4. No spam or self-promotion: Avoid excessive self-promotion or spamming.

  5. No NSFW adult content

  6. Follow general lemmy guidelines.

founded 2 years ago
MODERATORS
 

I've got a Pop_OS system76 machine that runs well straight out of the box. I love it and it's my daily driver. However I'd like to learn more about how it works, Linux internals and how to use it to the best of its capabilities. I want to learn about things like system-d Wayland, error logging (there seems to be a few of them) directory structure and drivers. For instance, how do I know that my and GPU is being leveraged to the fullest?

I DONT want to build a system from the ground up, which I expect to be a common suggestion.

I'd prefer to read literature, blogs, and articles relevant to me, my system and not dated.

Any suggestions? Thanks in advance

top 24 comments
sorted by: hot top controversial new old
[–] [email protected] 8 points 1 week ago (1 children)

You want to read literature? Try the man pages available from a shell / terminal. Don't know where to start? man hier, man proc, man 5 sysfs for three. Those are where Linux puts important things or rather, in the case of the latter two, where the Linux kernel likes to pretend they are for easy access. The 'SEE ALSO' section of at least one of those suggests other interesting reading, and on and on.

If that's not a direction you want to go but still want to know about something that you think might be in the Linux manual pages, try man -k keyword or apropos keyword. Replace keyword with what you want to know about and it will list all the manual pages that have the keyword in their name or description.

[–] [email protected] 2 points 1 week ago

This is a helpful tip, thanks

[–] [email protected] 4 points 1 week ago

Oh, I did that once.

su

[–] [email protected] 4 points 1 week ago (1 children)

Start self hosting some web services.

[–] [email protected] 3 points 1 week ago (1 children)

Way ahead of you but that only scratches the surface of Linux. I've got a docker compose stack with a bunch of services, DNS and reverse proxies... But that doesn't teach me about the internals on my workstation

[–] [email protected] 2 points 1 week ago

Gotcha. I feel like I learned a lot of Linux stuff by standing up and configuring servers (log analysis, iptables, systemd...). I guess that's the stuff I'm interested in though. I've never cared about compiling packages or tweaking the kernel for example.

[–] Alphane_Moon 4 points 1 week ago (1 children)

One alternative option would be to get a Raspberry Pi (or similar SBC) and run it using command line only. You will quickly learn the basics of Linux internals (directory structure, systemd, common command line tools and approaches).

[–] [email protected] 5 points 1 week ago* (last edited 1 week ago) (2 children)

Raspi isn't necessarily the best option for that, because it's based on an ARM processor rather than the x86_64 that's common on desktops and servers.

A cheap N100 "NUC" style Micro-PC is almost as inexpensive as a raspi and wouldn't limit the user to ARM-compatible software or add complications like emulating the architecture via qemu.

[–] [email protected] 3 points 1 week ago (1 children)

The RPI and N100 are both way overpriced. Get a old desktop with a i5-6500

[–] [email protected] 1 points 1 week ago (1 children)

Heck, my current desktop is still an old third-gen i-series, lol~

[–] [email protected] 1 points 1 week ago* (last edited 1 week ago) (1 children)

That's past the point or real usefulness. Apt upgrade is going to run forever and both your ram and storage run at a snail pace

[–] [email protected] 1 points 1 week ago

Eh, builds do take a while but the performance has been sufficient for my needs until very recently. I'll probably upgrade soon.

[–] Alphane_Moon 3 points 1 week ago

An x86 NUC works too. That being said, for CLI/DIY home server stuff I didn't really find any issues with software availability on Linux/ARM64.

[–] [email protected] 3 points 1 week ago* (last edited 1 week ago) (1 children)

Just search or ask whatever questions you have about Linux (just like your question on GPU use). Overtime you will gain extensive knowledge of linux and before you know it you will be a linux power user.

[–] [email protected] 2 points 1 week ago

I probably will :) but some baselineing would be nice too

[–] [email protected] 3 points 1 week ago* (last edited 1 week ago) (1 children)

What do you want to know?

I will say Arch isn't the greatest learning experience. It is good if you want to learn how to install Arch but that's about it.

The best way to learn Linux is though random (sometimes dump) side projects. Take some random idea and run with it. Spin up containers and VMs and build things.

[–] [email protected] 2 points 1 week ago (1 children)

Well for starters, my Wacom tablets drawing pen's eraser sometimes stops working until I restart my machine. How can I restart the service for this without restarting my machine? How can I identify what service that is? How can I debug the error to prevent it in the future?

[–] [email protected] 2 points 1 week ago

You can list running services by running systemctl or systemctl | grep "service name"

I don't believe Wacom has a service but I could be wrong

[–] [email protected] 1 points 1 week ago (2 children)

I DONT want to build a system from the ground up, which I expect to be a common suggestion.

Arch kind of is building from the ground up, but without all the compiling and stuff. It's really not as hard as it sounds especially if you use a̶r̴c̷h̴i̵n̵s̴t̷a̶l̷l̵ and you do get the experience of learning how it all fits together through the great ArchWiki.

That said one can learn a lot even on Debian/Ubuntu/Pop_OS. I graduated to Arch after I felt like apt was more in my way than convenient and kept breaking on me so I was itching for a more reliable distro. But for stuff like managing systemd services and messing with Wayland, definitely doable on a Debian/Ubuntu/Pop distro. Just use the terminal more really, and it'll come slowly through exposure.

[–] [email protected] 6 points 1 week ago (1 children)

hot take maybe but archinstall really takes out basically all the learning process of arch. I would recommend at least one non archinstall install before using it if you're wanting to learn.

[–] [email protected] 2 points 1 week ago

It does, I wrote it in corrupted text for a reason, but if you want something functional you can use it and then see how it set it up for you and still go set up the rest of the services yourself.

When I switched to Arch, it used the Arch Install Framework, that predates even pacstrap, and I still learned a fair bit. Although the now normal pacstrap really doesn't hide how the bootstrapping works which is really nice especially for learning.

Point is mostly if OP is too terried they can test the waters with archinstall (ideally in a VM).

[–] [email protected] 1 points 1 week ago

While I'm usually a hands on type of learner, usually these days I find my time pretty limited and that's why I'm looking for a reading approach. I absolutely want to up a machine with arch, there's no doubt it will teach me many things. I've got a lot of items on my 'to learn' list though and was looking for a more passive approach I can fit between other tasks away from my machine

[–] just_another_person -1 points 1 week ago (1 children)
  • Start manually building and installing all your software instead of using packages
  • Try writing a simple app with some tutorials
  • Start reading Phoronix religiously and looking into each news item
  • Build a distro from scratch on some old spare hardware
[–] [email protected] 1 points 1 week ago

Thanks for the tip on phoronix, I'll look into this.