目录

  1. 引言
  2. Linux 概述
  3. 基本命令
  4. Shell 脚本基础
  5. 系统管理与实用工具
  6. 常见问题与技巧
  7. 总结
  8. 参考资料

1. 引言

Linux 是一个开源的类 Unix 操作系统,因其稳定性、安全性及高度可定制性被广泛应用于服务器、嵌入式系统及桌面电脑等各个领域。本教程旨在为初学者提供 Linux 基础知识的全面介绍,包括 Linux 的概念、常用命令、Shell 脚本编写以及系统管理等内容,帮助你快速上手并深入了解 Linux 操作系统。


2. Linux 概述

什么是 Linux?

Linux 是由 Linus Torvalds 在 1991 年首次发布的开源操作系统内核,配合 GNU 工具集构成完整的操作系统。由于源代码开放,全球数以千计的开发者不断改进和扩展它,从而催生了众多不同的 Linux 发行版。

Linux 的特点

  • 开源免费:用户可以自由使用、修改和分发 Linux。
  • 稳定性高:Linux 系统以稳定著称,适合长时间运行的服务器环境。
  • 安全性好:内置强大的权限管理和安全机制,有效防止恶意软件攻击。
  • 灵活可定制:可以根据实际需求定制内核和应用程序。
  • 社区支持丰富:全球拥有庞大的 Linux 用户和开发者社区,资源和文档丰富。

常见发行版

  • Ubuntu:基于 Debian,易于使用,适合桌面和服务器。
  • CentOS / Rocky Linux / AlmaLinux:企业级发行版,适合服务器环境。
  • Fedora:前沿技术实验平台,适合开发者使用。
  • Debian:稳定性和安全性极佳,广泛用于服务器。
  • Arch Linux:高度可定制,适合进阶用户。

3. 基本命令

Linux 的强大之处在于其命令行界面。以下介绍一些常用的命令:

文件与目录操作

  • ls:列出目录内容 ls -l # 详细信息列表 ls -a # 包括隐藏文件
  • cd:切换目录 cd /home/user/Documents cd .. # 返回上一级目录
  • pwd:显示当前工作目录 pwd
  • mkdir / rmdir:创建/删除目录 mkdir new_folder rmdir old_folder
  • cp / mv / rm:复制、移动、删除文件 cp source.txt destination.txt # 复制文件 mv file.txt /target/directory/ # 移动或重命名文件 rm file.txt # 删除文件

文件查看与编辑

  • cat:查看文件内容 cat file.txt
  • more / less:分页查看长文件 less file.txt
  • head / tail:查看文件开头或结尾内容 head -n 10 file.txt # 查看前 10 行 tail -n 10 file.txt # 查看后 10 行
  • nano / vi / vim:文本编辑器 nano file.txt # 使用 nano 编辑器 vi file.txt # 使用 vi 编辑器 vim file.txt # 使用 vim 编辑器

权限管理

  • chmod:改变文件权限 chmod 755 script.sh # 设置文件权限为 rwxr-xr-x
  • chown:改变文件所有者 chown user:group file.txt

网络命令

  • ping:测试网络连通性 ping www.google.com
  • ifconfig / ip:查看或配置网络接口 ifconfig ip addr show
  • netstat / ss:查看网络连接和端口信息 netstat -tuln ss -tuln

进程管理

  • ps:查看当前运行的进程 ps aux
  • top / htop:实时查看系统进程和资源使用情况 top
  • kill:终止进程 kill -9 PID

4. Shell 脚本基础

Shell 脚本允许你将多个命令组合成一个可执行脚本,自动化日常任务。

示例:创建一个简单的脚本 hello.sh

#!/bin/bash
# 打印当前日期和时间
echo "当前日期和时间:$(date)"

  • 保存后,使用 chmod +x hello.sh 赋予执行权限,然后运行 ./hello.sh

5. 系统管理与实用工具

  • cron:定时任务调度
    编辑定时任务:crontab -e
  • df / du:查看磁盘使用情况 df -h # 查看各分区使用情况 du -sh * # 查看当前目录下各文件/文件夹的大小
  • tar / gzip:文件打包与压缩 tar -czvf archive.tar.gz /path/to/directory
  • systemctl / service:管理系统服务(基于 systemd 或 init) systemctl status apache2

6. 常见问题与技巧

  • 命令补全:在命令行中使用 Tab 键自动补全文件名和命令。
  • 历史命令:使用 history 查看之前执行的命令,使用 !n 重复执行第 n 个命令。
  • 管道与重定向:使用 | 将一个命令的输出作为另一个命令的输入;使用 >>> 重定向输出到文件。 ls -l | grep ".txt" echo "Hello" > hello.txt
  • 手册页:使用 man 命令查看命令的详细使用说明,例如 man ls

7. 总结

本教程概述了 Linux 的基本概念和操作,从介绍 Linux 系统的特点和常见发行版,到掌握基本命令、文件与目录操作、权限管理、网络与进程管理,再到 Shell 脚本编写和系统管理工具。掌握这些基础知识将帮助你在 Linux 环境中高效工作,并为深入学习系统管理和编程自动化奠定基础。


8. 参考资料

  1. Linux 命令大全
  2. The Linux Documentation Project
  3. Ubuntu 官方文档
  4. Arch Wiki

站内链接

通过本教程的学习,希望你能在 Linux 系统中得心应手,不断探索和掌握更多高级功能与实用技巧。