| Introduction |
|
xxiii | |
|
Part I Optimizing Your System |
|
|
1 | (148) |
|
|
|
3 | (40) |
|
|
|
3 | (1) |
|
|
|
3 | (1) |
|
|
|
4 | (1) |
|
Understanding Ubuntu Names |
|
|
5 | (2) |
|
Selecting the Ubuntu Version |
|
|
7 | (11) |
|
|
|
8 | (1) |
|
|
|
9 | (2) |
|
Using the Alternate CD-ROM |
|
|
11 | (1) |
|
|
|
11 | (1) |
|
|
|
12 | (1) |
|
Networkless Upgrades and Repairs |
|
|
12 | (1) |
|
Installing an LTSP Server |
|
|
12 | (1) |
|
|
|
13 | (1) |
|
|
|
14 | (1) |
|
Installing a Minimal System |
|
|
14 | (2) |
|
Installing over the Network |
|
|
16 | (2) |
|
|
|
18 | (13) |
|
|
|
18 | (1) |
|
Sharing Files with a USB Drive |
|
|
19 | (2) |
|
|
|
21 | (1) |
|
|
|
21 | (1) |
|
The 10-Step Boot Configuration |
|
|
22 | (1) |
|
Starting the Network Install from a USB Drive |
|
|
23 | (1) |
|
|
|
24 | (2) |
|
Installing a Full File System from USB |
|
|
26 | (1) |
|
Using the Live CD from a USB Floppy Drive |
|
|
26 | (1) |
|
Using the Live CD from a USB Hard Drive |
|
|
27 | (3) |
|
Booting Variations and Troubleshooting |
|
|
30 | (1) |
|
|
|
31 | (1) |
|
Using Ubuntu on a Netbook |
|
|
32 | (4) |
|
|
|
33 | (1) |
|
Creating the Netbook Installation Media |
|
|
33 | (2) |
|
Installing with Only a Netbook |
|
|
35 | (1) |
|
|
|
36 | (3) |
|
|
|
37 | (1) |
|
|
|
37 | (1) |
|
Upgrading Issues with Ubuntu |
|
|
37 | (2) |
|
|
|
39 | (2) |
|
|
|
39 | (1) |
|
|
|
40 | (1) |
|
|
|
41 | (2) |
|
Customizing the User Environment |
|
|
43 | (32) |
|
|
|
43 | (1) |
|
Logging in for the First Time |
|
|
43 | (14) |
|
Changing the Startup Music |
|
|
44 | (1) |
|
|
|
44 | (2) |
|
|
|
46 | (1) |
|
Changing Sounds under Karmic Koala |
|
|
46 | (1) |
|
|
|
47 | (2) |
|
Changing the Background As Needed |
|
|
49 | (1) |
|
|
|
49 | (1) |
|
|
|
50 | (1) |
|
|
|
51 | (1) |
|
|
|
52 | (1) |
|
|
|
52 | (2) |
|
|
|
54 | (1) |
|
|
|
55 | (1) |
|
|
|
56 | (1) |
|
|
|
57 | (1) |
|
|
|
57 | (5) |
|
|
|
57 | (2) |
|
|
|
59 | (1) |
|
|
|
60 | (1) |
|
Selecting Themes and Skins |
|
|
61 | (1) |
|
|
|
62 | (9) |
|
|
|
63 | (1) |
|
|
|
64 | (1) |
|
|
|
65 | (1) |
|
|
|
66 | (1) |
|
|
|
67 | (1) |
|
|
|
67 | (1) |
|
|
|
68 | (3) |
|
|
|
71 | (1) |
|
Altering the Login Screen |
|
|
71 | (1) |
|
|
|
72 | (1) |
|
|
|
73 | (2) |
|
|
|
75 | (42) |
|
|
|
75 | (1) |
|
Working with Device Drivers |
|
|
75 | (1) |
|
|
|
76 | (4) |
|
|
|
77 | (1) |
|
Installing and Removing Modules |
|
|
78 | (2) |
|
|
|
80 | (1) |
|
|
|
80 | (7) |
|
|
|
81 | (1) |
|
|
|
82 | (2) |
|
Configuring Services with the GUI |
|
|
84 | (1) |
|
Configuring Boot-Up Services with bum |
|
|
85 | (1) |
|
Configuring Services from the Command Line |
|
|
86 | (1) |
|
Enabling Multiple CPUs (SMP) |
|
|
87 | (3) |
|
|
|
89 | (1) |
|
|
|
89 | (1) |
|
|
|
90 | (6) |
|
|
|
90 | (1) |
|
|
|
91 | (1) |
|
|
|
92 | (1) |
|
Sharing a Printer with CUPS |
|
|
92 | (2) |
|
Sharing a Printer with LPD |
|
|
94 | (1) |
|
Sharing a Printer with Windows |
|
|
94 | (2) |
|
|
|
96 | (12) |
|
|
|
96 | (2) |
|
|
|
98 | (2) |
|
|
|
100 | (2) |
|
|
|
102 | (2) |
|
|
|
104 | (2) |
|
|
|
106 | (2) |
|
Adjusting Default Devices |
|
|
108 | (1) |
|
Disabling USB Drive Auto-Mount |
|
|
108 | (1) |
|
Altering Network Interface Preferences |
|
|
108 | (1) |
|
|
|
109 | (6) |
|
|
|
110 | (3) |
|
Using Digital Cameras, Scanners, and Web Cameras |
|
|
113 | (2) |
|
|
|
115 | (2) |
|
|
|
117 | (32) |
|
|
|
117 | (1) |
|
|
|
117 | (13) |
|
Changing Keyboards Layouts |
|
|
117 | (1) |
|
|
|
118 | (1) |
|
|
|
119 | (1) |
|
|
|
119 | (2) |
|
|
|
121 | (1) |
|
Altering Keycode Assignments |
|
|
121 | (2) |
|
Running Commands with the Push of a Button |
|
|
123 | (2) |
|
Examples of Keyboard Shortcuts |
|
|
125 | (1) |
|
|
|
126 | (1) |
|
Disabling Ctrl+Alt+Delete |
|
|
127 | (1) |
|
Disabling Ctrl+Alt+Delete with Init |
|
|
127 | (1) |
|
Disabling Ctrl+Alt+Delete with Upstart |
|
|
128 | (1) |
|
|
|
129 | (1) |
|
|
|
130 | (5) |
|
|
|
131 | (1) |
|
|
|
132 | (1) |
|
Enabling Extra Mouse Buttons |
|
|
133 | (1) |
|
|
|
134 | (1) |
|
Tuning Ubuntu on a Macintosh |
|
|
135 | (3) |
|
Using a One-Button Mouse in a Three-Button World |
|
|
135 | (1) |
|
Missing Keys and Functionality |
|
|
136 | (1) |
|
Remapping the Command and Alt Keys |
|
|
137 | (1) |
|
|
|
138 | (9) |
|
Creating Static USB Devices |
|
|
139 | (2) |
|
Associating Applications with USB |
|
|
141 | (2) |
|
|
|
143 | (1) |
|
Debugging the Wacom Tablet |
|
|
144 | (1) |
|
|
|
145 | (1) |
|
|
|
146 | (1) |
|
|
|
147 | (2) |
|
Part II Working with Compatibility |
|
|
149 | (120) |
|
|
|
151 | (32) |
|
|
|
151 | (1) |
|
Understanding Package Repositories |
|
|
152 | (3) |
|
Differentiating Distributions |
|
|
153 | (2) |
|
|
|
155 | (6) |
|
|
|
155 | (2) |
|
|
|
157 | (1) |
|
Installing from a CD-ROM or Directory |
|
|
158 | (1) |
|
|
|
159 | (1) |
|
Shopping at the Ubuntu Software Center |
|
|
160 | (1) |
|
Using the Computer Janitor |
|
|
161 | (1) |
|
|
|
161 | (9) |
|
|
|
162 | (2) |
|
Adding CD-ROM Repositories |
|
|
164 | (1) |
|
|
|
165 | (1) |
|
Organizing Search Results |
|
|
166 | (1) |
|
|
|
167 | (1) |
|
Removing Packages with APT |
|
|
167 | (1) |
|
|
|
168 | (1) |
|
|
|
168 | (2) |
|
|
|
170 | (1) |
|
Installing Common Functions |
|
|
170 | (6) |
|
Installing Multimedia Support |
|
|
171 | (1) |
|
Adding Proprietary Media Support |
|
|
172 | (2) |
|
|
|
174 | (1) |
|
|
|
174 | (2) |
|
Compiling and Developing Software |
|
|
176 | (6) |
|
Installing Package Source Code |
|
|
177 | (1) |
|
|
|
178 | (2) |
|
|
|
180 | (1) |
|
|
|
181 | (1) |
|
|
|
182 | (1) |
|
|
|
183 | (40) |
|
|
|
183 | (1) |
|
Hacking the Firefox Web Brower |
|
|
183 | (18) |
|
|
|
184 | (1) |
|
Tuning the Main Preferences |
|
|
184 | (1) |
|
Tuning the Tabs Preferences |
|
|
185 | (1) |
|
Tuning the Content Preferences |
|
|
185 | (1) |
|
Adjusting Preferred Applications |
|
|
186 | (1) |
|
Tuning the Privacy Preferences |
|
|
186 | (2) |
|
Adjusting the Security Settings |
|
|
188 | (1) |
|
Tuning the Advanced Preferences |
|
|
188 | (2) |
|
Fine-Tuning the Firefox Advanced Preferences |
|
|
190 | (2) |
|
|
|
192 | (1) |
|
Extreme Firefox Tweaks with File Configurations |
|
|
192 | (2) |
|
|
|
194 | (2) |
|
Playing with Plug-ins and Extensions |
|
|
196 | (1) |
|
|
|
196 | (1) |
|
|
|
197 | (1) |
|
|
|
197 | (1) |
|
|
|
198 | (1) |
|
|
|
199 | (1) |
|
Why Use Different Browsers? |
|
|
200 | (1) |
|
|
|
200 | (1) |
|
Securing Web Access with SSH |
|
|
201 | (8) |
|
Installing the SSH Server |
|
|
202 | (1) |
|
|
|
203 | (1) |
|
|
|
204 | (1) |
|
|
|
204 | (1) |
|
|
|
205 | (1) |
|
|
|
206 | (1) |
|
|
|
207 | (1) |
|
Changing Ciphers for Speed |
|
|
208 | (1) |
|
Managing E-Mail with Evolution |
|
|
209 | (7) |
|
|
|
209 | (1) |
|
Retrieving E-mail from Gmail |
|
|
210 | (1) |
|
Preparing Your Gmail Account |
|
|
211 | (1) |
|
|
|
211 | (2) |
|
|
|
213 | (1) |
|
Retrieving E-Mail from Yahoo! |
|
|
214 | (1) |
|
|
|
215 | (1) |
|
Crashing and Recovering Evolution |
|
|
215 | (1) |
|
Using E-Mail with Thunderbird Mail |
|
|
216 | (2) |
|
Instant Messaging with Ubuntu |
|
|
218 | (1) |
|
|
|
219 | (1) |
|
|
|
220 | (3) |
|
|
|
223 | (46) |
|
|
|
223 | (1) |
|
|
|
224 | (2) |
|
|
|
226 | (8) |
|
|
|
227 | (1) |
|
|
|
228 | (1) |
|
|
|
229 | (1) |
|
Exchanging Files with Samba |
|
|
230 | (1) |
|
Sharing a Directory with Windows |
|
|
231 | (1) |
|
Accessing a Windows Directory |
|
|
232 | (2) |
|
|
|
234 | (6) |
|
|
|
234 | (2) |
|
|
|
236 | (1) |
|
|
|
237 | (1) |
|
Selecting Alternative Office Tools |
|
|
237 | (1) |
|
Alternate Document Viewers |
|
|
238 | (1) |
|
Alternate Presentation Viewers |
|
|
239 | (1) |
|
Alternate Spreadsheet Viewers |
|
|
239 | (1) |
|
Collaborating Over the Network |
|
|
240 | (16) |
|
|
|
241 | (1) |
|
|
|
242 | (3) |
|
|
|
245 | (2) |
|
Branching and Merging with Subversion |
|
|
247 | (1) |
|
Sharing Documents in Real Time |
|
|
247 | (2) |
|
Sharing Desktops with VNC |
|
|
249 | (1) |
|
|
|
250 | (1) |
|
|
|
251 | (1) |
|
Sharing Your Complete Desktop |
|
|
251 | (1) |
|
Sharing Independent Desktops |
|
|
252 | (3) |
|
|
|
255 | (1) |
|
Running Software in Emulators |
|
|
256 | (11) |
|
|
|
257 | (2) |
|
Understanding Virtual Disks |
|
|
259 | (1) |
|
Differences between VNC and VM |
|
|
259 | (1) |
|
|
|
260 | (1) |
|
Using VMware (Commercial) |
|
|
260 | (1) |
|
|
|
261 | (1) |
|
|
|
261 | (1) |
|
|
|
262 | (2) |
|
|
|
264 | (1) |
|
Converting Between Qemu and VMware |
|
|
265 | (1) |
|
|
|
265 | (1) |
|
Sharing Files with Emulators |
|
|
266 | (1) |
|
Other Collaboration Tools |
|
|
267 | (1) |
|
|
|
268 | (1) |
|
Part III Improving Performance |
|
|
269 | (100) |
|
|
|
271 | (34) |
|
|
|
271 | (1) |
|
|
|
271 | (2) |
|
Viewing Running Processes |
|
|
273 | (5) |
|
|
|
275 | (2) |
|
|
|
277 | (1) |
|
|
|
278 | (7) |
|
|
|
278 | (1) |
|
|
|
279 | (1) |
|
|
|
280 | (1) |
|
|
|
281 | (1) |
|
|
|
282 | (1) |
|
|
|
283 | (1) |
|
Measuring Network Throughput |
|
|
284 | (1) |
|
|
|
285 | (11) |
|
|
|
285 | (1) |
|
|
|
286 | (2) |
|
Inspecting Device Startups |
|
|
288 | (1) |
|
Inspecting Network Services |
|
|
288 | (1) |
|
Inspecting Shell Startup Scripts |
|
|
289 | (1) |
|
Inspecting Desktop Scripts |
|
|
290 | (1) |
|
Inspecting Gnome Applications |
|
|
291 | (3) |
|
Inspecting Schedulers: at, cron, and anacron |
|
|
294 | (1) |
|
|
|
294 | (1) |
|
|
|
295 | (1) |
|
|
|
296 | (1) |
|
|
|
296 | (5) |
|
|
|
297 | (2) |
|
|
|
299 | (1) |
|
Changing Per-User Settings |
|
|
300 | (1) |
|
|
|
301 | (2) |
|
Profiling the Boot Sequence |
|
|
303 | (1) |
|
|
|
304 | (1) |
|
Multitasking Applications |
|
|
305 | (26) |
|
|
|
305 | (1) |
|
|
|
306 | (3) |
|
Using the Window List and Window Selector |
|
|
306 | (1) |
|
|
|
307 | (1) |
|
Navigating the Desktop without a Mouse |
|
|
308 | (1) |
|
|
|
309 | (1) |
|
Tweaking the Workplace Switcher |
|
|
309 | (2) |
|
Switching Worksplace with Ctrl+Alt+Arrows |
|
|
310 | (1) |
|
|
|
311 | (1) |
|
Customizing Application Windows |
|
|
311 | (5) |
|
|
|
312 | (2) |
|
|
|
314 | (2) |
|
|
|
316 | (2) |
|
|
|
318 | (3) |
|
|
|
321 | (8) |
|
Tracking Time on Projects |
|
|
322 | (2) |
|
|
|
324 | (1) |
|
Tracking Disk Usage and Quotas |
|
|
324 | (1) |
|
Understanding Your Limits |
|
|
325 | (1) |
|
|
|
326 | (1) |
|
|
|
327 | (1) |
|
|
|
328 | (1) |
|
|
|
329 | (2) |
|
Getting Graphical with Video Bling |
|
|
331 | (38) |
|
|
|
331 | (1) |
|
Troubleshooting the Display |
|
|
332 | (1) |
|
Hacking Around Troublesome Areas |
|
|
332 | (1) |
|
|
|
332 | (1) |
|
|
|
333 | (2) |
|
Enabling Ctrl+Alt+Backspace |
|
|
333 | (1) |
|
|
|
334 | (1) |
|
|
|
335 | (16) |
|
Changing Screen Resolution (xrandr) |
|
|
336 | (1) |
|
|
|
337 | (1) |
|
|
|
338 | (1) |
|
Practical Uses for xrandr |
|
|
339 | (1) |
|
|
|
340 | (1) |
|
|
|
340 | (1) |
|
Automated Driver Selection |
|
|
341 | (1) |
|
|
|
341 | (1) |
|
If You Have an ATI Video Card |
|
|
342 | (1) |
|
If You Have an NVIDIA Card |
|
|
343 | (1) |
|
|
|
344 | (1) |
|
|
|
344 | (1) |
|
Debugging the Wrong Driver |
|
|
345 | (1) |
|
Forcing Drivers to Install |
|
|
345 | (1) |
|
|
|
345 | (4) |
|
|
|
349 | (2) |
|
|
|
351 | (6) |
|
|
|
354 | (1) |
|
Animating the Desktop Background |
|
|
355 | (2) |
|
Disabling Animated Backgrounds |
|
|
357 | (1) |
|
Configuring Dual Monitors |
|
|
357 | (11) |
|
|
|
358 | (1) |
|
Using the Graphical Display Configuration |
|
|
358 | (1) |
|
Using Two Heads with Twin View |
|
|
359 | (2) |
|
Using Two Heads with Xinerama |
|
|
361 | (3) |
|
Using Two Computers with Different Desktops |
|
|
364 | (4) |
|
|
|
368 | (1) |
|
Part IV Securing Your System |
|
|
369 | (116) |
|
|
|
371 | (32) |
|
|
|
371 | (1) |
|
Understanding Ubuntu Security Defaults |
|
|
372 | (3) |
|
|
|
374 | (1) |
|
|
|
375 | (5) |
|
|
|
376 | (2) |
|
Tweaking other Sudo Options |
|
|
378 | (1) |
|
|
|
379 | (1) |
|
|
|
380 | (1) |
|
Using Gnu Privacy Guard (GPG) |
|
|
381 | (10) |
|
|
|
381 | (3) |
|
|
|
384 | (1) |
|
|
|
384 | (1) |
|
|
|
385 | (2) |
|
Encrypting Files with GPG |
|
|
387 | (1) |
|
|
|
388 | (1) |
|
|
|
389 | (1) |
|
Using Other File Encryption Options |
|
|
390 | (1) |
|
|
|
391 | (5) |
|
Installing and Configuring EncFS |
|
|
391 | (2) |
|
|
|
393 | (1) |
|
|
|
393 | (1) |
|
Knowing EncFS Limitations |
|
|
394 | (1) |
|
Encrypting Home Directories |
|
|
394 | (2) |
|
Encrypting the Entire Disk |
|
|
396 | (2) |
|
|
|
398 | (4) |
|
|
|
398 | (1) |
|
|
|
399 | (1) |
|
|
|
400 | (1) |
|
|
|
401 | (1) |
|
|
|
402 | (1) |
|
|
|
403 | (48) |
|
|
|
403 | (1) |
|
Using the Network Manager |
|
|
404 | (4) |
|
Configuring Networks from the Command Line |
|
|
405 | (3) |
|
Configuring Wireless Networks |
|
|
408 | (9) |
|
Installing Wireless Devices the Easy Way |
|
|
408 | (1) |
|
|
|
409 | (1) |
|
|
|
409 | (1) |
|
|
|
410 | (1) |
|
Debugging Driver Problems |
|
|
411 | (2) |
|
Hacking with Wireless Tools |
|
|
413 | (2) |
|
Enabling Wireless Security with WEP |
|
|
415 | (1) |
|
Enabling Wireless Security with WPA |
|
|
416 | (1) |
|
|
|
417 | (17) |
|
Configuring Firewalls with Tcpwrappers |
|
|
418 | (1) |
|
Testing the Tcpwrappers Configuration |
|
|
419 | (1) |
|
|
|
419 | (1) |
|
Configuring Firewalls with IP Tables |
|
|
419 | (3) |
|
Saving IP Tables Settings |
|
|
422 | (1) |
|
Using the Uncomplicated Firewall |
|
|
423 | (2) |
|
|
|
425 | (2) |
|
|
|
427 | (1) |
|
|
|
428 | (3) |
|
Configuring the Security Policy Database |
|
|
431 | (1) |
|
|
|
432 | (2) |
|
|
|
434 | (10) |
|
Using the General System Proxy |
|
|
434 | (1) |
|
Enabling Application-Specific Proxy Configurations |
|
|
434 | (3) |
|
|
|
437 | (1) |
|
|
|
438 | (1) |
|
|
|
439 | (1) |
|
Understanding Tor's Limitations |
|
|
440 | (1) |
|
Applying Parental Controls |
|
|
441 | (3) |
|
|
|
444 | (4) |
|
|
|
445 | (1) |
|
|
|
446 | (1) |
|
|
|
447 | (1) |
|
|
|
448 | (3) |
|
|
|
451 | (34) |
|
|
|
451 | (1) |
|
Understanding Ubuntu's Default Services |
|
|
452 | (5) |
|
|
|
452 | (1) |
|
Identifying Servers with netstat |
|
|
453 | (1) |
|
|
|
454 | (3) |
|
Recognizing Network Threats |
|
|
457 | (1) |
|
Mitigating Risks before Going Public |
|
|
458 | (2) |
|
|
|
460 | (4) |
|
What Should You Look For? |
|
|
460 | (1) |
|
What Now? After a Compromise |
|
|
461 | (1) |
|
|
|
461 | (1) |
|
|
|
461 | (1) |
|
Enhancing Failed Login Records |
|
|
462 | (1) |
|
Enabling Intrusion Detection Systems |
|
|
463 | (1) |
|
|
|
464 | (20) |
|
|
|
466 | (1) |
|
|
|
466 | (1) |
|
Debugging SSH Connections |
|
|
467 | (1) |
|
|
|
468 | (1) |
|
|
|
469 | (1) |
|
Adjusting Anonymous FTP Access |
|
|
470 | (1) |
|
Adjusting Regular FTP Access |
|
|
470 | (1) |
|
|
|
471 | (2) |
|
|
|
473 | (1) |
|
Post-Installation Configuration |
|
|
474 | (2) |
|
|
|
476 | (1) |
|
|
|
476 | (1) |
|
|
|
476 | (1) |
|
Post-Installation Configuration |
|
|
477 | (3) |
|
|
|
480 | (2) |
|
|
|
482 | (1) |
|
|
|
483 | (1) |
|
|
|
484 | (1) |
| Index |
|
485 | |