惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

The Cloudflare Blog
小众软件
小众软件
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
T
Tailwind CSS Blog
WordPress大学
WordPress大学
有赞技术团队
有赞技术团队
博客园 - 司徒正美
V
Visual Studio Blog
G
Google Developers Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
月光博客
月光博客
aimingoo的专栏
aimingoo的专栏
博客园_首页
Blog — PlanetScale
Blog — PlanetScale
博客园 - 聂微东
S
SegmentFault 最新的问题
T
The Blog of Author Tim Ferriss
D
Docker
Vercel News
Vercel News
Recent Announcements
Recent Announcements
Last Week in AI
Last Week in AI
爱范儿
爱范儿
J
Java Code Geeks
大猫的无限游戏
大猫的无限游戏

DEV Community

Authentication Security Deep Dive: From Brute Force to Salted Hashing (With Java Examples) Why AI Systems Don’t Fail — They Drift Spilling beans for how i learn for exam😁"Reinforcement Learning Cheat Sheet" I Replaced Chrome with Safari for AI Browser Automation. Here's What Broke (and What Finally Worked) How Python Borrows Other People's Work The $40 Architecture: Processing 1 Billion API Requests with 99.99% Uptime Vibe Coding: A Workflow Guide (From Zero to SaaS) Most webhook security guides protect the wrong side. The scary part is delivery. Headless CMS for TanStack Start: Build a Blog with Cosmic EU Age Verification App "Hacked in 2 Minutes" — What Actually Happened Comfy Cloud’s delete function does not actually remove files Running AI Models on GPU Cloud Servers: A Beginner Guide Event-driven media intelligence with AWS Step Functions and Bedrock I scored 500 AI prompts across 8 quality dimensions — here's what broke How to Call Google Gemini API from Next.js (Free Tier, No Backend Needed) The Portal Protocol: Reclaiming Human Connection in the Age of AI How to Fix Your Team's Scattered Knowledge Problem With a Self-Hosted Forum Intro to tc Cloud Functors: A Graph-First Mental Model for the Modern Cloud Designing Multi-Tenant Backends With Both Ownership and Team Access I Built a Neumorphic CSS Library with 77+ Components — Here's What I Learned PostgreSQL Performance Optimization: Why Connection Pooling Is Critical at Scale Cómo construí un SaaS multi-rubro para gestionar expensas en Argentina con FastAPI + Vue 3 🚀 I Built an Ethical Hacking Scanner Tool – Open Source Project I Replaced /usage and /context in Claude Code With a Single Statusline A Pythonic Way to Handle Emails (IMAP/SMTP) with Auto-Discovery and AI-Ready Design I Collected 8.9 Million Polymarket Price Points — Here's What I Found About How Markets Really Move EcoTrack AI — Carbon Footprint Tracker & Dashboard Everyone's Using AI. No One Agrees How. 5 self-hosted ebook managers worth trying in 2026 Building Your First AI Agent with LangChain: From Chatbot to Autonomous Assistant
I Thought I Knew Linux — Then I Actually Learned It (Week 1)
Dharamraj Yadav · 2026-06-21 · via DEV Community

The Big Picture

Before you read this doc you must know english is my second language and this doc is have completely my own words not any AI, translator etc.

What an OS really is

An Operating System is software that manage every system resources and it also manage - Hardware, Kernel, and User space.

Kernel mode and User mode

Kernel mode handle every hardware related work and this is only thing that manage hardware. User mode is just showing us to running programs like right now you are in User mode, you never touch any hardware related things.

The Kernel's 4 Jobs

  1. Process Management - Kernel manage every running process.
  2. Memory Management - Kernel decides which process get how much memory.
  3. Device Drivers - This is important job of kernel to manage devices(hardware, virtual).
  4. System Calls - A system call is a how a program asks the kernel to do something fot it.

Users

Users are very important part of the OS bcz it create wall of processes and a single server can manage multiple users.

UID

Every user gets a UID so the kernel identify the user.

root

This is the BOSS of the system he can do anything in the system without any confirmation model and one more thing the root can do anything but it doesn't mean root have kernel mode this is steel in the user mode.

Groups

Every user have a group and we can manage the permissions on the group so we easily add/remove users from group.

The Shell & Basic Commands

What the shell actually is

The shell is a program where we run commands. shell is a interface between kernel and users.

Commands Structure

program + options + argument. ls -l /home
ls - program
-l - option
/home - argument

Core Commands

ls - list the data(files & Directories)
cat - View the inside file
echo - print something
touch - create a file
cp - copy anything
mv - move anything
rm - remove anything(you only remove files & directories that access you have)

Navigation

pwd - present working directory
cd - change directory
mkdir - create directory
rmdir - remove empty directory

Absolute & Relative Path

Absolute path mean full path of the file for example:- /home/user/directory/test.txt

Relative path mean only current folder path for example:- directory/test.txt

Wildcards(globbing)

  • - ls *.txt(now * mean find only .txt files) ? - ls filen?ame.txt(it mean now the ? find only one single letter)

Intermediate Commands

Searching/Viewing

grep - this cmds grep the exact line what we want(grep "findme" file.txt). -i(case insensitive) and -v(this exclude lines that containing findme) is options of this cmd.
sort - sort lines alphabetically.
head - bydefault print 10 top lines(head filename.txt)
tail - bydefault print 10 bottom lines(tail filename.txt)
less - not print everything in single time it wait for your keys(up, down, q etc.)

Finding/inspecting

find - this find in the subfolders also(but ls find only on the current directory)
locate - quickly find files and direcotries
diff - check differences between two files
file - details of any file

Variables & PATH

Shell Variables & Environment Variables

Shell variable are the private variables of the shell we can't use them in child programs but environment variable can do but before it we need to export that.

How shell finds commands

shell find cmds on the $PATH not in the whole system if sometime the program is installed but the shell throe error like (command not find) it mean that cmd is not in the $PATH

Editing, Help, Input/Output & Errors

Editing in the terminal

vi, vim, nano, these are the terminal editors.(vim filename.txt)
Getting Help: man, man -k, --help. (-k mean search keyword)
Redirection & Pipes: >(> mean overwrite the content), >>(>> mean append the text), | (| mean get output preview cmd)

Processes

What is process

Process is a running instance of the program and every process have a PID(we can kill the process by their PID)

Process Commands

ps: Show running Processes
ps aux: Show running processes with details
kill : kill process by their PID
kill -9 : forcefully kill the process
cmd &: & used for run process in background
ctrl c: stop running process from screen that running right now on screen

File Permissions

When we run the ls -l command you see something like this:-
-rwx-w-rw- 1 username groupname so on....
Breakdown of this:-

  • -> -(hyphen) mean this is a file rwx - r stand for read, w stand for write, x stand for execute. first 3 letter for owner, then 3 letter for group, and last three letter for others(other users). in our output(-rwx-w-rw-) you see -(hyphen) it mean this is file. then you see rwx it mean owner have read,write,execute permission. then you see (-w-) it mean group have only write permission not read not execute. and last 3(rw-) it mean others have read and write permission not execute.

Change the permission

chmod - it mean change mode so you can change the permissions like chmod 747. each permission have a number:-
read - 4
write - 2
execute - 1
if we want read(4) and write(2) permission to owner just run this command chmod 600. 00 mean no permission to group and other.
and we use something like chmod u+x, u+r. it mean please add execute and read permission for user(owner).

Symbolic Links

Symbolic link just like shortcut in window and alias in mac.
Commands for linux:-
ln -s target linkname
the -s stand for symbolic link OR soft link.

Archiving

tar command

tar mean bundle of the files & directories.
if you want to create a bundle just run this cmd:- tar -czf filename.tar yourstuffs
Options of the cmd:-
-czf - mean create
-tzf - mean show the list inside bundle
-xzf - mean extract the bundle

gzip command

gzip mean compress the file size of the bundle. it only used for create bundle + compress the size.
.tar.gz

Filesystem in Linux

In linux root you see this directories:-
etc, home, var, usr, tmp etc.

etc

This directory have only configuration related data.

home

This is only for users. how many users with there personal data.

var

This directory for the logs of the system and logs are inside /var/log

usr

This directory have most installed programs and /usr/bin have linux commands.

tmp

This directory have temporary data as it name.

Running Commands as super user(sudo)

Every linux user should know about this topic. coz it is very important to know. in linux you can't delete,view,run anything without permission and every user have permissions to what to do or not. some users have sudo access it mean they can install, delete anything in system without any permission bcz they have root access sudo stand for super user.