Linux Books, Free Linux Programming Books
Linux Network Security Tools: Writing, Hacking, and Modifying Security Tool
If you're an advanced security professional, then you know that the battle to protect online privacy continues to rage on. Security chat rooms, especially, are resounding with calls for vendors to take more responsibility to release products that are more secure. In fact, with all the information and code that is passed on a daily basis, it's a fight that may never end.
Linux Security HOWTO
This document covers some of the main issues that affect Linux security. General philosophy and net-born resources are discussed.
A number of other HOWTO documents overlap with security issues, and those documents have been pointed to wherever appropriate.
This document is not meant to be a up-to-date exploits document. Large numbers of new exploits happen all the time. This document will tell you where to look for such up-to-date information, and will give some general methods to prevent such exploits from taking place.
Linux Security Administrator's Guide
This document is a general overview of security issues that face the administrator of Linux systems. It covers general security philosophy and a number of specific examples of how to better secure your Linux system from intruders. Also included are pointers to security related material and programs.
Linux From Scratch
There are always many ways to accomplish a single task. The same can be said about Linux distributions. A great many have existed over the years. Some still exist, some have morphed into something else, yet others have been relegated to our memories. They all do things differently to suit the needs of their target audience. Because so many different ways to accomplish the same end goal exist, I began to realize I no longer had to be limited by any one implementation. Prior to discovering Linux, we simply put up with issues in other Operating Systems as you had no choice. It was what it was, whether you liked it or not. With Linux, the concept of choice began to emerge. If you didn't like something, you were free, even encouraged, to change it.
In 2002, Sam Williams wrote Free as in Freedom, a biography of Richard M. Stallman. In its epilogue, Williams expressed hope that choosing to distribute his book under the GNU Free Documentation License would enable and encourage others to share corrections and their own perspectives through modifications to his work.
Free as in Freedom (2.0) is Stallman's revision of the original biography. While preserving Williams's viewpoint, it includes factual corrections and extensive new commentary by Stallman, as well as new prefaces by both authors written for the occasion. It is a rare kind of biography, where the reader has the benefit of both the biographer's original words and the subject's response.
This guide was designed as a summary of the Linux Operating System, a helping hand to newbies as an investigation journey and getting starter guide with physical activities at the end of each chapter. This book accommodate real examples that procure from the author’s experience as an Linux system administrator or a trainer. I wish these examples will help you a lot and understand Linux system better and motivates you to try things on your own. Downloadable Ebook
This condition may stop you from reading the book, as you may not be either the person maintaining server boxes nor the code developer trying to debug his drivers.
However, you may also consider this book as a very extensive learning lesson in what goes behind the curtains of a typical Linux system. While you may not find immediate use to the contents presented in this book, the general knowledge and problem solving methods and tools you find here should serve you universally. Come the day, come the opportunity, you will find this book of value. Downloadable EBook
The Internet is now a household term in many countries. With otherwise serious people beginning to joyride along the Information Superhighway, computer networking seems to be moving toward the status of TV sets and microwave ovens. The Internet has unusually high media coverage, and social science majors are descending on Usenet newsgroups, online virtual reality environments, and the Web to conduct research on the new "Internet Culture."
Of course, networking has been around for a long time. Connecting computers to form local area networks has been common practice, even at small installations, and so have long-haul links using transmission lines provided by telecommunications companies. A rapidly growing conglomerate of world-wide networks has, however, made joining the global village a perfectly reasonable option for even small non-profit organizations of private computer users. Setting up an Internet host with mail and news capabilities offering dialup and ISDN access has become affordable, and the advent of DSL (Digital Subscriber Line) and Cable Modem technologies will doubtlessly continue this trend.
Talking about computer networks often means talking about Unix. Of course, Unix is not the only operating system with network capabilities, nor will it remain a frontrunner forever, but it has been in the networking business for a long time, and will surely continue to be for some time to come. Downloadable EBook
While most people loathe the command line, it is undoubtedly the most efficient way to get things done. If you are one of those who will freak out when you are on the terminal, we have compiled a list of useful Linux commands that you can use to make your workflow more productive. Downloadable EBook
The Internet is now a household term in many countries. With otherwise serious people beginning to joyride along the Information Superhighway, computer networking seems to be moving toward the status of TV sets and microwave ovens. The Internet has unusually high media coverage, and social science majors are descending on Usenet newsgroups, online virtual reality environments, and the Web to conduct research on the new "Internet Culture." Downloadable EBook
Many people still believe that learning Linux is difficult, or that only experts can understand how a Linux system works. Though there is a lot of free documentation available, the documentation is widely scattered on the Web, and often confusing, since it is usually oriented toward experienced UNIX or Linux users. Today, thanks to the advancements in development, Linux has grown in popularity both at home and at work. The goal of this guide is to show people of all ages that Linux can be simple and fun, and used for all kinds of purposes. Downloadable EBook
GNU/Linux has taken the world of computers by storm. At one time, personal computer users were forced to choose among proprietary operating environments and applications. Users had no way of fixing or improving these programs, could not look “under the hood,” and were often forced to accept restrictive licenses. GNU/Linux
and other open source systems have changed that—now PC users, administrators, and developers can choose a free operating environment complete with tools, applications,
and full source code. Downloadable EBook
If you want to know how to build, configure, and install a custom Linux kernel on your machine, buy this book. It is written by someone who spends every day building, configuring, and installing custom kernels as part of the development process of this fun, collaborative project called Linux.
I'm especially proud of the chapter on how to figure out how to configure a custom kernel based on the hardware running on your machine. This is an essential task for anyone wanting to wring out the best possible speed and control of your hardware. Downloadable EBook
This book has the unfortunate burden of serving a diverse set of audiences. We
realize that this book might appeal to both experienced Java programmers who
are new to Linux, and to experienced Linux programmers who are new to Java,
with all possible shadings in between.
In addition to balancing these two poles, we are also trying to strike a bal-
ance between the size of the book and the range of our topic. Fortunately, there
is today quite a range of both book and Web publishing on both Java and
Linux, so we are able to do our best within the limits of a book a normal person
may lift, and we can make recourse to a number of outside references you might
wish to use to supplement our efforts. Downloadable E-Book
GNU/Linux has taken the world of computers by storm. At one time, personal com-
puter users were forced to choose among proprietary operating environments and
applications. Users had no way of fixing or improving these programs, could not look
“under the hood,” and were often forced to accept restrictive licenses. GNU/Linux
and other open source systems have changed that—now PC users, administrators, and
developers can choose a free operating environment complete with tools, applications,
and full source code. Downloadable E-Book
This language was especially developed for creating the UNIX system. Using this new technique, it was much easier to develop an operating system that could run on many different types of hardware.The software vendors were quick to adapt, since they could sell ten times more software almost effortlessly. Weird new situations came in existence: imagine for instance computers from different vendors communicating in the same network, or users working on different systems without the need for extra education to use another computer. UNIX did a great deal to help users become compatible with different systems. Downloadable Ebook
This book was written to provide a single reference for network administration in a Linux environment. Beginners and experienced users alike should find the information they need to cover nearly all important administration activities required to manage a Linux network configuration. The possible range of topics to cover is nearly limitless, so of course it has been impossible to include everything there is to say on all subjects. We've tried to cover the most important and common ones. We've found that beginners to Linux networking, even those with no prior exposure to Unix-like operating systems, have found this book good enough to help them successfully get their Linux network configurations up and running and get them ready to learn more. Downloadable Link - Linux Network Administrator's Guide
Written by a leading developer and maintainer of the Linux kernel, Linux Kernel in a Nutshell is a comprehensive overview of kernel configuration and building, a critical task for Linux users and administrators.
No distribution can provide a Linux kernel that meets all users' needs. Computers big and small have special requirements that require reconfiguring and rebuilding the kernel. Whether you are trying to get sound, wireless support, and power management working on a laptop or incorporating enterprise features such as logical volume management on a large server, you can benefit from the insights in this book.
Downloadable Link - Linux Kernel in a nutshell
Linux is the ultimate choice for home and business users. It is powerful, as stable as any commercial operating system, secure, and best of all, it is open source. One of the biggest deciding factors for whether to use Linux at home or for your business can be service and support.
Downloadable Link + EBook
Linux was developed by a large team of volunteers across the Internet. The project was started in 1990 by Linus Torvalds, a Finnish college student, as an operating systems course project. Since that time, Linux has snowballed into a full-featured Unix clone capable of running applications as diverse as simulation and modeling programs, word processors, speech recognition systems, World Wide Web browsers, and a horde of other software, including a variety of excellent games. A great deal of hardware is supported, and Linux contains a complete implementation of TCP/IP networking, including SLIP, PPP, firewalls, a full IPX implementation, and many features and some protocols not found in any other operating system. Linux is powerful, fast, and free, and its popularity in the world beyond the Internet is growing rapidly.
Downloadable Link +E-book
Downloadable Link - Advanced Linux Programming
This book is designed to provide an overview of the steps needed to implement a secure environment on a Linux system and outlines some of the threats and how these weaknesses are exploited by some.
Advanced Linux Programming is intended for the programmer already familiar with the C programming language. Authors Alex Samuel, Jeffrey Oldham, and Mark Mitchell of Code Sourcery, LLC take a tutorial approach and teach the most important concepts and power features of the GNU/Linux system in application programs.
This book was written as a guide through the setup process and to explain the iptables package. It includes information about the iptables and Netfilter functions in the new Linux 2.4.x kernels.
This is the web site for the Third Edition of Linux Device Drivers, by Jonathan Corbet, Alessandro Rubini, and Greg Kroah-Hartman.
Bash is the shell, or command language interpreter, for the GNU operating system. The name is an acronym for the 'Bourne-Again SHell', a pun on Stephen Bourne, the author of the direct ancestor of the current Unix shell /bin/sh, which appeared in the Seventh Edition Bell Labs Research version of Unix.
A book for Knoppix beginners in PDF format
A Practical Planning and Implementation Guide for Migrating to Desktop Linux
Vim is one of the most powerful text editors around. It is also extremely efficient, enabling the user to edit files with a minimum of key strokes. This power and functionality comes at a cost, however. When getting started, users face a steep learning curve.
- Most IT books have to be rushed to keep up to date with the rapidly evolving trends in software. As technical books, they are usually of a low quality. Rute, on the other hand, was carefully mastered over three years to be a complete reference of Unix -- Unix itself has not changed fundamentally in many decades. The GNU project also tends toward enduring standards that evolve very slowly. On the other hand, there is much evolving with respect to RedHat, Debian, and Mandrake, so these peculiarities where written into the book as those distributions evolved. I believe there is here the best combination of reference and practical, current information. On another level, my working environment necessitated field experience that was ideal for a book like this. From rebuilding old 486 mail servers (while sitting on the floor in dusty filing rooms); to the creation of custom desktops and thin clients for word processing environments; to nation-wide WAN networks. My company's daring escapades tested human ingenuity and Linux dexterity in every conceivable environment. So quite simply, there is a lot more in Rute than you will find anywhere else.
How I Learned to Stop Worrying and Love UNIX
This book describes the process of creating a Linux system from scratch from an already installed Linux distribution, using nothing but the sources of software that are needed.
Emacs is the extensible, customizable, self-documenting real-time display editor. This Info file describes how to edit with Emacs and some of how to customize it.
For the moment, only the finished PDF files are available; we do intend to make an HTML version and the DocBook source available as well.
This book is available under the terms of the Creative Commons Attribution-ShareAlike 2.0 license.
That means that you are free to download and redistribute it.
The development of the book was made possible, however, by those who purchase a copy from O'Reilly or elsewhere.
- Writing GNOME Applications
- Programming with GNOME is no simple task for the uninitiated. GNOME
is one of the larger desktop programming suites you'll find. It has
taken two years and hundreds of programmers to become what it is now.
GNOME covers a lot of ground and makes use of many, many supporting
libraries. Despite its nec- essary complexity, however, GNOME is very
well laid out. It makes sense when you see it as a whole. On a
line-by-line basis the code is not arcane or obfuscated. It's actually
well written and quite nicely formatted. There's just so much of it!
This book will attempt to guide you through all the fundamental parts
of GNOME, to explain how things work and why. Rather than taking you
through an exhaustive listing of function calls and coding semantics,
we'll concentrate on what makes GNOME tick. We'll certainly go into
detail about the important function calls and how to use them, but
you'll still want to keep the official GNOME and GTK+ documentation on
hand. The official documents are free, just like the rest of GNOME, and
should even be bundled with your GNOME distribution.
When you finish with this book, you should have a very clear, intuitive
understanding of the GNOME 1.2 framework. You'll be able to write a
com- plete GNOME application, from front to back. If you run into
problems, you'll know how to diagnose the problem and where to look for
the answers. It's impossible to know absolutely everything, but this
book should at least iden- tify everything you need to know.
- The K Desktop Environment (KDE) project is a worldwide collaboration
of hundreds of software engineers and hobbyists who are working to
create a free, modern desktop interface with a consistent graphical
user interface (GUI) style across applications. The desktop is network
transparent, meaning that remote and local files can all be viewed,
edited, and managed in the same way; it has online hypertext help and
features an integrated, full-featured Web browser. The purpose of this
book is to teach you how to take advantage of all that the KDE
libraries have to offer when you write your own applications.
Application Development - GNOME application programming manual,
available in book form and online.
Autoconf, Automake and Libtool - free book on popular GNU tools
- If you are a developer for the GNU/Linux system, this book will help
you to develop GNU/Linux software that works the way users expect it
to, write more sophisticated programs with features such as
multiprocessing, multi-threading, interprocess communication, and
interaction with hardware devices, improve your programs by making them
run faster, more reliably, and more securely, understand the
preculiarities of a GNU/Linux system, including its limitations,
special capabilities, and conventions.
Programming for Linux and Unix
- This book provides a set of design and implementation guidelines for
writing secure programs for Linux and Unix systems. Such programs
include application programs used as viewers of remote data, web
applications (including CGI scripts), network servers, and
setuid/setgid programs. Specific guidelines for C, C++, Java, Perl,
PHP, Python, Tcl, and Ada95 are included.
Art of Unix Programming
- There is a vast difference between knowledge and expertise. Knowledge
lets you deduce the right thing to do; expertise makes the right thing
a reflex, hardly requiring conscious thought at all.
This book has a lot of knowledge in it, but it is mainly about
expertise. It is going to try to teach you the things about Unix
development that Unix experts know, but aren't aware that they know. It
is therefore less about technicalia and more about shared culture than
most Unix books — both explicit and implicit culture, both conscious
and unconscious traditions. It is not a ‘how-to’ book, it is a ‘why-to’
The why-to has great practical importance, because far too much
software is poorly designed. Much of it suffers from bloat, is
exceedingly hard to maintain, and is too difficult to port to new
platforms or extend in ways the original programmers didn't anticipate.
These problems are symptoms of bad design. We hope that readers of this
book will learn something of what Unix has to teach about good design.
Linux Development Platform
- The Linux Development Platform shows how to choose the best open
source and GNU development tools for your specific needs, and integrate
them into a complete development environment that maximizes your
effectiveness in any project. It covers editors, compilers, assemblers,
debuggers, version control, utilities, LSB, Java, cross-platform
solutions, and the entire Linux software development process.
Device Drivers, 2nd Edition - As the popularity of the Linux
system continues to grow, the interest in writing Linux device drivers
steadily increases. Most of Linux is independent of the hardware it
runs on, and most users can be (happily) unaware of hardware issues.
But, for each piece of hardware supported by Linux, somebody somewhere
has written a driver to make it work with the system. Without device
drivers, there is no functioning system. Device drivers take on a
special role in the Linux kernel. They are distinct "black boxes" that
make a particular piece of hardware respond to a well-defined internal
programming interface; they hide completely the details of how the
device works. User activities are performed by means of a set of
standardized calls that are independent of the specific driver; mapping
those calls to device-specific operations that act on real hardware is
then the role of the device driver. This programming interface is such
that drivers can be built separately from the rest of the kernel, and
"plugged in" at runtime when needed. This modularity makes Linux
drivers easy to write, to the point that there are now hundreds of them
- The Linux Starter Pack
- Tired of Windows or OS X? Looking for a change? Interested in the worldwide phenomenon of open-source, free software? Look no further than the Linux Starter Pack download to set you on your way to Linux success. Anyone who has tried to use Linux on a daily basis knows the many problems that may arise that are foreign to traditional PC and Mac users. The Linux Starter Pack book makes those tough situations a thing of the past! With step-by-step instructions from installation to hardware configuration, you'll know your way around a fresh Linux desktop in no time.
- Producing Open Source Software
- Programmers are a resilient bunch. When it comes to administering a successful open-source project, any and all help is desirable. That's why Producing Open Source Software gives enterprising programmers the tools and methods necessary to administer open source projects and ensure a quality, desirable product is eventually shared with the world. Successful open source software (OSS) gurus such as Ben-Collins Sussman and Brian Fitzpatrick give their expert advice in how to best administer and operate your open source project. Wrangling together the many talents of your programmer team from across the world gives you the power to produce truly amazing OSS applications.
- Ubuntu Pocket Guide and Reference
Looking to delve further into the world of Ubuntu Linux? MacFreda's pocket guide and reference provides a bevy of useful tools and tips to help you better understand the world's most popular desktop Linux distribution. Holding this comprehensive yet surprisingly compact reference in your hand, you'll never be at a loss when confronting even the most difficult tasks in Ubuntu Linux. Chapters cover the desktop, the command line, security, file management, user creation, and much more! You'll find out fun, complex tasks like setting up dual monitors, automatically installing software packages, and enabling advanced desktop effects. Taking on Ubuntu Linux has never been this easy or fun.
- The Big Online Book of Linux Ada Programming, Ken O. Burtch
Free Linux book reviews the code Ada 95 language along with the Ada bindings with other packages like – Motif, TCL and GTK+. Book download covers, the Predefined language libraries like GNAT. Linux book download perfect for the beginners and professionals; Clear instructions about installation, configuration and IDE. This Linux book covers TIA, GRASP and other IDE like VAD,Jessie,RAPID,VIDE,GLIDE. On the other hand it describes the AdaGIde a IDE for Windows. For modern Linux destros, the book covers Kdevelop and Ada Browser. In short – a step-by-step comprehensive guide for Ada
- Java Application Development On Linux Java programming, in 1999 - 2000 in a Red Hat Linux box, supposed one was mad. No help available on the Internet; but the days are gone; Lots of good books available on the Internet on this topic. Simply covers the basics of Linux; Clear instructions on different compilers such as Sun java and IBM java compiler. Another interesting thing it also covers RMI (Remote Method Invocation), Javadoc, rmiregistry, rmic and jar. This book basically uses gcj, i.e. The GNU compiler for java with multiclass program. Great online Linux book.
- The Linux Cookbook, Great book by Michael Stutz Free book uses open source resource resources to write the book. The book contains some out dated FAQs, inconsistent how to’s. He has put everything in such a way that, user can uses this book in almost every destro. The chapters are well organized and nicely covered with every aspects of Linux. Nice book for beginners and intermediates.
- Linux System Administrator's Guide, Lars Wirzenius, Joanna Oja, Stephen Stafford, Alex WeeksOnline Linux book covers file system, disk uses, memory management, system monitoring, managing users and task automation. Linux book leaves out parts of the system administration, like security and managing servers from remote location nor the installation process and best practices. Free Linux book is a start but not written as a complete book for Linux System Administrators.
- Linux-For-Dummies 8th edition, Dee-Ann LeBlanc, Richard Blum Book is entitled “For Dummies”, but this free book really is not for Linux dummies, better to say professionals. New in Linux, check out some other free easier Linux book downloads here. Not really a pocket reference, can be hard to understand, the written book comes with some DVDs so, if you have an electronic copy of this book, you need to find the DVD images from the authors or publisher’s site. Download it, burn it and start reading. Author mentions GRUB and LILO, but the book does contain enough information about it.
- Linux Administration Made Easy (LAME), Steve Frampton Free book download of the kinds of configuration and administrative tasks that may be required to keep a Linux-based server system up and running. Linux Administration Made Easy LAME summarizes some of the installation and configuration, day-to-day administrative and maintenance procedures to keep a Linux-based server or desktop system up and running.