Log In
Or create an account ->
Imperial Library
Home
About
News
Upload
Forum
Help
Login/SignUp
Index
Chapter 1: The Basics Overview This chapter is a guide to the Unix commands and utilities that yo
Chapter 1: The Basics
1.1 About /bin/shThe shell is one of the most important parts of a Unix system. A shell is a program
1.2 Using the ShellWhen you installed Linux, you set up a root (superuser) password, and hopefully y
1.3 Basic CommandsIt's time to learn some other Unix commands. Most of the following programs take m
1.4 Using Directory CommandsUnix has a directory hierarchy that starts at /, sometimes called the ro
1.5 Intermediate CommandsThe following sections describe the most essential intermediate Unix comman
1.6 Changing Your Password and ShellOn large commercial sites, it is important to change your passwo
1.7 Dot Files Change to your home directory and take a look around with ls, and then run ls -a. At f
1.8 Environment and Shell VariablesThe shell can store temporary variables, called shell variables,
1.9 The Command Path PATH is a special environment variable containing the command path (or path fo
1.10 Special CharactersIf you know people who are into Linux, and you have some inexplicable desire
1.11 Command-Line EditingAs you play around with the shell, you may notice that you can edit the com
1.12 Text EditorsSpeaking of editing, it's time for you to learn an editor. To get serious with Unix
1.13 Getting Online HelpLinux systems come with a wealth of documentation. For basic commands, the m
1.14 Shell Input and OutputNow that you are familiar with basic Unix commands, files, and directorie
1.15 Understanding Error MessagesWhen you encounter a problem on a Unix-like system such as Linux, y
1.16 ProcessesA process is a running program. Each process on the system has a numeric process ID (P
1.17 File Modes and PermissionsEvery Unix file has a set of permissions that determine whether you c
1.18 Archiving and Compressing FilesNow that you know all about files, permissions, and the errors t
Chapter 2: Devices, Disks, Filesystems, and the Kernel This chapter is a guided tour of the infrast
Chapter 2: Devices, Disks, Filesystems, and the Kernel
2.2 The KernelYou now know what the Linux directory structure looks like. Before going on to devices
2.3 DevicesYou will find it very easy to manipulate devices on a Unix system because the kernel norm
2.4 FilesystemsA filesystem is a database of files and directories that you can attach to a Unix sys
2.5 Swap and Virtual MemoryIf you run out of real memory, Linux has a virtual memory system that aut
Chapter 3: How Linux Boots Overview You now know the physical structure of a Linux system, what t
Chapter 3: How Linux Boots
3.1 initThere is nothing special about init. It is a program just like any other on the Linux system
3.2 Boot LoadersBefore the kernel runs init, a boot loader starts the kernel. On occasion, you need
3.3 Virtual Consoles The final stage of the boot process starts one or more programs that allow you
Chapter 4: Essential System Files, Servers, and Utilities Overview When you first look in the /et
Chapter 4: Essential System Files, Servers, and Utilities
4.1 System LoggingMost system programs write their diagnostic output to the syslog service. The sysl
4.2 A Glance at /etcMost configuration files on a Linux system are in /etc, and because there are so
4.3 User Management FilesThe user system in Unix allows different people to log in to the same machi
4.4 getty and Login Section 3.1.1 mentioned getty, a program that attaches to terminals and displays
4.5 Setting the Time A well-functioning Unix machine depends on accurate timekeeping. The kernel is
4.6 Scheduling Recurring Tasks with CronUnix provides a service called cron that runs programs repea
4.7 Scheduling One-Time Tasks with AtIf you want to run a job in the future but don't want to use cr
4.8 Tracking Individual Processes You saw how to use ps in Section 1.16 for listing process characte
4.9 Adjusting Process Priorities It is possible to change the way the kernel schedules a process so
4.10 Monitoring System PerformanceMost Linux systems behave well under a distribution's default sett
4.11 Running Commands as the SuperuserBefore you see any more system commands, you should learn more
Chapter 5: Configuring Your Network Overview Networking is the practice of sending data from one c
Chapter 5: Configuring Your Network
5.1 Network Layers If you really want to understand Linux network configuration, you must be able to
5.2 The Internet Layer The Internet as we know it is based on the Internet Protocol, version 4 (IPv4
5.3 Basic ICMP ToolsBefore you configure your network devices, you should learn how to use some ICMP
5.4 Configuring Interfaces and the Host-to-Network LayerOn a Linux system, you connect the Internet
5.5 Configuring a Default GatewayIn the previous section, you saw how to manually configure an Ether
5.6 Resolving HostnamesThe last bit of configuration for a simple network connection is hostname res
5.7 Using DHCP ClientsThe Dynamic Host Configuration Protocol (DHCP) allows a host to get its IP add
5.8 PPP ConnectionsSo far, you have seen Internet connections based on a local area network (LAN) an
5.9 Broadband ConnectionsThe term broadband vaguely refers to connections faster than a conventional
5.10 Ethernet NetworksEthernet is by far and away the most popular physical medium for local area ne
5.11 Configuring RoutesRouting is the act of transferring packets from one host or subnet to another
5.12 The Transport Layer: TCP, UDP, and ServicesSo far, you have only seen how packets move from hos
5.13 FirewallsA firewall is a machine that sits between a network and the rest of the Internet, atte
5.14 Network Address Translation (IP Masquerading) Network Address Translation (NAT) permits sharing
5.15 Wireless Ethernet The proliferation of notebook computers and other portable computing devices
Chapter 6: Network Services Overview Chapter 5 explained all layers of Internet networks except
Chapter 6: Network Services
6.1 The Basics of Services TCP services are among the easiest to understand because they are simple,
6.2 Stand-Alone ServersStand-alone network servers are no different than any other server daemons on
6.3 The inetd Daemon Implementing stand-alone servers for every single service is somewhat inefficie
6.4 Secure Shell (SSH)The secure shell (SSH) is now the de facto standard for remote logins to other
6.5 Diagnostic Tools netstat is one of the most basic network service debugging tools, telling you w
6.6 Remote Procedure Call (RPC)RPC stands for remote procedure call. The basic idea is that programs
6.7 Network SecurityBecause Linux is a very popular Unix flavor on the PC platform, it attracts more
Chapter 7: Introduction to Shell Scripts Overview If you can enter commands into the shell, you ca
Chapter 7: Introduction to Shell Scripts
7.1 Shell Script BasicsAll Bourne shell scripts should start with the following line, indicating tha
7.2 QuotingA literal is a string that you want the shell to leave alone and pass to the command line
7.3 Special VariablesMost shell scripts understand command-line parameters and interact with the com
7.4 Exit CodesWhen a Unix program finishes, it leaves an exit code for the parent process that start
7.5 ConditionalsThe Bourne shell has special constructs for conditionals, such as if/then/else and c
7.6 LoopsThere are two kinds of loops in the Bourne shell; for loops and while loops. The for loop i
7.7 Command Substitution The Bourne shell can redirect a command's standard output back to the shell
7.8 Temporary File ManagementSometimes it is necessary to create a temporary file to collect output
7.9 Here DocumentsSometimes you want to print a large section of text or feed a lot of text to anoth
7.10 Important Shell Script UtilitiesThere are several programs that are particularly useful in shel
7.11 SubshellsSometimes you need to alter the environment in a shell slightly, but don't want a perm
7.12 Including Other Files in ScriptsIf you need to include another file in your shell script, use t
7.13 Reading User InputThe read command reads a line of text from the standard input and stores the
7.14 Too Much?The shell is so feature-rich that it's difficult to condense its important elements in
Chapter 8: Development Tools Unix is very popular with programmers not just due to the overwhelming
Chapter 8: Development Tools
8.2 DebuggersThe standard debugger on Linux systems is gdb, with DDD as a graphical user frontend. T
8.3 Lex and YaccYou may encounter lex and yacc when compiling programs that read configuration files
8.4 Scripting Languages A long time ago, the average Unix systems manager didn't have to worry much
8.5 JavaAlthough some application programmers love Java, Unix systems programmers avoid it, and you
8.6 Assembly Code and How a Compiler WorksIf you want to use a compiler's advanced features, you sho
Chapter 9: Compiling Software From Source Code Overview Most nonproprietary third-party Unix softw
Chapter 9: Compiling Software From Source Code
9.1 Unpacking Source PackagesA package's source code distribution usually comes as a .tar.gz or .tar
9.2 GNU AutoconfEven though C source code is usually fairly portable, there are still differences on
9.3 Other SystemsIf a package does not use GNU autoconf for platform-specific configuration, you sho
9.4 Installation PracticeKnowing how to build and install software is good, but knowing when and whe
9.5 Applying a PatchEvery now and then, you might get a patch that you need to apply against source
9.6 Troubleshooting Compiles and InstallationsIf you understand the difference between compiler erro
Chapter 10: Maintaining the Kernel Overview As mentioned in Section 2.2, the kernel is the core of
Chapter 10: Maintaining the Kernel
10.1 Do You Need to Build Your Own Kernel?Before running head-first into a kernel build, you need to
10.2 What You Need to Build a Kernel As with any package, the kernel source includes documentation e
10.3 Getting the Source Code Linux kernel versions have three components. Suppose you have kernel re
10.4 Configuring and Compiling the KernelYou need to configure the options that you want to have in
10.5 Installing Your Kernel with a Boot LoaderBoot loaders load kernel images into memory and hand c
10.6 Testing the KernelWhen you boot your new kernel for the first time, you should take a careful l
10.7 Boot Floppies You can also boot the kernel from a floppy disk. Creating a boot floppy can be us
10.8 Working with Loadable Kernel ModulesLoadable modules are little pieces of kernel code that you
Chapter 11: Configuring and Manipulating Peripheral Devices This chapter covers various peripheral
Chapter 11: Configuring and Manipulating Peripheral Devices
11.2 CD WritersLinux CD burning programs work with ATAPI devices and generic SCSI devices, such as /
11.3 Introduction to USBLinux supports a wide variety of USB (universal serial bus) devices. A USB s
11.4 IEEE 1394/FireWire Disks IEEE 1394 (also known as FireWire) drivers are relatively new to Linux
11.5 Hotplug SupportNow that we've covered Linux USB and IEEE 1394 support, you should learn a littl
11.6 PC Cards (PCMCIA)Linux PCMCIA support is highly dependent on kernel versions. If you upgrade yo
11.7 Approaching Other DevicesObviously, the number of devices that you can attach to your PC is eno
Chapter 12: Printing Overview The printing process on Unix works roughly as follows: An applicat
Chapter 12: Printing
12.1 PostScriptUnix applications that print generate PostScript files as output. PostScript is not a
12.2 Print Servers There are several different Unix print servers. Here are just a few: Berkeley
12.3 Print FiltersTwo print filters dominate Unix printing: Foomatic This print filter works with
12.4 Print ClientsThere are two traditional clients that send data to a print server: lpr This is
12.5 CUPSWith these preliminaries out of the way, let's look at CUPS. CUPS has several interfaces, i
12.6 GhostscriptIf you want to get a handle on printing under Unix, you should get to know Ghostscri
12.7 Further Printing TopicsThis chapter is really only the tip of the iceberg when it comes to prin
Chapter 13: Backups There is no single system for backups on Linux. There are many different kinds o
Chapter 13: Backups
13.2 Backup HardwareIn the formative years of Unix, there was only one reasonable kind of backup har
13.3 Full and Incremental BackupsBefore going into detail about backup hardware and archiving progra
13.4 Using tar for Backups and RestoresIn Section 1.18, you learned the basics of tar. As it turns o
13.5 Backups to Non-Traditional MediaEven though you have the ability to create your own filesystems
13.6 Tape Drive DevicesTape devices are character devices on a Linux system, going by a variety of f
13.7 Other ArchiversAlthough tar is the most common archiver on Linux systems, there are two other i
13.8 Further Backup TopicsThis chapter covers the basics of manual backups for small systems. Howeve
Chapter 14: Sharing Files with Samba Overview Your Linux machine probably doesn't live alone on yo
Chapter 14: Sharing Files with Samba
14.1 Configuring the ServerThe central Samba configuration file is smb.conf, and it is usually locat
14.2 Starting the Server After you add a user and a password, you should probably test your server.
14.3 Diagnostics and Log FilesIf something goes wrong upon starting one of the Samba servers, an err
14.4 Sharing FilesTo export a directory to SMB clients (that is, to share a directory with a client)
14.5 Sharing PrintersYou can export all of your printers to Windows clients with a special [printers
14.6 Using the Samba ClientSamba comes with a program named smbclient that can print to and access r
Chapter 15: Network File Transfer Overview This book's primary focus is the single-machine environ
Chapter 15: Network File Transfer
15.1 rsync BasicsThe base requirement of the rsync system is that you install the rsync program on t
15.2 Checksums and Verbose Transfers The rsync command uses file checksums (near-unique signatures)
15.3 CompressionMany administrators always use -z in conjunction with -a to compress the data before
15.4 Limiting BandwidthIt's easy to clog the uplink of DSL and cable modem connections when uploadin
15.5 Transferring Files to Your Computer The rsync command isn't just for copying files from your lo
15.6 Further rsync Topics rsync can do many more things that are beyond the scope of this book. One
Chapter 16: User Environments Overview This book's focus is on the Linux system that normally lies
Chapter 16: User Environments
16.1 Appropriate Startup Files When designing startup files, you should keep the user in mind. If yo
16.2 Shell Startup File ElementsWhat goes into a shell startup file? Some things may seem obvious, s
16.3 Startup File Order and Examples Now that you know what to put into shell startup files, it's ti
16.4 Default User Settings The best way to write startup files and choose defaults for new users is
16.5 Startup File PitfallsThere are a few things you really should avoid in startup files (many have
16.6 Further Startup TopicsBecause this book deals only with the underlying Linux system, this chapt
Chapter 17: Buying Hardware for Linux Overview Computers are frustrating. Simply shopping for one
Chapter 17: Buying Hardware for Linux
17.1 Core ComponentsThe discussion in this chapter focuses on desktop computers. With the exception
17.2 Other Hardware ComponentsNow it's time to move beyond the essential components and look at your
17.3 A Word About Hardware UpgradesBefore we look at how you can save money, you should know somethi
17.4 Saving MoneyAxiom 3 in the introduction to this chapter stated that you often get what you pay
17.5 NotebooksIt is difficult to balance Linux compatibility with the latest features on notebook co
17.5 Notebooks
17.6 Smaller DesignsOnce upon a time, if you wanted a PC, your options were limited to large machine
Chapter 18: Further Directions There's a lot to Linux. This book can only go so far, and although i
Chapter 18: Further Directions
18.2 Final ThoughtsOne of the difficulties of Linux is that, like most software, certain technical d
Chapter 1: The Basics
Chapter 4: Essential System Files, Servers, and Utilities
Chapter 5: Configuring Your Network
Chapter 10: Maintaining the Kernel
Chapter 13: Backups
Chapter 17: Buying Hardware for Linux
Chapter 1: The Basics
Chapter 2: Devices, Disks, Filesystems, and the Kernel
Chapter 4: Essential System Files, Servers, and Utilities
Chapter 5: Configuring Your Network
Chapter 6: Network Services
Chapter 7: Introduction to Shell Scripts
Chapter 13: Backups
Chapter 10: Maintaining the Kernel
← Prev
Back
Next →
← Prev
Back
Next →