linux
🐧 Linux 学习笔记
欢迎来到我的 Linux 学习笔记! 这是一份持续积累的实践与理论记录,旨在系统梳理Linux相关知识,方便日后查阅与回顾。
📌 什么是 Linux?
Linux 是一个开源的、类Unix的操作系统内核,由林纳斯·托瓦兹(Linus Torvalds)于1991年首次发布。 我们通常所说的 “Linux” 往往指的是基于 Linux 内核的操作系统,即 Linux 发行版(Distribution)。
🧠 核心特点
- 开源自由:遵循 GPL 协议,可自由使用、修改和分发
- 稳定高效:广泛应用于服务器、嵌入式系统与超级计算机
- 多用户多任务:支持多用户同时操作,稳定执行多进程
- 强大的命令行:Shell 提供了极高的灵活性与自动化能力
- 模块化设计:内核与用户空间分离,可高度定制
🗂️ Linux 系统组成
| 组成部分 | 说明 |
|---|---|
| 内核 | 系统核心,管理硬件、内存、进程等资源 |
| Shell | 用户与内核交互的接口(如 Bash、Zsh) |
| 文件系统 | 组织和存储文件的逻辑结构(如 ext4、XFS、Btrfs) |
| 应用程序 | 用户态软件,包括系统工具、桌面环境、开发工具等 |
📦 常见的 Linux 发行版
🔸 基于 Debian 系列
- Ubuntu:用户友好,社区活跃,适合桌面与入门
- Debian:以稳定著称,是许多发行版的基础
🔸 基于 Red Hat 系列
- RHEL(Red Hat Enterprise Linux):企业级,需付费订阅
- CentOS(之前是 RHEL 的免费版本,现转向 Stream)
- Fedora:前沿技术试验场,社区驱动
🔸 独立及其他
- Arch Linux:滚动更新,高度自定义,适合进阶用户
- openSUSE:强大的系统管理工具(YaST)
- Alpine Linux:轻量级,面向容器与安全
🛠️ 学习路径建议
基础入门
- 系统安装与启动
- 文件系统结构与权限
- 常用命令(文件操作、文本处理、进程管理)
系统管理
- 用户与组管理
- 软件包管理(apt、yum、pacman)
- 服务管理(systemd)
- 磁盘管理与挂载
网络与安全
- 网络配置与调试
- 防火墙配置(iptables、firewalld)
- SSH 与远程管理
脚本与自动化
- Shell 脚本编程
- 计划任务(cron、systemd timer)
- 配置管理工具(Ansible 基础)
💡 哲学思想
- 一切皆文件:硬件、设备、进程等大多以文件形式抽象
- 小而美:程序应专注于做好一件事
- 组合使用:通过管道与重定向连接小程序完成复杂任务
- 避免重复造轮子:优先使用现有工具与脚本
📚 资源推荐
- 在线文档:Linux Documentation Project
- 命令查询:explainshell.com
- 在线练习:Linux Journey
✨ 写在最后
Linux 不仅是技术,更是一种文化与哲学。 它鼓励探索、分享与创造,让我们在命令行的世界里, 用文本和逻辑构建出无限可能。
保持好奇,动手实践,乐于分享 —— 这正是开源精神的精髓所在。
本笔记将随着我的学习与实践不断更新。 如有错误或补充,欢迎指正与交流 🌱