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!
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.
Introduction to Linux - A Hands on Guide
This guide was created as an overview of the Linux Operating System, geared toward new users as an exploration tour and getting started guide, with exercises at the end of each chapter.
For more advanced trainees it can be a desktop reference, and a collection of the base knowledge needed to proceed with system and network administration. This book contains many real life examples derived from the author's experience as a Linux system and network administrator, trainer and consultant. They hope these examples will help you to get a better understanding of the Linux system and that you feel encouraged to try out things on your own.
Click Here to receive this Complete Guide absolutely free.
2. I think you mean you want to get the Linux OS installed?
Pick a linux distribution (aka 'distro') from www.distrowatch.com eg 'Linux Mint'.
To install, you'd have to download 1 or 2 iso files, use a tool like ImgBurn if you have access to a MS-Windows system and burn them to DVD as type iso, not as type file.
You'd then boot the computer from the 1st DVD and take the default prompts.
NOTE: if you're really not computer aware, I strongly advise you find a friend or maybe local Uni student who is.
You can also look for a local Linux User Group (aka LUG); google LUG and your town name.
You might also be able to skip the download/burn by looking for a Linux magazine; they often have free CD/DVD attached.
3. no need for school; at least initially, although see point 2 about getting some help.
Learn to run it first. Then worry about the rest later. Courses and books in my signature. I have no formal computer training what so ever
but I am a distro team member that helps a couple of distro developers.
Edit: I say all of this because one should learn the meaning of words before trying to write a story. When I started. Things like symlink, edit /etc/fstab, lilo,grub, sda, were all greek to this biker. I had to install and run Gnu/Linux for a while before I knew even the terminology. You can't ride a motorcycle reading a book. Same for Gnu/Linux.
First thing is to get a distribution installed. Ubuntu, SUSE, MINT, something that your can run and play with. I recommend that you just do this with a computer which you can re-image at will so that if you do have problems, you can re-install or install something else and scrap whatever you had if it got messed up too badly. But you should not try to modify grub (the bootloader) or the kernel boot too much for starters, learn first how to configure the system.
Also have a secondary system, running something you know, such as MAC or Windows where you can download new Linux distributions, and burn either a USB stick or CD/DVDs, and also google, or search this and other sources for information in the event that the Linux station you're playing with won't boot or let you get on the network.
First explore the system settings available from the UI, then look more into how those settings and configurations are performed in files.
Move into editors and see about learning to use things like gedit, gnuemacs, and vi. People may tell you to avoid vi because it's not graphical; however if you end up on a very limited system, there may be limited graphics, so much that you can only used vi, so I recommend learning it so you can edit files to fix or re-configure stuff from the command line.
My thinking here is that slowly you get experience with the command line and the commands one can use. Concentrate on searches across files, and how to structure commands. Try out a few scripts, for instance some bash programming.
Once you have confidence that you can shape your system around, then you can decide what type of programming you want to do. You'll also have to install stuff, likely to be able to do development. Research how to install stuff on your system, whether that be dpkg, or other methods. One thing you'll notice also are files which are archives like TAR files, and may also be zipped by gzip or bzip2. Learn how to look at those files with the command line, examine them before extracting, testing their contents, and then extracting them.
Part of all that, you'll see that much of the stuff to install is really installed by making from source. There will be dependencies for a lot of stuff, not just things you build, but also things you install with dpkg or the equivalent. So you'll have to learn a bit about how to research dependencies and resolve them so you can install more complex stuff which gets you the results you want.
Depending on the type of programming you want to do, you can go with kernel, kernel drivers, or application programming. I recommend starting with application programming, the easiest and you can debug pretty well without causing big problems with your system. As you gain experience, then move into kernel drivers, and finally kernel programming itself, if you like. I think by the time you're ready to do that, you'll have a good idea as to whether or not it's something you'd like to tackle. That's why I recommend application programming first; do the "Hello World", write stuff to compute mortgage amortization, write some user interface stuff, once you can debug fairly well in that domain, then try editing a kernel driver where you have the source and modifying the behavior of that driver. From there look into building a kernel, such as "re-building" a kernel you already have. See how you can reconfigure it and thus shape the kernel differently.
Recommended things to install:
Recommend things to use/explore:
- GDB - part of GCC
- C/C++ coding
- Various editors, vi, gedit, gnuemacs
- The Linux file system, /proc, /var, /sys, /home/<user>, /etc
- Read about how Linux is structured, there are plenty of things like a Linux for Dummies book out there.
- Visit the Linux Documentation Project website and read about Linux there.
Best option is to partially dive in and explore, but also learn how to protect yourself from ... yourself, and be prepared to fix/recover when you've done wrong. Once you've trodden enough, you'll likely develop an instinct to pre-protect your system. Hmmm ... I'm changing grub totally here. How can I do that without screwing up my system so it won't boot? Like maybe don't test grub on "that" system, but instead a throw-away system where you can just re-image it totally if you did something that compiled but doesn't work.
http://www.slackbook.org/. Slackware oriented, but excellent on the basics, such as file structure, permissions, and the like.
I would suggest two things:
Whatever distro you are using (Ubuntu?), stick with it for a while and learn how it works before you try another one.
Pick a reference that looks good to you and at the correct level and seems to speak to you, and work your way through it, rather than hop-skipping around (although hop-skipping is okay to answer a specific question or solve a specific issue). I found the Garrels book, linked above, the single most useful thing I read when I started seriously learning Linux. I still have a printed-out copy on my bookshelf.
I'm just starting out to learn the tech world. I've been living as a cave man mind set, for 20 years. I don't know much about computer.
I want to know how to program a computer useing linux?
What are the stepes to achieve the computer program, linux?
Do i need to go to school to learn linux?
You don't program a computer using Linux. Linux is an operating system similar to Unix. It allows you to run
programs on the computer, such as word processor, spreadsheet (LibreOffice), web browser (Firefox), email (Thunderbird), VOIP (Skype or Ekiga), etc... If you want to study Linux in depth, there are many good books on Unix such as Pike & Kernighan The Unix Programming Environment (Prentice-Hall, 1984) or H. Hahn The Unix Companion (McGrawHill, 1995) that can be helpful.
If you want to learn shell programming on Linux, you should look for books on the Korn Shell (pdksh,zsh) or the Bash shell.
Besides, there are many programming languages available on Linux whether compiled (C, Ada, Fortran with gcc) or interpreted (awk, perl, python, tcl/tk, clisp). Which programming language you want to use depends on your needs.
Whether you need to take a computer science class at University or Community College or not depends on how
deeply you want to know Unix/Linux or computer programming. If your idea is to become a professional computer
programmer, then you should apply for such classes in order to understand operating systems design (for kernel development), algorithmics, numerical analysis (if you want to do Fortran). If you are only going to be
only a casual Linux user, you will only need only to know how to use a graphical desktop such as KDE which is
no more difficult than using Windows or Mac. In such case, you don't need any computer class.