<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.maximumpc.com" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>Maximum PC debian RSS Feed</title>
 <link>http://www.maximumpc.com/tags/debian</link>
 <description>used for category lists, takes arguments</description>
 <language>en</language>
<item>
 <title>The Complete Beginner&#039;s Guide to Linux</title>
 <link>http://www.maximumpc.com/article/features/the_complete_beginners_guide_linux</link>
 <description>&lt;!--paging_filter--&gt;&lt;table border=&quot;0&quot; align=&quot;right&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
digg_url = &#039;http://www.maximumpc.com/article/features/the_complete_beginners_guide_linux&#039;;
&lt;/script&gt;&lt;script src=&quot;http://digg.com/tools/diggthis.js&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;We are certain that many of you want to try Linux to see what it is like, but have no idea where to start or how to get into it. This is our complete guide to introduce you to the Linux environment and teach you how to adjust to it if you are a new user. From picking the perfect distro for your needs to partitioning and installing the OS, this guide will show you the step-by-step process of getting Linux up and running on your machine. We break down the fundamental differences between the Linux and Windows graphical interfaces, and show you how to utilize Linux&#039;s terminal like a pro. Whether this is your first time running Linux or you&#039;ve been an open-source accolyte for years, you&#039;ll find lots of useful tips and reference information in this comprehensive overview. &lt;/p&gt;
&lt;div style=&quot;text-align: center&quot;&gt;&lt;img src=&quot;/files/u17625/tuxpenguin_415.jpg&quot; width=&quot;415&quot; height=&quot;250&quot; /&gt;&lt;/div&gt;
&lt;p align=&quot;center&quot;&gt;&amp;nbsp;&lt;/p&gt;
&lt;table border=&quot;0&quot; align=&quot;center&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h3&gt;Table of Contents:&lt;/h3&gt;
&lt;/td&gt;
&lt;td&gt; &lt;/td&gt;
&lt;td&gt; &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;Part 1: Finding the Right Distribution&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_2_installation&quot;&gt;Part 2: Partition and Installation&lt;/a&gt;&lt;/h2&gt;
&lt;/td&gt;
&lt;td&gt; &lt;/td&gt;
&lt;td&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;Part 3: The Linux GUI&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_4_introduction_terminal&quot;&gt;Part 4: Introduction to the Terminal&lt;/a&gt;&lt;/h2&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;Part 1: Finding the Right Distribution&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;One of the hardest things to do while starting out is &lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;finding a distro that is right for you&lt;/a&gt;. Many users try several before settling on one of two that they really like. Once they find a distro that feels right, they are often reluctant to switch unless the distro becomes unsuitable for their needs for whatever reason.&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/ubuntu_virtual_desktop_sm.png&quot; width=&quot;415&quot; height=&quot;312&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Arguably, the most important factor in choosing a distro is your general level of experience with Linux. Not all distros cater to the same intended user audience. Some (like Ubuntu) are designed to be more accessible to novice users while other distros have a greater learning curve. Distros like Gentoo or Slackware are not necessarily meant to be “harder” than Ubuntu; they simply work out that way because they are less automated and often sacrifice ease of use for the greatest possible user control or system transparency. Many advanced users know what they are doing and prefer doing things their way.&lt;/p&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_2_installation&quot;&gt;Part 2: Partition and Installation&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_2_installation&quot;&gt;This chapter&lt;/a&gt; is going to walk you through downloading and burning a CD image of your chosen distro(s), the traditional way of partitioning and setting up a dual-boot system, and another way to dual-boot without repartitioning. Instead of providing a step-by-step tutorial for a specific installation process, our goal is to educate you on the underlying concepts in a more generalized way that you will be able to apply towards many different Linux distros.&lt;/p&gt;
&lt;div style=&quot;text-align: center&quot;&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_2_installation&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/installmeter2_sm.png&quot; width=&quot;415&quot; height=&quot;311&quot; /&gt;&lt;/a&gt;&lt;/div&gt;
&lt;p&gt;We cover software acquisitioning, hard drive partitioning, distro testing, and the actual install. You should also read &lt;a href=&quot;/article/howtos/howto_install_linux_risk_free_with_no_formatting_or_repartitioning_required&quot;&gt;our previous guide&lt;/a&gt; to installing Ubuntu for further instructions.  &lt;/p&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;Part 3: Choosing Your Window Manager and Desktop Environment&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;The Linux graphical user interface (GUI) system may be very different from what you are used to if you are coming from a Windows or Mac OS X background. The GUI of an operating system is commonly referred to as its shell. While virtually all versions of Windows since Windows 95 have used variations of the same basic shell (explorer.exe), there are numerous shells available for the Linux GUI. These Linux shells are called window managers and desktop environments. The term &lt;em&gt;window manager&lt;/em&gt; is used to address the simple core user interface of a shell, while the term &lt;em&gt;desktop environment &lt;/em&gt;is much more inclusive, covering the shell itself in addition to the various other programs that are integrated with it. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide3/avant_sm.png&quot; width=&quot;415&quot; height=&quot;259&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;Due to the vast number of window managers available for Linux, many new users often feel overwhelmed at the idea of having to learn their way around them. We must emphasize that many people experiment with several window managers before settling down with one that feels right for them, and there certainly is no need to learn all of them. Due to their modular nature, it is common to have several window managers installed at once. &lt;/p&gt;
&lt;p&gt;Much like part one of this series that dealt with choosing a distro, &lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;this guide&lt;/a&gt; will help you to choose a window manager/desktop environment by introducing you to several of them and addressing their strengths and weaknesses. &lt;/p&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_4_introduction_terminal&quot;&gt;Part 4: Introduction to the Terminal&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Traditionally, most new users have always been reluctant to experiment with the command line interface, (commonly referred to as the terminal) yet it has always been one of the most important parts of learning Linux. Once you understand the terminal, Linux will finally open up to you. The terminal is easily the most powerful part of a Linux system; it is your way of being able to work directly with the operating system without any barriers or hindrance. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_4_introduction_terminal&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/gnometerminal&amp;amp;xterm_sm.png&quot; width=&quot;415&quot; height=&quot;287&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_4_introduction_terminal&quot;&gt;This section&lt;/a&gt; will cover basic terminal usage in addition to ways to enhance basic commands. For the sake of simplicity, we will only address the underlying concepts of shell scripting instead of covering it in detail. We saved this part of our guide for last because it is typically the most difficult to grasp. However, the terminal is fairly easy to understand when broken down into simple concepts.&lt;/p&gt;
&lt;h2&gt;&lt;a href=&quot;/article/howtos/howto_compile_programs_from_source_linux&quot;&gt;Bonus: How to Compile Programs From Source in Linux&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Although the introduction of package management on most distros, less diversity in CPU architecture among the user base, and massive increases in hardware speed have largely reduced or eliminated the need to compile software yourself, there are still a few instances where you would have to do so. Although the various official and unofficial software repositories for Ubuntu and other distros include most of the tools that the average user would need for any given purpose, the repositories are not completely comprehensive. Old packages sometimes get dropped and updated versions are often slow to be added. It may also take a release cycle or more for brand-new programs to be included.&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;a href=&quot;/article/howtos/howto_compile_programs_from_source_linux&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxcompile/get_build_essential_sm.png&quot; width=&quot;415&quot; height=&quot;289&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;While Ubuntu and Debian have “backports” repositories that have fairly new packages in them, many other distros do not have such a resource. For large projects with large community support, the developer may offer nightly builds, but this is not the case for most projects. The only reliable way to get bleeding-edge software (stability issues aside) is to either find a repository that has it or download the source code from the developer and build it yourself. &lt;a href=&quot;/article/howtos/howto_compile_programs_from_source_linux&quot;&gt;We show you how&lt;/a&gt;! &lt;/p&gt;
&lt;h2 align=&quot;right&quot;&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;Read on to find your inner penguin! &amp;gt;&amp;gt; &lt;/a&gt;&lt;br /&gt;&lt;/h2&gt;
</description>
 <comments>http://www.maximumpc.com/article/features/the_complete_beginners_guide_linux#comments</comments>
 <category domain="http://www.maximumpc.com/taxonomy/term/31">Features</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/7567">beginners guide</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/4561">debian</category>
 <category domain="http://www.maximumpc.com/geek_tested/features">features</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/2772">gnome</category>
 <category domain="http://www.maximumpc.com/geek_tested/linux">linux</category>
 <category domain="http://www.maximumpc.com/geek_tested/open_source">open source</category>
 <category domain="http://www.maximumpc.com/geek_tested/software">Software</category>
 <category domain="http://www.maximumpc.com/geek_tested/ubuntu">ubuntu</category>
 <pubDate>Tue, 07 Apr 2009 22:00:00 -0500</pubDate>
 <dc:creator>Will Kraft</dc:creator>
 <guid isPermaLink="false">5903 at http://www.maximumpc.com</guid>
</item>
<item>
 <title>The Beginner&#039;s Guide to Linux Part 4: Introduction to the Terminal</title>
 <link>http://www.maximumpc.com/article/features/the_beginners_guide_linux_part_4_introduction_terminal</link>
 <description>&lt;!--paging_filter--&gt;&lt;table border=&quot;0&quot; align=&quot;right&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;Part 1: Finding the Right Distro&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_2_installation&quot;&gt;Part 2: Partition and Installation&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;Part 3: The Linux GUI&lt;br /&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;Part 4: Introduction to the Terminal &lt;/h2&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Traditionally, most new users have always been reluctant to experiment with the command line interface, (commonly referred to as the terminal) yet it has always been one of the most important parts of learning Linux. Once you understand the terminal, Linux will finally open up to you. The terminal is easily the most powerful part of a Linux system; it is your way of being able to work directly with the operating system without any barriers or hindrance. 
&lt;p&gt;This guide will cover basic terminal usage in addition to ways to enhance basic commands. For the sake of simplicity, we will only address the underlying concepts of shell scripting instead of covering it in detail. We saved this part of our guide for last because it is typically the most difficult to grasp. However, the terminal is fairly easy to understand when broken down into simple concepts. &lt;/p&gt;
&lt;h2&gt;Overview of the Linux Terminal&lt;/h2&gt;
&lt;p&gt;Linux has many different shells that you can use for your terminal. One of the most common shells is called Bash, an abbreviation for “Bourne-Again Shell”. (a successor to the original Bourne Shell) Other popular shells include the original Bourne Shell, (sh) the Korn Shell, (ksh) and the C shell. (csh) If you are running a window manager, you would interact with a shell program through a terminal emulator like Xterm, GNOME Terminal, Konsole, or something similar. However, if you are not running a window manager or any other GUI, the terminal is your only way of interacting with the system. Generally, the terminal is a fail-safe repair system if Xorg (the GUI system) were to malfunction. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/bash_sm.png&quot; width=&quot;415&quot; height=&quot;289&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;&lt;strong&gt;The Bash Shell&lt;/strong&gt;&lt;/em&gt; &lt;/p&gt;
&lt;p&gt;This article will focus primarily on Bash, but is applicable to other shells as well. Each shell program has its own strengths and weaknesses and is different from the others, but you are not likely to experience this very much unless you get into complicated shell scripting and programming. In the case of simple commands, the various shells operate in much the same way.&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/gnometerminal&amp;amp;xterm_sm.png&quot; width=&quot;415&quot; height=&quot;287&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;&lt;strong&gt;Gnome and Xterm&lt;/strong&gt;&lt;/em&gt;&lt;/p&gt;
&lt;h2&gt;Basic Terminal Concepts&lt;/h2&gt;
&lt;p&gt;Although Bash and other terminals vaguely resemble DOS, there are fundamental differences. While DOS is a full (albeit simple) operating system with the core functionality built in, Bash is simply a command shell that provides an interface to the operating system it runs on.  The first thing you must understand is that Bash has very little built-in functionality of its own. Every time you run a command in Bash, (no matter what it is) you are actually invoking another program as a separate process. Bash and other similar shells use a set of core utilities for basic file operations. (Some of the most important of these may be found at the end of this article) Text-based utilities like file copying/deletion/renaming, process management, and disk usage are all handled externally; although they appear to be part of Bash, that is not the case. &lt;/p&gt;
&lt;p&gt;Since the shell assumes that all programs are either in /bin or /usr/bin, Bash does not need a full pathname or require you to navigate to a specific directory to start a program. To run a program, simply type the program name at the command prompt. (e.g “vim” or “firefox”) In this article, we will refer to simple commands like these as “base commands.” &lt;/p&gt;
&lt;p&gt;The tilde (~) symbol is used as a reference to your home directory. In all instances there you would normally have to provide the full pathname of your home directory, the ~ symbol may be used instead as a matter of convenience. For instance, ~/sub_folder is the same as /home/&amp;lt;your home folder&amp;gt;/sub_folder. To navigate to your home folder from anywhere in the filesystem, you need only type “cd ~”. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/cd_home_sm.png&quot; width=&quot;415&quot; height=&quot;289&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Like the rest of Linux, a shell has two levels of privilege: regular users and super users. At the command prompt, Bash will list the name of the current user in addition to the name of the machine the terminal is running on. The user listed first and the machine listed second, with an @ symbol separating them. (e.g. frodo@shire or root@aux) Bash will also list the current directory as well. Many other shells are far less verbose and list only “$” for all regular users and “#” for the root account.&lt;/p&gt;
&lt;p&gt;Each shell can run only one command at a time. However, you can run as many shell processes as you wish at the same time under a GUI with a terminal emulator. Many terminal emulators have a tab system that lets you easily switch back and forth between any shells that you have open. Without a GUI, you can run up to seven terminals at a time on most distros; these terminal processes are assigned a prefix of “tty” (Teletype) and a number. tty1-tty6 are generally available at any given time, whereas tty7 is normally used to run the GUI system and is therefore not available for other use. To switch to a different tty, press CTRL+ALT+Fx, where x is the number of the tty you would like to use. For example, to switch to tty3, press CTRL+ALT+F3. &lt;/p&gt;
&lt;p&gt;Each program started from a terminal becomes bound to that terminal as a child process; if you close a terminal, any child processes managed by that terminal are closed as well. If you want to keep a process running no matter what happens to its parent terminal, you must precede the command with “nohup” (short for “no hangup”) when you launch it. Instead of displaying output in the terminal window as is the norm, programs launched with nohup have all output written to a file called nohup.out.&lt;/p&gt;
&lt;p&gt;To terminate a running program before it is supposed to finish, press CTRL+C. &lt;/p&gt;
&lt;h3&gt;Switches&lt;/h3&gt;
&lt;p&gt;Many programs can perform multiple functions, so additional parameters called switches are used in addition to the base command to provide access to this functionality. Switches are preceded by a dash, placed after the base command, and use letters or numbers as references to certain functions. Since you can invoke multiple switches at once, (e.g. tar -czvf ) it is possible to fine-tune the actions of a program in very specific ways that the base command all by itself would not allow. Switches can be grouped together as shown in the previous example. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/switch_sm.png&quot; width=&quot;415&quot; height=&quot;289&quot; /&gt; &lt;/p&gt;
&lt;p&gt;You should remember that switches are case-sensitive and can do different things depending on whether they are uppercase or lowercase; for example, “-R” is not the same thing as “-r”. If you use switches that happen to conflict with each other or are invalid, the program will display an error message that explains the problem. To see all possible switches for a program, you should refer to its manual page. (run “man &amp;lt;program name&amp;gt;”) The manual page will also provide detailed usage parameters for a program in addition to examples and background information. Almost every program has a manual page associated with it, often in addition to more conventional documentation. &lt;/p&gt;
&lt;h3&gt;Wildcards&lt;/h3&gt;
&lt;p&gt;Bash and other shells support the use of wildcards, which are used to substitute unknown or non-designated characters in commands. The wildcard symbol is the asterisk. (*) Wildcards differ from variables, which are used to bind specific values in shell scripts and more advanced Bash applications. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/onetype_sm.png&quot; width=&quot;415&quot; height=&quot;289&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Wildcards are frequently used with the list command. (ls). Using wildcards, you can force ls to show only certain types of files in its output instead of everything. For example, “ls *.png *.html” will display all PNG and HTML files in a directory.&lt;/p&gt;
&lt;p&gt;Wildcards may also be used to show all files in a directory that start with a certain letter; “ls a*” will display any file that begins with the letter a. It is also possible to apply a wildcard to a set of characters. For example, “ls [abc]*” will display any file in a directory that begins with a, b, or c. &lt;/p&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;&amp;lt;&amp;lt; Back to Part 3 &lt;/a&gt;&lt;/h2&gt;
&lt;hr /&gt;
&lt;h3&gt;Program targets&lt;/h3&gt;
&lt;p&gt;Many programs provide you with the option of immediately acting against a specific target entity when the program starts. This target entity may be practically anything, (a file, directory, network address, or system device) depending on the nature of the program. A target may be located anywhere in the filesystem, and it may be invoked from any directory (provided the pathname is correct) For example, if you are in your home director and wish to edit a file in a subfolder, there is no need to change to the subfolder before opening the file. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/targets_sm.png&quot; width=&quot;415&quot; height=&quot;309&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Generally, the target should be specified after the base command and any switches. (e.g. “vim -R myfile.txt”) Sometimes, switches may have targets of their own in addition to the main program target. In such instances, the manual page will tell you what types of switch/target combinations the program will accept. &lt;/p&gt;
&lt;p&gt;Although most filenames are either single words or separated by underscore characters (e.g. file_1) The terminal supports multiple worded filenames as target entities. However, spaces in filenames must be preceded by a backslash, otherwise the shell will treat each word independently. (often causing an error) For instance, Bash would correctly process “multiple\ worded\ filename.txt” as “multiple worded filename.txt”. Omitting the backslashes would cause the shell to incorrectly interpret the filename as “multiple”, “worded”, and “filename.txt”. &lt;/p&gt;
&lt;h2&gt;Working with Input and Output&lt;/h2&gt;
&lt;h3&gt;Joining commands together&lt;/h3&gt;
&lt;p&gt;If you have two or more commands that you wish to run in sequence, type them on the same line and place “&amp;amp;&amp;amp;” between each separate command. The commands will then be executed in order, from left to right. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/&amp;amp;&amp;amp;_sm.png&quot; width=&quot;415&quot; height=&quot;289&quot; /&gt; &lt;/p&gt;
&lt;h3&gt;Pipelines&lt;/h3&gt;
&lt;p&gt;Software pipelines allow you to feed the output from one program directly into another. Like the &amp;amp;&amp;amp; operator, pipelines allow you to execute multiple commands in a specific sequence. However, a pipeline automatically takes the output from the previous command and feeds it into the next command whereas the &amp;amp;&amp;amp; operator treats each command independently. Pipelines are useful primarily because they allow further processing of a command and allows multiple interdependent commands to be chained together when necessary. The pipeline is invoked by placing the “|” symbol between two separate commands on the same line.&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/pipeline_sm.png&quot; width=&quot;415&quot; height=&quot;289&quot; /&gt; &lt;/p&gt;
&lt;p&gt;For example, the grep utility is designed to search for a specific keyword you provide. If you were to run a program like ls, you can use grep to isolate a certain file (e.g. file1.jpg) from what could be a very long file list, even with wildcard filtering. If you were to run “ls | grep file1.jpg”, only file1.jpg would be listed in the terminal (if it exists) even though ls might return much more output under normal conditions. &lt;/p&gt;
&lt;h3&gt;Output Redirection&lt;/h3&gt;
&lt;p&gt;Sometimes, you may want to save terminal output. While you could use a pipeline to dump it into a text editor, there is an easier way. Using the greater-than (&amp;gt;) symbol, you can save terminal output to a text file. For example, running “cat file1 file2 &amp;gt; file3” will join the contents of file1 and file2 together and will then save the resulting output as file3. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/output_redirect_sm.png&quot; width=&quot;415&quot; height=&quot;268&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Be careful with this, since any existing file with the same name as the one you specify will automatically be replaced. To append the output to an existing file, use “&amp;gt;&amp;gt;” instead of “&amp;gt;”. &lt;/p&gt;
&lt;h2&gt;Shell Scripting Concepts&lt;/h2&gt;
&lt;p&gt;While the simple operators described in the previous section can allow you to create complex commands, true shell scripting can do much more by taking the principles described in the previous section to a whole new level. A Linux shell script works just like a Windows batch file in a sense; both are little more than a set of instructions that rely exclusively on external programs to do the actual work. This differs fundamentally from programming languages like Perl, which use internal language features instead of external programs. Shell scripting is based on the principle of using various simple programs to produce a complicated result. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide4/shellscript_source_sm.png&quot; width=&quot;415&quot; height=&quot;268&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Shell scripting is a useful tool for creating a stopgap solution for a problem in a few minutes using existing tools instead of having to re-invent the wheel by developing a program of your own. In this way, shell scripting has its strengths and weaknesses like any other language: Shell scripts are easy to write if you have any programming experience at all and can save considerable development time by using programs that already have the functionality you need. On the downside, shell scripts are written for specific shells and are not very portable as a result. (According to an old saying, it is often easier to port an entire shell than a complicated script that relies heavily on the features of one particular shell) Likewise, shell scripts are not ideal for permanent solutions and are not really designed with security in mind. As with any other language, you should decide beforehand whether the benefits of shell scripting are enough to offset its downsides for your particular situation. &lt;/p&gt;
&lt;p&gt;Shell scripts support all the essential features of any scripting language, including conditional statements, variables, loops, etc.  Since a shell script is little more than a bunch of individual commands kludged to work together, all the functionality the script might use is available for individual commands as well. (although it is inconvenient to do things that way)&lt;/p&gt;
&lt;p&gt;To run a shell script, navigate to the directory it is in and run “./&amp;lt;script name&amp;gt;” (e.g. ./shellscript.sh) Do not omit the period and forward slash at the beginning or the script will not work. Also, you may have to make scripts executable with chmod before you will be able to run them. &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Read on for our table of Essential Terminal Commands! &lt;/strong&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;h3&gt;Essential basic commands&lt;/h3&gt;
&lt;p&gt;Although there are hundreds of commands available for the terminal, the following table will introduce you to the most essential ones. Any portions of a command enclosed in &amp;lt; &amp;gt; brackets is a variable and should be replaced with what is specified between the brackets. For example, &amp;lt; file&amp;gt; indicates that a file should be designated. &lt;/p&gt;
&lt;div class=&quot;module orange-module article-module&quot;&gt; &lt;span class=&quot;module-name&quot;&gt;&lt;strong&gt;Essential Terminal Commands&lt;/strong&gt;&lt;br /&gt;&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;module-content&quot;&gt;
&lt;div class=&quot;module-text full&quot;&gt;
&lt;div class=&quot;spec-table orange&quot;&gt;
&lt;table border=&quot;0&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th class=&quot;head-empty&quot;&gt;Command 			&lt;/th&gt;
&lt;th class=&quot;head-light&quot;&gt;Function&lt;/th&gt;
&lt;th class=&quot;head-dark&quot;&gt;Usage&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;ls&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Lists all files in a directory&lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“ls” (Use “ls -l” for detailed output) For those used to DOS or cmd.exe, “dir” is very similar. &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;cp&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Copies a file or folder&lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“cp &amp;lt;source file/folder&amp;gt; &amp;lt;destination file/folder&amp;gt;” e.g. “cp file1 file2” or “cp folder1 folder2” The first file/folder in the command is the original file while the second one is the file/folder that will be created as a copy. &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;mv&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt; Moves a file from one directory to another. Also works as a rename command &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“mv &amp;lt;/folder/file&amp;gt; &amp;lt;/newfolder/file&amp;gt;” or “mv file1 file2” (this will rename file1 to file2) &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;cd&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Change to a different directory   &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“cd &amp;lt;new directory&amp;gt;” Only a folder name is needed instead of a full path if the new directory is a sub-directory of the current folder. To move to the next highest directory, run “cd ..” &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;mkdir&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Makes a new directory in the current folder&lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“mkdir &amp;lt;new directory name&amp;gt;”&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;rm&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Removes a file or directory&lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“rm &amp;lt;file&amp;gt;” removes a file. To remove a directory, use “rm -r &amp;lt;directory&amp;gt;” . &lt;strong&gt;Beware of “rm -rf /”, as this command will delete &lt;u&gt;everything &lt;/u&gt;if executed as root. &lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;chmod &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;     Changes file properties &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;Chmod assigns file properties based on numbers and letters. Using + will add a new property, while – will take it away. For example, “chmod +x &amp;lt;filename&amp;gt;” will make a file (like a shell script) executable. For a list of file properties, run “info chmod”.  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;chown &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;      Changes ownership of a file or folder &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“chown &amp;lt;owner&amp;gt;:&amp;lt;group&amp;gt;   &amp;lt;file&amp;gt;” &amp;lt;owner&amp;gt; and &amp;lt;group&amp;gt; should be set to the new owner and group.  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;man &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;       Shows a manual page that tells you how to use a program  &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“man &amp;lt;program name&amp;gt;” Sometimes, there is an “info &amp;lt;program name&amp;gt;” as well.  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;top &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Shows real-time process information and system usage stats          &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“top” To exit top, press Q.  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;cat &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Concatenation tool used to join plain text files together &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“cat &amp;lt;file1&amp;gt; &amp;lt;file2&amp;gt;” Cat is often used to preview individual files, but this is not really what it is for. (use less instead)  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;ps &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Shows process information for a user &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“ps -u &amp;lt;user&amp;gt;” e.g. “ps -u root” Sort of like top, but good for when you don&#039;t want or need real-time info. This command is best used with a grep pipeline to help you find a specific process. &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;kill &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;           Forcefully terminates a process &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“kill &amp;lt;process ID&amp;gt;” The process ID of the program you want to kill can be determined by running ps or top as shown above. If a program will not terminate with the normal kill command, “kill -9 &amp;lt;process ID&amp;gt;” will stop it for sure.  &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;sudo &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;            Executes command as superuser/root &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“sudo &amp;lt;program&amp;gt;” &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;su &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Escalates to a root shell &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“su” &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;less &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;View an individual text file  &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;“less &amp;lt;filename&amp;gt;” The up and down arrows allow you to scroll through the file. To return to the shell, press Q. Use this tool instead of cat when you want to look for individual files. &lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;Grep &lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;               Searches for a text string &lt;/td&gt;
&lt;td class=&quot;item-dark&quot;&gt;Grep is frequently used in pipelines, but “grep &amp;lt;pattern&amp;gt; &amp;lt;file&amp;gt;” can also be used to search for keywords in files.&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;div class=&quot;spec-notes&quot;&gt;  &lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://www.maximumpc.com/article/features/the_beginners_guide_linux_part_4_introduction_terminal#comments</comments>
 <category domain="http://www.maximumpc.com/taxonomy/term/31">Features</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/7567">beginners guide</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/4561">debian</category>
 <category domain="http://www.maximumpc.com/geek_tested/features">features</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/2772">gnome</category>
 <category domain="http://www.maximumpc.com/geek_tested/linux">linux</category>
 <category domain="http://www.maximumpc.com/geek_tested/open_source">open source</category>
 <category domain="http://www.maximumpc.com/geek_tested/software">Software</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/7565">terminal</category>
 <category domain="http://www.maximumpc.com/geek_tested/ubuntu">ubuntu</category>
 <pubDate>Tue, 07 Apr 2009 20:00:00 -0500</pubDate>
 <dc:creator>Will Kraft</dc:creator>
 <guid isPermaLink="false">5906 at http://www.maximumpc.com</guid>
</item>
<item>
 <title>The Beginner&#039;s Guide to Linux, Part 2: Installation </title>
 <link>http://www.maximumpc.com/article/features/the_beginners_guide_linux_part_2_installation</link>
 <description>&lt;!--paging_filter--&gt;&lt;table border=&quot;0&quot; align=&quot;right&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;Part 1: Finding the Right Distro&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;Part 2: Partition and Installation&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;Part 3: The Linux GUI&lt;/a&gt;&lt;br /&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_4_introduction_terminal&quot;&gt;Part 4: Introduction to the Terminal &lt;/a&gt;&lt;/h2&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;In &lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;part one of our guide&lt;/a&gt;, we walked you through the process of finding a distro that is right for you. By now, you hopefully have become more familiar with the distros that are out there and have at least one that you would like to try. This chapter is going to walk you through downloading and burning a CD image of your chosen distro(s), the traditional way of partitioning and setting up a dual-boot system, and another way to dual-boot without repartitioning. Instead of providing a step-by-step tutorial for a specific installation process, our goal is to educate you on the underlying concepts in a more generalized way that you will be able to apply towards many different Linux distros. You should also read &lt;a href=&quot;/article/howtos/howto_install_linux_risk_free_with_no_formatting_or_repartitioning_required&quot;&gt;our previous guide&lt;/a&gt; to installing Ubuntu for further instructions.  &lt;/p&gt;
&lt;div style=&quot;text-align: center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/installmeter2_sm.png&quot; width=&quot;415&quot; height=&quot;311&quot; /&gt;&lt;/div&gt;
&lt;h2&gt;Acquisition and preparation&lt;/h2&gt;
&lt;p&gt;Before you can install and play around with Linux, you have to acquire it first. While some computers come pre-equipped with Linux through the OEM, (certain Dell models and various netbooks, for instance) most of you will have to download it from the internet. The most considerate way to do this is through Bittorrent, since peer-to-peer eliminates the bandwidth strain on servers that conventional downloads create. All you have to do is find a torrent file of the distro you want and start the download. (assuming the torrent is still being seeded) We advise you to follow proper etiquette and seed as much as you download (at least a 1:1 ratio) so other people can benefit from the torrent like you did.&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/bitorrent.png&quot; width=&quot;415&quot; height=&quot;340&quot; /&gt; &lt;/p&gt;
&lt;p&gt;For some of you, Bittorrent is not a good option. Several internet service providers throttle (artificially limit the speed of) all torrent download speeds because they have oversold their lines and there is not enough bandwidth to allow everyone to torrent at full speed. Bittorrent is a huge drain on providers, and they often use piracy as an excuse for throttling. &lt;/p&gt;
&lt;p&gt;Fortunately, you can still fall back on old-fashioned FTP. Very few providers limit FTP download speeds, so your download will go as fast as the server on the other side or your own connection will permit. Most Linux distros are mirrored on several servers, so there is a good chance that at least one of them will be fast at any given time. However, if you try to acquire a new version of a distro on the same day it came out, Bittorrent may be a far better option (even if you are being throttled) since all FTP servers are likely to be  very slow or even non-responsive as a result. (many people are trying to download at once and the server can only handle a finite load)  Bittorrent is not prone to that type of slowdown problem due to its decentralized nature, and your download will actually go faster as more people start seeding. &lt;/p&gt;
&lt;p&gt;If you&#039;re still stuck on dial-up, downloading Linux may take up to several days. Rather than having to tie up your phone line for that long, you have the option of ordering pre-made Linux installation media from several different suppliers. (&lt;a href=&quot;/distrowatch.com&quot;&gt;distrowatch.com&lt;/a&gt; has links to these providers) Most of the media acquired in this way comes on professionally pressed discs and is much more durable than typical burned CD or DVD media. Many of these discs are very reasonably priced.&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/distrowatch.png&quot; width=&quot;415&quot; height=&quot;328&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Some big-box electronics stores also sell boxed copies of various distros in their software section; these discs are also professionally made. Alternatively, many books on specific distros include a disc  with the full operating system on it. The downside to this last method is that the included  version may be slightly out of date by the time you buy the book. &lt;/p&gt;
&lt;p&gt;If you download Linux yourself, you are going to end up with one or more ISO files. An ISO file allows you to replicate a CD or DVD without requiring an existing disc to copy from; it is essentially a container file for everything on the original disc. These days, it is common for distros to come on more than one CD, (although some distros like Ubuntu still manage to fit on only one) so make sure you download the ISO files of all the discs that are required for installation. Alternatively, many distros have a DVD version as well, (larger download size in exchange for the convenience of one disc) so choose which one you want. &lt;/p&gt;
&lt;p&gt;If you&#039;ve never burned an ISO image before, it is rather different than making a normal CD or DVD. Burning the ISO file to a blank disc like you would with any other file will not work. (it would only waste a disc)  The object here is to extract the contents of the ISO file to recreate the original disc. Most CD/DVD burning utilities (even low-end ones) have an image burning utility built into them, so look for a “Burn Image” feature or something similar. If your burning software doesn&#039;t support this, you can still use &lt;a href=&quot;http://isoburn.sourceforge.net/&quot;&gt;isoburn &lt;/a&gt;to make your installation media. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt; &lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/isoburn.png&quot; width=&quot;415&quot; height=&quot;247&quot; /&gt;&lt;/p&gt;
&lt;h2&gt;Testing the distro&lt;/h2&gt;
&lt;p&gt;Once you have created or otherwise acquired your Linux install discs, you may have an opportunity to test the distro on your system prior to conducting the actual installation. Many modern distros &lt;a href=&quot;/article/howtos/howto_install_linux_risk_free_with_no_formatting_or_repartitioning_required&quot;&gt;incorporate LiveCD functionality&lt;/a&gt;, essentially the ability to run a temporary yet fully functional session of the operating system from the CD or DVD instead of from the hard drive.  The LiveCD session will make no permanent changes to your computer. (unless you choose to install)  &lt;/p&gt;
&lt;p&gt;LiveCD functionality is useful because it gives you a change to experiment with the distro without making any real commitment and lets you determine whether or not it will be a good fit for your system. The LiveCD has most (if not all) the software that will be in the installed system available for use, so it will give you a good idea of what the distro is capable of out of the box. In part one of this series, we mentioned that some distros have better hardware support than others. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;/files/u17625/htinstalllinux2.jpg&quot; width=&quot;415&quot; height=&quot;312&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Judging by how well the LiveCD works, you will have a fairly good idea of how well your particular hardware configuration is supported. Keep in mind that certain specialized hardware like wireless devices (especially the Broadcom 43xx devices) or graphics  cards/chipsets (ATI or Nvidia) may require additional drivers or firmware to work, and the LiveCD may not support them out of the box. The last part of this article will tell you how to deal with this problem should it arise. Fortunately, hardware support on Linux is currently better than it has ever been before, and most of your hardware will work fine. &lt;/p&gt;
&lt;p&gt;In any event, you should treat the LiveCD functionality as a test run or a preview of the real thing.  Also remember that some distros (like CentOS) do not have LiveCD functionality. &lt;/p&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_1_finding_right_distribution&quot;&gt;&amp;lt;&amp;lt; Back to Part 1: Finding the Right Distro&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr /&gt;
&lt;h2&gt;Partitioning&lt;/h2&gt;
&lt;p&gt;Each operating system you install requires its own partition on your hard drive. Partitioning effectively splits your hard drive into one or more distinct areas that operate independently of each other. If you build your own boxes, you have the luxury of determining your partition structure before you install any operating systems at all, and this allows you to set aside space for both Windows and Linux if you decide to dual-boot. &lt;/p&gt;
&lt;p&gt;Most people do not have that luxury; computers with OEM copies of Windows usually have a large Windows partition and a small recovery partition taking up the entire hard drive. In such a situation, some space must be freed on the hard drive before Linux can be installed. Free space on a hard disk  is not the same thing as free space in a partition&#039;s filesystem, and most hard drives are completely “full” from a partitioning viewpoint. &lt;/p&gt;
&lt;p&gt;There are many ways to handle partitioning, but some carry more risk than others. The easiest and safest way to set up a dual-boot system is to install a second hard drive if your system can accommodate it and install Linux to that. In addition to insuring that your Windows partition and any OEM recovery tools remain untouched, this method also provides the greatest possible amount of disk space for your Linux installation. &lt;/p&gt;
&lt;p&gt;Furthermore, it becomes easier to transfer your Linux installation to a new computer every time you upgrade. (You would only have to change the bootloader on the new machine after installing the Linux hard drive) If you choose this method, you should always use an internal hard drive. An external hard drive may be more convenient, but the USB interface present on most devices is not fast enough to provide the best performance. (external SATA would probably work fine, but we have not tested this)  &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/vista_partition.png&quot; width=&quot;415&quot; height=&quot;325&quot; /&gt; &lt;/p&gt;
&lt;p&gt;Another way to accommodate Linux is to resize a partition on your existing hard drive to free up space. This is generally the most dangerous  installation method since it presents the greatest chance of data loss. However, it is possible to do it safely. Windows Vista has a built-in tool to manage partitions, and this tool will allow you to  shrink your Vista partition to free up some space. The amount of space the Vista tool will be able to reclaim will vary widely between systems and cannot be predicted beforehand with any certainty. However, the tool is  reliable from our experience and we have yet to run into any problems from using it. &lt;/p&gt;
&lt;p&gt;The process of shrinking a Windows XP partition is much more complicated since it has no built-in tool for the purpose like Vista does. The process requires several different tools and must be done in a specific order. Before resizing an NTFS partition on a Windows XP or older NT-based system, it should be thoroughly defragmented to ensure that all files are grouped together in the filesystem. It is critical that you resize the filesystem before you resize the partition because the sizes of these are determined separately. If you resize the partition first, you will accidentally chop off part of the filesystem and you will not be able to boot from the partition. &lt;/p&gt;
&lt;p&gt;Fortunately, practically every Linux distro has a partition resizing tool in its installation utility that will handle this delicate procedure for you and will safely perform all the steps in the correct order. All you have to do is decide how much you want to shrink the existing Windows partition and then have the setup utility do it. Obviously, you will not be able to shrink the partition to a size that is smaller than the sum of the data it contains, including any space set aside for swapping. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;a href=&quot;http://dl.maximumpc.com/galleries/linuxguide2/ntfs_resize.png&quot; class=&quot;thickbox&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/ntfs_resize_sm.png&quot; width=&quot;415&quot; height=&quot;314&quot; /&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;strong&gt;Shrinking a NTFS partition in Fedora setup&lt;/strong&gt; &lt;/p&gt;
&lt;p&gt;Also, keep in mind that the filesystem resizing utility may refuse to work under certain conditions, such as any instances where Windows wasn&#039;t shut down properly or if the filesystem needs to be checked for errors. You must resolve any such problems before the resizing utility will let you continue; this is a deliberate design feature meant to keep you from resizing a filesystem that is not able to handle the procedure in its current state and causing further damage as a result. &lt;/p&gt;
&lt;p&gt;The new Linux partition should always be located at the “end” of the drive. Many OEM recovery tools are hard-coded to boot from a specific partition.  The recovery tool will not work if it expects to find its partition in a certain place on the hard drive but finds Linux there instead, and you will be unable to fix your Windows installation as a result. Since the recovery partition is generally the second partition on most OEM machines, (Windows is the first one) the new Linux partition should be third.&lt;/p&gt;
&lt;p&gt;Once your partitions are resized, the newly freed space is typically allocated to the “end” of the drive anyway, so this is seldom something you will have to manually adjust. However, it pays to make  sure that your partition order is set correctly so you will not suddenly find out you have a broken recovery tool in an emergency. Furthermore, if you install Linux on a separate hard drive, you do not need to worry about this particular issue at all.  &lt;/p&gt;
&lt;p&gt;For a well-rounded desktop system, you should set aside at least 10 gigabytes at the bare minimum. Although you might be able to get by with less, we really don&#039;t recommend it.  Make sure you have enough space for what you need to do on your Linux partition, because it is very dangerous to  mess with the partitions again if you run out of space. Remember that Linux is only able to install software to its own partition  and that some of that partition must be reserved for swapping (even if you have plenty of RAM) if you want features like hibernation to work. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/ubuntu-install7_sm.png&quot; width=&quot;415&quot; height=&quot;332&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;strong&gt;The installation procedure is summarized here in the Ubuntu installation wizard. &lt;/strong&gt;&lt;/p&gt;
&lt;h2&gt;Installation&lt;/h2&gt;
&lt;p&gt;Although the installation process on Linux is fairly straightforward, there is one important thing to remember: If you want to prepare a dual-boot system, Windows must always be installed first after you prepare your partitions. Each operating system will install a bootloader, which is a program that tells the computer which operating systems are installed and gives you a list to choose from when you turn on your computer. Most modern Linux distros will install a bootloader called GRUB. The main issue here is that some bootloaders handle dual-booting better than others do. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/dual_boot_fedora_sm.png&quot; width=&quot;415&quot; height=&quot;311&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;strong&gt;GRUB on Fedora Linux &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;If you install Linux first and then install Windows, Windows will replace GRUB with its own bootloader. This bootloader can also boot into Linux systems, but it will not look for them by default like GRUB does. In such a situation, you would not be able to boot into your Linux installation, and to remedy this you would have to reconfigure the Windows bootloader to include a Linux boot option or reinstall GRUB. Neither option is very beginner-friendly, so it is far easier to do things the right way to begin with. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/ubuntu-grub_sm.png&quot; width=&quot;415&quot; height=&quot;211&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;strong&gt;A dual-boot system with Ubuntu 8.10 and Windows XP, utilizing the GRUB bootloader &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;hr /&gt;
&lt;p&gt;If Windows is already installed when you run a Linux setup utility, (as it would be if you resized a Windows partition) GRUB will automatically find Windows and create an entry for it and its related utilities (like OEM system recovery tools) in the boot menu. That way, you will be able to boot into any operating system you have on your computer. The same is also true if you are triple or even quad-booting; GRUB will attempt to add an entry for every operating system it finds on your computer, be it Windows, Mac OSX, BSD, or another Linux  distro. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/dual_boot_fedora1_sm.png&quot; width=&quot;415&quot; height=&quot;281&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;strong&gt;Windows NTFS and Linux partitions shown in a dual-boot configuration on a virtual hard disk in the Gparted utility. &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Installing Linux is very simple compared to many Windows systems. The old text-based installers are mostly a thing of the past; since many distros have LiveCD functionality, they also have easy-to-use setup utilities that incorporate a GUI.  These installers walk you through a step-by-step process of choosing your time zone, partitioning, setting up user accounts, configuring your bootloader, etc.  Since Linux is free software, you will not have to provide any serial numbers/product keys and you will not have to worry about activation. In most instances, you will not even have to consent to a license agreement. &lt;/p&gt;
&lt;h2&gt;Other installation methods&lt;/h2&gt;
&lt;p&gt;In recent years, there have been several different ways of dual-booting Linux without resorting to the traditional method discussed in the previous sections of this guide. Although virtualization software allows you to run a fully functional installation of Linux, that is technically not dual-booting since the virtualized operating system is not running independently. However, several utilities were formed that  allow you to install Linux without repartitioning your hard drive and replacing your bootloader.  The most famous of these tools is called Wubi, which installs Ubuntu. Similar programs include win32-loader (installs Debian) and Instlux. (installs OpenSUSE) &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/wubi_sm.png&quot; width=&quot;415&quot; height=&quot;311&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;strong&gt;The Wubi installation utility running on Windows XP &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Wubi and the other tools like it work by creating a large file in your Windows partition. This file acts like a partition within a partition, and Wubi installs Ubuntu to this location. Wubi also modifies the Windows bootloader to include an option to boot to the simulated Ubuntu partition file, so there is no need to install GRUB. (the other programs act similarly) Furthermore, these special Linux installations may be easily removed like any other program through Windows and your computer will go back to how it was before. The main drawback of Wubi and similar tools is that there is no hibernation functionality and improper shutdowns can cause significant damage to the Linux filesystem. &lt;/p&gt;
&lt;h2&gt;Post-installation&lt;/h2&gt;
&lt;p&gt;After you get your new Linux system installed, there may be a few additional things you have to do to get it fully functional, depending on your hardware and your dual-boot situation. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt; &lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide2/chkdisk_sm.png&quot; width=&quot;415&quot; height=&quot;311&quot; /&gt;&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;strong&gt;After installation, Windows will probably detect the partition changes and will run a disk check. This is normal and you should not worry about it &lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;As stated earlier in this article, certain types of hardware may require additional drivers or firmware (software that interacts directly with the device, which in turn works with a driver from the operating system)  to function. Many of these additional packages have some proprietary aspects and are considered “restricted”. (while they may be free to acquire, they may not be fully open source) Some of these packages are from the hardware manufacturer while others have been reverse-engineered by the open source community due to a lack of manufacturer support. Because of licensing and intellectual property issues, they cannot be included in the main distribution. Quite often, your distro will detect the need for this software (Ubuntu in particular has a restricted drivers manager) and will offer to install it for you. &lt;/p&gt;
&lt;p&gt;If you are dual-booting, you will probably want write access to your NTFS partitions.  Linux can read NTFS partitions out of the box, but to write data to them you will need to install NTFS-3g from your distro&#039;s repositories. It can safely write to NTFS volumes from all versions of Windows.&lt;/p&gt;
&lt;p&gt;Once you go through these final steps, you should have a usable Linux installation. In part three of this guide, we will cover the basics of using your new Linux system. &lt;/p&gt;
&lt;h2 align=&quot;right&quot;&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;Next, Part 3: The Linux GUI &amp;gt;&amp;gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p align=&quot;right&quot;&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://www.maximumpc.com/article/features/the_beginners_guide_linux_part_2_installation#comments</comments>
 <category domain="http://www.maximumpc.com/taxonomy/term/31">Features</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/7104">centos</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/4561">debian</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/2897">gentoo</category>
 <category domain="http://www.maximumpc.com/geek_tested/linux">linux</category>
 <category domain="http://www.maximumpc.com/geek_tested/mandriva">Mandriva</category>
 <category domain="http://www.maximumpc.com/geek_tested/open_source">open source</category>
 <category domain="http://www.maximumpc.com/geek_tested/operating_system">operating system</category>
 <category domain="http://www.maximumpc.com/geek_tested/software">Software</category>
 <category domain="http://www.maximumpc.com/geek_tested/ubuntu">ubuntu</category>
 <pubDate>Wed, 04 Mar 2009 11:30:00 -0600</pubDate>
 <dc:creator>Will Kraft</dc:creator>
 <guid isPermaLink="false">5504 at http://www.maximumpc.com</guid>
</item>
<item>
 <title>The Beginner&#039;s Guide to Linux, Part 1: Finding the Right Distribution</title>
 <link>http://www.maximumpc.com/article/features/the_beginners_guide_linux_part_1_finding_right_distribution</link>
 <description>&lt;!--paging_filter--&gt;&lt;table border=&quot;0&quot; align=&quot;right&quot;&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h2&gt;Part 1: Finding the Right Distro&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_2_installation&quot;&gt;Part 2: Partition and Installation&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_3_choosing_your_window_manager_and_desktop_environment&quot;&gt;Part 3: The Linux GUI&lt;/a&gt;&lt;br /&gt;&lt;/h2&gt;
&lt;h2&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_4_introduction_terminal&quot;&gt;Part 4: Introduction to the Terminal &lt;/a&gt;&lt;/h2&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;We are certain that many of you want to try Linux to see what it is like, but have no idea where to start or how to get into it. This article is the first installment in a four-part guide that will gradually introduce you to the Linux environment and how to adjust to it if you are a new user.&lt;/p&gt;
&lt;p&gt;One of the hardest things to do while starting out is finding a distro that is right for you. Many users try several before settling on one of two that they really like. Once they find a distro that feels right, they are often reluctant to switch unless the distro becomes unsuitable for their needs for whatever reason. &lt;/p&gt;
&lt;p&gt;In most instances, choosing a distro ultimately comes down to several factors:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Your skill level&lt;/li&gt;
&lt;li&gt;The purpose of the system&lt;/li&gt;
&lt;li&gt;Package management&lt;/li&gt;
&lt;/ul&gt;
&lt;h2&gt;Your skill level&lt;/h2&gt;
&lt;p&gt;Arguably, the most important factor in choosing a distro is your general level of experience with Linux. Not all distros cater to the same intended user audience. Some (like Ubuntu) are designed to be more accessible to novice users while other distros have a greater learning curve.  Distros like Gentoo or Slackware are not necessarily meant to be “harder”  than Ubuntu; they simply work out that way because they are less automated  and often sacrifice ease of use for the greatest possible user control or system transparency. Many  advanced users know what they are doing and prefer doing things their way. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/ubuntu_virtual_desktop_sm.png&quot; width=&quot;415&quot; height=&quot;312&quot; /&gt; &lt;/p&gt;
&lt;div align=&quot;center&quot;&gt;&lt;em&gt; Ubuntu&#039;s desktop&lt;/em&gt;&lt;/div&gt;
&lt;p&gt;Distros that emphasize ease of use tend to get in the way of such people and impact their productivity.  However, not every advanced user feels this way, since there are plenty who prefer to focus on actual work rather than worry about every nuance of their operating system. A user who prefers a less user-friendly distro is not necessarily a “better” or “more skilled” Linux user than someone who uses something more beginner-friendly even if they have a lot of experience. In the end, it comes down to individual preference and choice,  and Linux is able to give people from both extremes (and everyone else in between) what they want.&lt;/p&gt;
&lt;p&gt;In your situation, you should focus on where you are in your Linux experience and choose accordingly. If you have never used Linux before and choose something like Gentoo, you are probably going to be confused and frustrated very soon after starting. If you are coming from a Windows background, you will probably need an environment that is familiar to what you are used to and has a well-rounded software library that will help you gradually adapt to your new computing environment.&lt;/p&gt;
&lt;p&gt;For such an individual, we would recommend something like Ubuntu (due to its large software library, ease of use, and large community of people who can offer assistance) or Mandriva (due to its tools that help Windows users migrate).&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt; &lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/mandriva_virtual_desktop_kde4_sm.png&quot; width=&quot;415&quot; height=&quot;311&quot; /&gt;&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;Mandriva&#039;s desktop &lt;/em&gt;&lt;/p&gt;
&lt;p&gt;However, if you are a well-established Linux user and are feeling adventurous, you should feel free to try something more expert-oriented because it will teach you more about how your computer works behind the scenes and will make you more versatile. Alternatively, you may feel satisfied with what you have because it fits you perfectly and you wish to stay put. There is nothing wrong with that, either. &lt;/p&gt;
&lt;h2&gt;The purpose of the system&lt;/h2&gt;
&lt;p&gt;In addition to skill level,  Linux distributions are also differentiated by purpose. Some (like Mandriva, OpenSUSE, and Ubuntu) are pre-configured to be desktop distributions (although some of these have a server-oriented variant) while others (like CentOS) are  server deployments. A few distros (like Debian) may even be considered  neutral and are suitable for either purpose depending on how the user configures them. &lt;/p&gt;
&lt;div align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/debian_sm.png&quot; width=&quot;415&quot; height=&quot;259&quot; /&gt;&lt;/div&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;Debian&#039;s desktop&lt;/em&gt; &lt;/p&gt;
&lt;p&gt;Desktop-oriented and server-oriented distros usually are not interchangeable without a great deal of trouble. You may be able to get away with implementing server functionality on a desktop distribution. While doing this is not difficult, it is often a waste of time and effort since other distros come with such functionality out of the box. However, there are exceptions to this rule; many programmers build hybrid systems to assist in application development. (this allows projects like web applications to run locally) However, these systems are seldom used outside of a test/development environment and should never be considered for production use.&lt;/p&gt;
&lt;p&gt;Server distros are much less flexible, since they simply lack much of the hardware support that is common in desktop distributions. Awhile back, we had extensive trouble getting anything better than 800x600 VESA (bare-bones graphics, forget about any 3d acceleration)  in CentOS 5.2 during a test run.  In contrast, Ubuntu supported our monitor&#039;s native resolution (1440 x 900) out of the box on the same machine and 3d acceleration was working after we installed the NVIDIA driver.&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt; &lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/centos_desktop_sm.png&quot; width=&quot;415&quot; height=&quot;311&quot; /&gt;&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;CentOS&#039;s desktop &lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Graphics are typically not a big issue on servers since many system administrators run their servers headless (without a monitor) anyway, but graphics support like what we encountered with CentOS would be absolutely brutal on a desktop distribution. Finally, desktop distros include many packages that server distros just don&#039;t need (like games, office suites, media players, etc.) This just adds bloat to the system without providing any benefit. Ideally, servers should run as lean as possible, since any resources needlessly used by the operating system are not available for the server&#039;s intended functions. &lt;/p&gt;
&lt;p&gt;Server distros usually emphasize long-term stability (a result of being loaded with older software that has been more thoroughly debugged) whereas desktop-oriented distros tend to be more cutting-edge with newer packages. (but may be more unstable as a result) These two options are often mutually exclusive, so choose which one is most important to you. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/opensuse_desktop_sm.png&quot; width=&quot;415&quot; height=&quot;310&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;OpenSUSE&#039;s desktop &lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Before setting up a system, you should weigh out all the possibilities of what it will be used for. If you need a server, you should choose a distribution like CentOS, Debian, or SME Server.  However, if you need a desktop, choose one of the many desktop-oriented distributions. (Ubuntu, Mandriva, Fedora, OpenSUSE, etc.)  If you need a hybrid system, start with a desktop distro and install the server functionality you need. (modern package management makes this easy) &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/fedora_desktop_sm.png&quot; width=&quot;415&quot; height=&quot;312&quot; /&gt;&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;Fedora&#039;s desktop &lt;/em&gt;&lt;/p&gt;
&lt;hr /&gt;
&lt;h2&gt;Package management&lt;/h2&gt;
&lt;p&gt;One of the most fundamental differences between distributions is how they manage software packages. For those new to Linux, software installation is handled differently than in Windows.  Instead of  running a setup.exe to install new software, software installation is a fairly modular process. Programs are distributed in one or more “packages”, and each package either contains parts of a program or its dependencies. (other components that a program needs to run) Once all packages needed by a program are installed, the program will be able to be used. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt; &lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/ubuntu_package_management_sm.png&quot; width=&quot;415&quot; height=&quot;311&quot; /&gt;&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;Package management with Ubuntu (apt-get)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;In the old days, package management was either nonexistent or a very tedious process where each user had to locate packages all by himself or herself from a variety of different sources. (Some distros still do things that way, however)  Packages were (and still are) very version-specific, so users often had to hunt down a specific version of package from an obscure corner of the internet to get a program to work. Fortunately, several automated package management tools were created to help solve this problem, and the tools now do the hard parts for you. &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/mandriva_package_management_sm.png&quot; width=&quot;415&quot; height=&quot;312&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;Package management with Mandriva (urpmi)&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Many users swear by a particular package management tool. Each one has its own distinct advantages, disadvantages, and quirks, but they all operate in much the same way. Package managers automatically locate all packages needed by a program, download them from one or more central repositories, resolve all dependencies for you, and then install/configure the program. &lt;/p&gt;
&lt;p&gt;You must become familiar with the package management tool included in the distro(s) you are interested in using. To facilitate this, we have provided you with a brief list to cover the most common package management tools and some of the distros that use them. Although this list is not fully comprehensive,  it will help you get started. We cannot tell you that one package manager is better than another, since such things are largely a matter of opinion. &lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;div class=&quot;module red-module article-module&quot;&gt; &lt;span class=&quot;module-name&quot;&gt;Package Management Tools&lt;/span&gt;&lt;br /&gt;
&lt;div class=&quot;module-content&quot;&gt;
&lt;div class=&quot;module-text full&quot;&gt;
&lt;div class=&quot;spec-table red&quot;&gt;
&lt;table border=&quot;0&quot;&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th class=&quot;head-empty&quot;&gt;Tool Name 			&lt;/th&gt;
&lt;th class=&quot;head-light&quot;&gt;Used by&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;Advanced Packaging Tool (apt-get)&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Debian, Ubuntu (and its variants), gOS, Linux Mint, Sidux, Knoppix&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;YUM&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Fedora, CentOS/Red Hat Enterprise Linux&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;Yast&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;OpenSUSE 			&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;Portage&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Gentoo 			&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class=&quot;item&quot;&gt;urpmi&lt;/td&gt;
&lt;td class=&quot;item-light&quot;&gt;Mandriva 			&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Each distro has a large repository for the package management system to use. Some repositories may be more complete than others. Remember that that while many distros use the same package management tool, packages should not be shared between distributions. (don&#039;t mix Ubuntu and Debian packages, for instance)  &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;http://dl.maximumpc.com/galleries/linuxguide1/opensuse_yast_sm.png&quot; width=&quot;415&quot; height=&quot;312&quot; /&gt; &lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;em&gt;Package management with OpenSUSE (Yast)&lt;/em&gt; &lt;/p&gt;
&lt;p&gt;It may be tempting to install a package from another distribution when you need a package that is not in your distro&#039;s official repositories, but such shortcuts often lead to problems. However, if your distro is popular, someone else may have set up an additional  repository that has exactly what you need. &lt;/p&gt;
&lt;h2&gt;The bottom line&lt;/h2&gt;
&lt;p&gt;The key to finding the right distro is experimentation. Each distro has a slightly different feel, and it may take several attempts to find one you really like. Virtualization software makes it easy to test several different distros at once with minimal risk. The next installment of this series will walk you through the installation process and will also tell you how to prepare a dual-boot system. &lt;/p&gt;
&lt;h2 align=&quot;right&quot;&gt;&lt;a href=&quot;/article/features/the_beginners_guide_linux_part_2_installation&quot;&gt;Next, Part 2: Partition and Installation &amp;gt;&amp;gt;&lt;br /&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
</description>
 <comments>http://www.maximumpc.com/article/features/the_beginners_guide_linux_part_1_finding_right_distribution#comments</comments>
 <category domain="http://www.maximumpc.com/taxonomy/term/31">Features</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/7104">centos</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/4561">debian</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/2897">gentoo</category>
 <category domain="http://www.maximumpc.com/geek_tested/linux">linux</category>
 <category domain="http://www.maximumpc.com/geek_tested/mandriva">Mandriva</category>
 <category domain="http://www.maximumpc.com/geek_tested/open_source">open source</category>
 <category domain="http://www.maximumpc.com/geek_tested/operating_system">operating system</category>
 <category domain="http://www.maximumpc.com/geek_tested/software">Software</category>
 <category domain="http://www.maximumpc.com/geek_tested/ubuntu">ubuntu</category>
 <pubDate>Tue, 24 Feb 2009 14:30:00 -0600</pubDate>
 <dc:creator>Will Kraft</dc:creator>
 <guid isPermaLink="false">5417 at http://www.maximumpc.com</guid>
</item>
<item>
 <title>Happy Belated 15th Birthday, Debian!</title>
 <link>http://www.maximumpc.com/article/news/happy_belated_15th_birthday_debian</link>
 <description>&lt;!--paging_filter--&gt;&lt;p&gt;What does Debian, one of the most popular and stable Linux operating systems, and myself have in common? We both &lt;a href=&quot;http://www.efytimes.com/efytimes/28150/news.htm&quot;&gt;celebrated a birthday&lt;/a&gt; on August 16th! But unlike myself, Debian has proved its maturity at &#039;only&#039; age 15 and probably doesn&#039;t find fart jokes funny anymore. Debian&#039;s also been highly influential, as many of the popular GNU/Linux distributions you&#039;ve read about or played with - including Ubuntu and Knoppix - are based on Debian..&lt;/p&gt;
&lt;p&gt;To trace Debian&#039;s roots, you&#039;d have to go back to 1993 when Ian Murdock, who is now VP of developer and and community marketing at Sun, first announced the OS. But why call it Debian? Because of a girl, of course! Ian combined the name of his then girlfriend (and now wife), Debora, with his own (Deb+Ian), the union of which gave birth to Debian.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Fun Facts&lt;/strong&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;All versions of Debian are named after characters from the film Toy Story&lt;/li&gt;
&lt;li&gt;There are always four versions &lt;/li&gt;
&lt;li&gt;Least stable version of Debian is named after Sid, the emotionally unstable neighbor kid in Toy Story who enjoyed destroying toys &lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Here&#039;s wishing another 15 years!&lt;/p&gt;
&lt;p align=&quot;center&quot;&gt;&lt;img src=&quot;/files/u69/DebianBirthday1.png&quot; width=&quot;415&quot; height=&quot;150&quot; /&gt;&lt;/p&gt;
</description>
 <comments>http://www.maximumpc.com/article/news/happy_belated_15th_birthday_debian#comments</comments>
 <category domain="http://www.maximumpc.com/article_type/news_amp_views">News</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/3031">birthday</category>
 <category domain="http://www.maximumpc.com/taxonomy/term/4561">debian</category>
 <category domain="http://www.maximumpc.com/geek_tested/linux">linux</category>
 <category domain="http://www.maximumpc.com/geek_tested/opensource">open-source</category>
 <category domain="http://www.maximumpc.com/geek_tested/software">Software</category>
 <pubDate>Mon, 18 Aug 2008 13:26:55 -0500</pubDate>
 <dc:creator>Paul Lilly</dc:creator>
 <guid isPermaLink="false">3229 at http://www.maximumpc.com</guid>
</item>
</channel>
</rss>
