0% found this document useful (0 votes)
9 views17 pages

Lecture 2

The document provides an overview of DevOps fundamentals, focusing on CI/CD tools such as Jenkins, Git, Docker, and Kubernetes, as well as Linux systems. It details the history of Linux, command line interface usage, basic Linux commands, and Bash scripting for automation. The content is structured to facilitate learning for individuals interested in enhancing their skills in DevOps and Linux system management.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
9 views17 pages

Lecture 2

The document provides an overview of DevOps fundamentals, focusing on CI/CD tools such as Jenkins, Git, Docker, and Kubernetes, as well as Linux systems. It details the history of Linux, command line interface usage, basic Linux commands, and Bash scripting for automation. The content is structured to facilitate learning for individuals interested in enhancing their skills in DevOps and Linux system management.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 17

Learn First to Lead The Rest

CI/CDs, Linux Systems

DevOps Fundamentals
CI/CDs
CI/CDs
CI/CDs
What Tools we will be learning

🆃 Jenkins
🆃 Git
🆃 Docker & Kubernetes
🆃 Grafana & Prometheus
🆃 Terraform
🆃 Cloud (AWS)
🆃 Others: SonarQube etc.
LINUX
LINUX
🆃 1983: Richard Stallman starts the GNU Project to create a free Unix-like
operating system.
🆃 1987: Andrew Tanenbaum develops MINIX, a Unix-like operating system
for educational purposes, inspiring Linus Torvalds.
🆃 1991: LINUS TORVALDS, a student at the University of Helsinki, creates
the Linux kernel and announces it on Usenet. He releases it under the
GNU General Public License (GPL) later (https://github.com/torvalds/linux).
🆃 1992: The Linux kernel is combined with GNU tools, forming a complete
free operating system.
🆃 2000s: Linux gains popularity as a server OS, powering major websites,
supercomputers, and embedded systems.
🆃 2003: Red Hat becomes the first billion-dollar open-source company,
highlighting Linux's commercial success.
🆃 2008: Android, based on the Linux kernel, is launched by Google, making
Linux the foundation of most mobile devices.
🆃 2010s: Linux becomes the backbone of cloud computing and
containerization technologies like Docker and Kubernetes.
🆃 2020s: Linux continues to dominate in servers, cloud platforms, and
development environments, with increasing adoption in desktops through
user-friendly distributions like Ubuntu and Fedora.
Command Line Interface (CLI)

A CLI is a text-based interface used to interact with an operating system or


software. Instead of using a GUI , users enter text commands to execute tasks
such as file manipulation, program execution, and system management.

How it works:

🆃 User Input
🆃 Command Interpretation: CLI (Shell) interprets the command and passes it
to the operating system's kernel for execution
🆃 Execution: Kernel executes the command and returns the output to the CLI
(Shell).
🆃 Output Display
Shells in Linux For CLI

🆃 sh (Bourne shell ) Advantages of CLI


🆃 Bash (Bourne Again Shell)
🆃 Lightweight and efficient.
🆃 Zsh (Z Shell)
🆃 Greater control over the operating system.
🆃 Ksh (Korn Shell)
🆃 Faster for repetitive or scripted tasks.
🆃 Tcsh (Tenex C Shell)
🆃 Uses fewer system resources than GUI.
🆃 Fish (Friendly Interactive Shell)
🆃 Dash (Debian Almquist Shell) etc. Challenges

🆃 Steeper learning curve for beginners.


🆃 Requires memorization of commands and
syntax.
🆃 cat /etc/shells (See all the
available shells in your Linux
Operating System)
Basic Linux Commands

Command Structure
🆃 pwd: Prints the current working
🆃 Command_Name Command_Argumant directory.
🆃 ls: Lists directory contents.
Your_Task
🆃 cd: Changes directories.
🆃 EG: cp -r ~/copy_folder ~/new_folder
🆃 mkdir: Creates a new directory.
🆃 map page 🆃 rm: Removes files or directories.
🆃 –h or — help 🆃 cp: Copies files or directories.
🆃 Editor: VI/VIM editor, NANO editor etc. 🆃 mv: Moves or renames files.
🆃 echo: Displays a line of text.
🆃 cat: Displays the content of files.
🆃 man: Displays the manual for a
command.
🆃 chmod: Changes file permissions.
🆃 chown: Changes file ownership.
Basic Linux Commands

File System Commands Configuration Files


🆃 df: Displays disk space usage.
🆃 /etc/passwd: Contains user account
🆃 du: Shows the size of files and
information.
directories.
🆃 /etc/shadow: Stores encrypted passwords
🆃 mount: Mounts a file system.
and account aging information.
🆃 umount: Unmounts a file system.
🆃 /etc/group: Defines groups and their
🆃 fsck: Checks and repairs file system
members.
errors.
🆃 /etc/fstab: Configures file system mount
🆃 lsblk: Lists information about block
devices. points.
🆃 blkid: Displays information about block 🆃 /etc/hosts: Maps hostnames to IP addresses.
devices. 🆃 /etc/resolv.conf: Specifies DNS servers.
🆃 mkfs: Creates a new file system. 🆃 /etc/network/interfaces or
🆃 tune2fs: Adjusts parameters of an ext /etc/sysconfig/network-scripts/: Configures
file system. network interfaces (varies by distro).
🆃 /var/log/: Directory containing system logs.
File Permissions
Basic Linux Commands

Networking Commands User Management


🆃 ping: Tests network connectivity. 🆃 adduser: Adds a new user.
🆃 ifconfig / ip: Configures and displays
network interfaces. 🆃 useradd: Creates a new user
🆃 netstat / ss: Displays network connections (alternative).
and statistics. 🆃 passwd: Changes a user's password.
🆃 nslookup: Queries DNS servers.
🆃 dig: Performs DNS lookups. 🆃 usermod: Modifies user account
🆃 traceroute: Traces the route packets take to properties.
a destination. 🆃 deluser: Deletes a user account.
🆃 wget: Downloads files from the internet.
🆃 curl: Transfers data from or to a server. 🆃 userdel: Deletes a user (alternative).
🆃 scp: Securely copies files between systems. 🆃 groupadd: Creates a new group.
🆃 ssh: Connects to remote systems securely. 🆃 groupdel: Deletes a group.
🆃 iptables: Configures firewall rules.
🆃 nmcli: Manages network connections. 🆃 gpasswd: Manages group
memberships.
Bash Scripting
Creating a Bash Script
Bash scripting is a powerful way to automate
Create a Script File: Use a text editor to create a file with the
tasks and perform complex operations in .sh extension.
Linux and other UNIX-like operating systems.
🆃 nano or vi script.sh
A Bash script is a plain text file containing a
series of commands that are executed Start with the Shebang: Include #!/bin/bash at the top to
specify the interpreter.
sequentially by the Bash shell.
🆃 #!/bin/bash
🆃 Automate repetitive tasks
Write Your Commands: Add the necessary commands and
🆃 Enhance productivity by simplifying logic.
complex operations 🆃 echo "Hello, World!"
🆃 Manage system configurations and batch
Make the Script Executable:
processes
🆃 Integrate and manage software 🆃 chmod +x script.sh
installations and updates Execute the Script:

🆃 ~ ./script.sh
Bash Scripting
Bash Scripting
Thank You!! :)

You might also like