I'm struggling with learning Linux - What advice could you give me?
Linux - NewbieThis Linux forum is for members that are new to Linux.
Just starting out and have a question?
If it is not in the man pages or the how-to's this is the place!
Notices
Welcome to LinuxQuestions.org, a friendly and active Linux Community.
You are currently viewing LQ as a guest. By joining our community you will have the ability to post topics, receive our newsletter, use the advanced search, subscribe to threads and access many other special features. Registration is quick, simple and absolutely free. Join our community today!
Note that registered members see fewer ads, and ContentLink is completely disabled once you log in.
If you have any problems with the registration process or your account login, please contact us. If you need to reset your password, click here.
Having a problem logging in? Please visit this page to clear all LQ-related cookies.
Get a virtual cloud desktop with the Linux distro that you want in less than five minutes with Shells! With over 10 pre-installed distros to choose from, the worry-free installation life is here! Whether you are a digital nomad or just looking for flexibility, Shells can put your Linux machine on the device that you want to use.
Exclusive for LQ members, get up to 45% off per month. Click here for more info.
I'm struggling with learning Linux - What advice could you give me?
Hi,
I'd like to learn Linux inside out,
I've got 20+ years of MSdos > Windows of all iterations under my belt. Worked for technical support, 1st, 2nd line then managed a technical support team for years. All Microsoft based. I now work within an IT company for a Windows based product.
At home I use macs.
Throughout my computer career there's always been a necessity to learn the OS.
For MACS it was driven by my music production side line and frustrations around Windows instability getting in the way of producing. Haven't looked back since swtiching.
For Microsoft it was because back then PC's were new and I wanted to play games which inherently meant I had to dig beneath the surface, swap out CPU's, configure HDD jumpers to master/slave, install sound cards (then trouble shoot IRQs!) overclock on occasions, modify batch files, learn commands, configure the hardware which in those days required an element of tinkering in the BIOS or OS for IRQ allocations or memory configuration as not much of it was true plug and play back then.
Thus born through necessity I naturally found a knowledge and experience with the software and hardware.
Linux is different. I have no necessity, I just want to learn it because I like learning new things but because there's no singular need I find myself installing a distro and then feeling a distinct lack of "okay job done, what now?"
I purchased a couple books, How Linux Works what ever superuser should know and Slackware essentials. Problem is I learn better by doing rather with referencing a book if I need not the other way round. So I am struggling actually learn stuff upon reading these beyond the core theory.
This is compounded because there's so many iterations of distro's and so many distro's themselves thus public information(internet) on a singular project I could get into is usually not specifically applicable to that distro (setting up wifi for example) or is out of date thus I struggle to appy it to my particular situation.
My current knowledge level is being able to partition and install my distro of choice (Slackware), configure X, configure network, play mp3's from the console, configure new users
Beyond that it's almost like choice overload, I can do ANYTHING but I find myself doing nothing.
I've gone online and found some exercises which has helped but only by a small margin.
Like you I find it easier to learn things when I have a need rather than just a desire. Owing to this I know some very esoteric things about Linux but there are gaps because of things I don't work on.
A couple of suggestions:
1) If you've delved into Mac command line that is actually UNIX based so some of your knowledge might translate to Linux.
2) If you've written your own code or batch files or scripts you might try adapting those into other languages or scripting (e.g. bash, perl, python etc...) on Linux.
3) Do a web search for "Linux Tutorials". You'll see many tutorials for various things such as bash, beginner Linux, etc... Learning things like bash scripting, awk scripting, perl, pythin etc... can all be done by searching for "tutorial" with those subjects. Pretty much any concept followed by the word "tutorial" in a web search will find at least one if not more.
4) You mention partitioning. I'd highly recommend exploring Logical Volume Manager (LVM) as an alternative (and better IMO) way to do things. You could also look into software RAID using mdadm.
As you allude to, it is difficult to do anything that you don't have a specific need for. Think of something you do in Windows that you don't yet know how to do in Linux, and learn how to do it. It's possible to do many things without touching the command line, but since you're using Slackware I'd recommend using it as much as possible.
Just keep at it and give it time and you'll be fine. You've got a lot of years under your belt with MSDOS, Windows, Mac stuff. You have to put in some time with Linux stuff, too. I came at it thinking of it as a four-year program, like earning a college degree. After one year, it was like finishing up the freshman year, I still had a long way to go.
One thing that helped me, trying different distros and stuff. The old "contrast and compare" approach.
Do at least one Linux From Scratch. Make your system complete with BLFS. Then go off the book, and do your own version. You can do CLFS, and put linux on one of your Macs. You'll learn buckets that way, Then install Slackware64, make it multilib, build your own kernel, install VirtualBox, then repeat for gentoo. I believe that's punishment.
Quote:
Originally Posted by Slave
Install sound cards (then trouble shoot IRQs!)
Yes, you bring me back to the bad old days! pre early 2000s
For the manual interrupt setting (for ISA cards which never went pnp IIRC) Linux had these utilities pnpdump and isapnp. The kernel (2.x on, I think) configured the pnp pci cards; pnpdump read the isa bus and you got your isa bus options; then you'd write /etc/isapnp.conf which told the kernel what interrupt & i/o your crappy isa stuff would respond to. Sound cards needed 2 separate interrupts, one for midi, one for everything else.
Today there is a push for user friendliness in linux because younger people's patience and attention span shorter. Grub, Systemd, SeLinux, Cups & Network Manager would have people of your personality (and mine) in a home for the bewildered if you read up on them.
Grub has over elaborated hugely to cope with EFI / UEFI. You're left with a poorly documented behemoth.
Systemd has a faster startup control which is binary, so you can't edit it. Even on my simple LFS, it installed 106 man pages, covering a utility or config file each.
SeLinux is a (not Particularly good) security system which lets you do nothing except through it. Everyone tried it, but no distros kept it except the Red Hat stable.
Cups is a pita, but you'll manage because you more or less have to. You can use ghostscript, but it's not worth the effort.
Network Manager is fine for a GUI when you want to know nothing. If you want a handle on things, you need to dump Systemd & Network Manager
Another reason for this is that every distro has Perl, Python, & Java support. You can get apps up & running much quicker in those languages, add modules, etc. but it's always easier to write another utility than debug the existing ones :-/.
Distribution: Currently: OpenMandriva. Previously: openSUSE, PCLinuxOS, CentOS, among others over the years.
Posts: 3,881
Rep:
If you're already using macOS, then at least some of the same fundamental concepts used in macOS apply to UNIX and Linux as well.
For example, the filesystem hierarchy and mounting concepts. At least some commands you'll find in Linux would also exist on macOS. So you could practice at least some things with macOS if you're already using it.
My advice in regards to Linux would be to start with a "newbie friendly" distribution and learn how to do common tasks in Linux. You could use Virtual Machines or a "live" USB/CD/DVD/etc and once you got a handle on the most common things, you can move onto the finer details.
To be clear, I have purchased a mid range second hand laptop of which I've dedicated to all things linux.
I don't want to tamper with the mac for this stuff is it's an income stream for me.
So I have Slackware up and running (as I type this from!) on this old laptop and all good. Will look at some of the suggestions here. At the moment just been bumming around the system whilst referencing the books and generally just trying to soak up as much as possible.
I did performance tuning in another universe. Anathema to Windows and Mac. Tools were fragmented to non-existent in Linux, so I initially looked at OpenSolaris so I could write my own kernel traces with dtrace and scratch that itch.
Than Oracle burnt that bridge. Apple ? - nope, they licensed dtrace but disabled for their own code. Why would I want to give those pricks my money ...
Over the years Linux has developed new tooling that even a mug user like me can now use. Took a while, but I am now happy in my own little pool - hope you find yours.
There have been quite a few positive developments with regards to audio and video production GNU/Linux lately. Maybe you could try one or the other? If you test out audio production, it might be a little uncomfortable since you already have an established work flow, but if you approach it as something new then it might work. For music, see Audacity or Ardour or one of its competing projects.
Video production would be close but perhaps not so ingrained that you chafe for the familiar ways. See OBS, Kdenlive, and Audacity for that. It might be sluggish on a laptop though.
Photography is another area which might be interesting. On the high end there would be Darktable and RawTherapee. Digikam and Shotwell are two good photo organizers.
3D animation (plus more) can be done with Blender. Heads up that the UI for Blender is different. The UI is fast, efficient, and useful as heck but different than what you've ever tried before. You may end up taking a week finding your way around it. However, there are lots of great tutorials. A few full-length movies have been made using it.
I agree with the previous poster(s) who said that Linux From Scratch is the way to go. I tried it myself, and realised that I DON'T have that level of interest in the inner workings of Linux. For me, I only have that interest when daily usage is impaired by things not working properly. As an Ubuntu user, I'll leave that side of things to Canonical, and Debian.
The only area where it becomes particularly relevant to me is when they remove some of my favorite programs from the repositories, for compatibility problems.
.....
Linux is different. I have no necessity, I just want to learn it because I like learning new things but because there's no singular need I find myself installing a distro and then feeling a distinct lack of "okay job done, what now?"
....
Does anyone have any advice ?
If you're reading - Thanks in advance.
that says it right there, it is not a learning disability . it is a lack of real interest, because the necessity is not there. To your brain it is just a waste of time, no matter what you tell it.
find something you want to do with Linux then teach yourself how to do that using Linux. Put the necessity back into the learning.
Distribution: Currently: OpenMandriva. Previously: openSUSE, PCLinuxOS, CentOS, among others over the years.
Posts: 3,881
Rep:
Quote:
Originally Posted by alexpaton
...realised that I DON'T have that level of interest in the inner workings of Linux. For me, I only have that interest when daily usage is impaired by things not working properly. As an Ubuntu user, I'll leave that side of things to Canonical, and Debian.
The only area where it becomes particularly relevant to me is when they remove some of my favorite programs from the repositories, for compatibility problems.
Quote:
Originally Posted by BW-userx
that says it right there, it is not a learning disability . it is a lack of real interest, because the necessity is not there. To your brain it is just a waste of time, no matter what you tell it.
find something you want to do with it then teach yourself how to do that using Linux. put the necessity back into the learning.
Right on guys!
I was thinking very similar things about other things (as well as Linux in general) myself. Also, once I've learnt something and I already know it, the excitement disappears. As far as the thread is concerned, I'd agree with ya's. Well put the both of you!
Well I had a nessicity this evening, I dug out old Unreal Tournament 2004 discs as I remember they had a specific linux installer on them.
I had some mounting issues to start with which I overcame (user error, nothing to see here)
Then I got it installing via the included sh script.
Got it running but resolution was off (and no option to go up to the resolution of my screen)
Sound didn't work.
Had to edit the .ini and include custom resolution - this worked!
..but for some reason I had to find the directory called ~./2004 (Can someone explain the tilde? and why I had to use that? Figured it was hidden but couldn't find it in file explorer even with hidden shown only accessible via terminal via CD command into a directory that wasn't listed when I did an 'ls'. Odd)
Got the sound working via padsp ut2004 command - Could someone explain why that worked and it doesn't work when I DONT use padsp prefix?
So that was good, took a couple hours to wrap head around the whole thing including research and providing someone can help me out on the above two points I learnt a few things too.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.