杰瑞科技汇

Linux基础教程第二版适合零基础学习吗?

《Linux基础教程(第二版)》学习指南

前言:为什么学习Linux?

Linux不仅是一个操作系统,更是一种开源、自由、稳定、高效的计算哲学,它从服务器领域渗透到云计算、大数据、人工智能、物联网,甚至是我们的日常设备(安卓手机、路由器、智能家居),掌握Linux,是通往现代IT世界的必经之路,本教程旨在为你打下坚实的Linux基础,让你从“知道Linux”成长为“会用Linux”。


第一部分:Linux入门与基础概念

第1章:认识Linux

  • 1 Linux的起源与发展
    • Unix的诞生与影响。
    • Linux的诞生:Linus Torvalds与自由软件基金会(FSF)、GNU项目。
    • Linux内核与发行版的关系(Debian, Ubuntu, CentOS, Fedora等)。
  • 2 Linux的特点与优势
    • 开源与免费。
    • 多用户、多任务。
    • 稳定性与安全性。
    • 丰富的网络功能。
    • 可移植性。
  • 3 Linux的应用领域
    • 服务器领域(Web服务器、数据库服务器)。
    • 云计算与虚拟化。
    • 嵌入式系统与物联网。
    • 个人桌面应用。
  • 4 如何选择一个Linux发行版?
    • 初学者友好:Ubuntu, Linux Mint。
    • 稳定与企业级:Debian, CentOS Stream, Rocky Linux。
    • 自由与定制:Arch Linux, Gentoo。
  • 5 安装Linux(以Ubuntu为例)
    • 虚拟机安装:推荐使用 VirtualBox 或 VMware,方便练习且不影响宿主系统。
    • 物理机安装:制作启动U盘,进行分区规划(建议新手选择“ alongside existing operating system”)。
    • 重点: 获取你的第一个Linux环境。

第2章:Linux的启动、登录与关机

  • 1 Linux系统的启动流程
    • BIOS/UEFI -> Boot Loader (GRUB) -> Linux Kernel -> Init进程 -> 系统服务。
    • (简化版理解即可)
  • 2 登录方式
    • 图形界面登录。
    • 命令行登录:Ctrl + Alt + F1 ~ F6 切换到虚拟终端。
  • 3 关机与重启命令
    • shutdown -h now:立即关机。
    • shutdown -r +10:10分钟后重启。
    • halt:关机。
    • reboot:重启。
    • init 0:关机,init 6:重启。
    • 重要提示: 在生产环境中,请使用 shutdown 命令,可以通知其他用户。

第二部分:Linux文件系统与基本命令

第3章:Linux文件系统结构

  • 1 一切皆文件

    普通文件、目录文件、设备文件、链接文件等。

  • 2 标准的Linux目录结构 (FHS - Filesystem Hierarchy Standard)
    • 根目录,一切从这里开始。
    • /bin:基本命令,如 ls, cp, mv
    • /sbin:系统管理员命令,如 reboot, fdisk
    • /etc:系统配置文件。
    • /home:普通用户的家目录。
    • /usr:用户安装的软件和程序。
    • /var:经常变化的文件,如日志 (/var/log)。
    • /tmp:临时文件。
    • /boot:启动文件。
    • /dev:设备文件。
    • /proc & /sys:内核与进程信息的虚拟文件系统。
  • 3 绝对路径与相对路径
    • 绝对路径:从根 开始的完整路径,如 /home/user1/docs
    • 相对路径:从当前目录开始的路径,如 ../docs (上级目录下的docs)。

第4章:核心基本命令

  • 1 文件和目录操作
    • ls:列出文件。ls -l (长格式), ls -a (显示隐藏文件), ls -h (人性化显示大小)。
    • cd:切换目录。cd ~ (回家), cd - (回到上一次目录)。
    • pwd:显示当前所在路径。
    • mkdir:创建目录。mkdir -p a/b/c (递归创建)。
    • touch:创建空文件或更新文件时间戳。
    • cp:复制文件/目录。cp -r (递归复制目录), cp -p (保持属性)。
    • mv:移动/重命名文件/目录。
    • rm:删除文件/目录。rm -f (强制删除), rm -r (递归删除目录)。(慎用!)
  • 2 查看文件内容
    • cat:查看整个文件内容。
    • more / less:分页查看文件(less更强大,可前后翻页)。
    • head:查看文件开头几行。head -n 20 file.txt
    • tail:查看文件结尾几行。tail -f file.txt (实时追踪日志文件变化)。
  • 3 查找命令
    • find:按文件名、类型、大小等条件查找文件。find /home -name "*.txt"
    • locate:基于数据库的快速查找(updatedb更新数据库)。
    • grep:在文件中搜索文本内容。grep "error" log.txt
  • 4 压缩与解压
    • gzip / gunzip.gz 文件。
    • bzip2 / bunzip2.bz2 文件。
    • tar:打包/解包命令。tar -czvf archive.tar.gz file1 file2 (打包并gzip压缩), tar -xzvf archive.tar.gz (解压)。

第三部分:用户、权限与管理

第5章:用户与用户组管理

  • 1 用户与用户组的概念

    UID (User ID) 和 GID (Group ID)。

  • 2 重要配置文件
    • /etc/passwd:用户账户信息。
    • /etc/shadow:用户密码(加密)。
    • /etc/group:用户组信息。
  • 3 常用管理命令
    • useradd:创建新用户。
    • passwd:设置/修改用户密码。
    • userdel:删除用户。
    • groupadd:创建新用户组。
    • su:切换用户。su - username (完全切换,包括环境变量)。
    • sudo:以其他用户(通常是root)的身份执行命令。

第6章:文件权限与归属

  • 1 权限的表示
    • r (读, 4), w (写, 2), x (执行, 1)。
    • chmod:修改权限。chmod u+x script.sh (给用户添加执行权限), chmod 755 file.txt (数字表示法)。
  • 2 归属的表示
    • chown:修改文件所有者。chown user1:group1 file.txt
    • chgrp:修改文件所属组。
  • 3 特殊权限

    SUID, SGID, Sticky Bit。(概念性了解,知道其作用即可)


第四部分:文本编辑器与软件管理

第7章:Linux文本编辑器

  • 1 nano:新手友好的命令行编辑器

    简单易学,底部有快捷键提示。

  • 2 vim / vi:强大的编辑器(必学)
    • 三种模式:普通模式插入模式命令行模式
    • 基本操作:
      • i:进入插入模式。
      • Esc:回到普通模式。
      • w:保存。
      • q:退出。
      • wq:保存并退出。
      • q!:强制退出不保存。
    • 移动光标、复制粘贴、删除等操作。(vim是Linux程序员的标配,请务必花时间练习)

第8章:软件包管理

  • 1 包管理器简介

    解决软件依赖、安装、卸载、更新的问题。

  • 2 基于Debian/Ubuntu的系统 (apt)
    • sudo apt update:更新软件源列表。
    • sudo apt upgrade:升级已安装的软件包。
    • sudo apt install package_name:安装软件。
    • sudo apt remove package_name:卸载软件。
  • 3 基于RHEL/CentOS/Rocky的系统 (yum/dnf)
    • sudo yum check-update:检查更新。
    • sudo yum update:升级所有软件。
    • sudo yum install package_name:安装软件。
    • sudo yum remove package_name:卸载软件。
    • (新版本如CentOS 8/Rocky Linux 8+使用 dnf,用法与yum几乎相同)

第五部分:进程管理与系统监控

第9章:进程管理

  • 1 什么是进程?

    正在执行的程序实例。

  • 2 查看进程
    • ps:查看当前终端下的进程。ps aux (查看所有用户的所有进程)。
    • top / htop:动态查看系统资源占用和进程。htoptop的增强版,更直观。
  • 3 控制进程
    • &:让命令在后台运行。sleep 100 &
    • Ctrl + Z:暂停前台进程。
    • jobs:查看后台任务。
    • fg / bg:将后台任务调到前台/继续后台运行。
    • kill:终止进程。kill PID (发送终止信号), kill -9 PID (强制杀死)。
    • pkill:根据进程名杀死进程。

第10章:系统信息与监控

  • 1 查看系统信息
    • uname -a:查看内核和系统信息。
    • lscpu:查看CPU信息。
    • free -h:查看内存使用情况。
    • df -h:查看磁盘空间使用情况。
  • 2 网络相关
    • ifconfig / ip addr:查看网络接口IP地址。
    • ping:测试网络连通性。
    • netstat -tuln / ss -tuln:查看监听的端口。

第六部分:Shell脚本入门

第11章:Shell基础

  • 1 什么是Shell?
    • 用户与Linux内核之间的命令解释器。
    • 常见的Shell:Bash (Bourne Again Shell), Zsh等,Bash是默认的。
  • 2 变量
    • 定义:NAME="value" (注意等号两边不能有空格)。
    • 使用:echo $NAMEecho ${NAME}
    • 只读变量:readonly NAME
    • 删除变量:unset NAME
  • 3 字符串
    • 单引号 :原样输出。
    • 双引号 :可以引用变量。
    • 反引号 `:命令替换,会先执行命令。
  • 4 注释
    • 单行注释: 开头。
    • 多行注释: 或 。

第12章:流程控制

  • 1 条件判断
    • test 命令或 [ ] (注意括号两边要有空格)。
    • 判断类型:整数比较 (-eq, -ne, -gt, -lt)、字符串比较 (, )、文件判断 (-f, -d, -e)。
  • 2 if-else 语句
    if [ condition ]
    then
        # command
    elif [ condition ]
    then
        # command
    else
        # command
    fi
  • 3 循环
    • for 循环:
      for i in 1 2 3 4 5
      do
          echo "Number: $i"
      done
    • while 循环:
      count=1
      while [ $count -le 5 ]
      do
          echo "Count: $count"
          count=$((count + 1))
      done

第七部分:网络配置与服务管理

第13章:网络基础配置

  • 1 IP地址配置
    • 命令行临时配置:ip addr add 192.168.1.100/24 dev eth0
    • 永久配置:修改配置文件(如 /etc/netplan/01-netcfg.yaml for Ubuntu, /etc/sysconfig/network-scripts/ifcfg-eth0 for CentOS),然后重启网络服务。
  • 2 主名解析
    • /etc/hosts:本地主机名与IP映射。
    • DNS配置:/etc/resolv.conf

第14章:服务管理(Systemd)

  • 1 Systemd简介

    现代Linux发行版(CentOS 7+, Ubuntu 16.04+)默认使用的系统和服务管理器。

  • 2 常用命令
    • systemctl start nginx.service:启动服务。
    • systemctl stop nginx.service:停止服务。
    • systemctl restart nginx.service:重启服务。
    • systemctl enable nginx.service:开机自启。
    • systemctl disable nginx.service:禁止开机自启。
    • systemctl status nginx.service:查看服务状态。
    • journalctl -u nginx.service:查看服务日志。

第八部分:学习资源与进阶方向

第15章:持续学习

  • 1 官方文档
    • The Linux Documentation Project (TLDP): tldp.org
    • 各发行版的官方Wiki和文档。
  • 2 在线教程与社区
  • 3 进阶方向
    • Shell脚本编程:深入学习,编写自动化运维脚本。
    • Linux系统管理:深入理解内核、性能调优、安全加固。
    • Linux网络:深入学习TCP/IP、防火墙、路由。
    • 容器化技术:学习 Docker 和 Kubernetes。
    • 内核编译与开发:挑战高阶领域。

Linux的学习之路漫长且充满乐趣,本教程为你铺设了坚实的基石,但真正的 mastery 来自于不断的实践、探索和解决问题,大胆地去敲命令,去尝试,去犯错,去修复,祝你在Linux的世界里学有所成!

分享:
扫描分享到社交APP
上一篇
下一篇