[Linux服务器] Linux到底是个啥?干什么?怎么干?

185 0
Honkers 4 天前 来自手机 | 显示全部楼层 |阅读模式

一、到底什么是 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. 基础核心指令

路径查看与切换

  1. # 查看当前所在绝对路径
  2. pwd
  3. 切换目录
  4. cd ./ # 进入当前目录(无变化)
  5. cd ../ # 返回上一级目录
  6. cd ~ # 回到当前用户家目录
  7. cd - # 回到上一次所在目录
复制代码

ls 文件查看与权限识别

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

ls -l 首字符含义:

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

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

  1. # 创建
  2. mkdir 文件夹名 # 创建空文件夹
  3. mkdir -p a/b/c # 递归创建多级目录
  4. touch 文件名 # 创建空文件
  5. 删除
  6. rmdir 空文件夹名 # 仅删除空文件夹
  7. rm 文件名 # 删除文件
  8. rm -rf 文件夹名 # 强制删除非空文件夹/文件(常用)
  9. 复制
  10. cp 源文件 目标路径/ # 复制不改名
  11. cp 源文件 目标路径/新文件名 # 复制并改名
  12. cp -r 源文件夹 目标路径/ # 复制非空文件夹
  13. 剪切/移动
  14. mv 源文件 目标路径/ # 移动不改名
  15. mv 源文件 目标路径/新文件名 # 移动并改名/重命名
复制代码

软硬链接

  1. # 硬链接
  2. ln 源文件 新文件
  3. # 特点:不支持文件夹、同步修改、删源文件不影响链接文件
  4. 软链接(快捷方式)
  5. ln -s 源文件 新文件
  6. 特点:支持文件夹、体积极小、同步修改、删源文件链接失效
复制代码

文件内容查看与统计

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

重定向与管道、过滤

  1. # 重定向
  2. ls -al / > test.txt # 覆盖写入文件
  3. ls -al / >> test.txt # 追加写入文件
  4. 管道 | :左边输出作为右边输入
  5. cat test.txt | more
  6. grep 过滤关键字
  7. cat test.txt | grep -n 关键字
复制代码

压缩与解压

  1. # tar 归档打包
  2. tar -cvf 打包名.tar 源文件 # 创建打包
  3. tar -tvf 打包名.tar # 查看打包内容
  4. tar -xvf 打包名.tar # 解包
  5. gzip 压缩解压(会删除原文件)
  6. gzip -r 打包名.tar # 压缩为 tar.gz
  7. gzip -d 打包名.tar.gz # 解压
  8. zip 压缩解压
  9. zip -r test.zip 文件夹/文件 # 压缩
  10. unzip test.zip # 解压
复制代码

3. 用户与用户组管理

  1. # 创建用户
  2. useradd -m 用户名 -s /bin/bash # 创建用户+自动建家目录+指定终端
  3. useradd -g 组名 用户名 # 指定所属用户组
  4. 删除用户
  5. userdel -r 用户名 # 删除用户+清空家目录
  6. 设置密码
  7. passwd # 修改root密码
  8. passwd 用户名 # 修改指定用户密码
  9. 切换用户
  10. su # 切换root
  11. su 用户名 # 切换普通用户
  12. exit # 退出当前用户/终端
  13. 用户组操作
  14. groupadd 组名
  15. groupdel 组名
复制代码

4. 权限管理 chmod(必考)

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

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

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

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

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

  1. # apt 软件管理
  2. apt update # 更新镜像源
  3. apt install 软件名 # 安装软件
  4. apt uninstall 软件名 # 卸载软件
  5. 服务启停(ssh、nginx等通用)
  6. service ssh start # 启动服务
  7. service ssh stop # 关闭服务
  8. service ssh restart # 重启服务
  9. service ssh status # 查看服务状态
  10. systemctl status 服务名 # 查看服务状态
复制代码

7. SSH 远程连接与 SCP 传输

  1. # 安装ssh服务
  2. sudo apt install openssh-server
  3. 远程连接Linux
  4. ssh 用户名@公网IP
  5. SCP 远程文件传输
  6. scp 本地文件 用户名@IP:./ # 本地传远程
  7. scp -r 本地文件夹 用户名@IP:./ # 传文件夹
  8. scp 用户名@IP:./远程文件 ./ # 远程拉取到本地
  9. scp -r 用户名@IP:./远程文件夹 ./
复制代码

8. Jupyter 网页开发环境

  1. pip install jupyter
  2. 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:退回普通模式

命令模式(底部冒号)

  1. :q # 正常退出
  2. :wq # 保存并退出
  3. :q! # 强制退出不保存
  4. :set nu # 显示行号
  5. :set nonu # 隐藏行号
  6. /关键字 # 向下搜索
  7. ?关键字 # 向上搜索
  8. n/N # 切换搜索结果
复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2026 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行