暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【开发者的Linux运维课】001 为什么要学Linux?

姚毛毛的博客 2019-11-21
553


开发者的Linux命令课

001 为什么要学Linux?

01 什么是Linux?

Linux其实就是另一种有别于windows的操作系统。

02 为什么要学Linux命令?

因为这个操作系统基本不使用界面操作,一般用命令行干活。题外话:其实有界面系统,只是难用。

03 Linux有哪些版本?

Linux是从Unix发展过来的,它有很多儿子(发行版),常用发行版有Ubuntu(AWS——亚马逊的云——默认使用此版本)、redhat、centos、Fedora(实际不常用,但是国产操作系统一般基于此版本),其他诸如Debian、FreeBSD(mac就是这个系统演化来的)等等发行版不再一一列举,Linux的发行版本细究起来能多到让你绝望。

企业常用的Linux版本一般为redhat、centos,本系列以centos7为演示系统。

04 为什么要用Linux呢?

目前世界上大部分服务器系统都是基于Linux的。特别是云计算火了后,现在上云的服务器基本都是CentOs系统了。什么是服务器系统?例如你使用的各种App和网站,例如微信、抖音、爱奇艺、优酷、腾讯视频,它们的前后台服务全都是部署运行在这个系统上。

我们开发程序一般是在windows或mac上,但是打包之后的服务基本都是运行在Linux上的。

那为什么大家都爱用它?免费、免费、免费。重要的事说三遍。其次才是开源、稳定、安全、个性化。

那会不会有程序只能运行在windows上,不兼容Linux?嗯,所以产生了跨平台的语言和工具。例如JAVA与JDK。

05 学了Linux能干嘛呢?

升职、加薪、走上人生巅峰。开玩笑,但一定会让你的能力、眼界都有所提升。偶尔装个逼,没问题。

对于运维同学来说,Linux命令已经是必须的基础技能了。

Linux运维的三个阶段

人肉运维:学了些基本命令,能负责一些服务器的基本管理、监控、维护;例如监控日志,查看后台服务的log。接接客户电话,为什么这个系统又用不了了?

中级运维:可以对CPU、内存、硬盘、网络服务器状态监控和一些浅显的分析。

高阶运维:针对CPU超负荷、内存溢出、硬盘损坏、网络中断等各种情况进行诊断,并予以恢复。

那开发同学为什么要学Linux运维呢?嗯,实际上,普通运维人员没有开发思维是很难成为高阶运维的。高阶运维一般都是开发同学代理或者转岗过去的。

06 Linux怎么学呢?要掌握哪些技能?有什么前景呢?

低级阶段:会使用xhell这样的终端工具,然后掌握一些常用的Linux命令,可以简单的进行文件操作、查找,磁盘、内存的资源查看就够了。入门了之后,学一点shell编程,懂一点Liunx上的程序运行机制,能简单地解决一些生产故障。此外运维一般是要与数据库打交道的,所以还要再会一点SQL。当然,开发同学们就可以跳过这一步了。

中级阶段:会中间件的安装与优化,例如jdk、oracle、mysql;懂得一些系统的资源监控工具,如vmstat、pref、pidstat;懂得虚拟化的一些工具,如docker、Kubernetes;懂一点监控手段,如prometheus、grafana。

高级阶段:懂得为生产系统做故障排除、性能优化、性能测试。不光是用工具看看指标参数,而是具体懂得其中含义,可以利用工具来提升系统性能,解决疑难问题。

一般在这个阶段不光光会做一些运维的事了。可能会变成DBA、会变成性能测试专家。

或者做做运维管理,或是转运维开发、测试开发。都是不错的出路。

07 小故事

那么,这么牛逼的Linux又是谁【创造】的?

Linus Torvalds,开源世界里创世神一样的人物。顺便说一句,Git也是这哥们开发的。

觉得Minx(Mini UNIX)不好用,自己开发了个Linux。捣鼓了几个月的时间,Linus的Unix出现了:Linux。

能说什么呢?牛啤。

另外一件有趣的事,随着Linux开源社区越来越庞大,大家提交代码各种冲突,Linus觉得原先这个代码管理太不好用了,捣鼓了几周时间,自己开发了个Git。

以Git为核心技术的GitHub代码托管网站目前已经是世界上最大的开源网站。前些日子,已经是75亿美元被微软收购了。

题外话说多了,现在对Linux与Linus有点了解了吗?



文章转载自姚毛毛的博客,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论