LoveReading

Becoming a member of the LoveReading community is free.

No catches, no fine print just unadulterated book loving, with your favourite books saved to your own digital bookshelf.

New members get entered into our monthly draw to win £100 to spend in your local bookshop Plus lots lots more…

Find out more

Linux

See below for a selection of the latest books from Linux category. Presented with a red border are the Linux books that have been lovingly read and reviewed by the experts at Lovereading. With expert reading recommendations made by people with a passion for books and some unique features Lovereading will help you find great Linux books and those from many more genres to read that will keep you inspired and entertained. And it's all free!

Mastering Embedded Linux Programming -

Mastering Embedded Linux Programming -

Author: Chris Simmonds Format: Paperback / softback Release Date: 30/06/2017

Master the techniques needed to build great, efficient embedded devices on Linux About This Book * Discover how to build and configure reliable embedded Linux devices * This book has been updated to include Linux 4.9 and Yocto Project 2.2 (Morty) * This comprehensive guide covers the remote update of devices in the field and power management Who This Book Is For If you are an engineer who wishes to understand and use Linux in embedded devices, this book is for you. It is also for Linux developers and system programmers who are familiar with embedded systems and want to learn and program the best in class devices. It is appropriate for students studying embedded techniques, for developers implementing embedded Linux devices, and engineers supporting existing Linux devices. What You Will Learn * Evaluate the Board Support Packages offered by most manufacturers of a system on chip or embedded module * Use Buildroot and the Yocto Project to create embedded Linux systems quickly and efficiently * Update IoT devices in the field without compromising security * Reduce the power budget of devices to make batteries last longer * Interact with the hardware without having to write kernel device drivers * Debug devices remotely using GDB, and see how to measure the performance of the systems using powerful tools such as perk, ftrace, and valgrind * Find out how to configure Linux as a real-time operating system In Detail Embedded Linux runs many of the devices we use every day, from smart TVs to WiFi routers, test equipment to industrial controllers - all of them have Linux at their heart. Linux is a core technology in the implementation of the inter-connected world of the Internet of Things. The comprehensive guide shows you the technologies and techniques required to build Linux into embedded systems. You will begin by learning about the fundamental elements that underpin all embedded Linux projects: the toolchain, the bootloader, the kernel, and the root filesystem. You'll see how to create each of these elements from scratch, and how to automate the process using Buildroot and the Yocto Project. Moving on, you'll find out how to implement an effective storage strategy for flash memory chips, and how to install updates to the device remotely once it is deployed. You'll also get to know the key aspects of writing code for embedded Linux, such as how to access hardware from applications, the implications of writing multi-threaded code, and techniques to manage memory in an efficient way. The final chapters show you how to debug your code, both in applications and in the Linux kernel, and how to profile the system so that you can look out for performance bottlenecks. By the end of the book, you will have a complete overview of the steps required to create a successful embedded Linux system. Style and approach This book is an easy-to-follow and pragmatic guide with in-depth analysis of the implementation of embedded devices. It follows the life cycle of a project from inception through to completion, at each stage giving both the theory that underlies the topic and practical step-by-step walkthroughs of an example implementation.

The Art of Linux Kernel Design Illustrating the Operating System Design Principle and Implementation

The Art of Linux Kernel Design Illustrating the Operating System Design Principle and Implementation

Uses the Running Operation as the Main Thread Difficulty in understanding an operating system (OS) lies not in the technical aspects, but in the complex relationships inside the operating systems. The Art of Linux Kernel Design: Illustrating the Operating System Design Principle and Implementation addresses this complexity. Written from the perspective of the designer of an operating system, this book tackles important issues and practical problems on how to understand an operating system completely and systematically. It removes the mystery, revealing operating system design guidelines, explaining the BIOS code directly related to the operating system, and simplifying the relationships and guiding ideology behind it all. Based on the Source Code of a Real Multi-Process Operating System Using the 0.11 edition source code as a representation of the Linux basic design, the book illustrates the real states of an operating system in actual operations. It provides a complete, systematic analysis of the operating system source code, as well as a direct and complete understanding of the real operating system run-time structure. The author includes run-time memory structure diagrams, and an accompanying essay to help readers grasp the dynamics behind Linux and similar software systems. Identifies through diagrams the location of the key operating system data structures that lie in the memory Indicates through diagrams the current operating status information which helps users understand the interrupt state, and left time slice of processes Examines the relationship between process and memory, memory and file, file and process, and the kernel Explores the essential association, preparation, and transition, which is the vital part of operating system Develop a System of Your Own This text offers an in-dep

Linux Shell Scripting Cookbook - Third Edition

Linux Shell Scripting Cookbook - Third Edition

Author: Clif Flynt, Sarath Lakshman, Shantanu Tushar Format: Paperback / softback Release Date: 29/05/2017

Do amazing things with the shell About This Book * Become an expert in creating powerful shell scripts and explore the full possibilities of the shell * Automate any administrative task you could imagine, with shell scripts * Packed with easy-to-follow recipes on new features on Linux, particularly, Debian-based, to help you accomplish even the most complex tasks with ease Who This Book Is For If you are a beginner or an intermediate Linux user who wants to master the skill of quickly writing scripts and automate tasks without reading the entire man pages, then this book is for you. You can start writing scripts and one-liners by simply looking at the relevant recipe and its descriptions without any working knowledge of shell scripting or Linux. Intermediate / advanced users, system administrators / developers, and programmers can use this book as a reference when they face problems while coding. What You Will Learn * Interact with websites via scripts * Write shell scripts to mine and process data from the Web * Automate system backups and other repetitive tasks with crontab * Create, compress, and encrypt archives of your critical data. * Configure and monitor Ethernet and wireless networks * Monitor and log network and system activity * Tune your system for optimal performance * Improve your system's security * Identify resource hogs and network bottlenecks * Extract audio from video files * Create web photo albums * Use git or fossil to manage revision control and interact with FOSS projects * Create and maintain Linux containers and Virtual Machines * Run a private Cloud server In Detail The shell is the most powerful tool your computer provides. Despite having it at their fingertips, many users are unaware of how much the shell can accomplish. Using the shell, you can generate databases and web pages from sets of files, automate monotonous admin tasks such as system backups, monitor your system's health and activity, identify network bottlenecks and system resource hogs, and more. This book will show you how to do all this and much more. This book, now in its third edition, describes the exciting new features in the newest Linux distributions to help you accomplish more than you imagine. It shows how to use simple commands to automate complex tasks, automate web interactions, download videos, set up containers and cloud servers, and even get free SSL certificates. Starting with the basics of the shell, you will learn simple commands and how to apply them to real-world issues. From there, you'll learn text processing, web interactions, network and system monitoring, and system tuning. Software engineers will learn how to examine system applications, how to use modern software management tools such as git and fossil for their own work, and how to submit patches to open-source projects. Finally, you'll learn how to set up Linux Containers and Virtual machines and even run your own Cloud server with a free SSL Certificate from letsencrypt.org. Style and approach This book will take you through useful real-world recipes designed to make your daily life easier when working with the shell.

Linux for Makers

Linux for Makers

Author: Aaron Newcomb Format: Paperback / softback Release Date: 18/04/2017

Linux is a powerful open-source operating system that has been around for many years and is widely used for running servers and websites. But most students and Makers encounter it for the first time when they are working on projects with their Raspberry Pi or similar single-board computers (SBCs) such as BeagleBone Black or Intel Galileo. Linux for Makers is the first book that explains the Linux operating system specifically for Makers, as opposed to programmers and administrators. By gaining a deeper understanding of Linux, Makers can add another useful tool to their kit that will help them build their projects more easily. Written with the Maker in mind, this book will focus mostly on Rasbian running on the Raspberry Pi as it is the most prolific in the ecosystem today. However most of the topics covered will apply broadly to other Linux distributions and will be called out when they may differ. Many times users cut and paste from a website tutorial into the Linux command line without understanding what they are actually doing only to be frustrated when they want to modify or tweak something to suit their needs. Also, many Makers shy away from using the Raspberry Pi or similar board because they feel Linux is too foreign and they think using a command line will be more difficult than using a GUI. This book aims to overcome those fears and provide a foundation for further learning and exploration. To that end, this book will focus on the basic principles that a Maker would need to know as opposed to other resources that go into detail that is not particularly relevant to building projects.

Linux for Developers Jumpstart Your Linux Programming Skills

Linux for Developers Jumpstart Your Linux Programming Skills

Author: William Rothwell Format: Paperback / softback Release Date: 12/04/2017

Linux for Developers shows you how to start writing great code for Linux, whether you're a Linux user with little or no coding experience, or an experienced Windows programmer. Leading IT trainer/author William Bo Rothwell begins with a clear and up-to-date review of modern open source software, including the licensing arrangements and tradeoffs all developers need to understand. He presents essential skills for both Linux command line and GUI environments, introducing text editors and other tools for efficient coding. Building on this knowledge, Rothwell introduces scripting tools such as Bash, Python, and Perl, as well as traditional object-oriented programming languages such as Java, C++, and C. Finally, he presents a full section on the powerful Git version control system, teaching skills you can use in Linux and many other environments. Access Linux systems, use GUIs, and work at the command line Learn how Linux organizes files and navigate its filesystem Use basic developer commands such as gzip and grep Edit programs with vi and vim, and explore alternative editors Perform basic sysadmin tasks that developers often need to handle Compare Linux languages to choose the best one for each task Write Bash scripts that interact with users or other shell features Program with Python and Perl: flow control, variables, and more Understand Linux features related to building C, C++, and Java programs Stay on top of complex projects with GIT revision control Work in GIT: staging, committing, branches, diffs, merges, and patches Manage local and remote GIT repositories This guide's modular coverage helps you quickly access whatever information you need right now.

GNU/Linux Rapid Embedded Programming

GNU/Linux Rapid Embedded Programming

Author: Rodolfo Giometti Format: Paperback / softback Release Date: 29/03/2017

An annotated guide to program and develop GNU/Linux Embedded systems quickly About This Book * Rapidly design and build powerful prototypes for GNU/Linux Embedded systems * Become familiar with the workings of GNU/Linux Embedded systems and how to manage its peripherals * Write, monitor, and configure applications quickly and effectively, manage an external micro-controller, and use it as co-processor for real-time tasks Who This Book Is For This book targets Embedded System developers and GNU/Linux programmers who would like to program Embedded Systems and perform Embedded development. The book focuses on quick and efficient prototype building. Some experience with hardware and Embedded Systems is assumed, as is having done some previous work on GNU/Linux systems. Knowledge of scripting on GNU/Linux is expected as well. What You Will Learn * Use embedded systems to implement your projects * Access and manage peripherals for embedded systems * Program embedded systems using languages such as C, Python, Bash, and PHP * Use a complete distribution, such as Debian or Ubuntu, or an embedded one, such as OpenWrt or Yocto * Harness device driver capabilities to optimize device communications * Access data through several kinds of devices such as GPIO's, serial ports, PWM, ADC, Ethernet, WiFi, audio, video, I2C, SPI, One Wire, USB and CAN * Practical example usage of several devices such as RFID readers, Smart card readers, barcode readers, z-Wave devices, GSM/GPRS modems * Usage of several sensors such as light, pressure, moisture, temperature, infrared, power, motion In Detail Embedded computers have become very complex in the last few years and developers need to easily manage them by focusing on how to solve a problem without wasting time in finding supported peripherals or learning how to manage them. The main challenge with experienced embedded programmers and engineers is really how long it takes to turn an idea into reality, and we show you exactly how to do it. This book shows how to interact with external environments through specific peripherals used in the industry. We will use the latest Linux kernel release 4.4.x and Debian/Ubuntu distributions (with embedded distributions like OpenWrt and Yocto). The book will present popular boards in the industry that are user-friendly to base the rest of the projects on - BeagleBone Black, SAMA5D3 Xplained, Wandboard and system-on-chip manufacturers. Readers will be able to take their first steps in programming the embedded platforms, using C, Bash, and Python/PHP languages in order to get access to the external peripherals. More about using and programming device driver and accessing the peripherals will be covered to lay a strong foundation. The readers will learn how to read/write data from/to the external environment by using both C programs or a scripting language (Bash/PHP/Python) and how to configure a device driver for a specific hardware. After finishing this book, the readers will be able to gain a good knowledge level and understanding of writing, configuring, and managing drivers, controlling and monitoring applications with the help of efficient/quick programming and will be able to apply these skills into real-world projects. Style and approach This practical tutorial will get you quickly prototyping embedded systems on GNU/Linux. This book uses a variety of hardware to program the peripherals and build simple prototypes.

Pro Linux System Administration Learn to Build Systems for Your Business Using Free and Open Source Software

Pro Linux System Administration Learn to Build Systems for Your Business Using Free and Open Source Software

Author: James Turnbull Format: Paperback / softback Release Date: 15/03/2017

Implement a SOHO or SMB Linux infrastructure to expand your business and associated IT capabilities. Backed by the expertise and experienced guidance of the authors, this book provides everything you need to move your business forward. Pro Linux System Administration makes it easy for small- to medium-sized businesses to enter the world of zero-cost software running on Linux and covers all the distros you might want to use, including Red Hat, Ubuntu, Debian, and CentOS. Pro Linux System Administration takes a layered, component-based approach to open source business systems, while training system administrators as the builders of business infrastructure. Completely updated for this second edition, Dennis Matotek takes you through an infrastructure-as-code approach, seamlessly taking you through steps along the journey of Linux administration with all you need to master complex systems. This edition now includes Jenkins, Ansible, Logstash and more. What You'll Learn: Understand Linux architecture Build, back up, and recover Linux servers Create basic networks and network services with Linux Build and implement Linux infrastructure and services including mail, web, databases, and file and print Implement Linux security Resolve Linux performance and capacity planning issues Who This Book Is For: Small to medium-sized business owners looking to run their own IT, system administrators considering migrating to Linux, and IT systems integrators looking for an extensible Linux infrastructure management approach.

Containerization with LXC

Containerization with LXC

Author: Konstantin Ivanov Format: Paperback / softback Release Date: 28/02/2017

Get acquainted with the world of LXC About This Book * Get the most practical and up-to-date resource on LXC and take full advantage of what Linux containers can offer in the day-to-day operations of large-scale applications * Learn how to deploy and administer various workloads such as web applications inside LXC * Save your organization time and money by building robust and secure containers and by speeding the deployment process of your software Who This Book Is For This book is for Linux engineers and software developers who are looking to deploy applications in a fast, secure, and scalable way for use in testing and production. What You Will Learn * Deep dive into the foundations of Linux containers with kernel namespaces and cgroups * Install, configure, and administer Linux containers with LXC and libvirt * Begin writing applications using Python libvirt bindings * Take an in-depth look at container networking * Set up monitoring and security with LXC * Build and deploy a highly available application with LXC in the cloud In Detail In recent years, containers have gained wide adoption by businesses running a variety of application loads. This became possible largely due to the advent of kernel namespaces and better resource management with control groups (cgroups). Linux containers (LXC) are a direct implementation of those kernel features that provide operating system level virtualization without the overhead of a hypervisor layer. This book starts by introducing the foundational concepts behind the implementation of LXC, then moves into the practical aspects of installing and configuring LXC containers. Moving on, you will explore container networking, security, and backups. You will also learn how to deploy LXC with technologies like Open Stack and Vagrant. By the end of the book, you will have a solid grasp of how LXC is implemented and how to run production applications in a highly available and scalable way. Style and approach A practical guide that introduces the core technologies behind Linux containers and provides a deep dive into installation, configuration, and operations of LXC.

Astuces Pro de la Ligne de Commande Bash

Astuces Pro de la Ligne de Commande Bash

Author: Jason Cannon Format: eBook Release Date: 01/02/2017

Si vous vous etes deja dit, Il doit y avoir une meilleure facon de faire cela alors lisez la suite.Ayant utilis le shell Bash presque tous les jours, depuis plus de 15 ans, j'ai accumul plusieurs astuces de la ligne de commande qui m'ont conomis du temps et de la frustration. Astuces Pro de la Ligne de Commande Bash est une collection de 10 techniques que vous pouvez utiliser immdiatement pour augmenter votre efficacit sur la ligne de commande.Voici ce que vous apprendrez en lisant Astuces Pro de la Ligne de Commande Bash :Astuce 1 : Saisie semi-automatique par TabulationAstuce 2 : Accder au Rpertoire PrcdentAstuce 3 : Rutiliser le Dernier lment de la Prcdente Ligne de CommandeAstuce 4 : Relancer une Commande Qui Commence par une Chane donneAstuce 5 : Substitution de CommandeAstuce 6 : Utiliser une Boucle pour la Ligne de CommandeAstuce 7 : Relancer la Commande Prcdente avec les Privilges RootAstuce 8 : Relancer la Commande Prcdente En Substituant une ChaneAstuce 9 : Rutiliser un Mot sur la Mme Ligne de CommandeAstuce 10 : Corriger les Fautes de frappe et Raccourcir les Longues Commandes avec des Alias

SELinux System Administration -

SELinux System Administration -

Author: Sven Vermeulen Format: Paperback / softback Release Date: 15/12/2016

Ward off traditional security permissions and effectively secure your Linux systems with SELinux About This Book * Leverage SELinux to improve the secure state of your Linux system * A clear approach to adopting SELinux within your organization * Essential skills and techniques to help further your system administration career Who This Book Is For This book is for Linux administrators who want to control the secure state of their systems. It's packed with the latest information on SELinux operations and administrative procedures so you'll be able to further harden your system through mandatory access control (MAC) - a security strategy that has been shaping Linux security for years. What You Will Learn * Analyze SELinux events and selectively enable or disable SELinux enforcement * Manage Linux users and associate them with the right role and permission set * Secure network communications through SELinux access controls * Tune the full service flexibility by dynamically assigning resource labels * Handle SELinux access patterns enforced through the system * Query the SELinux policy in depth In Detail Do you have the crucial job of protecting your private and company systems from malicious attacks and undefined application behavior? Are you looking to secure your Linux systems with improved access controls? Look no further, intrepid administrator! This book will show you how to enhance your system's secure state across Linux distributions, helping you keep application vulnerabilities at bay. This book covers the core SELinux concepts and shows you how to leverage SELinux to improve the protection measures of a Linux system. You will learn the SELinux fundamentals and all of SELinux's configuration handles including conditional policies, constraints, policy types, and audit capabilities. These topics are paired with genuine examples of situations and issues you may come across as an administrator. In addition, you will learn how to further harden the virtualization offering of both libvirt (sVirt) and Docker through SELinux. By the end of the book you will know how SELinux works and how you can tune it to meet your needs. Style and approach This book offers a complete overview of SELinux administration and how it integrates with other components on a Linux system. It covers the majority of SELinux features with a mix of real life scenarios, descriptions, and examples. This book contains everything an administrator needs to customize SELinux.