Skip to content

njitacm/hands-on-with-linux

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Welcome to Linux Crash Course!

What is Linux Crash Course?

Linux Crash Course is a hands-on, beginner-friendly workshop designed to teach you the essential skills needed to work confidently with Linux systems. Whether you're preparing for a career in tech, system administration, development, or just want to understand the command line, this workshop will give you the foundational knowledge you need.

Why Learn Linux?

  • Universal: Linux powers servers, supercomputers, cloud infrastructure, and embedded systems
  • Essential for DevOps: Most development and deployment environments run on Linux
  • Career Skills: Linux knowledge is a requirement for many tech positions
  • Open Source: Free, transparent, and community-driven
  • Powerful: Command-line tools offer unmatched efficiency and automation capabilities

Workshop Structure

This workshop is organized into 4 progressive sections, each building on the previous one:

Master the basics of moving around the Linux file system and understanding your environment.

Challenges:

  1. Getting Started - Terminal basics and first commands
  2. File System Navigation - Moving through directories
  3. Viewing & Reading Files - Reading and inspecting file contents
  4. Creating & Organizing - Creating and managing directories
  5. Getting Help - Finding documentation and help

Learn to manipulate files, process text, and combine commands efficiently.

Challenges:

  1. File Manipulation - Copy, move, delete, and organize files
  2. Text Editors - Edit files from the command line
  3. Searching & Filtering - Find files and text patterns
  4. Text Processing & Comparison - Process, transform, and compare text
  5. Pipes & Redirection - Combine commands powerfully

Understand file permissions, users, processes, and system monitoring.

Challenges:

  1. File Permissions - Control access to files
  2. Users & Groups - Understand user management
  3. Process Management - View and control running processes
  4. Environment Variables - Configure your shell environment
  5. System Information - Check system resources and status

Write scripts to automate repetitive tasks and put it all together.

Challenges:

  1. Basic Scripts - Create your first shell scripts
  2. Conditionals - Add logic to scripts
  3. Loops - Iterate and repeat operations
  4. Functions & Arguments - Create reusable code
  5. Putting It All Together - Real-world scripting and automation

Getting Started

Prerequisites

  • Access to a Linux system OR
  • Terminal/SSH client

No prior Linux experience required!

Setup Options

Option 1: Local Installation

  • Install a Linux distribution (Ubuntu recommended for beginners)
  • Use a virtual machine (VirtualBox, VMware)
  • Use Windows Subsystem for Linux (WSL2)

Option 2: NJIT Highlander AFS

  • Navigate to Highlander Nexus and read the AFS connection instructions
  • Access via SSH from any operating system

First Steps

  1. Clone this repository:

    git clone https://github.com/yourusername/linux-crash-course.git
    cd linux-crash-course
  2. Start with Section 1:

    cd 01-fundamentals/01-getting-started
    cat README.md
  3. Work through each challenge sequentially

How to Use This Workshop

For Self-Paced Learning:

  1. Read the README for each challenge
  2. Try the commands and examples yourself
  3. Complete the exercises at the end
  4. Move to the next challenge when ready

Workshop Philosophy

This workshop follows a hands-on, learning-by-doing approach:

  • Practical examples you'll use in real work
  • Progressive difficulty that builds confidence
  • Clear success criteria so you know when you've mastered a concept
  • Real-world scenarios not just abstract exercises
  • Command reference sheets for quick lookup

Tips for Success

  • Type, don't copy-paste: Build muscle memory for commands
  • Make mistakes: They're the best way to learn
  • Experiment: Try variations of commands to see what happens
  • Read error messages: They usually tell you what went wrong
  • Take breaks: Learning is more effective in shorter sessions
  • Help others: Teaching reinforces your own understanding

Additional Resources

Troubleshooting

"Command not found"

  • Check spelling and spacing
  • Ensure the command is installed on your system
  • Check your PATH variable

"Permission denied"

  • You may need sudo privileges
  • Check file permissions
  • Ensure you're in the correct directory

Getting Stuck?

  • Re-read the relevant section
  • Check the cheat sheet
  • Try man commandname or commandname --help
  • Search online for the specific error message

Contributing

Found a typo? Have a suggestion? Want to add a challenge?

  1. Fork this repository
  2. Create a new branch
  3. Make your changes
  4. Submit a pull request

License

This workshop is released under the MIT License. See LICENSE for details.


Ready to Begin?

Start your Linux journey now:

cd 01-fundamentals/01-getting-started

Remember: Every Linux expert was once a beginner. You've got this!

About

hands-on crash course introduction to linux and the command line

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors