Linux学习路线

news/2025/3/20 16:47:33/文章来源:https://www.cnblogs.com/I-believe-u/p/18783381

Linux 学习路线

Linux 学习路线 by 程序员鱼皮

💂 + 💻 = 👴🏽

建议先观看视频入门:https://www.bilibili.com/video/BV1ev411G7VE/

为什么学 Linux?

相比于 Windows,Linux 免费、开源、安全、灵活、稳定、便于开发,所以更受企业青睐,甚至 90% 以上 的企业应用都是用 Linux 服务器部署的。

无论是前端、后端、算法、测试、运维等计算机相关岗位的同学,都建议学习下 Linux,大有裨益。

学习境界

首先,Linux 入门很简单,但想学的透彻难上加难!

因此,在学习之前要明确目标。

可以 Linux 的学习分为几种境界:

  1. 明劲,就是了解 Linux 的基本概念,会敲常用命令来应对工作。对于大多数想从事开发和运维岗位的同学,学到这就足够找到工作了。
  2. 暗劲,又分为两种境界,能理解 Linux 尤其是其内核的设计思想,为小圆满;能将其思想应用到系统的架构设计中,为大圆满。暗劲境界的高手,冲击大厂、做架构师、从事底层开发,都不成问题。
  3. 化劲,可谓出神入化,不仅熟知 Linux 的使用、思想和细节,更能推陈出新,自主创造新的系统。

当然,一般情况下,会用就够了,想进大厂最好也学习一些内核的设计思想。找到工作后,是否要深入学习完全取决于你自己。

大纲

鱼皮 - Linux 学习路线

路线

Linux 基础知识

  • 发展历史
  • ⭐ 特点和优势
  • 应用场景
  • ⭐ 常见 Linux 系统版本(推荐 CentOS 7+)
    • ⭐ CentOS
    • ⭐ Ubuntu
    • Debian
    • Fedora
  • 何为开源?

Linux 环境

  • 搭建方式

    • ⭐ 虚拟机
    • ⭐ 云服务器
    • 在线工具
    • WSL
    • Docker 容器
  • 远程连接

    • ⭐ SSH
    • 连接工具
      • ⭐ XShell
      • ⭐ MobaXterm
      • SecureCRT
      • Putty

Linux 常用命令

此处只列举命令名称,命令的具体用法可直接在手册中(https://www.linuxcool.com/)查询

系统信息

  • uname 查看系统信息
  • hostname 查看主机名
  • cat /proc/cpuinfo 查看 CPU 信息
  • lsmod 查看已加载的系统模块
  • top 查看系统使用情况
  • df 查看磁盘使用情况
  • fdisk 查看磁盘分区
  • du 查看目录使用情况
  • iostat 查看 I / O 使用情况
  • free 显示系统内存情况
  • env 查看环境变量
  • uptime 查看系统运行时间、用户数、负载

系统操作

  • shutdown 关机
  • reboot 重启
  • mount 挂载设备
  • umount 卸载设备

用户相关

  • su 切换用户
  • sudo 以管理员身份执行
  • who 查看当前用户名
  • ssh 远程连接
  • logout 注销
  • useradd 创建用户
  • userdel 删除用户
  • usermod 修改用户
  • groupadd 创建用户组
  • groupdel 删除用户组
  • groupmod 修改用户组
  • passwd 修改密码
  • last 显示用户或终端的登录情况

文件相关

  • cd 切换目录
  • ls 查看目录列表
  • tree 打印目录树
  • mkdir 创建目录
  • rm 删除目录
  • touch 新建文件
  • cp 复制文件
  • mv 移动文件
  • ln 创建文件链接
  • find 搜索文件
  • locate 定位文件
  • whereis 查看可执行文件路径
  • which 在 PATH 指定的路径中,搜索某系统命令的位置
  • chmod 设置目录权限
  • cat / more / less 查看文件
  • tac 倒序查看文件
  • head / tail 查看文件开头 / 结尾
  • paste 合并文件
  • zip / tar / gzip 压缩文件
  • unzip / tar / gunzip 解压文件
  • grep / sed / awk 文本处理
  • vim 文本编辑

程序相关

  • crontab 计划任务
  • nohup 后台运行程序
  • jobs 查看系统任务
  • ps 查看进程
  • kill 杀死进程
  • rpm / yum / apt / apt-get / dpkg 软件包管理
  • service / systemctl 服务管理

网络相关

  • ifconfig 查看网络属性
  • netstat 查看网络状态
  • iptables 查看 iptables 规则

其他

  • date 显示系统时间

  • cal 显示日历

  • history 显示与操作历史

  • help 帮助

  • alias 别名

用户管理

  • 用户
  • 用户组
  • ACL 权限管理
  • 用户切换
  • 管理员

文件管理

  • 文件操作
    • 创建
    • 修改
    • 复制
    • 移动
    • 删除
  • 文件浏览
  • 文件搜索
  • 文件权限
  • 软硬链接
  • 压缩 / 解压

文本操作

  • 正则表达式
  • grep
  • sed
  • awk

VIM 编辑器

  • 基本操作

  • 模式

  • 快捷键

  • VIM 定制

  • 插件增强

送张 VIM 键盘图:

磁盘管理

  • 使用情况查询
  • 磁盘分区
  • 挂载

驱动管理

  • 驱动加载
  • 驱动更新
  • 网卡
  • 显卡

进程管理

  • 启动进程
  • 杀死进程
  • 查看进程
  • 前台 / 后台任务
  • 进程监控

计划任务

  • crond 服务
  • crontab 命令

网络管理

  • IP
  • 端口
  • 主机名
  • hosts
  • 网络配置
  • 网络状态
  • 网络监控

系统管理

  • 系统设置

    • 日期时间
    • 语言
    • 字符集
  • 系统服务

  • 环境变量

  • 日志

  • 系统关机 / 重启

  • 数据备份与恢复

服务管理

  • 服务查看
  • 启动服务
  • 禁用服务
  • 删除服务
  • 开机自启

软件管理

  • 软件包管理器

    • ⭐ rpm
    • ⭐ yum
    • apt
    • apt-get
    • dpkg
  • 软件安装

  • 软件更新

  • 软件卸载

  • 源码安装

常用软件 / 服务搭建

  • HTTP

  • Mail

  • NFS

  • DNS

  • FTP

  • mysql

  • LVS + Keepalived

  • Apache

  • Nginx

  • Redis

  • 日志服务

Shell 脚本编程

  • 默认变量

  • 运算符

  • 条件

  • 循环

  • 执行

  • 函数

    • 系统函数
    • 自定义函数
  • 规范

  • 调试方法

  • 管道

  • I/O 重定向

Linux 启动过程

  • BIOS 启动引导
  • 引导加载程序
  • 内核加载
  • 系统初始化(init)
  • 运行级别
  • 启动内核
  • 执行初始化脚本
  • 用户登录

Linux 内核

  • 内核的组成
  • 目录结构
  • 版本
  • 模块
  • 编译
  • 裁剪

具体路线图参考:

内核知识体系 by 0Voice

第三方工具

  • Ansible

  • Webmin

  • 宝塔 Linux

岗位

  • 后端开发(Java / Go / C++)

  • 底层开发(C / C++)

  • 运维开发

  • 大数据

  • 云计算

  • 自动化运维

  • 嵌入式开发

  • 网络工程师

学习建议

多动手实践,建议自己购买一台云服务器,并且在本地搭建 Linux 虚拟机环境。

一定要自己从 0 开始手敲命令安装软件、部署服务,熟悉整个项目的上线流程。

每个命令至少要跟着敲一遍,了解它们的作用,并通过自然地练习,熟悉常用的 Linux 命令。

记不住没关系,用文档查就行了。

先会用,再理解。

时间不多的话,可以通过面试题来了解一些 Linux 设计思想,而不是直接去深入学习内核,虽说学会了的确大有裨益,但性价比不高。

资源

  • 视频

    • ⭐ 2021 韩顺平 一周学会Linux:https://www.bilibili.com/video/BV1Sv411r7vd(基于 CentOS 7.6 版本较新,视频长度刚刚好,也比较完整)
    • 【千锋】Linux 云计算基础视频教程 650 集入门:https://www.bilibili.com/video/BV1pz4y1D73n(很全面,适合时间足够、想认真学的同学)
    • 【狂神说Java】Linux 教程 - 阿里云真实环境学习:https://www.bilibili.com/video/BV187411y7hF(算是个小的入门教程吧,时间足够的话还是推荐看更完整的)
    • 细说Linux - 从入门到精通:https://study.163.com/course/courseMain.htm?courseId=983014(感觉有点啰嗦,作为备用吧)
    • 玩转Vim 从放弃到爱不释手:https://www.imooc.com/learn/1129(好评很多)
    • 阿里云 Linux 运维学习路线:https://edu.aliyun.com/roadmap/linux
  • 书籍

    • 《鸟哥的 Linux 私房菜 —— 基础篇》:http://cn.linux.vbird.org/linux_basic/linux_basic.php(经典)
    • 《深入理解 LINUX 内核》:https://book.douban.com/subject/1767120/
    • 《深入Linux内核架构》:https://book.douban.com/subject/4843567/
    • 《Linux内核完全剖析》:https://book.douban.com/subject/3229243/
    • 《Linux内核设计与实现(原书第3版)》:https://book.douban.com/subject/6097773/
  • 文档

    • Linux 教程(菜鸟教程):https://www.runoob.com/linux/linux-tutorial.html

    • Linux 教程(W3CSchool):https://www.w3cschool.cn/linux/

    • Linux 工具快速教程:https://linuxtools-rst.readthedocs.io(基础、工具进阶、工具参考)

  • 合集

    • Linux内核学习资料:https://github.com/0voice/linux_kernel_wiki
    • GitHub Linux 专区:https://github.com/topics/linux(很多好项目)
    • GitHub Linux 合集:https://github.com/inputsh/awesome-linux(Linux 系列技术)
    • StackOverflow:https://stackoverflow.com/questions/tagged/linux(解决问题必备)
    • 掘金 Linux 专区:https://juejin.cn/tag/Linux(技术文章)
  • 实战

    • ⭐ 蓝桥云课 Linux 基础入门:https://www.lanqiao.cn/courses/1(强烈推荐)
    • 腾讯云动手实验室:https://cloud.tencent.com/developer/labs
    • 阿里云体验实验室:https://developer.aliyun.com/adc/labs/
    • 阿里云知行实验室:https://start.aliyun.com/
    • 华为云沙箱实验室:https://lab.huaweicloud.com/
  • 社区(国内倒的差不多了)

    • Linux 中国:https://linux.cn/
    • 开源中国:https://www.oschina.net/(综合的开源社区)
    • 红帽官网:https://www.redhat.com/zh
  • 工具

    • DistroTest 在线操作系统测试:https://distrotest.net
    • ⭐ Linux 命令搜索:https://wangchujiang.com/linux-command
    • Linux 命令大全手册:https://man.linuxde.net/
    • Linux 命令大全手册:https://www.linuxcool.com/
    • Linux 命令示例:http://linux-commands-examples.com/
    • 宝塔 Linux 面板:https://www.bt.cn/
    • 在线 Shell 脚本检查:https://www.shellcheck.net
  • 面试题

    • 牛客网 Linux 专项练习:https://www.nowcoder.com/intelligentTest
    • 牛客网 Linux 面试题:https://www.nowcoder.com/search?query=linux面试题&type=question
    • Linux 常见面试题整理:https://zhuanlan.zhihu.com/p/376749877
    • Linux 常见面试题整理:https://github.com/0voice/linux_kernel_wiki#-面试题

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/902077.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【无问AI网络安全大模型】协助渗透测试挖掘sql注入

在日常工作中发现了一个登录框,话不多说,搞搞看看存不存在SQL注入。输入用户名密码开始抓包,可以看出用户名密码都进行了加密这个时候输入单引号,发现页面报错。 输入双引号,页面恢复正常这个时候,可以判断这个系统存在注入的可能非常大, 手工使用了报错注入、盲注都不行…

20242934 2024-2025-2 《网络攻防实践》第四周作业

1.实践内容 在网络攻防实验环境中完成TCP/IP协议栈重点协议的攻击实验,包括ARP缓存欺骗攻击、ICMP重定向攻击、SYN Flood攻击、TCP RST攻击、TCP会话劫持攻击。 ARP缓存欺骗攻击:通过伪造ARP消息,欺骗目标设备将攻击者的MAC地址与合法IP地址关联,从而截获或篡改网络数据,造…

ConcurrentHashMap和锁

为什么HashMap数组的长度是2的指数次幂? 因为HashMap的底层是数组+链表+红黑树,在插入元素时,需要通过索引获得插入元素的位置,计算索引的方法是使用哈希函数,将元素的哈希值与数组长度取模,当数组长度是2的指数次幂时,取模操作相当于对元素的哈希值进行二进制位与运算(…

麒麟系统V10系统安全加固

一、安装clamav杀毒软件 1.在clamav官网下载:https://www.clamav.net/downloads 也可以在github上下载早一点的版本:https://github.com/Cisco-Talos/clamav/releases 我这里安装clamav-1.1.2rpm -ivh clamav-1.1.2.linux.x86_64.rpm2.下载病毒库: https://database.clamav.…

孤独摇滚 K-ON wallpapers

双厨狂喜 孤独摇滚K-ON

医疗器械行业IPD流程设计:6个关键问题与解决方案

在当今竞争激烈的医疗器械行业,产品的创新与快速上市能力是企业生存和发展的关键。IPD(集成产品开发)流程作为一种先进的产品开发管理模式,正逐渐成为医疗器械企业提升竞争力的重要手段。然而,在实际应用中,许多企业在 IPD 流程设计方面面临着诸多挑战。本文将深入探讨医…

KUKA库卡KR360_R2830机械臂维修减速机卡住了

库卡机器人维修减速机卡死,作为一种常见的机械故障,其成因往往复杂多样,通常可以归结为长时间的高强度工作、外部异物的侵入、安装过程中的疏忽以及润滑系统的失效等多种因素。以下是对这一故障常见原因的详尽阐述,以及一些实用的维修建议:库卡机器人减速机卡死现象的根源…

【原厂】点阵LED数码管驱动/内置显示RAM为8x16位-LED显示驱动芯片VK1640 SOP28

产品品牌:永嘉微电/VINKA 产品型号:VK1640 封装形式:SOP28 概述 VK1640是一种数码管或点阵LED驱动控制专用芯片,内部集成有数据锁存器、LED 驱 动等电路。SEG脚接LED阳极,GRID脚接LED阴极,可支持8SEGx16GRID的点阵LED显示。 适用于小型LED显示屏驱动。采用SOP28的封装形式…

portainer学习笔记1

Portainer是一款非常好用的docker容器管理平台,部署也很easy。# 创建portainer数据卷 docker volume create portainer_data # 拉取镜像启动portainer docker run -d -p 8000:8000 -p 9443:9443 \ --name portainer --restart=always \ -v /var/run/docker.sock:/var/run/dock…

安装Python保姆级教程(Pycharm破解码+解释器安装)

一、进入Python官网首页,下载最新的Python版本 https://www.python.org/downloads/ 选择最新的Python3.10.5,下载64位的版本 二、下载完成后,进行安装 1.双击Python-3.10.5-amd64.exe 3.出现此页面表示安装成功 三、运行Python 1.Win+R打开控制台,输入Python 此时出现了一…

dify知识库

一、概述 知识库功能将 RAG 管线上的各环节可视化,提供了一套简单易用的用户界面来方便应用构建者管理个人或者团队的知识库,并能够快速集成至 AI 应用中。 开发者可以将企业内部文档、FAQ、规范信息等内容上传至知识库进行结构化处理,供后续 LLM 查询。 相比于 AI 大模型内…

DevOps 平台选型对比:功能与价值剖析

在数字化转型加速的当下,高效的软件开发流程成为企业竞争力的关键。DevOps 平台作为整合开发与运维的重要工具,其选型至关重要。Gitee DevOps 是一款在行业内表现出色的平台,能为企业提供从代码管理到部署上线的全流程支持。通过对其功能、价格、用户体验等多方面与市场竞品…