1. Why should we study Linux?
Why do we have to learn Linux? What value does Linux bring to us?
Linux gives me the feeling is stable , free , good performance .
stable , where is the embodiment? We use the PC, installed operating system is generally Windows xp,windows 7, these operating systems, if you open one weeks, your machine will be restarted, because the computer can become very slow, but if you use Linux, generally can support one months without restarting, Now, if the machine is busy, the exception is. I'm talking about a personal PC, and many internet companies are using cheap PC servers, and the current price is no different in nature for every 2-3w,pc Server and personal pc, as is the x86 processor architecture, which is a complex instruction set, just a PC Server stability than the personal pc a lot higher, performance and memory is also relatively high, but the price is to boot relatively long, generally 5 minutes, the sound is particularly noisy, home to buy PC server simply can not be used. General PC Server installation Linux can be maintained for a year without restarting.
free , it should be clear that the Windows operating system is not free, especially for enterprises, if each server installed Windows, the enterprise to pay the operating system is very expensive, especially for internet companies, with a large number of PC Server, Distributed throughout the country, to pay the protection costs of windows, is simply deadly. In China, the general business is a symbolic buy more than 10 license, the intersection protection fee also pass (Windows has back door, do not find home computer trouble, enterprises will be trouble), but if the enterprise is relatively large, good benefits, more machines, more than 10 license is not enough protection fee, So the use of free Linux is a good choice.
performance , Linux has done a lot of optimizations, such as Linux will be the free memory cache file directory, file content, can not use virtual memory, but Windows will be using virtual memory, even if the memory is sufficient. Software, Linux has a huge open source software support, Web servers, cache servers, database servers, these are free choices, are stable and mature products.
However, I think that Linux in the server domain is indeed very powerful, but on the personal computer, I always feel that it is not easy to use, at present, Windows is good, even the best linux,ubuntu of the personal desktop is not better than Windows,windows has an excellent user experience, Easy to operate, personal software support (e.g. online banking).
2. Select a Linux distribution version
The first thing to learn about Linux is to choose a Linux distribution, which can be installed on a virtual machine or a physical machine, and it is best for beginners to use virtual machines . Beginner Linux First thing, is to see a lot of Linux branch and Dizzy, what is the difference, why Linux is not only a version, but there are many versions of it? In fact,Linux is actually an operating system kernel , but an operating system in addition to the kernel, there are user interface, application software, such as the windows we use, but also the Windows kernel, in addition to the Windows kernel, There is also the Windows graphical interface, Windows Office and other application software. And Linux is a free open source kernel, each manufacturer can go to the Linux kernel website http://www.kernel.org/download kernel, and then to customize their own graphical interface and application software, so there will be many Linux branches, but the kernel is the same.
Currently Linux has only a few branches:redhat,ubuntu,debian,suse. Many other Linux distributions are derivative versions of these branches, such as domestic red flags, and CentOS is a derivative version of Redhat.
in the server field, personally think Redhat now do the best , the desktop area is the best Ubuntu , and we learn the biggest goal of Linux is to learn the Linux server domain, so I recommend the Redhat version.
The school's Linux textbooks are older, most of the Redhat Linux 9 tutorial, but Redhat Linux 9 due to hard drive relationship, is not installed on the current physical machine, including myself, but also by university textbooks misleading.
Redhat Linux 9, Redhat company is not maintaining the open source version of Redhat, so the direct release of his commercial version Redhat Enterprise Linux 2, currently has Redhat Enterprise Linux 6, but the stability of 6 is not clear, personally recommended to use Redhat Enterprise Linux 5, please go online download Redhat Enterprise Linux 5.
Redhat Enterprise Linux is said to be a commercial version, but as long as you install, make sure you do not enter the serial number, you can still use the normal, just can't update the software on the Redhat official website, and then, here to mention CentOS, because Redhat Enterprise Linux is a commercial version, so centos this organization and Redhat company bought the source code, and recompile, free to open up, free of charge for users to update the CentOS website software, including the use of Redhat Enterprise Linux systems can also update the software on the CentOS website. Everyone may also have doubts, since CentOS and Redhat are all the same, in addition to the name is not the same, why not choose CentOS. In fact, there is no difference, CentOS 5.5 and Redhat Enterprise Linux 5.5 is the same, you can choose Centos to install, to get redhat tutorial learning.
3. Introduction to Learning Linux
With the Linux distribution selected, you'll want to start learning Linux.
1. Install Linux, of course, please go online google or Baidu, download Redhat Linux 5 installation CD, and then install VMware, self-installation
2. More hands-on, multi-knock command. Read only, do not practice, everything is a cloud. The default installation Redhat 5, start Redhat 5 is with a graphical interface, but the best graphical interface is less useful for learning Linux disadvantage, be sure to use the character interface, slowly habits. At work, using Linux, the probability of using a graphical interface is almost 0. So you go to learn the technical value of the graphical interface, almost 0, the price is not high.
4. How to learn Linux
1. Learning Linux The first thing is to learn the Linux Foundation, this aspect I recommend Bird's private dish of the Linux basic files, which explains the Linux files, disks, networks, processes and so on, read this book, and a command to practice, You're getting Started with Linux.
2. The second thing to learn about Linux is Linux. As mentioned earlier, the biggest use of Linux is the server domain, so you have to learn the second step is to learn to set up a server, this aspect I recommend Bird's private dish Linux rack station files , this book introduces a lot of server assumptions, there is no need to all the server setup steps to read. Personally think you can start the foundation of the server, and then see how to build a Web server, FTP server, Telnet server, SSH server. Learn how to build and manage these servers, and then choose Other servers based on your personal interests and needs.
3. Advanced -Programming . When you get here, you just use Linux, maybe learn a little shell programming, you can learn a simple shell, write a script. But if you want to become more familiar with Linux, you need to learn Linux programming. For example, how the Linux pipeline works, how the Linux Deamon process is implemented, and why Nohub can allow a process to run in daemon form, even if the shell is closed, will not let the process be closed. These, you learn the Linux environment programming, you will be enlightened. Here I recommendAdvanced Programming for UNIX environments , which is the Bible of Linux/unix programming, and is a masterpiece of the world.
4. Here, you can have a good understanding of Linux/unix, has a certain foundation, then you will be based on your interests to choose the direction you are interested to study, perhaps according to your work direction to study (many times the work is not their own interests), Master led the door, practice in the individual, The above learning steps are the most simplified step I can think of, the more things I learn, will only make beginners more confused.
Linux Beginner's Guide