Linux
本文章是在B站的尚课听的,但是由于版本较老,而且是以centOS学习Linux,由于CentOS在10天后就不再更新,被抛弃了,痛定思痛,及时停课。但是又不想浪费笔记,前来保存一下。
文章目录
- Linux
- 前言
- 章节概述
- 入门篇
- Linux是什么
- Linux的诞生
- git的诞生(2005)
- gitHub的诞生(2008)
- GNU/Linux(1985)
- GPL(1989)
- BSD协议(FreeBSD)(MacOS前身)
- GPL和BSD的不同受众
- Linux的发行版
- Linux VS Windows
前言
- 与Linux相关的岗位
运维工程师相关的:系统运维,应用运维,DBA
开发工程师相关的:内核/驱动开发,软件开发,嵌入式开发
架构师
一些比较大的方向:
- Web应用
- 数据库
- 大数据
- 云计算
- 物联网
高级程序员必备技能
章节概述
-
入门篇1-2
-
Linux概述
-
Linux安装
-
-
基础篇3-6
- 文件与目录结构
- VI/VIM编辑器
- 网络配置
- 系统管理
- 远程登陆
-
实操篇7 (实战性很强,有大量常用命令玩转Linux)
- 文件目录类
- 时间日期类
- 用户管理类
- 文件权限类
- 磁盘分区类
- 进程线程类
-
扩展篇8-9
- 软件包管理
- 克隆虚拟机
- Shell编程(构建Shell脚本,运维)
本课程基于CentOS 7
入门篇
Linux是什么
-
Linux是一个操作系统(简称OS)
是一个直接操作计算机底层硬件的软件,也是一个最底层的软件。和windows,macOS一样,都是操作系统
Linux的诞生
- Linux之父——利纳斯·托瓦兹(Linus Torvalds)
中学阶段就熟练掌握了汇编语言,上大学时自己手搓Linux操作系统。
他在上大学时,对当时的Unix操作系统非常感兴趣,但是Unix不开放。Minix是Unix的变种,Minix是开放的,然后利纳斯就自己研究Minix,后来想完善Minix。因为写的太多了,已经算是有雏形的操作系统了,所以干脆自己写了一个操作系统。结合的自己的名字Linus和已知的Unix。推出了Linux0.01版本。并公开系统自己的源代码(开源)。
-
Unix 一切操作系统的起始 1970年
-
Unix 来源于贝尔实验室 Multics项目经验
-
Unix 一开始是汇编语言,太难了。开发了B语言,一种解释型语言,失败了。再次开发推出new B语言,对Unix操作系统进行重构。new B不太简洁,就替换成了C。也就是C语言的诞生
-
C语言是一种最接近计算机底层的高级语言
-
-
Minix 一位教授为了教学,借鉴Unix的设计思想,推出的免费操作系统
- 因为Unix是商业性质的操作系统,售价不菲且不开源。
- 这个教授就借鉴Unix免费的接口,然后自己完善了一下,操作系统能用就行。开源了。
- 但是性能不好,有很多缺陷,也删减了一些对教学无关的接口,利纳斯就自己完善了Minix,继而推出了Linux0.01。
git的诞生(2005)
随着Linux的传播,由一个人设计操作系统变成了一堆人,容易出事。顺带着就开发了一个管理软件版本的工具
gitHub的诞生(2008)
全世界最大的源代码集散地,协作式源代码托管网站。
GNU/Linux(1985)
- 来源:自由软件运动
- 基于Linux操作系统的内核,GNU的操作系统,还有一堆免费软件
由“自由软件”之父Richard发布的操作系统。希望能在购买软件的时候,软件开源。防止有病毒镶嵌。
GNU Not Unix 不是Unix,但是兼容Unix。
上面这个图的意思,就是Linux实际上是GNU计划里面的操作系统内核,不是一个独立的系统。日常使用的Linux实际上是需要包上操作系统的GNU/Linux。
大部分的App各种软件都是建立在外围应用层上的
GPL(1989)
GPL是GNU的合法协议,也就是软件发布的时候,要遵守这个协议,不能随意发布。
协议要求:用过带协议软件的源代码,就必须也开源。开源的同时也要遵守GPL协议。
BSD协议(FreeBSD)(MacOS前身)
可以用免费的源代码,自己修改后不用开源,自己投入商业也没事。
GPL和BSD的不同受众
GPL跟倾向于用户,BSD倾向于软件开发的公司。
Linux的发行版
分为商业公司维护的商业版(收费的),还有开源社区维护的免费版。
-
RedHat(红帽)系类——不注重桌面维护,侧重于高性能(服务器首选)
-
RedHat收费版
- RedHat Enterprise Linux(RHEL)
-
免费版红帽
- Fedora 收费版的实验版本是免费的,不太稳定
- CentOS 基于收费版去除有版权的部分的重构版本,比较滞后,稳定(作为小企业服务器首选)(国内主流)
-
-
debian系类,完全按照GNU协议
- ubuntu,基于debian,最新软件包,不稳定。对桌面有优化(自己使用比较好,性能差)。(国内主流)
- Linux mint 基于Ubuntu,桌面优化成早期的windows。更像是苹果系统。
- ubuntu,基于debian,最新软件包,不稳定。对桌面有优化(自己使用比较好,性能差)。(国内主流)
-
suse系类,德国公司,服务于欧洲,桌面系统华丽(KDE实现,不稳定,但是好看)
- 企业版 SEL
- 社区版 openSUSE,基于稳定的SEL版本,也是滞后。国内不太流行。
-
gentoo Linux 最强悍的高性能版本,安装复杂,小白走开
-
archlinux 轻量灵活,对新手不太好。
- 对新手友好的版本 manjaro
-
Android 基于Linux内核,谷歌运营
-
鸿蒙系统
因为以后还是要进厂的,为了方便以后就业,所以选择CentOS
Linux VS Windows
Linux主要是开源免费
Windows主要面向用户使用体验