公司动态
Linux 入门体系梳理:后端开发者必备 Linux 基础(1)
仅python是不够的 不学习linux的开发者不是一个合格的开发者不管是要做后端开发、运维方向从业者Linux 都是绕不开的核心操作系统。几乎所有线上业务、服务器环境都基于 Linux 体系运行。本文结合部分知识脉络从零梳理开发者必须掌握的 Linux 基础框架覆盖系统认知、环境获取、目录结构、核心命令、用户权限、远程连接等内容适合新手系统学习。也可作为日常速查手册目录一、认识 Linux 操作系统如何获取一套 Linux 运行环境二、Linux 文件系统与标准目录结构可执行文件目录区分普通用户 /root 管理员三、Linux 核心基础命令1. 路径跳转与目录查看2. 文件与文件夹管理3. 软硬链接快捷方式4. 文件查看、统计、分页阅读5. 重定向、管道、过滤 grep四、压缩与归档五、用户与用户组管理六、SSH 远程连接与服务管理1. SSH 远程连接部署2. 服务启停两种管理方式七、写给开发者的学习建议一、认识 Linux 操作系统Linux 是专业开发者主流使用的开源操作系统整体分为两大层级内核版与发行版。内核负责操作系统和硬件直接交互是系统底层核心。发行版 Linux 内核 配套生态软件。 市面上主流发行版Ubuntu、CentOS、RedHat、Debian。核心特点底层内核一致差异仅在于预装软件、包管理工具基础命令通用。Linux 三大核心优势开源免费、稳定安全、基于命令行操作。如何获取一套 Linux 运行环境日常开发中一共有 4 种主流方案物理机双系统电脑直接安装 WindowsLinux缺点无法同时运行两套系统切换需要重启。本地虚拟机Windows 系统安装虚拟机软件虚拟出多套硬件同时运行多个 Linux 系统适合本地学习。云服务器阿里云、腾讯云、华为云等厂商云主机线上真实 Linux 环境最贴近生产环境项目部署首选。在线开发环境Cloud Studio腾讯云 Cloud Studio内置 Linux 环境。 ⚠️ 注意仅适合练习基础命令不能等同于正式 Linux 服务器使用平台有时长限制闲置建议关闭系统节省时长。二、Linux 文件系统与标准目录结构Linux 和 Windows 最大区别没有盘符一切皆文件根目录/是所有文件起点。 下面是开发最常用目录作用表格目录作用说明/boot存放系统启动文件、内核程序/etc软件配置文件目录/etc/apt/sources.list是 apt 软件镜像源配置/rootroot 超级管理员家目录/home普通用户家目录例如/home/zzy/lib程序依赖库文件/opt第三方软件默认安装存放位置/proc进程虚拟目录每一个进程对应一个文件体现 “一切皆文件” 思想/var软件工作目录存放运行日志、缓存数据/tmp临时文件目录系统会自动清理可执行文件目录区分普通用户 /root 管理员普通用户可执行命令/bin、/usr/bin、/usr/local/bin仅 root 管理员可执行命令/sbin、/usr/sbin、/usr/local/sbin三、Linux 核心基础命令1. 路径跳转与目录查看bashpwd # 查看当前所在路径 ls # 列出目录文件 ls -l # 列表形式展示详情首字符 -文件 d文件夹 ls -h # 人性化显示文件大小 ls -a # 显示所有文件包含隐藏文件以.开头 cd / # 进入根目录 cd .. # 进入上一级目录 cd ~ # 回到当前用户家目录 cd - # 切换回上一次所在路径2. 文件与文件夹管理bashmkdir test # 创建文件夹 mkdir -p a/b/c # 递归创建多级目录 touch demo.txt # 创建空文件 rm test.txt # 删除文件 rmdir empty_dir # 删除空文件夹 rm -rf dir # 强制删除非空文件夹高危命令谨慎使用 # 复制 cp cp demo.txt /opt/ # 复制不改名 cp demo.txt /opt/new_demo.txt # 复制并重命名 cp -r folder /opt/ # 复制文件夹必须加-r # 移动/重命名 mv mv demo.txt /opt/ # 剪切移动 mv demo.txt /opt/new_demo.txt # 移动并重命名3. 软硬链接快捷方式bashln 源文件 hard_link # 硬链接 ln -s 源文件 soft_link # 软链接符号链接硬链接不能链接文件夹多个入口指向同一个文件删除其中一个文件依旧存在。软链接类似 Windows 快捷方式可以链接文件夹源文件删除后链接失效。4. 文件查看、统计、分页阅读bashwc -l test.txt # 统计行数 wc -w test.txt # 统计单词数 wc -m test.txt # 统计字符数 cat test.txt # 一次性读取整个文件 head -n 10 test.txt # 查看前10行 tail -n 10 test.txt # 查看末尾10行日志排查高频 less test.txt # 分页浏览空格翻页、回车单行滚动、q退出 more test.txt5. 重定向、管道、过滤 grepbash# 重定向 ls -al info.txt # 覆盖写入文件 ls -al info.txt # 追加写入文件 # 管道 | 左边输出作为右边命令输入 cat info.txt | grep -n msg # 过滤包含msg的内容显示行号四、压缩与归档Linux 归档压缩是运维日常高频操作重点掌握tar、zip、gzip。bash# tar 参数c创建、t查看、x解压、v打印详情、f指定归档文件f必须写在最后 tar -cf 归档文件.tar 要归档的文件1 文件2 文件3.. 归档 -c 创建 -t查看 -x解开 -v 查看信息 -f归档名 放在最后 tar -xf 归档文件.tar 解包 # gzip 压缩tar包tar.gz gzip -r 归档文件.tar 将 .tar 文件压缩 gzip -d 归档文件.tar.gz 将 归档文件.tar.gz 解压为 归档文件.tar # zip 工具 zip -r 文件.zip 文件 压缩文件 zip -r 目录.zip 目录 压缩目录 unzip 文件.zip/目录.zip 解压注意gzip 压缩默认会删除原始文件tar 归档操作不会破坏原有文件。五、用户与用户组管理Linux 是多用户操作系统生产环境严禁直接使用 root 日常操作需要创建普通用户分配权限。 核心配置文件/etc/passwd保存所有用户信息/etc/group保存用户组信息bash# 创建用户 useradd -m username # -m自动创建家目录 useradd -m username -s /bin/bash # 指定登录shell useradd -m username -g temp # 指定归属用户组 userdel -r username # 删除用户同时删除家目录 passwd # 修改当前root密码 passwd username # 修改指定用户密码 su username # 切换普通用户 su # 切换至root用户 exit # 退出当前用户终端 groupadd temp # 创建用户组 groupdel temp # 删除用户组六、SSH 远程连接与服务管理线上服务器几乎都通过 SSH 远程连接操作是开发者必备技能。1. SSH 远程连接部署bash# Ubuntu安装ssh服务 sudo apt install openssh-server # 连接语法 ssh 用户名服务器公网IP 自己的公网ip 可在百度输入 我的ip 或 终端输入 curl ifconfig.me 查询阿里云服务器常见问题默认禁止密码登录需要修改配置开启密码认证bashsudo nano /etc/ssh/sshd_config # 修改 PasswordAuthentication no → yes # CtrlO 保存CtrlX退出⚠️ 前提登录用户必须预先设置密码安全最佳实践生产环境优先密钥登录而非密码登录。2. 服务启停两种管理方式现代 Linux 主流使用systemctl兼容旧版service命令bash# systemctl推荐 systemctl status ssh # 查看运行状态 systemctl start ssh # 启动 systemctl stop ssh # 停止 systemctl restart ssh # 重启 # service 兼容写法 service ssh status service ssh start service ssh stop service ssh restart七、写给开发者的学习建议命令不要死记硬背理解参数含义多用多练搭建一台云服务器持续实操。建立目录思维记住 Linux 一切皆文件所有配置、进程、硬件都以文件形式访问。养成权限意识日常尽量使用普通用户非必要不使用 root避免误操作删库、删文件。优先熟悉日志排查命令tail、grep排查线上问题使用频率极高。打好基础再进阶掌握本文基础后再学习权限 chmod/chown、进程管理、防火墙、软件部署、Shell 脚本。