一、到底什么是 Linux?内核 & 服务器版一次讲清

Linux 和 Windows 一样,是操作系统,核心作用是管理电脑的 CPU、内存、硬盘、进程,支撑所有代码和程序运行。想要看懂 Linux,必须分清两个核心概念:

  1. Linux 内核:系统最底层的核心引擎,负责硬件调度、进程管理、内存分配、并发调度,没有界面、没有软件,是所有 Linux 系统的基础核心。
  2. Linux 发行版:在内核基础上,搭配命令工具、运行环境、系统组件,打包成可以直接使用的完整系统,比如 Ubuntu、Debian、CentOS 都是常见发行版。

而我们编程学习用到的,基本都是服务器版 Linux。服务器版 Linux 是专门为云端、机房服务器设计的系统版本,最大特点:砍掉图形桌面、只保留命令行、极致省资源、强化稳定和并发能力。服务器不需要鼠标、窗口、娱乐软件,只需要 7×24 小时稳定运行网站、接口、数据库、AI 服务,持续处理大量用户请求。

简单总结:桌面版 Linux 是给人手动操作的,服务器版 Linux 是给程序持续干活的。

二、为什么必须学习 Linux?本地高并发 GPU 开发的致命痛点

互联网后端、服务器开发、AI 高并发推理,几乎全部基于 Linux 环境,这也是所有开发者必学 Linux 的核心原因。Linux 内核原生支持海量进程、线程调度、IO 多路复用,天生适配高并发场景,能同时承载成千上万条用户请求,稳定性、资源利用率远优于桌面系统。

但初学者用本地 Windows 电脑学习,会遇到无法规避的硬件瓶颈:高并发、AI 推理任务包含海量矩阵运算,极度消耗 GPU 算力和显存。很多人误以为是 Linux 吃显卡,实则是高并发业务程序吃显卡。如果在 Windows 上用虚拟机、WSL2 运行 Linux,还会叠加虚拟化性能损耗,无法完整调用本地显卡性能。低配电脑极易出现卡顿、显存溢出、程序跑崩的问题,完全满足不了高并发学习和练习需求,这也是本地环境最大的短板。

三、CloudStudio(CodeBuddy)云端 Linux 开发环境:Windows 用户的最优解

针对本地电脑性能不足、GPU 算力不够、虚拟机卡顿的问题,CloudStudio 内置 CodeBuddy 云端开发环境,是最适合学生和新手的 Linux 学习、高并发开发方案,完美适配 Windows 系统用户。它本质是云端服务器版 Linux 环境,所有系统运行、代码编译、高并发运算、GPU 算力调度全部在远端云服务器完成,彻底摆脱对本地电脑硬件的依赖。

核心优势专门适配 Windows 学习者:

  1. 零环境配置:不用安装虚拟机、不用装 WSL2、不用折腾 Linux 系统,Windows 打开浏览器即可直接使用完整服务器版 Linux 环境,开箱即用。
  2. 不占用本地 GPU、CPU 资源:高并发计算、AI 推理、大规模程序运行全部由云端算力承担,本地 Windows 电脑仅负责界面展示,低配电脑也能流畅跑重型高并发任务。
  3. 原生适配 Linux 高并发场景:云端环境为服务器并发、算力任务优化,没有虚拟化损耗,完美复刻企业线上 Linux 服务环境,学习效果和企业开发完全对齐。

四、注册使用

链接

Cloud Studio - 新一代AI应用学习社区人工智能实训与学习平台,边学边练的系统化AI课程, 即开即用的丰富模板,提供免费GPU。是为教师, 学生, 开发者打造的新一代AI应用学习社区。https://cloudstudio.net/https://cloudstudio.net/

注册之后点击头像

在概览里面每日签到领取机时,计时是我们每天可以使用的时间额度

点击应用管理

创建应用

选择ubuntu创建

  1. 界面分成三块:
  • 📁左侧:文件树,看到代码文件 main.cpp,相当于 Linux 里面的文件夹
  • 📖中间:文档 README,教你怎么编译 C++ 代码
  • ⌨️右上角「终端」:就是 Linux 黑命令行窗口,可以敲 Linux 命令。

我们就在终端学习Linux指令

五、Linux 指令

下面是一份完整的 Linux 核心笔记,覆盖目录结构、基础指令、权限、网络、进程、软件安装、SSH、Jupyter 和 Vim 编辑器,适配零基础自学、期末备考、面试复习以及 CodeBuddy 云端 Linux 环境。

1. Linux 核心目录结构(无盘符、一切皆文件)

Linux 没有 Windows 盘符(C/D 盘),所有文件都从 / 根目录开始:

  • /:根目录,所有文件的最顶层
  • /boot:系统启动目录,存放内核、启动文件
  • /etc:所有软件配置文件目录
    • /etc/apt/sources.list:apt 软件镜像源配置文件
    • /etc/passwd:系统用户信息
    • /etc/group:系统用户组信息
  • /root:root 管理员专属家目录
  • /home:普通用户家目录,例如 /home/zzy
  • /lib:系统依赖库文件
  • /opt:第三方软件安装存放目录
  • /proc:进程目录,一切皆文件,一个进程对应一个文件
  • /var:软件工作目录,存放日志、运行数据
  • /tmp:临时文件目录,重启自动清空
  • /bin/usr/bin/usr/local/bin:普通用户可执行指令
  • /sbin/usr/sbin/usr/local/sbin:管理员专属可执行指令

2. 基础核心指令

路径查看与切换

# 查看当前所在绝对路径
pwd
切换目录
cd ./        # 进入当前目录(无变化)
cd ../       # 返回上一级目录
cd ~         # 回到当前用户家目录
cd -         # 回到上一次所在目录

ls 文件查看与权限识别

ls           # 查看当前目录文件
ls -l        # 列表详细展示(权限、类型、大小、时间)
ls -h        # 人性化显示文件大小
ls -a        # 显示所有文件,包含 . 开头隐藏文件
ls -alh      # 组合常用参数

ls -l 首字符含义:

  • -:普通文件
  • d:文件夹目录
  • l:软连接(快捷方式)

文件/文件夹 创建、删除、移动、复制

# 创建
mkdir 文件夹名           # 创建空文件夹
mkdir -p a/b/c          # 递归创建多级目录
touch 文件名             # 创建空文件
删除
rmdir 空文件夹名         # 仅删除空文件夹
rm 文件名                # 删除文件
rm -rf 文件夹名          # 强制删除非空文件夹/文件(常用)
复制
cp 源文件 目标路径/               # 复制不改名
cp 源文件 目标路径/新文件名       # 复制并改名
cp -r 源文件夹 目标路径/         # 复制非空文件夹
剪切/移动
mv 源文件 目标路径/               # 移动不改名
mv 源文件 目标路径/新文件名       # 移动并改名/重命名

软硬链接

# 硬链接
ln 源文件 新文件
# 特点:不支持文件夹、同步修改、删源文件不影响链接文件
软链接(快捷方式)
ln -s 源文件 新文件
特点:支持文件夹、体积极小、同步修改、删源文件链接失效

文件内容查看与统计

wc -l 文件名   # 统计行数
wc -w 文件名   # 统计单词数
wc -m 文件名   # 统计字符数
cat 文件名            # 查看完整文件
head -n 10 文件名     # 查看前10行
tail -n 10 文件名     # 查看末尾10行
tail -f 文件名        # 实时监听日志(高频开发)
less/more 文件名      # 分页查看:空格翻页、回车换行、q退出

重定向与管道、过滤

# 重定向
ls -al / > test.txt    # 覆盖写入文件
ls -al / >> test.txt   # 追加写入文件
管道 | :左边输出作为右边输入
cat test.txt | more
grep 过滤关键字
cat test.txt | grep -n 关键字

压缩与解压

# tar 归档打包
tar -cvf 打包名.tar 源文件   # 创建打包
tar -tvf 打包名.tar          # 查看打包内容
tar -xvf 打包名.tar          # 解包
gzip 压缩解压(会删除原文件)
gzip -r 打包名.tar           # 压缩为 tar.gz
gzip -d 打包名.tar.gz        # 解压
zip 压缩解压
zip -r test.zip 文件夹/文件  # 压缩
unzip test.zip               # 解压

3. 用户与用户组管理

# 创建用户
useradd -m 用户名 -s /bin/bash  # 创建用户+自动建家目录+指定终端
useradd -g 组名 用户名          # 指定所属用户组
删除用户
userdel -r 用户名               # 删除用户+清空家目录
设置密码
passwd        # 修改root密码
passwd 用户名 # 修改指定用户密码
切换用户
su            # 切换root
su 用户名     # 切换普通用户
exit          # 退出当前用户/终端
用户组操作
groupadd 组名
groupdel 组名

4. 权限管理 chmod(必考)

9 位权限分为三组:当前用户(u)、所属组(g)、其他用户(o)。权限标识:r 可读(4)、w 可写(2)、x 可执行(1)、- 无权限(0)。目录有 x 才能 cd 进入,文件有 x 才能运行。

# 字母方式修改权限
chmod g+w 文件名    # 给组用户增加写权限
chmod g=rx 文件名   # 组用户权限重置为读+执行
数字方式修改权限(最常用)
chmod 777 文件名    # 所有用户最高权限
chmod 750 文件名    # 所有者全部权限,组只读执行,其他无权限
chmod 000 文件名    # 无任何权限

5. 系统、网络、进程信息

# 系统信息
uname -a        # 查看系统内核
lscpu           # 查看CPU信息
free -h         # 查看内存
df -h           # 查看磁盘
网络信息
ip address      # 查看本机IP
ping 网址       # 测试网络连通
netstat -tulnp  # 查看端口占用、监听服务
curl 网址       # 网页请求
wget 网址       # 下载文件
进程管理
ps -ef | grep 进程名  # 筛选指定进程
kill -9 PID           # 强制杀死进程(解决卡死)

6. 软件安装与服务管理(apt / service / systemctl)

# apt 软件管理
apt update              # 更新镜像源
apt install 软件名      # 安装软件
apt uninstall 软件名    # 卸载软件
服务启停(ssh、nginx等通用)
service ssh start       # 启动服务
service ssh stop        # 关闭服务
service ssh restart     # 重启服务
service ssh status      # 查看服务状态
systemctl status 服务名 # 查看服务状态

7. SSH 远程连接与 SCP 传输

# 安装ssh服务
sudo apt install openssh-server
远程连接Linux
ssh 用户名@公网IP
SCP 远程文件传输
scp 本地文件 用户名@IP:./        # 本地传远程
scp -r 本地文件夹 用户名@IP:./   # 传文件夹
scp 用户名@IP:./远程文件 ./       # 远程拉取到本地
scp -r 用户名@IP:./远程文件夹 ./

8. Jupyter 网页开发环境

pip install jupyter
jupyter notebook --allow-root --ip=0.0.0.0 --port=8899

功能:网页交互式开发,支持代码、文档、图表、笔记。

9. Vim 编辑器全套操作(重点)

普通模式(默认进入)

光标移动:h 左、j 下、k 上、l 右。

  • gg:跳到文件开头
  • G:跳到文件末尾
  • M:跳到屏幕中间
  • :行号:跳转到指定行

复制粘贴删除:

  • yy / n yy:复制一行/多行
  • p:粘贴
  • dd:删除整行
  • x:删除单个字符
  • D:删除光标后所有内容
  • d0:删除光标前所有内容
  • u:撤销
  • Ctrl+r:重做

插入模式(编辑文本)

  • i:光标前插入
  • I:行首插入
  • a:光标后插入
  • A:行末插入
  • o:下方新建一行插入
  • O:上方新建一行插入
  • ESC:退回普通模式

命令模式(底部冒号)

:q        # 正常退出
:wq       # 保存并退出
:q!       # 强制退出不保存
:set nu   # 显示行号
:set nonu # 隐藏行号
/关键字   # 向下搜索
?关键字   # 向上搜索
n/N       # 切换搜索结果

Logo

openEuler 是由开放原子开源基金会孵化的全场景开源操作系统项目,面向数字基础设施四大核心场景(服务器、云计算、边缘计算、嵌入式),全面支持 ARM、x86、RISC-V、loongArch、PowerPC、SW-64 等多样性计算架构

更多推荐