为什么学 Linux?

相比于 Windows,Linux 免费、开源、安全、灵活、稳定、便于开发,所以更受企业青睐,甚至 90% 以上 的企业应用都是用 Linux 服务器部署的。 无论是前端、后端、算法、测试、运维等计算机相关岗位的同学,都建议学习下 Linux,大有裨益

路线

Linux 基础知识

  • 发展历史

  • ⭐ 特点和优势

  • 应用场景

  • ⭐ 常见 Linux 系统版本(推荐 CentOS 7+)

  • ⭐ CentOS

  • ⭐ Ubuntu

  • Debian

  • Fedora

Linux 环境

搭建方式

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

    远程连接

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

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 键盘图:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wwLg0IYh-1633937004471)(data:image/gif;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVQImWNgYGBgAAAABQABh6FO1AAAAABJRU5ErkJggg==)]

磁盘管理

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

驱动管理

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

进程管理

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

计划任务

  • 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 内核

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

具体路线图参考:

第三方工具

  • 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%E9%9D%A2%E8%AF%95%E9%A2%98&type=question
    • Linux 常见面试题整理:https://zhuanlan.zhihu.com/p/376749877
    • Linux 常见面试题整理:https://github.com/0voice/linux_kernel_wiki#-%E9%9D%A2%E8%AF%95%E9%A2%98

Linux 免费学习路线大全,你想要的都在这里啦(持续更新,欢迎收藏❤️关注点赞加评论)相关推荐

  1. JavaScript 编码规范大全-Eslint(持续更新,欢迎关注点赞加评论)

    JavaScript 编码规范大全(持续更新,欢迎关注点赞加评论) 文章目录 JavaScript 编码规范大全(持续更新,欢迎关注点赞加评论) 前言 0. 相关工具 1. 类型 2. 引用 3. 对 ...

  2. IT-游戏 学习资源思维导图(持续更新,欢迎关注点赞加评论)

    最近朋友的儿子刚高考完,他说对IT感兴趣,特别是游戏类的IT,而且他也有目标公司,这是很好的,所以他也选择了 计算机科学与技术作为专业.作为IT前辈的我就给他分享一点干货.确实是干货,说得我嘴都干了

  3. 免费 Python 学习资源大全,你想要都在这里啦(持续更新,欢迎收藏关注点赞加评论哦)

    视频 零基础 ⭐ 千锋教育 700 集零基础 Python 教程:https://www.bilibili.com/video/BV1R7411F7JV(非常全面,基础.web 开发.爬虫.数据分析. ...

  4. Linux内核学习路线

    [推荐阅读] 手把手教你如何编写一个Makefile文件 一文讲解,Linux内核--内存管理(建议收藏) 当Linux内存耗尽时,改如何处理! 一文看懂页面置换算法 内核学习路线 很多同学接触Lin ...

  5. Linux技术学习路线

    为什么要学习Linux? 为什么学Linux,每个人都有自己的理由: Linux是免费的不用花一分钱,能够节约大笔的成本: Linux是开源的,你可以根据自已的需要修改源代码: Linux是开放的,有 ...

  6. Linux学习路线全解,Linux操作系统学习路线

    大家都知道,在现在这个信息化飞速发展的时代,IT技术火速发展,信息的重要性,可想而知.现在,在北京当一个高级运维工程师,年薪百万已经不是梦想.当然我也想,谁不想挣大钱,开好车,住好房.下面说说自己的一 ...

  7. ARM+LINUX嵌入式学习路线

    嵌入式学习是一个循序渐进的过程,如果是希望向嵌入式软件方向发展的话,目前最常见的是嵌入式Linux方向,关注这个方向,大概分3个阶段: 1.嵌入式linux上层应用,包括QT的GUI开发 2.嵌入式l ...

  8. 为什么要学习Linux及其学习路线

    1.<Linux程序设计>- 靠它来入门,然后装一个linux体系,练习shell(party)和linuxC,把基础打牢: 2. <深入理解Linux内核>和<Linu ...

  9. 入计算机专业的师弟师妹,别再迷茫了,我整理一份CS的学习路线大全,帮你超越大部分的同学

    我上本科的时候连续三年一等奖学金,考了n个证书,考试成绩的平均分90+,以为自己很牛逼. 结果出去找工作2000块,不能再多. 因为现在本科生真的太多了,你投出去的简历基本石沉大海了. 后来我读了研后 ...

最新文章

  1. Windows 安装 pytorch3d
  2. 需求的推动力-网线啥的
  3. jQuery 侧栏菜单点击body消失
  4. 初一七年级计算机信息全册教案,初一信息技术教案全一册
  5. SAP Kyma GraphQL storage实现
  6. maven 版本号插件_测试Maven版本插件自动递增版本号
  7. c语言self用法,C/C++知识点之Self Numbers C语言 UVA640
  8. java中如何调出字体对话框_java 字体对话框
  9. 华为端口聚合命令_华为汇聚交换机链路聚合配置命令
  10. 软件设计师历年真题与解析(05-18 包括答案)
  11. 利用PPPOE认证获取路由器中宽带账号密码
  12. msdn.itellyou.cn文件类型大小统计
  13. Squid代理服务器(传统代理、透明代理)(图文详解)
  14. 卢松松博客模板php版,[Emlog模板]卢松松博客主题
  15. 嵌入式GUI LVGL『Tableview选项卡控件』介绍
  16. 简述eureka的自我保护模式? 如何配置其自我保护模式
  17. win10 安装虚拟机和乌班图
  18. 飞塔防火墙添加删除用户配置
  19. matplotlib刻度值使用科学记数法
  20. html 背景不填充,CSS之背景的填充范围

热门文章

  1. ## CSP 201312-2 ISBN号码(C语言)(100分)
  2. 目标检测——域自适应只对同源的样本有效
  3. Python解压压缩包
  4. Tensorflow结点打包和依赖控制
  5. c/c++入门教程 - 3 职工管理系统 完整代码
  6. 三元表达式三个条件判断
  7. DB2 SQL Error: SQLCODE=-803, SQLSTATE=23505, SQLERRMC=2 (转载)
  8. ios知识点扩充(1)
  9. SpringMVC 环境搭建
  10. Android中插件开发篇之----类加载器