Introduction |
|
xix | |
|
Chapter 1 Starting with Ubuntu Linux |
|
|
1 | (16) |
|
Ubuntu, Debian, and Linux |
|
|
2 | (7) |
|
Understanding Ubuntu Releases |
|
|
3 | (1) |
|
Ubuntu Compared to Other Linux Distributions |
|
|
3 | (2) |
|
|
5 | (2) |
|
|
7 | (1) |
|
Focusing on Linux Commands |
|
|
7 | (2) |
|
|
9 | (2) |
|
Reference Information in Ubuntu |
|
|
11 | (4) |
|
|
12 | (1) |
|
|
12 | (3) |
|
|
15 | (1) |
|
|
15 | (2) |
|
Chapter 2 Installing Ubuntu and Adding Software |
|
|
17 | (32) |
|
Obtaining and Installing Ubuntu |
|
|
17 | (3) |
|
|
18 | (1) |
|
Choosing Installation Options |
|
|
19 | (1) |
|
Answering Installation Questions |
|
|
19 | (1) |
|
Working with Debian Software Packages |
|
|
20 | (4) |
|
Working with Software Packages |
|
|
22 | (1) |
|
Enabling More Repositories for apt |
|
|
23 | (1) |
|
Adding Software Collections with tasksel |
|
|
24 | (1) |
|
Managing Software with APT |
|
|
25 | (2) |
|
Finding Packages with APT |
|
|
27 | (3) |
|
Installing Packages with APT |
|
|
27 | (1) |
|
Upgrading Packages with APT |
|
|
28 | (1) |
|
Upgrading a Single Package with APT |
|
|
28 | (1) |
|
Removing Packages with APT |
|
|
29 | (1) |
|
Cleaning Up Packages with APT |
|
|
29 | (1) |
|
Downloading Packages with APT |
|
|
30 | (1) |
|
Managing Software with dpkg |
|
|
30 | (5) |
|
Installing a Package with dpkg |
|
|
32 | (1) |
|
Removing a Package with dpkg |
|
|
32 | (1) |
|
Extracting Files from a deb File with dpkg |
|
|
32 | (1) |
|
Querying Information about deb Packages |
|
|
33 | (2) |
|
Managing Software with aptitude |
|
|
35 | (6) |
|
Updating and Upgrading Packages with aptitude |
|
|
37 | (1) |
|
Querying Information about Packages with aptitude |
|
|
37 | (1) |
|
Installing Packages with aptitude |
|
|
38 | (1) |
|
Removing Packages with aptitude |
|
|
38 | (1) |
|
Cleaning Up Packages with aptitude |
|
|
39 | (1) |
|
Useful Combinations of Options with aptitude |
|
|
39 | (2) |
|
Verifying Installed Packages with debsums |
|
|
41 | (3) |
|
|
44 | (3) |
|
|
47 | (2) |
|
Chapter 3 Using the Shell |
|
|
49 | (20) |
|
Terminal Windows and Shell Access |
|
|
49 | (3) |
|
|
49 | (2) |
|
|
51 | (1) |
|
|
52 | (6) |
|
|
53 | (1) |
|
Using Command Line Completion |
|
|
54 | (1) |
|
Redirecting stdin and stdout |
|
|
54 | (3) |
|
|
57 | (1) |
|
|
58 | (1) |
|
|
58 | (1) |
|
Acquiring Super User Power |
|
|
58 | (4) |
|
Delegating Power with sudo |
|
|
59 | (2) |
|
|
61 | (1) |
|
Using Environment Variables |
|
|
62 | (2) |
|
Creating Simple Shell Scripts |
|
|
64 | (4) |
|
Editing and Running a Script |
|
|
64 | (1) |
|
Adding Content to Your Script |
|
|
65 | (3) |
|
|
68 | (1) |
|
Chapter 4 Working with Files |
|
|
69 | (20) |
|
|
69 | (4) |
|
|
69 | (2) |
|
|
71 | (1) |
|
Using Symbolic and Hard Links |
|
|
71 | (1) |
|
|
72 | (1) |
|
Using Named Pipes and Sockets |
|
|
73 | (1) |
|
Setting File/Directory Permissions |
|
|
73 | (4) |
|
Changing Permissions with chmod |
|
|
74 | (2) |
|
|
76 | (1) |
|
|
76 | (1) |
|
Traversing the Filesystem |
|
|
77 | (2) |
|
|
79 | (1) |
|
|
80 | (2) |
|
|
82 | (4) |
|
Finding Files with locate |
|
|
82 | (1) |
|
|
83 | (2) |
|
Using Other Commands to Find Files |
|
|
85 | (1) |
|
Finding Out More-about Files |
|
|
86 | (2) |
|
|
86 | (1) |
|
|
86 | (2) |
|
|
88 | (1) |
|
Chapter 5 Manipulating Text |
|
|
89 | (18) |
|
Matching Text with Regular Expressions |
|
|
89 | (1) |
|
|
90 | (4) |
|
|
91 | (1) |
|
Using the Pico and nano Editors |
|
|
92 | (2) |
|
|
94 | (1) |
|
Listing, Sorting, and Changing Text |
|
|
94 | (11) |
|
|
94 | (1) |
|
|
95 | (1) |
|
Paginating Text Files with pr |
|
|
96 | (1) |
|
Searching for Text with grep |
|
|
97 | (2) |
|
|
99 | (2) |
|
Translating or Removing Characters with tr |
|
|
101 | (1) |
|
Checking Differences between Two Files with diff |
|
|
101 | (3) |
|
Using awk and cut to Process Columns |
|
|
104 | (1) |
|
Converting Text Files to Different Formats |
|
|
105 | (1) |
|
|
105 | (2) |
|
Chapter 6 Playing with Multimedia |
|
|
107 | (18) |
|
|
107 | (10) |
|
|
107 | (2) |
|
|
109 | (1) |
|
|
110 | (1) |
|
|
111 | (3) |
|
|
114 | (2) |
|
|
116 | (1) |
|
|
117 | (4) |
|
Getting Information about Images |
|
|
117 | (1) |
|
|
118 | (1) |
|
Converting Images in Batches |
|
|
119 | (2) |
|
|
121 | (2) |
|
|
121 | (2) |
|
|
123 | (2) |
|
Chapter 7 Administering Filesystems |
|
|
125 | (30) |
|
Understanding Filesystem Basics |
|
|
125 | (2) |
|
Creating and Managing Filesystems |
|
|
127 | (9) |
|
|
127 | (4) |
|
Working with Filesystem Labels |
|
|
131 | (1) |
|
|
132 | (1) |
|
Viewing and Changing Filesystem Attributes |
|
|
133 | (2) |
|
Creating and Using Swap Partitions |
|
|
135 | (1) |
|
Mounting and Unmounting Filesystems |
|
|
136 | (5) |
|
Mounting Filesystems from the fstab File |
|
|
136 | (2) |
|
Mounting Filesystems with the mount Command |
|
|
138 | (2) |
|
Unmounting Filesystems with umount |
|
|
140 | (1) |
|
|
141 | (2) |
|
Creating Encrypted Filesystems |
|
|
143 | (3) |
|
|
146 | (1) |
|
Finding Out about Filesystem Use |
|
|
147 | (7) |
|
|
149 | (1) |
|
|
149 | (2) |
|
|
151 | (1) |
|
|
152 | (1) |
|
|
153 | (1) |
|
Removing LVM Logical Volumes and Groups |
|
|
153 | (1) |
|
|
154 | (1) |
|
Chapter 8 Backups and Removable Media |
|
|
155 | (16) |
|
Backing Up Data to Compressed Archives |
|
|
155 | (6) |
|
Creating Backup Archives with tar |
|
|
155 | (2) |
|
|
157 | (3) |
|
Listing, Joining, and Adding Files to tar Archives |
|
|
160 | (1) |
|
Deleting Files from tar Archives |
|
|
160 | (1) |
|
|
161 | (9) |
|
Backing Up tar Archives over ssh |
|
|
161 | (1) |
|
Backing Up Files with rsync |
|
|
162 | (2) |
|
|
164 | (1) |
|
Backing Up to Removable Media |
|
|
165 | (1) |
|
Creating Backup Images with mkisofs |
|
|
165 | (3) |
|
Burning Backup Images with cdrecord |
|
|
168 | (2) |
|
Making and Burning DVDs with growisofs |
|
|
170 | (1) |
|
|
170 | (1) |
|
Chapter 9 Checking and Managing Running Processes |
|
|
171 | (20) |
|
|
172 | (7) |
|
Viewing Active Processes with ps |
|
|
172 | (5) |
|
Watching Active Processes with top |
|
|
177 | (2) |
|
Finding and Controlling Processes |
|
|
179 | (10) |
|
Using pgrep to Find Processes |
|
|
179 | (1) |
|
Using fuser to Find Processes |
|
|
180 | (1) |
|
Changing Running Processes |
|
|
181 | (7) |
|
Scheduling Realtime Processes |
|
|
188 | (1) |
|
|
189 | (2) |
|
Chapter 10 Managing the System |
|
|
191 | (24) |
|
|
191 | (10) |
|
|
192 | (4) |
|
|
196 | (2) |
|
Monitoring Storage Devices |
|
|
198 | (3) |
|
|
201 | (4) |
|
Changing Time/Date with Graphical Tools |
|
|
201 | (1) |
|
Displaying and Setting Your System Clock |
|
|
202 | (1) |
|
Displaying and Setting Your Hardware Clock |
|
|
203 | (1) |
|
Using Network Time Protocol to Set Date/Time |
|
|
204 | (1) |
|
Managing the Boot Process |
|
|
205 | (2) |
|
Understanding the GRUB Boot Loader |
|
|
205 | (1) |
|
Modifying the GRUB Boot Loader |
|
|
206 | (1) |
|
Controlling Startup and Run Levels |
|
|
207 | (2) |
|
|
209 | (2) |
|
|
211 | (2) |
|
|
213 | (2) |
|
Chapter 11 Managing Network Connections |
|
|
215 | (22) |
|
Configuring Networks from the GUI |
|
|
215 | (1) |
|
Managing Network Interface Cards |
|
|
216 | (5) |
|
Managing Network Connections |
|
|
221 | (4) |
|
Starting and Stopping Ethernet Connections |
|
|
221 | (2) |
|
Viewing Ethernet Connection Information |
|
|
223 | (2) |
|
Using Wireless Connections |
|
|
225 | (1) |
|
|
226 | (2) |
|
Troubleshooting Network Problems |
|
|
228 | (7) |
|
Checking Connectivity to a Host |
|
|
228 | (1) |
|
Checking Address Resolution Protocol |
|
|
229 | (2) |
|
|
231 | (2) |
|
Displaying netstat Connections and Statistics |
|
|
233 | (1) |
|
Other Useful Network Tools |
|
|
234 | (1) |
|
|
235 | (2) |
|
Chapter 12 Accessing Network Resources |
|
|
237 | (22) |
|
Running Commands to Browse the Web |
|
|
237 | (2) |
|
|
239 | (7) |
|
Downloading Files with wget |
|
|
239 | (2) |
|
Transferring Files with cURL |
|
|
241 | (1) |
|
Transferring Files with FTP Commands |
|
|
241 | (2) |
|
Using SSH Tools to Transfer Files |
|
|
243 | (3) |
|
Using Windows File Transfer Tools |
|
|
246 | (1) |
|
Sharing Remote Directories |
|
|
246 | (6) |
|
Sharing Remote Directories with NFS |
|
|
246 | (2) |
|
Sharing Remote Directories with Samba |
|
|
248 | (3) |
|
Sharing Remote Directories with SSHFS |
|
|
251 | (1) |
|
Chatting with Friends in IRC |
|
|
252 | (1) |
|
Using Text-Based E-mail Clients |
|
|
253 | (4) |
|
Managing E-mail with mail |
|
|
254 | (2) |
|
Managing E-mail with mutt |
|
|
256 | (1) |
|
|
257 | (2) |
|
Chapter 13 Doing Remote System Administration |
|
|
259 | (20) |
|
Doing Remote Login and Tunneling with SSH |
|
|
259 | (1) |
|
Using Legacy Communications Tools |
|
|
260 | (7) |
|
|
261 | (1) |
|
Logging in Remotely with ssh |
|
|
262 | (5) |
|
Using byobu and screen for Remote Shells |
|
|
267 | (5) |
|
Managing Remote Shells with Screen |
|
|
268 | (2) |
|
Using byobu to Manage-Remote Shells |
|
|
270 | (2) |
|
Using a Remote Windows Desktop |
|
|
272 | (2) |
|
Connecting to a Windows Desktop with Remmina |
|
|
272 | (2) |
|
Connecting to a Windows Desktop with rdesktop |
|
|
274 | (1) |
|
Using Remote Linux Desktop and Applications |
|
|
274 | (1) |
|
Sharing Desktops Using VNC |
|
|
275 | (3) |
|
Setting Up the VNC Server |
|
|
276 | (1) |
|
Starting Up the VNC Client |
|
|
277 | (1) |
|
Using VNC on Untrusted Networks with SSH |
|
|
277 | (1) |
|
|
278 | (1) |
|
Chapter 14 Locking Down Security |
|
|
279 | (18) |
|
Working with Users and Groups |
|
|
279 | (7) |
|
Managing Users the GUI Way |
|
|
280 | (1) |
|
|
280 | (1) |
|
Changing useradd Defaults |
|
|
281 | (1) |
|
|
282 | (1) |
|
|
283 | (1) |
|
|
283 | (3) |
|
|
286 | (1) |
|
|
286 | (2) |
|
Configuring the Built-In Firewall |
|
|
288 | (6) |
|
Understanding iptables Firewalls |
|
|
289 | (2) |
|
|
291 | (1) |
|
Setting Other Firewall Rules |
|
|
292 | (2) |
|
Saving and Reloading Firewall Rules |
|
|
294 | (1) |
|
Using Advanced Security Features |
|
|
294 | (1) |
|
|
295 | (2) |
|
Chapter 15 Setting Up a Virtualization Host and Virtual Machines |
|
|
297 | (14) |
|
Can Your Computer Support Virtualization? |
|
|
298 | (4) |
|
Checking for CPU Virtualization Support |
|
|
298 | (1) |
|
Enabling Virtualization Support in the BIOS |
|
|
299 | (1) |
|
Is the Host Computer 32 or 64-Bit? |
|
|
300 | (1) |
|
Checking Available RAM and Disk Space |
|
|
300 | (1) |
|
Adding Virtualization Software |
|
|
301 | (1) |
|
Adding Your User Account to libvirtd |
|
|
302 | (1) |
|
Managing Virtual Machines with virt-manager |
|
|
302 | (4) |
|
Creating a Virtual Machine in virt-manager |
|
|
304 | (1) |
|
Starting and Stopping Virtual Machines with virt-manager |
|
|
305 | (1) |
|
Managing Virtual Machines with Commands |
|
|
306 | (3) |
|
Creating a Virtual Machine with virt-install |
|
|
306 | (2) |
|
Starting and Stopping Virtual Machines with virsh |
|
|
308 | (1) |
|
|
309 | (2) |
|
Appendix A Using vi or Vim Editors |
|
|
311 | (6) |
|
Starting and Quitting the vi Editor |
|
|
311 | (2) |
|
|
313 | (1) |
|
Changing and Deleting Text in vi |
|
|
314 | (1) |
|
Using Miscellaneous Commands |
|
|
314 | (1) |
|
Modifying Commands with Numbers |
|
|
315 | (1) |
|
|
315 | (1) |
|
|
316 | (1) |
|
Appendix B Shell Special Characters and Variables |
|
|
317 | (4) |
|
Using Special Shell Characters |
|
|
317 | (1) |
|
|
318 | (3) |
|
Appendix C Getting Information from /proc |
|
|
321 | (6) |
|
Viewing /proc Information |
|
|
321 | (4) |
|
Changing /proc Information |
|
|
325 | (2) |
Index |
|
327 | |