Skip to content

📅 Day 01:云计算破冰与 Linux 运维基石 ​

一、课程总览 ​

项目介绍 ​

课程背景 ​

为什么开设这门课 ​

  • 行业趋势:云计算已成为IT基础设施的主流,Linux占据云服务器90%以上市场份额

  • 就业需求:运维、开发、测试等岗位都要求掌握Linux基础,运维岗位缺口大

  • 学生痛点:学校课程偏理论,学生缺乏真实服务器操作经验,面试时项目经验不足

  • 课程价值:三天完成一个真实项目,从0到1部署上线,可直接写入简历

就业价值 ​

本项目可直接写入简历,对应岗位:

  • Linux运维工程师 / 云计算运维工程师(6-15K)

  • DevOps工程师 / SRE/AI(8-20K)

  • AIOps/大数据开发运维(10-25K)

  • 后端开发工程师(需要加开发技能)

  • 技术支持 / 实施工程师(5-10K)

本课程是计算机专业学生在校期间的最后一门综合实践课程,学生在离校实习前通过本课程完成一个完整的云计算项目——从云服务器申请、Linux环境配置到博客系统部署上线,体验真实的企业级运维工作流。

教学资源准备 ​

教师准备:

  • 阿里云账号演示用(教师机)
  • 投影设备、教学课件PPT
  • 学生分组名单(建议3-4人/组,共分若干组)
  • 答辩评分表(见Day03附件)
  • 实验指导书(打印版或电子版)

学生准备:

  • 个人笔记本电脑
  • 阿里云账号(提前注册,或课堂上统一注册)
  • 可联网环境

课程设计总览 ​

"三天要做什么、最终产出什么"

项目名称:基于阿里云ECS的Linux博客系统部署

项目流程图:

Day 01(今天)          Day 02(明天)           Day 03(后天)
    │                      │                       │
    ▼                      ▼                       ▼
┌─────────┐          ┌─────────┐            ┌─────────┐
│申请ECS   │ ──────► │部署LNMP  │ ────────► │整理PPT   │
│Linux基础 │          │安装WP   │            │项目答辩  │
└─────────┘          └─────────┘            └─────────┘

🎯 课程总目标 ​

🧠 1. 课程本质 ​

这不是Linux理论课,是“云上项目实战课”

三天你们要完成:

  • 一台云服务器(ECS)
  • 一个Linux运行环境
  • 一个真实上线的网站
  • 一次完整项目答辩

🏗️ 2. 项目最终成果 ​

每组必须完成:

  • ☁️ 云服务器(ECS)
  • 🐧 Linux系统操作
  • 🌐 博客系统上线(公网可访问)
  • 📊 项目PPT(或运维文档)
  • 项目部署文档(可选加分项)
  • 🎤 项目答辩

核心理论知识点 ​

1.2 什么是云计算与ECS

理论知识点:

  • 云计算:通过网络按需提供可配置的计算资源(网络、服务器、存储、应用和服务)的模式
  • IaaS(基础设施即服务):提供虚拟化的计算资源,如ECS
  • ECS(Elastic Compute Service):弹性计算服务,一台ECS实例等同于一台虚拟服务器,内含CPU、内存、操作系统、网络配置、磁盘等基础组件
  • 与传统物理服务器的对比:
    • 传统服务器:采购周期长、硬件维护成本高、资源利用率低
    • 云服务器:分钟级开通、按需付费、弹性伸缩、免运维硬件

云计算三种服务模式 ​

模式全称运维工作例子
IaaS基础设施即服务全部自己(装系统+部署)阿里云ECS、腾讯云CVM
PaaS平台即服务少量(部署代码)阿里云RDS、新浪SAE
SaaS软件即服务无(用户做什么)钉钉、飞书、邮箱

🔥 三者对比总结

控制权:IaaS > PaaS > SaaS

复杂度:IaaS > PaaS > SaaS

自由度:IaaS > PaaS > SaaS

越往IaaS走,越接近运维工程师 越往SaaS走,越接近普通用户


☁️ 主流云平台 ​


🌍 一、全球主流云 ​

云平台名称国家/地区特点常见用途
AWS美国全球市场第一,生态最完善企业级架构、互联网系统
Azure美国Windows/企业系统强政府、企业IT系统
GCP美国AI、大数据能力强AI训练、数据分析

🇨🇳 二、中国主流云 ​

云平台名称特点常见用途
阿里云国内第一大云厂商,电商/政企强ECS、网站部署、企业系统
腾讯云社交/游戏/小程序生态强游戏服务器、视频、微信生态
华为云政企+国产化替代政府系统、工业互联网
百度智能云AI能力强AI、大模型、搜索相关系统
京东云电商物流强电商系统、供应链

🧪 三、轻量/开发者云 ​

平台特点适合人群
DigitalOcean简单、便宜学生/开发者
VultrVPS灵活个人开发
Linode稳定VPS中小项目
Cloudflare边缘计算/CDN网站加速、安全

为什么选择阿里云ECS ​

  • 新用户免费、学生抵扣券
  • 国内最成熟的云平台之一
  • 与生产环境一致,实习/工作直接可用

SSH是什么 ​

  • SSH = Secure Shell,是一种加密的网络协议

  • 用于远程登录服务器和执行命令

  • 所有传输的数据都是加密的,比Telnet安全

  • 默认端口是22

二、阿里云ECS服务器申请与配置(实操) ​

操作步骤 ​

完成申请,演示和操作同步。

第一步:注册阿里云账号 ​

  1. 访问阿里云官网:https://www.aliyun.com
  2. 点击"注册",使用手机号/支付宝/淘宝账号注册
  3. 完成个人实名认证(身份证+人脸识别/支付宝快捷认证)
  4. 搜索"免费试用"或"高校计划",找到新用户免费套餐 或者 学生认证抵扣券
新用户免费试用 ​
  • 完成实名认证的 ECS 新用户,可领取300 元免费额度,完全覆盖三天使用量,零成本
  • 申请入口:阿里云官网 → 免费试用中心(free.aliyun.com)
  • 限制:同一身份证、手机号只能领一次

image-20260704064759806

学生认证特惠 ​
  1. 访问高校计划入口:https://university.aliyun.com
  2. 点击"学生认证" → 选择"学信网认证"
  3. 用支付宝扫码授权,系统自动校验学籍
  4. 未通过可上传学生证人工审核(1-3个工作日)

image-20260704064507235

⚠️ 常见问题与避坑指南:

  • 同一实名主体仅1次免费实例申领机会
  • 认证顺序:先个人实名,再学信网认证
  • 如果学信网认证失败,检查学籍是否在有效期内
按量付费 ​
  • 以华南地域 1 核 2G + 40G 高效云盘 + 按流量计费为例,日均费用约 0.5-1 元,三天总计不到 3 元
  • 流量费:学生部署博客访问量极低,流量费用可忽略不计
  • 优势:随开随用、用完即删,不用操心退款流程,最适合短期课程实验
包年包月模式 ​

支持两种退订方式:

  • 5 天无理由全额退款:新购实例 5 个自然日内,且未做过升级、续费操作,可申请全额退实付金额。每个账号、每个产品、每个自然年仅限 1 次阿里云帮助中心。
  • 非全额退款:购买超过 5 天也可退订,按已使用时长扣除费用,退还剩余部分金额,退款约 2 个工作日原路返回阿里云帮助中心。
  • 限制:活动特价机、参与促销活动的实例,若活动规则注明「不支持退款」则无法退订阿里云帮助中心。

省钱小贴士:

  • 新用户有3个月免费试用,先领免费的

  • 学生可以认证"云工开物-高校支持计划",有学生特惠

  • 按量付费的实例,用完释放,只花几毛钱

  • 包年包月5天内可申请无理由退款

第二步:创建ECS实例 ​

2.3 领取免费ECS实例

  1. 认证通过后,在"免费专区"或者"学生专属"区申领免费ECS

  2. 配置选择:

  3. 选择地域:离广州近延迟低、冷门地域便宜

  4. 选择实例规格:1核2G足够学习使用

  5. 选择镜像:CentOS 7.9 64位(企业最常用,学习资料多)

  6. 选择存储:默认40G高效云盘足够

  7. 选择网络带宽:1M固定带宽 或者 按流量计费,峰值带宽1-5M

  8. 设置登录凭证:选择"自定义密码",设置root密码(务必记住!)

  9. 确认订单:勾选服务协议,确认开通

image-20260704051807488

image-20260704051902312

2.4 获取服务器信息

  1. 进入ECS控制台 → 实例列表
  2. 记录以下信息:
    • 公网IP地址(重要!)
    • 实例ID
    • 地域信息

image-20260705065453208

第三步:配置安全组(非常重要!) ​

2.5 安全组配置(防火墙)

核心概念:安全组是云上的虚拟防火墙,控制进出实例的流量。

  1. 进入ECS控制台 → 安全组
  2. 点击"配置规则" → 入方向 → 添加安全组规则:
端口协议用途授权对象
22TCPSSH远程连接0.0.0.0/0
80TCPHTTP网站访问0.0.0.0/0
443TCPHTTPS网站访问0.0.0.0/0
  1. 进入ECS控制台,找到刚创建的实例

  2. 点击实例右侧的"安全组" → "配置规则"

  3. 入方向添加以下规则:

    • SSH(22端口):授权对象 0.0.0.0/0

    • HTTP(80端口):授权对象 0.0.0.0/0

    • HTTPS(443端口):授权对象 0.0.0.0/0

    • MySQL(3306端口):授权对象 0.0.0.0/0(学习用,生产环境不要全开)

image-20260704071042855

image-20260704070812888

**安全组是什么?**可以理解为云服务器的"防火墙",控制哪些端口可以被访问。默认只开放少数端口,所以我们要手动打开需要的端口。不开放的话,外面访问不到你的服务器。

⚠️ 安全提示:

  • 禁止全端口开放
  • 遵循最小权限原则
  • 22端口建议限制来源IP(实验室环境可先开放)

课后任务

  • 确保每个学生/每组都能成功登录ECS
  • 记录公网IP,第二天使用

第四步:远程连接服务器 ​

1 连接方式

  • Workbench:阿里云控制台内置的网页版SSH工具
  • SSH客户端:Xshell、PuTTY、Terminal(Mac/Linux)

2 使用Workbench连接

  1. ECS控制台 → 实例 → 远程连接
  2. 选择"Workbench远程连接"
  3. 输入用户名(root)和密码
  4. 进入终端页面

image-20260705065742735

3. Windows用户:

  1. 下载安装Xshell(家庭/学校版免费)

  2. 新建会话,主机填公网IP,端口22,协议SSH

  3. 点击连接,用户名填root,密码填你设置的密码

  4. 看到命令提示符就连接成功了

image-20260705065710490

4. Mac/Linux用户(系统自带终端):

2.3 首次登录提示

image-20260705065906150

  • root:当前用户名
  • @:分隔符
  • iZ7x********:主机名
  • ~:当前目录(家目录)
  • #:root用户提示符($为普通用户)

常见问题排查思路 ​

  1. 连不上?先ping一下

    • ping不通 → 网络问题或实例没启动

    • ping得通但SSH连不上 → 安全组没开22端口,或SSH服务没启动

  2. **密码不对?**去控制台重置密码,然后重启实例

  3. **连接超时?**检查安全组配置,确认22端口开放了

  4. **提示Permission denied?**用户名或密码错了,注意root的r是小写

三、Linux介绍 ​

Linux操作系统介绍 ​

📌Linux是什么 ​

​ Linux 并不是特指某一个孤立的软件,它是一个基于内核的、开源的、多用户多任务的类 Unix 操作系统。

  • 多用户系统
  • 开源系统
  • 服务器主流系统

📌Linux 内核 vs 发行版

  • Linux 内核(Kernel):由 Linux 之父林纳斯·托瓦兹(Linus Torvalds)在 1991 年写出的核心代码。它负责直接驱动硬件、管理内存和 CPU,相当于汽车的“发动机”。
  • Linux 发行版(Distribution):各大厂商或开源社区,拿了 Linux 的“发动机”,在外面套上壳(各种管理工具、软件源、甚至图形界面),打包成一个可以直接安装的系统。

📌Linux三大主流阵营

  • Red Hat系列:RHEL、CentOS、Alibaba Cloud Linux(企业最爱)
  • Debian系列:Debian、Ubuntu(界面友好,多用于 AI 和区块链项目)
  • 国产操作系统:如欧拉(openEuler)、龙蜥(Anolis OS),都是基于 Linux 内核开发的。

Linux与Windows对比

对比项LinuxWindows
界面与资源消耗默认无多
稳定性和运行周期极度稳定频繁更新,重启
费用开源免费商业收费
安全性高相对较低
权限管理机制极其严苛默认管理员权限过高
命令行强大(核心)较弱
服务器市场主导较少

🎯 重点:

Windows是给人用的, Linux是给服务器用的

运维工程师80%的工作 = 在黑窗口敲命令

Linux文件系统结构

/           # 根目录
├── bin/    # 基础命令
├── boot/   # 启动文件
├── dev/    # 设备文件
├── etc/    # 配置文件
├── home/   # 用户目录
├── root/   # root用户目录
├── tmp/    # 临时文件
├── usr/    # 应用程序
└── var/    # 可变数据(日志等)
  • /etc:所有服务的配置中心(修改后需重启服务生效)
  • /var/log:运维故障排查第一现场

image-20260707091843013

**记忆技巧:**不要死记硬背,理解每个目录的设计目的。比如etc是Editable Text Configuration的缩写,就是放配置文件的;var是variable的缩写,放经常变化的文件。理解了就好记了。

绝对路径 vs 相对路径

  • 绝对路径:从根目录(/)开始的完整路径,比如 /etc/nginx/nginx.conf

  • 相对路径:相对于当前位置的路径,比如 ./nginx.conf 或 ../etc/passwd

  • . 代表当前目录

  • .. 代表上一级目录

  • ~ 代表当前用户的家目录

  • - 代表上一次所在的目录(cd - 可以在两个目录间来回切换)

Linux的设计哲学 ​

  • 哲学思维:Linux 认为“一切皆文件”,哪怕是一块网卡、一个正在运行的进程,在系统里都有一个对应的文本文件。学会了改文本文件,你就学会了 Linux 运维。
  1. 一切皆文件

    • Linux “一切皆文件” 的设计哲学,没有 C 盘 D 盘的概念。

    • 硬件设备、网络套接字、管道等都抽象成文件,用统一的接口操作

    • 好处:简化设计,统一编程接口,一切都可以用读写文件的方式操作

    • 举例:/dev/sda是硬盘文件,/dev/null是黑洞文件

  2. 由众多小程序组成,每个程序只做一件事

    • 每个命令就是一个小程序,功能单一但做到极致

    • 通过管道(|)把多个程序组合起来完成复杂任务

    • 对比Windows的"大而全"软件,Linux是"小而美"的组合

Windows是给人用的, Linux是给服务器用的

运维工程师80%的工作 = 在黑窗口敲命令

就像乐高积木,每个小块功能简单,但能拼出各种东西

​

四、Linux基础命令详解+ 实操 ​

要点:边讲边练,每个命令操作验证。

一、文件与目录操作命令(核心) ​

1.1 pwd —— 显示当前路径

bash
[root@iZbp13 ~]# pwd

# 输出示例:/root

理论:Linux采用树形目录结构,pwd(print working directory)显示当前所在位置。

1.2 ls —— 列出目录内容

bash
ls              # 列出当前目录
ls -l           # 输出详解:长格式显示(权限、大小、时间)
ls -a           # 显示所有文件(包括隐藏文件)
ls -la          # 组合使用
ls /home        # 列出指定目录

理论:Linux中.开头的文件为隐藏文件,-l参数显示详细信息。

1.3 cd —— 切换目录

bash
cd /home        # 进入/home目录
cd ..           # 返回上一级目录
cd ~            # 回到用户家目录
cd /            # 回到根目录
cd -            # 回到上一个目录

理论:绝对路径以/开头,相对路径从当前目录开始。

**小技巧:**按Tab键可以自动补全命令和路径,输入前几个字母按Tab就行,能省很多事,还能避免打错字。

1.4 mkdir —— 创建目录

bash
mkdir myfolder          # 创建单级目录
mkdir -p a/b/c          # 创建多级目录(父目录不存在时自动创建)

理论:-p参数(parent)可递归创建多级目录。

5. rmdir - 删除空目录

注意:rmdir只能删空目录,要删非空目录用 rm -r

1.5 touch —— 创建空文件

bash
touch index.html        # 创建空文件
touch file1.txt file2.txt  # 创建多个文件

运维场景:快速创建占位文件、修改文件时间戳,是日常运维的高频轻量操作。

1.6 cp —— 复制文件或目录

bash
cp source.txt dest.txt      # 复制文件
cp -r source_dir dest_dir   # 递归复制目录
cp -i file1 file2           # 覆盖前提示确认

理论:-r(recursive)参数用于复制目录。

1.7 mv —— 移动或重命名

bash
mv oldname.txt newname.txt  # 重命名
mv file.txt /home/          # 移动文件

理论:mv的本质是修改文件路径,同一目录下是重命名,不同目录间是移动。

1.8 rm —— 删除文件或目录(危险命令!)

bash
rm file.txt                 # 删除文件
rm -r myfolder              # 递归删除目录
rm -rf myfolder             # 强制递归删除(⚠️ 危险!)

⚠️ 安全警告:Linux 最危险命令,无回收站机制

  • rm删除的文件无法恢复,执行前务必用ls确认路径和文件名
  • 绝对禁止执行 rm -rf /,会清空整个系统文件,造成不可逆灾难
  • 生产环境删除重要文件前必须先备份,新手推荐先用rm -i确认
  • 线上操作遵循 “先备份、再操作、慢执行、勤确认” 原则

10. find - 查找文件

功能:在指定目录下按条件查找文件

bash
find /etc -name "*.conf"       # 在/etc目录下查找所有以.conf结尾的文件
find /root -name "*.html"      # 在/root下查找所有.html文件

参数说明:

  • -name:按文件名查找,支持*通配符
  • 运维场景:服务器上定位配置文件、日志文件、异常脚本,是排查问题的基础工具。

11 cat —— 查看文件内容

bash
cat /etc/hosts             # 查看文件全部内容
cat -n /etc/passwd         # 显示内容的同时显示行号

注意:cat适合看小文件,大文件用more或less

12. more / less - 分页查看文件

推荐用less,功能更强大,"less is more"(少即是多,Unix哲学的体现)

bash
more /etc/services         # 分页查看,按空格翻下一页,按q退出(只能向下翻)
less /etc/services         # 增强版分页查看
  • less常用操作:空格下一页、b 上一页、q 退出、/关键词搜索、n 跳到下一个匹配项

13. head / tail - 查看文件开头/结尾

bash
head /etc/passwd           # 默认查看前10行
head -n 5 /etc/passwd      # 指定查看前5行

tail /etc/passwd           # 默认查看后10行
tail -n 5 /etc/passwd      # 指定查看后5行
tail -f /var/log/messages  # 实时追踪文件末尾新增内容(监控日志神器)

运维场景:tail -f是排查线上问题的高频命令,用于实时观察日志输出,按Ctrl+C退出。

14. grep - 在文件中搜索关键词(文本搜索神器)

bash
grep "bash" /etc/passwd        # 搜索文件中包含bash的行

运维场景:在日志、配置文件中快速定位错误信息、指定记录,是文本排查的核心命令,常与管道符搭配使用。

管道与重定向(了解)

  • 管道 |:把前一个命令的输出作为后一个命令的输入
bash
# 查找nginx相关的进程
ps aux | grep nginx

设计思想:对应 Linux“每个程序只做一件事,通过组合完成复杂任务” 的设计哲学,是运维自动化的基础语法。

  • 重定向 >:把命令输出写入文件(覆盖)
bash
echo "Linux Course" > hello.txt
  • 追加重定向 >>:追加到文件末尾
bash
# 追加重定向:将内容追加到文件末尾,不覆盖原有内容
echo "new line" >> hello.txt

运维场景:保存命令执行结果、生成配置文件、记录日志等。

💡 命令学习小技巧 ​

  1. 善用Tab自动补全,减少输入错误
  2. 按方向键↑↓可翻阅历史执行过的命令
  3. 忘记命令参数时,用man 命令名查看官方帮助手册
  4. 不用死记硬背所有参数,先掌握最常用的,用多了自然记住

二、综合实操练习 ​

练习任务(独立完成):

bash
# 1. 查看当前所在工作目录
pwd

# 2. 进入系统根目录,查看根目录下所有内容
cd /
ls -l

# 3. 回到root用户家目录
cd ~

# 4. 在/root目录下创建名为myproject的项目目录
mkdir myproject

# 5. 进入myproject目录,一次性创建src、conf、logs三个子目录
cd myproject
mkdir src conf logs

# 6. 在src目录下创建index.html、style.css、app.js三个前端文件
touch src/index.html src/style.css src/app.js

# 7. 将src目录下的index.html复制到conf目录中
cp src/index.html conf/

# 8. 将src目录下的style.css重命名为main.css
mv src/style.css src/main.css

# 9. 在当前项目目录下创建images子目录
mkdir images

# 10. 将src目录下的app.js复制到images目录中
cp src/app.js images/

# 11. 用ls -l查看当前目录的详细信息,观察权限、所有者与文件大小
ls -l

# 12. 查看重命名后的main.css文件内容(空文件无输出为正常现象)
cat src/main.css

# 13. 删除src目录下的app.js文件(删除前请确认路径,谨慎操作)
rm src/app.js

# 14. 递归查看myproject完整目录结构,核对所有文件与文件夹
ls -R

# 15. 使用find命令查找/etc目录下所有以.conf结尾的配置文件
find /etc -name "*.conf"

# 16. 查看/etc/passwd文件的前5行内容
head -n 5 /etc/passwd

# 17. 查看/etc/passwd文件的后5行内容
tail -n 5 /etc/passwd

# 18. 在/etc/passwd文件中搜索包含"bash"的行,并显示对应行号
grep -n "bash" /etc/passwd

# 19. 通过管道符统计/etc目录下文件与子目录的总数量
find /etc | wc -l

**提示:**多动手敲,多敲几遍就记住了。用Tab补全,用方向键上下翻历史命令。

Day 01 课后作业 ​

  1. 确保个人ECS已成功申请并可登录

  2. 熟记以下命令及其常用参数:pwd, ls, cd, mkdir, touch, cp, mv, rm, cat

  3. 把今天学的14个命令每个练习5遍,记住常用参数

  4. 思考:如果我想搭建一个网站,服务器上需要装哪些软件?

  5. 预习:什么是软件包管理器?yum和apt有什么区别?

  6. 预习:LNMP环境是什么?

  7. 尝试用find命令找一下系统里所有的.log文件

基于 Vite 强力驱动 | 纯静态轻量托管