Can someone suggest a path
OK I have been blundering my way thru Linux for a few months. I love it, but I feel stupid a lot.
Can anyone recommend a path, a book, a course, a "best way" to become proficient....I know that actually using the system, making mistakes etc, is great learning, but I would like to know how gurus become gurus. (I am too old to go back to 4 year school). I mean, I need the crash course. Thanks, LFW |
What I did was I nuked my Windows, and just stuck with it for several months. THe best way to learn, as you said, is to use it.
To speed up learning, I guess you could try more "advanced" distros. |
Slackware is a pure linux distro which will give you a good understanding of how the nuts and bolts work in linux. It takes a little while to get used to it, but once you do the linux knowledge you gain can be applied to just about any other distro.
regards, ...drkstr |
Hi
If you are anything like me, reading how to do something just doesn't sink in well at all. I have tried Linux a number of times since 1997, and always went back to Windows because I just could learn it. This time, I have been at it for over a year consistently, and while I am still learning, this is what has finally worked for me: 1. Learn where things are in Linux. For example, if your mouse scroll wheel is not working, find the file which holds it configuration (xorg.conf). If you want to know if a library is installed, learn where they are stored. Learn where to find things, and what to do with them seems to come more rapidly. 2. Try a project like compliling a new kernel on a machine that is not critical to you. If you screw up and it won't boot, you keep trying until it does. Beat the frustration and temptation to just throw in the towel. 3. Get an easy to read reference book (Linux for Dummies is a good one). While learning might not come easy from a book (for me, at least), having it available as a reference has helped me. 4. Use Linux exclusively for everything. One of the reasons I never stuck with Linux is because I would "play" with Linux, but do all of my serious work in Windows. Now, evern though I still have XP on my machine, I very rarely boot into it, and even then it is just to print out an old file or something. ALL of my serious work is done in Linux. 5. Add another Linux distro to your machine. I have two distros, and four versions of Fedora on my machine, as well as windows. This allows me to "experiment" how different distros handle the same project. I know I won't go back to Windows now and I am enjoying learning more and more about Linux. And, as I am sure you are experiencing as well, this forum makes all the difference. I, for one, am glad we have this resource. Just my thoughts. Bob |
Excellent advice Mr. Nutfield. Learning the core Linux concepts and then putting them to practical use is truly the best way to learn Linux. I would like to add on to your idea and list a few more things that helped me be more comfortable with Linux.
The biggest thing I can think of off the top of my head, is learning how to read and interpret error messages. When something goes wrong, chances are it will tell you why. Use Shift+PgUp to scroll up in the terminal and read everything the messages says. If you see a “file not found” or “XXX not defined” then chances are you are missing a required library dependency. Just look it up online to find out what needs to be installed to fix it. If you can’t figure it out, you can always ask on LQ. But us bob said early, it’s all about location, location, location. Sometimes you are sure you installed a dependency but it still gives you the error. Check to see where you installed it and where the program causing the error is trying to look for it. Find out the difference between /usr and /usr/local, figure out what’s in /usr/lib or /usr/share. Figure out where all of your configuration and startup files are and what they do. The key with Linux is to not learn everything about it, but learn how to find the information you need to solve the problem. Regards, …drkstr |
This is highly recommended
http://rute.2038bug.com/index.html.gz also these http://www.linuxcommand.org/ http://www.faqs.org/docs/bashman/bashref.html#SEC_Top http://www.usc.edu/~lhl/tutorials/unix/ but as mentioned above, actually trying things is what makes it stick in the mind... |
Here are some things I wish someone would have told me.
Directories: /bin basic nuts and bolts linux commands /boot stuff to boot like the kernel, initrd (ram drive), grub (boot loader) /dev Special files called "character devices" and "block devices" These are all the hardware devices. You use mknod to make devices. Linux usually makes the devices you will need, plus a lot more. /etc text based configuration files. All the services are in /etc/init.d You usually want to start, stop, or restart a service. If you have to restart the ntpd service: cd /etc/init.d sh ntpd restart In linux you can put multiple commands on one line. /home This is where all people's junk goes. Everything personally to do with any user goes in here. /lib A lot of important libraries are here, and there is the /lib/modules subdirectory symlink to /usr/src/linux that is helpful in building initrd images. /media these are regular old directories, but they are mount points for media devices like CD/DVD players and floppy. When you put in a floppy it isn't mounted. You launch a shell and type: mount fd0 or mount /media/floppy then you can go to /media/floppy and all the files on the floppy will be there. All your mount points are in a file called /etc/fstab. Look in that file. /mnt mount points of remote drives, usb drives, network drives /opt different distros put different things here. KDE and Gnome are sometimes in /opt. /proc This directory is filled with process information. You can look at a file in this directory with: dd if=/proc/file | hexdump -C | less /root This is the root user's home /sbin Administrative programs usually not available from a user prompt - must be root. Switch to root with: su /srv Don't worry about that directory. /sys Very basic level hardware files /tmp temp /usr All the good stuff. /usr/bin = user programs /usr/src = kernel stuff /usr/lib = many libraries /usr/share = documents and stuff. I'll give you a tip: If you ever try to install a program that needs a library (a .so file), and you have a later version of the library on your machine, which you can tell by looking in /usr/lib, make a symlink to the newer library with the numbers you need. But, there are many symlinks in /usr/lib, so use: ls -la | less to view the contents of that directory. Less is my favorite editor, except that it doesn't do any editing. That tells you which files are symlinks by the arrow next to some on the filenames. Make sure you make your link to a real file and not a symlink, like this: cd /usr/lib ln -s library.500.so.6 library.5.so.6 Some programs are really picky about which libraries they will use. If the numbers are close, just make the link to a name the install will like. /var Logs are in /var/log Do this from a root shell: updatedb Now you have an index of all filenames on all your drives. with this you can find every file with some letters in the name: locate filexy everything with those letters anywhere in the whole path will come up on the screen. This is incredibly useful for finding files. use this to find out about a command: man <command> this will give you the manual page for all the commands, one at a time. Like: man grep will show you how to use grep. |
Thanks, AwesomeMachine, this was really helpful!!!
|
I got an Oreilly cookbook on linux admin, and one on security, whilst not a comprehensive insight, they give good tips, and some commands, you can then explore these commands, combine them etc. and go from there. Google was also a great help, so is having a running system to test things on. To be honest i learn most things from trwaling these forums, it's quite interesting to see what others are trying to achieve, and the fixes. Also amazing how many people want to achieve the exact thing you do.
I run Arch now which leads to a fair amount of reading and helps alot |
I found the lnag to be highly useful (linux newbie administrator guide).
http://linux-newbie.sunsite.dk/html/lnag.html I read the whole thing when I was bored. |
Not forgetting TLDP. Lots of HOWTOs, guides, etc, though most distros include the HOWTOs anyway. The SAG covers basic administration.
I learnt Linux by installing it, playing with it, and reading the howtos, man pages, and the odd magazine (that's about all I could read as I had no internet connection). |
Try the bookmarks section: http://bookmarks.linuxquestions.org/
|
Thanks everyone for your helpful responses.
|
All times are GMT -5. The time now is 05:27 PM. |