引言:为什么选择Linux?

全球约96%以上的服务器运行Linux操作系统。从AWS、Google Cloud、Azure等主要云服务到Netflix、Facebook、Google等大型服务,都在Linux上运行。对于服务器管理员、DevOps工程师和后端开发人员来说,Linux是必备技能。

1. 什么是Linux?

1.1 定义与历史

Linux是1991年芬兰大学生林纳斯·托瓦兹(Linus Torvalds)开发的开源操作系统内核。基于Unix哲学构建,任何人都可以免费使用和修改。

1.2 主要Linux发行版

  • Ubuntu Server:易于使用,社区活跃。推荐给初学者。
  • CentOS / Rocky Linux / AlmaLinux:基于RHEL,稳定性出色。企业环境广泛使用。
  • Debian:注重稳定性和安全性。Ubuntu的基础。
  • RHEL:企业级商业发行版,提供专业技术支持。

1.3 核心组件

  • 内核(Kernel):硬件与软件之间的中介。负责进程管理、内存管理。
  • Shell:用户与内核之间的接口。如Bash、Zsh等。
  • 文件系统:数据存储和组织方式。
  • 系统工具:系统管理所需的基本程序。

2. Linux文件系统层级结构(FHS)

2.1 什么是FHS?

Linux遵循FHS(文件系统层级标准)来规范目录结构。一切从根目录/开始,采用单一树形结构连接所有文件和目录。

2.2 主要目录

目录用途主要内容
/根目录所有目录的起点
/bin基本二进制ls、cp、mv等基本命令
/etc配置文件系统和应用程序配置
/home用户主目录普通用户的个人目录
/var可变数据日志、缓存、邮件队列
/tmp临时文件重启时删除的临时存储
/usr用户程序安装的软件和库
/dev设备文件以文件形式表示硬件设备
/proc进程信息运行中的进程和系统信息

3. 文件系统类型

  • ext4:最广泛使用的Linux文件系统。稳定且成熟。
  • XFS:适合大文件和高性能需求的环境。
  • Btrfs:提供快照、压缩、子卷等高级功能。

4. 基本文件/目录命令

4.1 导航命令

# 显示当前目录
pwd

# 切换目录
cd /var/log          # 绝对路径
cd ..                # 上级目录
cd ~                 # 主目录

# 列出目录内容
ls -la               # 包含隐藏文件的详细列表
ls -lh               # 人类可读的大小格式

4.2 文件/目录操作

# 创建目录
mkdir -p parent/child/grand

# 文件操作
touch newfile.txt              # 创建空文件
cat file.txt                   # 显示文件内容
tail -f /var/log/syslog        # 实时日志监控

# 复制、移动、删除
cp -r srcdir destdir           # 复制目录
mv oldname newname             # 重命名或移动
rm -r directory                # 删除目录

4.3 文件搜索

# find - 按文件名搜索
find /var -name "*.log"

# grep - 搜索文件内容
grep -r "pattern" /etc/

5. 文件权限基础

-rw-r--r-- 1 user group 1024 Jan 21 10:00 file.txt

第一个字符:文件类型(-文件,d目录)

接下来9个字符:权限(所有者/组/其他,各3个字符)

  • r(read):读取权限(值:4)
  • w(write):写入权限(值:2)
  • x(execute):执行权限(值:1)
chmod 755 script.sh    # rwxr-xr-x
chmod 644 file.txt     # rw-r--r--

6. 实践:基本服务器环境探索

# 系统信息
uname -a
cat /etc/os-release

# 资源状态
free -h
df -h
uptime

# 网络信息
ip addr
ss -tuln

总结

本篇介绍了Linux的基本概念和文件系统结构。下一篇将介绍用户与权限管理