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 am new to the site but seek to rapidly become a linux guru like many of you. to give some background, i started out with windows and mac about 20 years ago. since then, i have become a tcpip networking specialist with a fondness for linux and open source solutions.
i am an inventor of smartek solutions and i seek to work with people i like. i am a problem solver by nature and want to fix the world.
esa muhammad
Click here to see the post LQ members have rated as the most helpful post in this thread.
I myself can't tell you because I am no guru, but let me try to sketch out what could you do.
1. Learn to work with shell. (Bash especially).
2. Learn how to manage Linux computers. (Most of "working with Linux" books cover this area I think).
3. Learn about Linux kernel, and it's components.
4. Learn few programming languages, starting C/C++, continuing to Python, ending with Assembler.
5. Learn TCP/IP and network problematics. (Ah, I see you already know that).
6. Start making your own applications, especially the ones interacting system in lower levels.
7. Play around with distributions like LFS or Gentoo.
If you acquire knowledge in these steps, I think you can consider yourself being a handy Linux user.
1. Install it and use it, for all possible tasks. Use a distro that forces you to learn as main distro, like Arch, Gentoo or Slackware, but have also a look at other distros.
2. Play around with it, try new things, set up systems for tasks that you haven't done before, like web-server, FTP-server, PXE-server, ... .
3. Read, read, read and try, try, try.
4. Ask if you have problems, no one knows everything and here are many people that are able to help you to understand what the problem is and how you can solve it. Also, search engines are your friends.
5. As suggested above, if you feel somewhat comfortable (means you should fulfill the prerequisites) try to build a LFS system. After you have done that once try to build one for one special purpose.
I retired from a major company that had people there that would have double Doctor degrees as a common thing. Some of the people who really did invent the internet knew so much about one subject they would almost seem stupid on others. Trust me on this. Any person who ever suggests they are a guru is a dope. No one ever really knows it all. You will never even get close to knowing it all. If you worked or played with it for 20 years you'd still be a newbie on some stuff each day. I guess I am a newbie today again. Same as yesterday. Just keep at it.
I am no linux guru (and don't think so I will be, what Jefro said is very very true) but this is how I try things:
1. Installed VMware on one of my machine. You can use Virtual box which is freely available for this purpose.
2. Install different linux distributions. Like I have installed RHEL, SLES, Ubuntu, Linux Mint, CentOS etc.
3. Create a lab using these distributions in which one distro will be used to host web services, one will be your ftp server, one will be acting as samba server etc.
4. Use Ubuntu or Linux Mint as a client system so that you will have linux as client and server as well.
5. Try automating tasks on these machines using crontab or at. This will give you hands on on how business organization automates the process of backup or important task execution.
6. R&D (Research and Development) is one of the important thing in linux. Remember Linux is dominant and you should keep on learning new things.
7. Work in your lab as if you are working for a firm and you are responsible for handling all these systems.
8. Play with real data. Put your real data on these servers (ofcourse keep a backup somewhere) because if something goes wrong then you should feel/understand the pain to get it working again.
Last but not the least learn to enjoy linux instead of taking it as learning because when you enjoy you automatically learn.
And do not think about becoming linux Guru, think about becoming linux lover and you will feel the difference.
Last edited by T3RM1NVT0R; 08-30-2011 at 06:23 PM.
+1 to both jefro and T3RM1NVT0R. My add to this conversation is that no one (who is not an idiot) refers to
themselves as a guru. Others will be the ones to say ... go and see so and so he is a guru at blah
I retired from a major company that had people there that would have double Doctor degrees as a common thing. Some of the people who really did invent the internet knew so much about one subject they would almost seem stupid on others. Trust me on this. Any person who ever suggests they are a guru is a dope. No one ever really knows it all. You will never even get close to knowing it all. If you worked or played with it for 20 years you'd still be a newbie on some stuff each day. I guess I am a newbie today again. Same as yesterday. Just keep at it.
Harken, Ye, to the Voice Of Wisdom!
"Forsooth, I do declare that This Man Speaks Truly!" I know this, because I have been working professionally with software for thirty years now, and...
... Jefro is right.Hear ye!
It has been said that there are three steps of maturity/wisdom:
First, you know what you do not know. You realize that you are a neophyte in the subject.
Then, you do not know what you do not know. You suppose that you "know everything."
Finally, you come to a point where you do not know what you know. It's just "instinctive." Or it seems that way at times.
You cannot be "a guru," and you do not need to be. Instead, become skillful and reliable at doing what you are asked to do, at fulfilling the business need that you are relied-upon to fill. Always take it upon yourself to be wise, and that certainly means saying outright, so to speak, "I'm not sure I know how to do this properly, therefore in order to handle this task safely and appropriately I propose now that I should (fill in the blank) ..." There is zero shame in that. It is fully to be expected. It is respected.
Last edited by sundialsvcs; 08-30-2011 at 08:29 PM.
The suggestions above are excellent. And the "no one can be a guru" is right on target. Someone might be a guru one on topic, but on Linux as a whole: life's not long enough.
I will add one concrete, specific suggestion that I heard from a Linux sysadmin discussing interviewing applicants:
Learn how to use regular expressions in the terminal.
guru - uses m4 and lex with comfort
- writes assembly code with "cat >"
- uses adb on the kernel while system is loaded
- customizes utilities by patching the source
- reads device driver source with his breakfast
- can answer any unix question after a
little thought
- uses make for anything that requires two or more
distinct commands to achieve
- has learned how to breach security but no longer
needs to try
I'm no expert, but i think one tip that will help is, when you need to do something, but don't know how, and you look it up in your favorite search engine, and your solution is to copy and paste X command into the terminal; do this but don't just leave it there; look up why that command, what each part is for. I never used to do this, but have since started and have began learning. Once you know what them commands are, you'll be able to adapt them to future appropriate needs. I know this simple tip is perhaps an obvious one, but i know i used to just put what i was told to put in the terminal and left it at that, and i'm sure there are many other people that do that to.
LinuxQuestions.org is looking for people interested in writing
Editorials, Articles, Reviews, and more. If you'd like to contribute
content, let us know.