Ubuntu Unleashed 2017 : Covering 16.10, 17.04, 17.10 (Unleashed) (PAP/DVD)

Ubuntu Unleashed 2017 : Covering 16.10, 17.04, 17.10 (Unleashed) (PAP/DVD)

  • Sams(2016/10発売)
  • ただいまウェブストアではご注文を受け付けておりません。 ⇒古書を探す
  • 製本 Paperback:紙装版/ペーパーバック版/ページ数 793 p.
  • 言語 ENG
  • 商品コード 9780134511184
  • DDC分類 005.432

Full Description


Book + Content Update ProgramUbuntu Unleashed 2017 Edition is filled with unique and advanced information for everyone who wants to make the most of the Ubuntu Linux operating system. This new edition has been thoroughly updated by a long-time Ubuntu community leader to reflect the exciting new Ubuntu 16.04 LTS release with forthcoming online updates for 16.10, 17.04, and 17.10 when they are released.Former Ubuntu Forum administrator Matthew Helmke covers all you need to know about Ubuntu 16.04 installation, configuration, productivity, multimedia, development, system administration, server operations, networking, virtualization, security, DevOps, and more-including intermediate-to-advanced techniques you won't find in any other book.Helmke presents up-to-the-minute introductions to Ubuntu's key productivity and Web development tools, programming languages, hardware support, and more. You'll find new or improved coverage of navigation via Unity Dash, wireless networking, VPNs, software repositories, new NoSQL database options, virtualization and cloud services, new programming languages and development tools, monitoring, troubleshooting, and more.Configure and customize the Unity desktopGet started with multimedia and productivity applications, including LibreOfficeManage Linux services, users, and software packagesAdminister and run Ubuntu from the command lineAutomate tasks and use shell scriptingProvide secure remote access and configure a secure VPNManage kernels and modulesAdminister file, print, email, proxy, LDAP, DNS, and HTTP servers (Apache, Nginx, or alternatives)Learn about new options for managing large numbers of serversWork with databases (both SQL and the newest NoSQL alternatives)Get started with virtualizationBuild a private cloud with Juju and CharmsLearn the basics about popular programming languages including Python, PHP, Perl, and new alternatives such as Go and RustLearn about Ubuntu's work toward usability on touchscreen and phone devicesIn addition, this book is part of InformIT's exciting Content Update Program, which provides content updates for major technology improvements! As significant updates are made to Docker and Azure, sections of this book will be updated or new sections will be added to match the updates to the technologies. As updates become available, they will be delivered to you via a free Web Edition of this book, which can be accessed with any Internet connection. To learn more, visit informit.com/cup.How to access the Web Edition: Follow the instructions inside to learn how to register your book to access the FREE Web Edition.

Contents

Introduction xxxiiiLicensing xxxivWho This Book Is For xxxvThose Wanting to Become Intermediate or Advanced Users xxxvSysadmins, Programmers, and DevOps xxxviWhat This Book Contains xxxviiConventions Used in This Book xxxviiiPART I: GETTING STARTEDChapter 1 Installing Ubuntu and Post-Installation Configuration 1Before You Begin the Installation 1Researching Your Hardware Specifications 2Installation Options 232-Bit vs 64-Bit Ubuntu 4Planning Partition Strategies 5The Boot Loader 5Installing from DVD or USB Drive 6Step-by-Step Installation 6Installing 7First Update 13Shutting Down 13Finding Programs and Files 14Software Updater 15The sudo Command 18Configuring Software Repositories 19System Settings 21Detecting and Configuring a Printer 22Configuring Power Management in Ubuntu 22Setting the Time and Date 23Configuring Wireless Networks 24Troubleshooting Post-Installation Configuration Problems 26References 27Chapter 2 Background Information and Resources 29What Is Linux? 29Why Use Linux? 31What Is Ubuntu? 33Ubuntu for Business 33Ubuntu in Your Home 35Getting the Most from Ubuntu and Linux Documentation 35Ubuntu Developers and Documentation 36Websites and Search Engines 37Web Search Tips 37Google Is Your Friend 37Ubuntu Package Listings 38Commercial Support 38Documentation 39Linux Guides 39Ubuntu 40Mailing Lists 40Ubuntu Project Mailing Lists 41Internet Relay Chat 42PART II: DESKTOP UBUNTUChapter 3 Working with Unity 43Foundations and the X Server 43Basic X Concepts 44Using X 45Elements of the xorg.conf File 46Starting X 51Using a Display Manager 51Changing Window Managers 52Using Unity, a Primer 52The Desktop 53Customizing and Configuring Unity 58Power Shortcuts 60References 61Chapter 4 On the Internet 63Getting Started with Firefox 63Checking Out Google Chrome and Chromium65Choosing an Email Client 66Mozilla Thunderbird 66Evolution 67Other Mail Clients 68RSS Readers 69Firefox 69Liferea 69Internet Relay Chat 70Usenet Newsgroups 72References 74Chapter 5 Productivity Applications 75Introducing LibreOffice 76Other Office Suites for Ubuntu 78Working with GNOME Office 78Working with KOffice 80Other Useful Productivity Software 80Working with PDF 80Working with XML and DocBook 81Working with LaTeX 82Productivity Applications Written for Microsoft Windows 83References 83Chapter 6 Multimedia Applications 85Sound and Music 85Sound Cards 86Adjusting Volume 87Sound Formats 88Listening to Music 89Graphics Manipulation 92The GNU Image Manipulation Program 93Using Scanners in Ubuntu 94Working with Graphics Formats 95Capturing Screen Images 97Other Graphics Manipulation Options 97Using Digital Cameras with Ubuntu 98Handheld Digital Cameras 98Using Shotwell Photo Manager 98Burning CDs and DVDs in Ubuntu 99Creating CDs and DVDs with Brasero 99Creating CDs from the Command Line 100Creating DVDs from the Command Line 102Viewing Video 104TV and Video Hardware 104Video Formats 105Viewing Video in Linux 106Personal Video Recorders 107Video Editing 107References 109Chapter 7 Other Ubuntu Interfaces 111Desktop Environment 112KDE and Kubuntu 113Xfce and Xubuntu 114LXDE and Lubuntu 115GNOME3 and Ubuntu GNOME 116MATE and Ubuntu MATE 117Ubuntu Kylin 118References 118Chapter 8 Games 121Ubuntu Gaming 121Installing Proprietary Video Drivers 122Steam 123Installing Games in Ubuntu 123Warsow 124Scorched 3D 124Frozen Bubble 125SuperTux 126Battle for Wesnoth 126Frets on Fire 127FlightGear 128Speed Dreams 129Games for Kids 129Commercial Games 129Playing Windows Games 130References 130PART III: SYSTEM ADMINISTRATIONChapter 9 Managing Software 133Ubuntu Software 133Using Synaptic for Software Management 134Staying Up-to-Date 137Working on the Command Line 138Day-to-Day Usage 138Finding Software 141Using apt Instead of apt-get 142Compiling Software from Source 143Compiling from a Tarball 143Compiling from Source from the Ubuntu Repositories 144Configuration Management 145dotdee 145Snappy Ubuntu Core 146Using Snaps 146References 147Chapter 10 Command-Line Beginner's Class 149What Is the Command Line? 150Accessing the Command Line 151Text-Based Console Login 152Logging Out 153Logging In and Out from a Remote Computer 153User Accounts 154Reading Documentation 155Using Man Pages 156Using apropros 156Using whereis 157Understanding the Linux File System Hierarchy 157Essential Commands in /bin and /sbin 158Configuration Files in /etc 159User Directories: /home 159Using the Contents of the /proc Directory to Interact with the Kernel 160Working with Shared Data in the /usr Directory 161Temporary File Storage in the /tmp Directory 162Accessing Variable Data Files in the /var Directory 162Navigating the Linux File System 162Listing the Contents of a Directory with ls 162Changing Directories with cd 164Finding Your Current Directory with pwd 165Working with Permissions 165Assigning Permissions 166Directory Permissions 167Altering File Permissions with chmod 168File Permissions with umask 169File Permissions with chgrp 170Changing File Permissions with chown 170Understanding Set User ID, Set Group ID, and Sticky Bit Permissions 170Setting Permissions with Access Control Lists 171Working with Files 173Creating a File with touch 173Creating a Directory with mkdir 173Deleting a Directory with rmdir 174Deleting a File or Directory with rm 175Moving or Renaming a File with mv 175Copying a File with cp 176Displaying the Contents of a File with cat 177Displaying the Contents of a File with less 177Using Wildcards and Regular Expressions 177Working as Root 178Understanding and Fixing sudo 178Creating Users 181Deleting Users 182Shutting Down the System 182Rebooting the System 183Commonly Used Commands and Programs 183References 184Chapter 11 Command-Line Master Class Part 1 185Why Use the Command Line? 186Using Basic Commands 187Printing the Contents of a File with cat 188Changing Directories with cd 189Changing File Access Permissions with chmod 191Copying Files with cp 191Printing Disk Usage with du 192Using echo 193Finding Files by Searching with find 193Searches for a String in Input with grep 196Paging Through Output with less 197Creating Links Between Files with ln 199Finding Files from an Index with locate 200Listing Files in the Current Directory with ls 200Listing System Information with lsblk, lshw, lsmod, and lspci 202Reading Manual Pages with man 203Making Directories with mkdir 204Moving Files with mv 204Renaming Files with rename 204Deleting Files and Directories with rm 205Sorting the Contents of a File with sort 205Printing the Last Lines of a File with tail 207Printing the Location of a Command with which 207Download Files with wget 207References 208Chapter 12 Command-Line Master Class Part 2 209Redirecting Output and Input 209stdin, stdout, stderr, and Redirection 211Comparing Files 212Finding Differences in Files with diff 212Finding Similarities in Files with comm212Limiting Resource Use and Job Control 213Listing Processes with ps 213Listing Jobs with jobs 214Running One or More Tasks in the Background 215Moving Jobs to the Background or Foreground with bg and fg 215Printing Resource Usage with top 216Setting Processes Priority with nice 218Combining Commands 219Pipes 219Combining Commands with Boolean Operators 221Running Separate Commands in Sequence 222Process Substitution 222Using Environment Variables 222Using Common Text Editors 226Working with nano 227Working with vi 227Working with emacs 229Working with sed and awk 230Working with Compressed Files 232Using Multiple Terminals with byobu 233Polite System Reset Using REISUB 234Fixing an Ubuntu System That Will Not Boot 235Checking BIOS 235Checking GRUB 235Reinstalling GRUB 235Using Recovery Mode 236Reinstalling Ubuntu 236Tips and Tricks 236Running the Previous Command 236Running Any Previous Command 237Running a Previous Command that Started with Specific Letters 237Running the Same Thing You Just Ran with a Different First Word 237Viewing Your History and More 237Doing Two or More Things 237Using Shortcuts 238Confining a Script to a Directory 238Using Coreutils 239Reading the Contents of the Kernel Ring Buffer with dmesg 239References 240Chapter 13 Managing Users 241User Accounts 241The Super User/Root User 242User IDs and Group IDs 244File Permissions 244Managing Groups 245Group Listing 245Group Management Tools 246Managing Users 248User Management Tools 248Adding New Users 250Monitoring User Activity on the System 251Managing Passwords 252System Password Policy 252The Password File 253Shadow Passwords 254Managing Password Security for Users 256Changing Passwords in a Batch 256Granting System Administrator Privileges to Regular Users 257Temporarily Changing User Identity with the su Command 257Granting Root Privileges on Occasion: The sudo Command 259Disk Quotas 262Implementing Quotas 262Manually Configuring Quotas 263Related Ubuntu Commands 264References 264Chapter 14 Automating Tasks and Shell Scripting 265Scheduling Tasks 265Using at and batch to Schedule Tasks for Later 265Using cron to Run Jobs Repeatedly 268Using rtcwake to Wake Your Computer from Sleep Automatically 270Basic Shell Control 272The Shell Command Line 273Shell Pattern-Matching Support 274Redirecting Input and Output 275Piping Data 276Background Processing 277Writing and Executing a Shell Script 277Running the New Shell Program 279Storing Shell Scripts for System-Wide Access 279Interpreting Shell Scripts Through Specific Shells 280Using Variables in Shell Scripts 281Assigning a Value to a Variable 282Accessing Variable Values 282Positional Parameters 282A Simple Example of a Positional Parameter 283Using Positional Parameters to Access and RetrieveVariables from the Command Line 284Using a Simple Script to Automate Tasks 284Built-In Variables 286Special Characters 287Using Double Quotes to Resolve Variables in Strings with Embedded Spaces 288Using Single Quotes to Maintain Unexpanded Variables 288Using the Backslash as an Escape Character 289Using the Backtick to Replace a String with Output 289Comparison of Expressions in pdksh and bash 290Comparing Expressions with tcsh 295The for Statement 299The while Statement 300The until Statement 302The repeat Statement (tcsh) 303The select Statement (pdksh) 303The shift Statement 304The if Statement 304The case Statement 305The break and exit Statements 307Using Functions in Shell Scripts 307References 308Chapter 15 The Boot Process 311Running Services at Boot 311Beginning the Boot Loading Process 312Loading the Linux Kernel 314System Services and Runlevels 315Runlevel Definitions 315Booting into the Default Runlevel 316Understanding init Scripts and the Final Stage of Initialization 316Controlling Services at Boot with Administrative Tools 317Changing Runlevels 318Troubleshooting Runlevel Problems319Starting and Stopping Services Manually 319Using Upstart 319systemd 320Boot Repair 322References 322Chapter 16 System-Monitoring Tools 323Console-Based Monitoring 323Using the kill Command to Control Processes 325Using Priority Scheduling and Control 326Displaying Free and Used Memory with free 327Disk Space 328Disk Quotas 329Checking Log Files 329Rotating Log Files 331Graphical Process and System Management Tools 333System Monitor 334Conky 334Other 339KDE Process- and System-Monitoring Tools 339Enterprise Server Monitoring 340Landscape 340Other 340References 340Chapter 17 Backing Up 341Choosing a Backup Strategy 341Why Data Loss Occurs 342Assessing Your Backup Needs and Resources 343Evaluating Backup Strategies 345Making the Choice 348Choosing Backup Hardware and Media 348Removable Storage Media 348CD-RW and DVD+RW/-RW Drives 349Network Storage 349Tape Drive Backup 349Cloud Storage 350Using Backup Software 350tar: The Most Basic Backup Tool 351The GNOME File Roller 353The KDE ark Archiving Tool 353Deja Dup 354Back In Time 356Unison 358Using the Amanda Backup Application 358Alternative Backup Software 359Copying Files 360Copying Files Using tar 360Compressing, Encrypting, and Sending tar Streams 361Copying Files Using cp 361Copying Files Using mc 362Using rsync 362Version Control for Configuration Files 364System Rescue 366The Ubuntu Rescue Disc 367Restoring the GRUB2 Boot Loader 367Saving Files from a Nonbooting Hard Drive 368References 368Chapter 18 Networking 369Laying the Foundation: The localhost Interface 370Checking for the Availability of the Loopback Interface 370Configuring the Loopback Interface Manually 370Checking Connections with ping, traceroute, and mtr 371Networking with TCP/IP 374TCP/IP Addressing 374Using IP Masquerading in Ubuntu 376Ports 377IPv6 Basics 378Network Organization 380Subnetting 381Subnet Masks 381Broadcast, Unicast, and Multicast Addressing 382Hardware Devices for Networking 382Network Interface Cards 382Network Cable 384Hubs and Switches 385Routers and Bridges 386Initializing New Network Hardware 387Using Network Configuration Tools 389Command-Line Network Interface Configuration 389Network Configuration Files 394Using Graphical Configuration Tools 397Dynamic Host Configuration Protocol 399How DHCP Works 399Activating DHCP at Installation and Boot Time 400DHCP Software Installation and Configuration 401Using DHCP to Configure Network Hosts 403Other Uses for DHCP 405Wireless Networking 405Support for Wireless Networking in Ubuntu 405Advantages of Wireless Networking 407Choosing from Among Available Wireless Protocols 407Beyond the Network and onto the Internet 408Common Configuration Information 408Understanding PPP over Ethernet 410Configuring a PPPoE Connection Manually 411Configuring Dial-Up Internet Access 412Troubleshooting Connection Problems 413References 414Chapter 19 Remote Access with SSH, Telnet, and VNC 415Setting Up a Telnet Server 415Telnet Versus SSH 417Setting Up an SSH Server 417SSH Tools 417Using scp to Copy Individual Files Between Machines 418Using sftp to Copy Many Files Between Machines 418Using ssh-keygen to Enable Key-Based Logins 419Virtual Network Computing 420References 423Chapter 20 Securing Your Machines 425Understanding Computer Attacks 425Assessing Your Vulnerability 427Protecting Your Machine 428Securing a Wireless Network 429Passwords and Physical Security 429Configuring and Using Tripwire 430Devices 431Viruses 431Configuring Your Firewall 432AppArmor 435Forming a Disaster Recovery Plan 437References 439Chapter 21 Performance Tuning 441Hard Disk 441Using the BIOS and Kernel to Tune the Disk Drives 442The hdparm Command 443File System Tuning 444The tune2fs Command 444The e2fsck Command 445The badblocks Command 445Disabling File Access Time 445Kernel 445Apache 446MySQL 448Measuring Key Buffer Usage 448Using the Query Cache 449Miscellaneous Tweaks 451Query Optimization 451References 452Chapter 22 Kernel and Module Management 453The Linux Kernel 454The Linux Source Tree 455Types of Kernels 457Managing Modules 458When to Recompile 460Kernel Versions 461Obtaining the Kernel Sources 462Patching the Kernel 463Compiling the Kernel 464Using xconfig to Configure the Kernel 467Creating an Initial RAM Disk Image 470When Something Goes Wrong 470Errors During Compile 471Runtime Errors, Boot Loader Problems, and Kernel Oops 472References 472PART IV: UBUNTU AS A SERVERChapter 23 Sharing Files and Printers 473Using the Network File System 474Installing and Starting or Stopping NFS 474NFS Server Configuration 474NFS Client Configuration 475Putting Samba to Work 476Manually Configuring Samba with /etc/samba/smb.conf 478Testing Samba with the testparm Command 481Starting, Stopping, and Restarting the smbd Daemon 481Mounting Samba Shares 482Network and Remote Printing with Ubuntu 483Creating Network Printers 483Using the Common UNIX Printing System GUI 485Avoiding Printer Support Problems 486References 488Chapter 24 Apache Web Server Management 489About the Apache Web Server 489Installing the Apache Server 490Starting and Stopping Apache 491Runtime Server Configuration Settings 492Runtime Configuration Directives 492Editing apache2.conf 493Apache Multiprocessing Modules 495Using .htaccess Configuration Files 496File System Authentication and Access Control 498Restricting Access with Require 498Authentication 499Final Words on Access Control 501Apache Modules 502mod_access 502mod_alias 502mod_asis 503mod_auth 503mod_auth_anon 503mod_auth_dbm 503mod_auth_digest 504mod_autoindex 504mod_cgi 504mod_dir and mod_env 504mod_expires 504mod_headers 504mod_include 505mod_info and mod_log_config 505mod_mime and mod_mime_magic 505mod_negotiation 505mod_proxy 505mod_rewrite 505mod_setenvif 506mod_speling 506mod_status 506mod_ssl 506mod_unique_id 506mod_userdir 506mod_usertrack 507mod_vhost_alias 507Virtual Hosting 507Address-Based Virtual Hosts 507Name-Based Virtual Hosts 508Logging 509HTTPS 510References 513Chapter 25 Nginx Web Server Management 515About the Nginx Web Server 515Installing the Nginx Server 517Installing from the Ubuntu Repositories 517Building the Source Yourself 517Configuring the Nginx Server 518Virtual Hosting 521Setting Up PHP 522Adding and Configuring Modules 523HTTPS 524References 526Chapter 26 Other HTTP Servers 527lighttpd 527Yaws 528Cherokee 528Jetty 529thttpd 529Apache Tomcat 530References 530Chapter 27 Remote File Serving with FTP 531Choosing an FTP Server 531Choosing an Authenticated or Anonymous Server 532Ubuntu FTP Server Packages 532Other FTP Servers 532Installing FTP Software 533The FTP User 534Configuring the Very Secure FTP Server 536Controlling Anonymous Access 537Other vsftpd Server Configuration Files 537Using the ftphosts File to Allow or Deny FTP Server Connection 539References 540Chapter 28 Handling Email 541How Email Is Sent and Received 541The Mail Transport Agent 542Choosing an MTA 544The Mail Delivery Agent544The Mail User Agent 545Basic Postfix Configuration and Operation 546Configuring Masquerading 548Using Smart Hosts 549Setting Message Delivery Intervals 549Mail Relaying 550Forwarding Email with Aliases 550Using Fetchmail to Retrieve Mail 551Installing Fetchmail 551Configuring Fetchmail 551Choosing a Mail Delivery Agent 555Procmail 555Spamassassin 555Squirrelmail 556Virus Scanners 556Autoresponders 556Alternatives to Microsoft Exchange Server 556Microsoft Exchange Server/Outlook Client 557CommuniGate Pro 557Oracle Beehive 557Bynari 558Open-Xchange 558Horde 558References 558Chapter 29 Proxying, Reverse Proxying, and Virtual Private Networks (VPN) 561What Is a Proxy Server? 561Installing Squid 562Configuring Clients 562Access Control Lists 563Specifying Client IP Addresses 567Sample Configurations 568Virtual Private Networks (VPN) 570Setting Up a VPN Client 571Setting Up a VPN Server 573References 575Chapter 30 Administering Relational Database Services 577A Brief Review of Database Basics 578How Relational Databases Work 580Understanding SQL Basics 582Creating Tables 582Inserting Data into Tables 583Retrieving Data from a Database 584Choosing a Database: MySQL Versus PostgreSQL 586Speed 586Data Locking 586ACID Compliance in Transaction Processing to Protect Data Integrity 587SQL Subqueries 588Procedural Languages and Triggers 588Configuring MySQL 588Setting a Password for the MySQL Root User 589Creating a Database in MySQL 590Configuring PostgreSQL 592Initializing the Data Directory in PostgreSQL 592Creating a Database in PostgreSQL 593Creating Database Users in PostgreSQL 593Deleting Database Users in PostgreSQL 594Granting and Revoking Privileges in PostgreSQL 594Database Clients 595SSH Access to a Database 595Local GUI Client Access to a Database 597Web Access to a Database 597The MySQL Command-Line Client 598The PostgreSQL Command-Line Client 600Graphical Clients 600References 601Chapter 31 NoSQL Databases 603Key/Value Stores 606Berkeley DB 606Cassandra 607Memcached and MemcacheDB 607Redis 608Riak 608Document Stores 608CouchDB 609MongoDB 610BaseX 610Wide Column Stores 611BigTable 611HBase 611Graph Stores 612Neo4j 612OrientDB 612HyperGraphDB 612FlockDB 613References 613Chapter 32 Lightweight Directory Access Protocol (LDAP) 615Configuring the Server 616Creating Your Schema 616Populating Your Directory 617Configuring Clients 619Evolution 620Thunderbird 621Administration 621References 622Chapter 33 Linux Terminal Server Project (LTSP) 623Requirements 624Installation 627Using LTSP 628References 629Chapter 34 Virtualization on Ubuntu 631KVM 633VirtualBox 637VMware 639Xen 639References 639Chapter 35 Ubuntu in the Cloud 641Why a Cloud? 642Software as a Service (SaaS) 643Platform as a Service (PaaS) 643Infrastructure as a Service (IaaS) 643Metal as a Service (MaaS) 643Before You Do Anything 644Deploy/Install Basics: Public, Private, or Hybrid? 644Ubuntu Cloud and OpenStack 645Compute Infrastructure (Nova) 645Storage Infrastructure (Swift) 646Networking Service (Neutron) 646Identity Service (Keystone) 646Imaging Service (Glance) 647Dashboard (Horizon) 647Learning More 647Juju 647Getting Started 648Charms 650The Juju GUI 652Juju Quickstart 653Juju on Mac OS X and Windows 653Mojo: Continuous Delivery for Juju 653Snappy Ubuntu Core 653Ubuntu Metal as a Service (MaaS) 653Landscape 654References 654Chapter 36 Managing Sets of Servers 655Juju 655Puppet 656Chef 656CFEngine 656Ansible 657Landscape 657References 657Chapter 37 Name Serving with the Domain Name System (DNS) 659Understanding Domain Names 661DNS Servers 661DNS Records 662Setting Up a DNS Server with BIND 665References 667PART V: PROGRAMMING LINUXChapter 38 Using Programming Tools for Ubuntu 669Programming with Linux 670Using the C Programming Project Management Tools Provided with Ubuntu 671Building Programs with make 671Using Makefiles 671Using the autoconf Utility to Configure Code 673Debugging Tools 674Using the GNU C Compiler 675Graphical Development Tools 676Using the KDevelop Client 676The Glade Client for Developing in GNOME 677Use an IDE or SDK 678References 680Chapter 39 Opportunistic Development 681Version Control Systems 681Managing Software Projects with Git 682Managing Software Projects with Bazaar 683Managing Software Projects with Subversion 684Managing Software Projects with Mercurial 685Introduction to Opportunistic Development 686Launchpad 687Ubuntu Make 688Creating Snap Packages 689Bikeshed and Other Tools 689References 692Chapter 40 Helping with Ubuntu Development 693Introduction to Ubuntu Development 694Setting Up Your Development System 695Install Basic Packages and Configure 695Create a Launchpad Account 696Set Up Your Environment to Work with Launchpad 696Developing Apps and Scopes 698Fixing Bugs and Packaging 698Finding Bugs to Fix with Harvest 701Masters of the Universe 701References 702Chapter 41 Helping with Ubuntu Testing and QA 703Community Teams 703Ubuntu Testing Team 704QA Team705Bug Squad 705Test Drive 705References 708Chapter 42 Using Popular Programming Languages 709Ada 710Clojure 710COBOL 711D 712Dart 712Elixir 713Erlang 713Forth 713Go 714Fortran 714Groovy 715Haskell 715Java 715JavaScript 716Lisp 716Lua 717Mono 717OCaml 718Perl 718PHP 719Python 719Ruby 719Rust 720Scala 720Scratch 720Vala 720References 721Chapter 43 Beginning Mobile Development for Android 723Introduction to Android 724Hardware 724Linux Kernel 724Libraries 724Android Runtime 724Application Framework 725Applications 725Installing Android Studio 725Install Android Studio 725Install SDK Packages 725Create Your First Application 727References 728Chapter 44 Developing for Ubuntu Mobile/Touch 729Install the SDK 730Create Your First Application 730References 731Index 733BONUS ONLINE CHAPTERSChapter 45 Using Perl WebUsing Perl with LinuxPerl VersionsA Simple Perl ProgramPerl Variables and Data Structures Perl Variable Types Special Variables Operators Comparison Operators Compound Operators Arithmetic Operators Other Operators Special String Constants Conditional Statements: if/else and unless ifunless Looping for foreach while until last and next do ..while and do ..until Regular Expressions Access to the Shell Modules and CPAN Code Examples Sending Mail Purging Logs Posting to Usenet One-Liners Command-Line Processing References Chapter 46 Using Python Python on Linux The Basics of Python Numbers More on Strings Lists Dictionaries Conditionals and Looping Functions Object Orientation Class and Object Variables Constructors and Destructors Class Inheritance The Standard Library and the Python Package Index References Chapter 47 Using PHP Introduction to PHP Entering and Exiting PHP Mode Variables Arrays Constants References Comments Escape Sequences Variable Substitution Operators Conditional Statements Special Operators Switching Loops Including Other Files Basic Functions Strings Arrays Files Miscellaneous Handling HTML Forms Databases References

最近チェックした商品