|
User Mode Linux
With User Mode Linux you can create virtual Linux machines within a Linux computer and use them to safely test and debug applications, network services, and even kernels. You can try out new distributions, experiment with buggy software, and even test security. Now, for the first time, the creator and maintainer of User Mode Linux shows
how to put it to work hands-on. Jeff Dike covers everything from getting started through running enterprise-class User Mode Linux servers. You'll find authoritative advice on bootup, compilation, administration, specialized configurations, and much more.
Coverage includes
* What User Mode Linux is, how it works, and its uses in Linux networks
* Key applications, including server consolidation, development, and disaster recovery
* Booting and exploration: logins, consoles, swap space, partitioned disks, and more
* Copy-On-Write (COW): UML's efficient approach to storing filesystem changes
* In-depth discussion of User Mode Linux networking and security
* Centrally managing User Mode Linux instances, and controlling their hardware resources
* Implementing clusters and other specialized configurations
* Setting up User Mode Linux servers, step-by-step: small-scale and large-scale examples
* The future of virtualization and User Mode Linux
Whether you're a netadmin, sysadmin, teacher, student, or programmer, User Mode Linux(R)--the technology and this book--is indispensable.
CONTENTS:
Preface ix
Acknowledgments xi
About the Author xiiiChapter 1: Introduction 1
What Is UML? 1
Comparison with Other Virtualization Technologies 2
Why Virtual Machines? 3
A Bit of History 4
What Is UML Used For? 8
The Future 14
Chapter 2: A Quick Look at UML 17
Booting UML for the First Time 20
Booting UML Successfully 24
Looking at a UML from the Inside and Outside 29
Conclusion 37
Chapter 3: Exploring UML 39
Logging In as a Normal User 39
Consoles and Serial Lines 40
Adding Swap Space 47
Partitioned Disks 49
UML Disks as Raw Data 53
Networking 54
Shutting Down 59
Chapter 4: A Second UML Instance 61
COW Files 61
Networking the UML Instances 71
A Virtual Serial Line 79
Chapter 5: Playing with a UML Instance 83
Use and Abuse of UML Block Devices 83
Networking and the Host 87
Chapter 6: UML Filesystem Management 101
Mounting Host Directories within a UML 101
Host Access to UML Filesystems 114
Making Backups 116
Extending Filesystems 117
When to Use What 118
Chapter 7: UML Networking in Depth 121
Manually Setting Up Networking 121
The UML Networking Transports 142
An Extended Example 155
Chapter 8: Managing UML Instances from the Host 167
The Management Console 167
Controlling a UML Instance with Signals 188
Chapter 9: Host Setup for a Small UML Server 191
Host Kernel Version 192
UML Execution Modes 194
Managing Long-Lived UML Instances 203
Networking 206
UML Physical Memory 206
Host Memory Consumption 208
umid Directories 209
Overall Recommendations 209
Chapter 10: Large UML Server Management 211
Security 212
Jailing UML Instances 216
Providing Console Access Securely 223
skas3 versus skas0 225
Future Enhancements 226
Final Points 232
Chapter 11: Compiling UML from Source 233
Downloading UML Source 234
Configuration 235
Compilation 249
Chapter 12: Specialized UML Configurations 251
Large Numbers of Devices 252
Clusters 265
UML as a Decision-Making Tool for Hardware 273
Chapter 13: The Future of UML 275
The externfs Filesystem 277
Virtual Processes 282
Captive UML 283
Virtualized Subsystems 295
Conclusion 298
Appendix A: UML Command-Line Options 301
Device and Hardware Specifications 301
Debugging Options 303
Management Options 304
Informational Options 305
Appendix B: UML Utilities Reference 307
humfsify 307
uml_moo 308
uml_mconsole 308
tunctl 310
uml_switch 311
Internal Utilities 312
Index 313
|