Exercise 9: Process, Network, and Program Execution Utilities in
Linux
Objective:
This assignment provides practical experience in using essential Linux system utilities.
You will learn how to monitor system processes, evaluate network health, access a
remote server, transfer files securely, and execute scripts—all crucial skills for Linux
system administration and DevOps roles.
Task 1: Monitoring and Managing System Processes (3 Points)
Purpose:
Managing processes is one of the core responsibilities of system administrators. It
involves identifying which processes are consuming resources, understanding process
hierarchies, and terminating misbehaving or unnecessary operations.
What to Do:
1. List all currently running processes on your system.
2. Sort and display processes by:
o Memory usage (Top 3)
o CPU usage (Top 3)
3. Display the process hierarchy in a tree format.
4. Launch a background process (e.g., sleep 100), find its PID, and terminate it.
5. Terminate all processes belonging to a specific user.
6. Terminate all child processes of a specific parent process.
Deliverables:
Screenshots of all commands and outputs.
Task 2: Exploring and Testing Network Connectivity (3 Points)
Purpose:
Networking is at the heart of system communication. Understanding how to test
connectivity and resolve domain names is essential for maintaining and troubleshooting
systems.
What to Do:
1. Test the connectivity of the following websites by sending 5 packets each using a
single combined command.
o cnn.com
o bbc.com
o nytimes.com
o reuters.com
2. Display your system’s network interfaces and their IP addresses.
3. Identify:
o Loopback interface
o Ethernet interface
o IPv4 and IPv6 addresses
4. Display open and listening ports and services.
5. Identify your system’s default gateway.
6. Perform DNS lookups for both cnn.com and bbc.com.
Deliverables:
Screenshots of all commands and outputs.
Task 3: Checking System Health – Memory, CPU, and Disk (3 Points)
Purpose:
Monitoring system health helps identify potential issues before they become system
failures. This task introduces you to tools for evaluating memory, CPU, and disk usage.
What to Do:
1. Display memory usage using free -h and view /proc/meminfo.
2. Monitor CPU usage using:
o A basic tool (e.g., top)
o An enhanced viewer (e.g., htop)
3. Display disk space usage for all mounted file systems.
4. Show the total size of your home directory.
5. View disk I/O performance in real time.
Deliverables:
Screenshots of all commands and outputs.
🔒 Important:
The following two tasks must be completed inside the CSIT Laboratory on a
Windows Terminal.
The university server does not allow remote SSH/SFTP access from outside campus.
Server Access Credentials:
Server Name: ung.graceland.edu
Username: webprog
Password: webprog
Task 4: Accessing and Executing Python Code on the Remote Server (SSH) (4
Points)
Purpose: Task 4 and 5 were not completed due
to being off campus
In practice, system administrators often need to log into servers to deploy and run
scripts. This task helps you experience real-time remote script management.
What to Do:
1. Open Windows Terminal in the CSIT lab and SSH into ung.graceland.edu.
2. Navigate to the public_html directory.
3. Create a folder with your full name (e.g., john_doe) and move into it.
4. Verify that Python 3 is installed on the server.
5. Create a script named mission_script.py with the following content:
# mission_script.py
print("Mission: Python Execution on Remote Server\n")
fruits = ["apple", "banana", "cherry", "mango"]
print("Fruit list:")
for fruit in fruits:
print(f"- {fruit}")
print("\nChecking even numbers from 1 to 10:")
for i in range(1, 11):
if i % 2 == 0:
print(f"{i} is even")
else:
print(f"{i} is odd")
print("\nMission completed successfully!")
6. Run the script and confirm the output.
7. After verification:
o Delete the script file.
o Exit the folder and delete it.
o Log out of the server.
Deliverables:
Screenshots of all commands and outputs.
📂 Task 5: Secure File Transfer Using SFTP (3 Points)
Purpose:
SFTP (Secure File Transfer Protocol) is widely used for securely moving files between
systems. This task gives you practice with remote file upload/download operations.
What to Do:
1. Identify a folder on your lab computer with at least 2–3 files.
o Note its full path before beginning.
2. Open an SFTP session to ung.graceland.edu.
3. Navigate to the public_html directory.
4. Create a folder with your name (e.g., john_doe) and enter it.
5. Upload all files from your local folder to the remote folder.
6. List the remote directory contents to confirm successful upload.
7. Download all the uploaded files back to a new local folder.
8. Exit the SFTP session.
Deliverables:
Screenshots of all commands and outputs.
📥 Submission Guidelines
Organize your document by labeling sections Task 1 to Task 5.
Include only screenshots of commands and their outputs.
Submit your completed work as a Word or PDF document containing all
required screenshots.