Book Image

Linux Command Line and Shell Scripting Techniques

By : Vedran Dakic, Jasmin Redzepagic
Book Image

Linux Command Line and Shell Scripting Techniques

By: Vedran Dakic, Jasmin Redzepagic

Overview of this book

Linux Command Line and Shell Scripting Techniques begins by taking you through the basics of the shell and command-line utilities. You’ll start by exploring shell commands for file, directory, service, package, and process management. Next, you’ll learn about networking - network, firewall and DNS client configuration, ssh, scp, rsync, and vsftpd, as well as some network troubleshooting tools. You’ll also focus on using the command line to find and manipulate text content, via commands such as cut, egrep, and sed. As you progress, you'll learn how to use shell scripting. You’ll understand the basics - input and output, along with various programming concepts such as loops, variables, arguments, functions, and arrays. Later, you’ll learn about shell script interaction and troubleshooting, before covering a wide range of examples of complete shell scripts, varying from network and firewall configuration, through to backup and concepts for creating live environments. This includes examples of performing scripted virtual machine installation and administration, LAMP (Linux, Apache, MySQL, PHP) stack provisioning and bulk user creation for testing environments. By the end of this Linux book, you’ll have gained the knowledge and confidence you need to use shell and command-line scripts.
Table of Contents (19 chapters)

Additional commands for manipulating file/directory security aspects

In this recipe, we're going to use our users – Jack, Joe, Jill, and Sarah – to create a specific scenario to explain permissions, ACLs, and umask usage. A short explanation of these concepts is as follows: permissions are used to control access to files and folders in read, write, and execute mode. As they're limited in granularity, a concept of ACL was developed, to be able to manage permissions on a more finely grained level. Umask is a variable that pre-determines which permissions are going to be assigned to a newly created file or directory.

The recipe will go like this:

  • We need to create a collaborative directory for our students located at /share/students
  • We need to create a collaborative directory for our professors located at /share/professors
  • Members of the student group need to have access to /share/students to collaborate on project files
  • Members of the...