diff options
author | Alexander Kirillov <sasha@src.gnome.org> | 2001-02-13 17:21:14 +0000 |
---|---|---|
committer | Alexander Kirillov <sasha@src.gnome.org> | 2001-02-13 17:21:14 +0000 |
commit | 0dfc3912919dc870fba468d35921c5671c06de24 (patch) | |
tree | d7183e4de403f5b7e13f94e25e08f54935bcab0c /unix-primer | |
parent | d61c7a75962e9cbce845a7df3c91dd84d5bc08c2 (diff) | |
download | gnome-user-docs-0dfc3912919dc870fba468d35921c5671c06de24.tar.gz gnome-user-docs-0dfc3912919dc870fba468d35921c5671c06de24.tar.xz gnome-user-docs-0dfc3912919dc870fba468d35921c5671c06de24.zip |
Moved files in unix-primer and glossary to C subdirs
Diffstat (limited to 'unix-primer')
-rw-r--r-- | unix-primer/C/unix-primer.sgml | 827 |
1 files changed, 827 insertions, 0 deletions
diff --git a/unix-primer/C/unix-primer.sgml b/unix-primer/C/unix-primer.sgml new file mode 100644 index 0000000..dac4f42 --- /dev/null +++ b/unix-primer/C/unix-primer.sgml @@ -0,0 +1,827 @@ +<!DOCTYPE article PUBLIC "-//GNOME//DTD DocBook PNG Variant V1.1//EN"[ +]> +<article id="index"> + + <artheader> + <title> If you are new to Linux/UNIX</title> + <copyright> + <year>2000</year> + <holder>Alexander Kirillov</holder> + </copyright> + + <legalnotice id="legalnotice"> + <para> + Permission is granted to copy, distribute and/or modify this + document under the terms of the <ulink type="help" + url="gnome-help:fdl"><citetitle>GNU Free Documentation + License</citetitle></ulink>, Version 1.1 or any later version + published by the Free Software Foundation with no Invariant + Sections, no Front-Cover Texts, and no Back-Cover Texts. You + may obtain a copy of the <citetitle>GNU Free Documentation + License</citetitle> from the Free Software Foundation by + visiting <ulink type="http" url="http://www.fsf.org">their Web + site</ulink> or by writing to: Free Software Foundation, Inc., + 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + </para> + + <para> + Many of the names used by companies to distinguish their + products and services are claimed as trademarks. Where those + names appear in any GNOME documentation, and those + trademarks are made aware to the members of the GNOME + Documentation Project, the names have been printed in caps + or initial caps. + </para> + </legalnotice> + </artheader> +<sect1 id="introduction"> + <title>Introduction</title> + + <para> One of the goals of GNOME is to make your system easy to use, + without requiring you to learn the technical details about your + operating system. However, there are some basic UNIX notions that + you have to be familiar with even while using the easy graphical + interface provided by GNOME. For the convenience of new users, + these basics are collected in this document. If you need further + information on UNIX, you should read the documentation which came + with your system; there are also a number of books and on-line + guides available for all versions of UNIX. + </para> + + <para> The following guide applies to all versions of UNIX and + UNIX-like operating systems, including both the commercial Unices + such as <systemitem>Solaris</systemitem> and open-source operating + systems such as <systemitem>FreeBSD</systemitem> and + <systemitem>Linux</systemitem>. Some of the material here is based + on <citetitle>Linux Installation and Getting Started</citetitle> + guide, by Matt Welsh, Phil Hughes, David Bandel, Boris Beletsky, + Sean Dreilinger, Robert Kiesling, Evan Liebovitch, and Henry + Pierce. The guide is available for download or online viewing from + the <ulink url="http://www.linuxdoc.org" type="http">Linux + Documentation Project</ulink> or from the <ulink + url="http://www.oswg.org">Open Source Writers Group</ulink>. + </para> + </sect1> + + <sect1 id="new-users"> + <title>Users</title> + <para> UNIX is a multiuser operating system: it + was designed to allow many users to work on the same computer, + either simultaneously (using several terminals or network + connections) or in turns. Under UNIX, to identify yourself to + the system, you must log in, which entails entering your + <emphasis>login name</emphasis> (the name the system uses to identify + you) and your <emphasis>password</emphasis>, which is your personal key + for logging in to your account. Because only you know your + password, no one else can log in to the system under your user + name. Usually people choose their first or last name or some + variation of it as their login name, so that if your real name + is Sasha Beilinson, your login might be <systemitem>sasha</systemitem>. + </para> + <para> Each user has a separate place to keep his files (called + his <emphasis>home directory</emphasis>). UNIX has a system of + permissions (see <xref linkend="permissions">), so that on a + properly configured UNIX system a user can't change other users' + or system files. This also allows every user to customize + various aspects of the system — in particular, GNOME + behavior — for himself, without affecting other users. + </para> + <para> On any UNIX system there is also a special user, called + <emphasis>system administrator</emphasis>, with the login name + <systemitem>root</systemitem>. He has <emphasis>full</emphasis> + control over the system — including full access to all the + system and users' files. He has the authority to change the + passwords of existing users and add new users, install and + uninstall software, and so on. The system administrator is + usually the person responsible for proper functioning of the + system, so if you have some problems, you should ask him. + </para> + <important> + <title>IMPORTANT</title> + <para> + Even if you are the only user on your computer (for example, + if the computer is your personal workstation), so that you are + also the system administrator, it is important that you create + a user account and use it for daily work, logging in as root + only when necessary for system maintenance. Because root can + do anything, it is easy to make mistakes that have + catastrophic consequences. Picture the root account as a + magic hat that gives you lots of power, with which you can, by + waving your hands, create or destroy entire cities. Because + it is easy to wave your hands in a destructive manner, it is + not a good idea to wear the magic hat when it is not needed, + despite the wonderful feeling. + </para> + </important> + </sect1> + <sect1 id="new-file"> + <title>Files and filenames</title> + <para> + Under most operating systems (including UNIX), there is the + concept of a <emphasis>file</emphasis>, which is just a bundle of + information given a name (called a + <emphasis>filename</emphasis>). Examples of files might be + your history term paper, an e-mail message, or an actual + program that can be executed. Essentially, anything saved on + disk is saved in an individual file. + </para> + <sect2 id="new-filenames"> + <title>Filenames</title> + <para> + Files are identified by their filenames. For example, the file + containing your conference talk might be saved with the filename + <filename>talk.txt</filename>. There is no standard format for file + names as there is under MS-DOS and some other operating systems; in + general, a filename can contain any character (except the / + character–see the discussion of path names below) and is + limited to 256 characters in length. + </para> + <important> + <title>IMPORTANT</title> + <para> + Unlike MS-DOS, the filenames in UNIX are case-sensitive: + <filename>myfile.txt</filename> and + <filename>MyFile.txt</filename> are considered as two + different files. + </para> + </important> + <para> + You should also be aware of several UNIX conventions; while they are + not mandatory, it is usually a good idea to follow them. + <itemizedlist> + <listitem> + <para> It is customary to use the format + <filename>filename.extension</filename> for filenames, + where the extension indicates the file type; for + example, the extension <filename>txt</filename> is + usually used for plain text files, while the extension + <filename>jpeg</filename> is used for graphics in JPEG + format, and so on. In particular, the <application>GNOME + File Manager</application> + (<application>Nautilus</application>) uses extensions to + determine file type. You can view or change file + extensions recognized by + <application>GNOME</application> by selecting the + section <menuchoice><guimenu>Document Handlers</guimenu> + <guimenuitem>MIME types</guimenuitem> </menuchoice> in + <application>GNOME Control Center</application>. Note + that the standard convention in UNIX is that the + <emphasis>executables</emphasis> (i.e., the program + files) have no extension at all. + </para> + </listitem> + + <listitem> + <para> Files and directories whose names begin with a dot + (.) are usually <emphasis>configuration + files</emphasis>, that is, files which keep settings and + preferences for various applications. For example, GNOME + keeps all its settings in various files in the directories + <filename>.gnome</filename> and + <filename>.gnome-desktop</filename> in the user's home + directory. Since most of the time you do not need to + edit these files manually, or even know their precise + names and locations, <application>Nautilus</application> + usually doesn't show these files. You can change this + setting as described in <ulink type="help" + url="gnome-help:nautilus">Nautilus manual</ulink>. + </para> + </listitem> + + <listitem> + <para> Files with names ending with tilde (~) are + usually backup files created by various + applications. For example, when you edit a file + <filename> myfile.txt</filename> with + <application>emacs</application>, it + saves the previous version in the file + <filename>myfile.txt~</filename>. + </para> + </listitem> + </itemizedlist> + </para> + </sect2> + <sect2 id="new-wildcards"> + <title> Wildcards</title> + + <para>When entering commands from the command line, you can use + so-called <emphasis>wildcards</emphasis> instead of an exact + filename. The most common wildcard is *, which matches any + sequence of symbols (including an empty string). For example, + the command <command>ls *.txt</command> will list all the files with + the extension <filename>txt</filename>, and the command <command>rm + chapter*</command> will remove all files with the names starting with + <filename>chapter</filename> (<command>ls</command> and + <command>rm</command> are UNIX + commands for listing and removing files). Another useful + wildcard is ?, which matches any single symbol: for example, + <command>rm chapter?.txt</command> will remove files + <filename>chapter1.txt, chapter2.txt</filename> , but not + <filename>chapter10.txt</filename> + </para> + <para>Most new GNOME users prefer using the <application>GNOME + File Manager</application> for operations with files, rather + than working from the command line. Wildcards can also be + used in <application>Nautilus</application> in the file + selection and view filter dialogs. </para> + </sect2> + + <sect2 id="quoting"> + <title>Using spaces, commas, etc. in file names</title> + <para> + As was mentioned above, a file name may contain not only + letters and numbers, but also spaces, commas, etc. — any + characters other than slash (/). However, if you are using + commands typed on the command line, you should be careful when + dealing with such files. To avoid problems, it is advised that + you enclose filenames that contain anything other than + letters, numbers, and dots, in single quotes: to delete file + <filename>My File</filename>, you should type <command>rm 'My + File'</command> rather than <command>rm My + File</command>. + </para> + <para> + Of course, if you are only using graphical tools such as GNOME + File Manager, than you do not need to worry about this: to + delete file <filename>My File</filename>, just drag it to the + trash can. + </para> + </sect2> + + </sect1> + <sect1 id="new-dirs"> + <title>Directories and paths</title> + <sect2 id="new-dirstruct"> + <title>Directory structure</title> + <para> + Now, let's discuss the concept of directories. A + <emphasis>directory</emphasis> is a collection of files. It + can be thought of as a <quote>folder</quote> that contains + many different files. Directories are given names, with which + they can be identified. Furthermore, directories are + maintained in a tree-like structure; that is, directories may + contain other directories. The top level directory is called + the <quote>root directory</quote> and denoted by + <filename>/</filename>; it contains all the files in your + system. + </para> + <sect3 id="new-path"> + <title>Pathnames</title> + <para> + A <emphasis>pathname</emphasis> is a file's <quote>full + name</quote>; it contains not only filename but also its + location. It is made up of the filename, preceded by the + name of the directory containing that file. This, in turn, + is preceded by the name of directory containing + <emphasis>that directory</emphasis>, and so on. A typical + pathname may look like + <filename>/home/sasha/talk.txt</filename> which refers to + the file <filename>talk.txt</filename> in the directory + <filename>sasha</filename> which in turn is a subdirectory + in <filename>/home</filename>. + </para> + <para> + As you can see, the directory and filename are separated by + a single slash (/). For this reason, filenames themselves + cannot contain the / character. MS-DOS users will find this + convention familiar, although in the MS-DOS world the + backslash (\) is used instead. The directory that contains a + given subdirectory is known as the <emphasis>parent + directory</emphasis>. Here, the directory + <filename>home</filename> is the parent of the directory + <filename>sasha</filename>. + </para> + <para> + Each user has a home directory, which is the directory set aside for + that user to store his or her files. Usually, user home directories + are contained under <filename>/home</filename>, and are named for the + user owning that directory, so that the home directory of user + <systemitem>sasha</systemitem> would be + <filename>/home/sasha</filename>. + </para> + </sect3> + </sect2> + <sect2 id="new-relative"> + <title>Relative directory names</title> + <para> + At any moment, commands that you enter are assumed to be + <emphasis>relative</emphasis> to your current working + directory. You can think of your working directory as the + directory in which you are currently + <quote>located</quote>. When you first log in, your working + directory is set to your home directory — for user + sasha, it would be <filename>/home/sasha</filename>. Whenever + you refer to a file, you may refer to it in relationship to + your current working directory, rather than specifying the + full pathname of the file. + </para> + <para> + For example, if your current directory is + <filename>/home/sasha</filename>, and you have a file there called + <filename>talk.txt</filename>, you can refer to it just by its file + name: a command like <command>emacs talk.txt</command> issued from the + directory <filename>/home/sasha</filename> is equivalent to + <command>emacs /home/sasha/talk.txt</command> + (<application>emacs</application> is an extremely powerful editor for + text files; new users may prefer something simpler, such as + <application>gnotepad</application>, but for power user, + <application>emacs</application> is indispensable). + </para> + + + <para> + Similarly, if, in <filename>/home/sasha</filename> you have a + subdirectory called <filename>papers</filename> and, in that + subdirectory, a file called <filename>fieldtheory.txt</filename>, you + can refer to it as <filename>papers/fieldtheory.txt</filename>. + </para> + <para> If you begin a filename (like + <filename>papers/fieldtheory.txt</filename>) with a character + other than /, you're referring to the file in terms relative + to your current working directory. This is known as a relative + pathname. On the other hand, if you begin a filename with a + /, the system interprets this as a full pathname — that + is, a pathname that includes the entire path to the file, + starting from the root directory, /. Use of the full pathname + is known as an <emphasis>absolute pathname</emphasis>. + </para> + </sect2> + <sect2 id="new-path-conv"> + <title>Pathname conventions</title> + <para> + Here are some standard conventions you can use in paths: + </para> + <para> + <filename>~/</filename> — user's home directory + </para> + <para> + <filename>./</filename> — current working directory + </para> + <para> + <filename>../</filename> — parent of the current directory + </para> + <para> + For example, if sasha's current directory is + <filename>/home/sasha/papers</filename>, he can refer to the file + <filename>/home/sasha/talk.txt</filename> as + <filename>~/talk.txt</filename> or as <filename>../talk.txt</filename>. + </para> + </sect2> + </sect1> + <sect1 id="permissions"> + <title>Permissions</title> + <para> + Every file on your system has an <emphasis>owner</emphasis> — one + of the users (usually the one who created this file), and a system of + <emphasis>permissions</emphasis>, which regulate access to this + file. + </para> + <para> + For ordinary files, there are 3 types of access permissions: + read, write, and execute (the latter only makes sense for + executable files). They can be set independently for 3 + categories of users: the file owner, the users in the group + owning the file, and everyone else. Discussion of groups of + users goes beyond the scope of this document; the other two + categories are self-explanatory. <!--Which groups of users? I + don't think the other two categories are self-explanatory. Would + help if there was some exposition here which explicitly states + who belongs where.-->So, if the permissions on a file + <filename>/home/sasha/talk.txt</filename> are set to read and + write for user sasha, who is the file owner, and read only for + everyone else, only sasha will be able to modify this file. + <!--How about adding something in parentheses here, like (Since + sasha created the file <filename>talk.txt</filename>, sasha has + the widest range of rights to access the file.)... or something + like that?--> + </para> + + <para> + All newly created files carry some standard permissions, usually + read/write for user and read only for everyone else. You can + view the permissions using the GNOME File Manager, by + right-clicking on the file, choosing + <guimenuitem>Properties</guimenuitem> in the pop-up menu, and + then the <guilabel>Permissions</guilabel> tab. Using this + dialog, you can also change the permissions — just click + on a square representing the permission to toggle it. Of + course, only the file owner or the system administrator can + change the permissions of a file. Advanced users can also change + the default file permissions which are assigned to newly created + files—see the manual pages for your default shell (usually + <command>bash</command>, <command>csh</command> or + <command>tcsh</command>) and look for the command + <command>umask</command>. + </para> + + <para> + A file can also have some special permission properties such as + UID, GID, and <quote>sticky</quote> bit. They are for advanced + users only — do not change them unless you know what you + are doing. (If you are curious: these permissions are typically + used on executable files to allow the user to execute + <emphasis>some</emphasis> commands which read or modify files to + which the user himself doesn't have access.) + </para> + + <para> Similar to files, the directories also have + permissions. Again, there are 3 possible permissions: read, + write, and execute. However, they have different meaning: + namely, <quote>read</quote> permission for a directory means + permission to list the contents of the directory or search for a + file; <quote>write</quote> means permission to create and remove + files in the directory, and <quote>execute</quote> means + permission to access files in the directory. + </para> + <para> + Note that the permissions granted to a file depend on the + permissions of the directory in which the file is located: in + order to be able to read a file, a user needs to have the read + permission for the file itself and <quote>execute</quote> + permission for the directory that contains it. So, if user sasha + doesn't want anybody else to see his files, he can achieve this + by removing the execute permission on his home directory for all + other users. This way, no one but himself (and, of course, root) + will be able to read any of his files, no matter what the + permissions of individual files are. + </para> + <para> Detailed explanation of the permission system can be found, + for example, in the <ulink type="info" url="info:fileutils">info + page</ulink> for the GNU <citetitle>File Utilities</citetitle> + package. + </para> + </sect1> + + <sect1 id="symlinks"> + <title>Symbolic links</title> + <para> + In addition to regular files, UNIX also has special files called + <emphasis>symbolic links</emphasis> (or + <emphasis>symlinks</emphasis> for short). These files do not + contain any data; instead, they are just + <quote>pointers</quote>, or <quote>shortcuts</quote> to other + files. For example, sasha can have a symlink named + <filename>ft.txt</filename> pointing to the file + <filename>papers/fieldtheory.txt</filename>; this way, when a + program tries to access the file <filename>ft.txt</filename>, + the file <filename>papers/fieldtheory.txt</filename> will be + opened instead. As you can see from this example, the symlink + and the target file can have different names and be located in + different directories. + </para> + <para> Note that deleting, moving, or renaming the symlink file + has no effect on the target file: if sasha tries to delete the + file <filename>ft.txt</filename>, it is the symlink that will + be deleted, and the file + <filename>papers/fieldtheory.txt</filename> will remain + unchanged. Also, the permissions of the symlink are + meaningless: it is the permissions of the target file that + determine whether a user has the access to it. + </para> + + <para> Symlinks can also point to directories. For example, on + the GNOME FTP server (<systemitem>ftp.gnome.org</systemitem>), + there is a file + <filename>/pub/GNOME/stable/releases/october-gnome</filename>, + which is actually a symlink to directory + <filename>/pub/GNOME/stable/releases/gnome-1.0.53</filename> + — as one would expect, since <quote>October GNOME</quote> + is just another name for 1.0.53 release + of GNOME. + </para> + </sect1> + <sect1 id="new-mount"> + <title>Mounting and unmounting drives</title> + <para> + As we mentioned earlier, the directories on a UNIX system are + organized in a tree, with the top level directory being + <filename>/</filename>. Unlike some other operating systems such as + MS-DOS, there are no special names for files on your floppy disk or + CD-ROM: <emphasis>all</emphasis> the files accessible to your system + must appear in the main directory tree starting with + <filename>/</filename>. + </para> + <para> + Thus, before you can access files on a floppy diskette or a + CD-ROM, you must give to your system a command to incorporate + the contents of this diskette into the main directory tree, + which is referred to as <emphasis>mounting</emphasis> the + diskette. You can think of it as the software analog of + connecting the drive to your system. Typically the contents of + the CD-ROM will appear under the name + <filename>/mnt/cdrom</filename>; the floppy diskette under + <filename>/mnt/floppy</filename> (these are called the + <emphasis>mount points</emphasis> and are defined in the special + configuration file, <filename>/etc/fstab</filename>). Accessing + a drive in this fashion doesn't mean that the system will copy + all the files from the CD to the directory + <filename>/mnt/cdrom</filename>. Instead, it means that the + directory <filename>/mnt/cdrom</filename> + <emphasis>represents</emphasis> the CD-ROM: When a program tries + to access, say, a file called + <filename>/mnt/cdrom/index.html</filename>, the system will look + for file <filename>index.html</filename> on the CD-ROM. + </para> + <para> + So, in short: before you can use files on a drive, you must + <quote>mount</quote> it. Similarly, <emphasis>before removing + the disk from the drive, you must unmount it.</emphasis> + </para> + <para> + When using GNOME, you usually do not have to worry about + mounting and unmounting: GNOME scans the appropriate + configuration file and places the icons for all drives on your + desktop. Double-clicking on any of these icons automatically + mounts the corresponding drive (if it was not already mounted) + and starts the file manager in the appropriate directory. + Similarly, if you right-click on the drive icon and choose the + command <guimenuitem>Eject device</guimenuitem> from the pop-up + menu, GNOME automatically unmounts it before ejecting. You can + also mount/unmount a drive by right-clicking on its icon on the + desktop and choosing <guimenuitem>Mount device</guimenuitem> or + <guimenuitem>Unmount device</guimenuitem> from the pop-up menu, + or by using the disk mount applet. + </para> + <para> + Note that you can't unmount a drive if it is being used by some + program; for example, if you have a terminal windows open in a + directory on the drive you're trying to unmount. So, if you get + the error message <quote>Device busy</quote> while trying to + unmount a drive, make sure that none of your open applications + is accessing a file or directory on this drive. + </para> + <para> + However, GNOME cannot prevent you from ejecting the disk using the + physical eject button on the drive itself — in this case, + <emphasis>it is your responsibility to unmount the drive</emphasis> + before doing so. For CD and Zip drives, the system blocks the eject + button on the drive while the drive is mounted; for floppy drives this + is technically impossible. + </para> + + <important> + <title>IMPORTANT</title> + <para> + If you eject a floppy disk using the eject button on the drive without + first unmounting it, you may lose your data! + </para> + </important> + + <para> Some systems are running special programs such as + <application>supermount</application> or + <application>magicdev</application> + which automatically mount a drive when a disk is inserted and unmount a + drive if it hasn't been used for a specified period of time. In + this case, you will probably never need to worry about + mounting/unmounting drives yourself; you don't even need to read + this section. + </para> + <para> + Allowing users to mount and unmount drives carries some security + risks, so many multi-user systems are configured so that only + root can mount or unmount drives. This is the most probable + cause of error messages you may be getting while trying to mount + a drive. In this case, discuss this matter with your system + administrator. + </para> + <para> + If the computer is your personal workstation or home computer + and you are not worried about security, you can give mount + permission to ordinary users. The easiest way to allow this is + to use the application + <application><emphasis>linuxconf</emphasis></application> (which + can only be run by root). Just select the drive you want to + access in the <guilabel>Access local drive</guilabel> section. + In the <guilabel>Options</guilabel> tab select the + <guilabel>User Mountable</guilabel> option. Your drive will now + be mountable by users. + </para> + <para> + If <application><emphasis>linuxconf</emphasis></application> is + not available, then you must manually edit the file + <filename>/etc/fstab</filename> to include user access. This is + done by adding the <quote>user</quote> attribute to the + drive. For example: + </para> + <para> + If your <filename>fstab</filename> file contains a line like + this: + </para> + <programlisting> +/dev/cdrom /mnt/cdrom iso9660 exec,dev,ro,noauto 0 0 + </programlisting> + <para> + add the word <quote>user</quote> to the fourth column: + </para> + <programlisting> +/dev/cdrom /mnt/cdrom iso9660 user,exec,dev,ro,noauto 0 0 + </programlisting> + </sect1> + + <sect1 id="devices"> + <title>Drives and devices</title> + <para> + Under UNIX, the word <quote>device</quote> is used for all + peripheral devices connected to your computer; this includes + hard drives, floppy and CD-ROM drives, audio and video cards, + serial and parallel ports, and much more. Each device has a + name, such as <filename>/dev/hda</filename>. The most common + device names are listed below (for Linux; other varieties of + UNIX may use slightly different device names). + </para> + <itemizedlist> + <listitem><para> <filename>/dev/hd*</filename> (where *=a,b,c, + …): these are IDE devices, such as hard drives, + CD-ROM drives and ZIP drives. <filename>/dev/hda</filename> + denotes the master drive on the first IDE controller + (usually your first hard drive, <filename>C:</filename> + under Windows), <filename>/dev/hdb</filename> is the slave + drive on the fist controller (this can be a second hard + drive or a CD-ROM), and so on. See also the <link + linkend="zippartition">note</link> below about ZIP drives. + </para></listitem> + + <listitem><para> + <filename>/dev/sd*</filename> (where *=a,b,c, …): + these are SCSI devices, usually hard drives. + </para></listitem> + </itemizedlist> + + <note> + <title>NOTE</title> + <para>If the acronyms IDE and SCSI are new to you, here is a + brief explanation: there are two types of interfaces for hard + drives and other similar devices: IDE (and its cousins such as + EIDE, ATAPI, etc.) and SCSI. SCSI provides better performance, + but is more expensive, so it is only used on + servers. If you are not sure what kind of drives you have, most + probably it is IDE. </para> + </note> + <itemizedlist> + <listitem><para> + <filename>/dev/fd*</filename> (where *=0,1, etc) are floppy + drives; <filename>/dev/fd0</filename> is the first drive (it + corresponds to <filename>A:</filename> under Windows), + <filename>/dev/fd1</filename> is the second + (<filename>B:</filename>), etc. + </para> + </listitem> + <listitem><para> + <filename>/dev/lp*</filename> (where *=0,1, etc) are + parallel ports; most commonly, these ports are used to + connect a printer to the + computer. <filename>/dev/lp0</filename> corresponds to + <filename>LPT1</filename> under Windows, + <filename>/dev/lp1</filename> to <filename>LPT2</filename>, + etc. + </para> + </listitem> + <listitem><para> <filename>/dev/ttyS*</filename> (where *=0,1, + etc) are serial ports; these ports are commonly used for + connecting a mouse or a + modem. <filename>/dev/ttyS0</filename> corresponds to + <filename>COM1</filename> under Windows, + <filename>/dev/ttyS1</filename> to <filename>COM2</filename>, + etc. + </para> + </listitem> + <listitem><para> + <filename>/dev/audio</filename> and + <filename>/dev/dsp</filename> — these two device + names are used for your audio card (they are not equivalent, + since they are used for different types of audio files). + </para> + </listitem> + </itemizedlist> + <para> + In addition, it is a common practice to have symlinks + <filename>/dev/floppy, /dev/modem</filename> and + <filename>/dev/cdrom</filename> pointing to the actual device + name corresponding to your floppy drive, modem, and CD-ROM drive + respectively. + </para> + <para> + You rarely need to use these device names. In particular, if you + want to access a file on a drive, you do not use the device name + (such as <filename>/dev/fd0</filename>); instead, you first + mount the device so that its contents shows as a subdirectory + (for example, <filename>/mnt/floppy</filename>) in the main + directory tree, and then use this directory for accessing + files; see <xref linkend="new-mount"> for more information. About + the only time when you actually need to use the device names is + when you are configuring some newly installed program. For + example, a fax program can ask you for the device name for your + modem (in which case you can either give it the actual device + name, such as <filename>/dev/ttyS1</filename>, or just use the + symlink <filename>/dev/modem</filename>). + </para> + <para> And just for fun: there is also a device + <filename>/dev/null</filename> which acts as a <quote>black + hole</quote>: you can send to it any information, and it never + returns. So if you do not want to be bothered by error messages, + re-direct them to <filename>/dev/null</filename> -:). + </para> + + <sect2 id="partitions"> + <title>Partitions</title> + <para> + Note that it is possible to subdivide a hard drive (or a + similar device) into parts which for all practical purposes + behave as independent disks, even though physically they + reside on the same disk. These parts are called + <quote>partitions</quote> (under Windows, the name + <quote>logical disk</quote> is used). For example, you can + partition your hard drive into several partitions, and install + different operating systems in different partitions; you can + reformat each partition independently of the others. This + partitioning of the hard drive is usually done during the + installation of the operating system; refer to your + installation guide for more information. + </para> + <para> + If your hard drive has been partitioned then each partition + is considered as a separate device. For example, if your hard + drive is <filename>/dev/hda</filename>, then the first + partition on this drive would be referred to as + <filename>/dev/hda1</filename>, the second as + <filename>/dev/hda2</filename>, and so on. + </para> + <warning id="zippartition"> + <title> Partitioning of ZIP disks</title> + + <para> For reasons unknown to us, the pre-formatted + ZIP disks sold in stores or formatted using Iomega's ZIP + tools under Windows are partitioned in a strange way: + they have only one partition (of Windows type, of course), + but this partition has number 4. Thus, if your ZIP drive is + <filename>/dev/hdc</filename>, the correct device name you + should use for such disks is <filename>/dev/hdc4</filename>. + </para> + </warning> + </sect2> + </sect1> + <sect1 id="X11"> + <title>Graphical user interface: X Window System, window + managers, and desktop environments.</title> + <para> + UNIX is a modular system: it consists of many components so that + a user (or system administrator) can choose those components he + needs. In particular, there are several layers of software + responsible for graphical user interface. These layers are: X + Window System, window managers, and desktop environment. + </para> + <para> <emphasis>X Window System</emphasis> (also known as X, or + X11) is the component of UNIX systems responsible for virtually + all basic graphics — in particular, for drawing icons, + backgrounds, and windows in which your applications + work. Without X, you only have command line. X11 sets the screen + resolution and color depth, moves the mouse cursor around the + screen, etc. It serves as a foundation for other components of + graphical user interface such as window managers and desktop + environments. + </para> + <para> <emphasis>Window manager</emphasis> extends capabilities of + X Window System by placing borders and buttons around windows, + which allows the user to move, close, hide or resize the + windows. X11 is virtually always used in combination with a + window manager, since it would be pretty much unusable without + one. There are many window managers available for X11; most + popular are <application>fvwm</application>, + <application>mwm</application>, <application>kwm</application> + (used by KDE), <application>Enlightenment</application>, and + <application>Sawfish</application>. + </para> + <para> Finally, a <emphasis>desktop environment</emphasis> goes + one more step further than a window manager by adding a + graphical file manager from which you can drag-and-drop items on + your desktop, a panel which can be used to launch frequently + used applications, and a set of applications and utilities. + There are several desktop environments available for all + versions of UNIX; the most popular ones are <ulink type="http" + url="http://www.gnome.org">GNOME</ulink>, <ulink type="http" + url="http://www.kde.org">KDE</ulink> and <ulink type="http" + url="http://www.sun.com/solaris/cde/">CDE</ulink> (soon to be + replaced by GNOME). + </para> + <para> Most desktop environments contain a window manager as their + integral part; for example, KDE contains its own window manager, + <application>kwm</application> (it is possible to use KDE with + another window manager, but few people do so). GNOME has no + window manager of its own; it will allow you to choose any + window manager you already have on your system. To make life + easier for new users, usually the + <application>Sawfish</application> window manager is distributed + with GNOME and is used by default; you can switch to + another window manager using <application>GNOME Control + Center</application>. Note however that you will need a + GNOME-compliant window manager to use such features of GNOME as + session management, taskbar applet, etc. + </para> + + </sect1> + + +</article> + + + |