一.
Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
Linux的由来:
Multics->Unics->Unix->Xenix
Unix->Minix->Linux
Linux:只是内核,没有库,用glebc,gec移植
Linux版本:0.1,1.0,2.0,2.2,2.4,2.6,3.0,3.7
Linux的基本原则:
1.由目的单一的小程序组成;组合小程序完成复杂任务
2.一切皆文件;
3.尽量避免捕获用户接口(避免与用户交互)
4.配置文件保存为纯文本格式
二.
运维发展史:
1. 运维 1.0 —— 初始化
这个时候的运维是一个通称,负责从机房、服务器选型,软硬件初始化,服务上下线,配置监控,盯监控等,运维和开发之间没有太明确的分工,基本是遇到什么问题解决什么问题。
2. 运维 2.0 —— 专业化
分工开始明确,通用运维的非专业性问题开始变的严重,这时候业务无关的事情已经从量变到质变,任意一个方向的问题都已经不再是会配置就能解决的了。
3. 运维 3.0 —— 工具化
运维工作是离不开辅助工具的,但一般运维都是被需求赶着走,找各种开源或自己应急写的脚本工具来辅助日常运维工作。
4. 运维 4.0 —— 平台化
这个阶段是公司的运维业务基本趋于稳定(主要指运维业务,不一定是公司业务),团队划分和工具爆发的学习、沟通成为瓶颈,运维对一整套解决方案的需求变得非常强烈。
5. 运维 5.0 —— 云化
在传统互联网的领域,基本上在 4.0 这个阶段运维就算是做到维护状态了。但是大家又开始重新思考在互联网下,一个项目,运维的成分要有多大。
6. 运维 6.0 —— 智能化
当基础设施固定下来,运维模式也最终会固定下来,这些模式会把包括可用性、扩容等场景的运维方案包含进来,平滑的把开发加入 运维架构中。
三.
前端总线:FSB
北桥(离CPU近):高速总线控制器,连接南桥
南桥:低速总线控制器
四.
HZ:频率,单位时间内某个事件所发生的周期数
缓存小于内存,二级缓存比一级缓存慢,先到二级缓存再到一级缓存
寄存器可以与CPU以相同的功率工作
程序:指令+数据
五.
CPU架构:精简指令集(RISC),复杂指令集(CISC)
硬件架构:ARM x86 x64 安腾 alpha UltraSparc Power
M68000,M86K PowerPC
操作系统:
内核功能:进程管理 内存管理 文件系统 网络功能 硬件驱动 安全机制
六.
shell:实现交互
GUI:图形用户界面
CLI:命令行界面
GUI类型:
Gnome:C开发
KDE:C++开发
XFace:简洁的适合用于嵌入式平台轻量级的桌面系统
CLI类型:
sh bash csh zsh ksh tcsh
命令界面快于图形界面
七.
windows好看 Linux智慧
比尔盖茨“偷走”乔布斯的系统,研究出Windows,引用vms改进Windows
八.
FreeBSD专注运行于PC机上(苹果操作系统的核心)
OpenBSD专注于安全
NetBSD专注于服务
开放源代码:自由获取,自由修改,自由学习
九.
Linux的基本原则:
1.由目的单一的小程序组成;组合小程序完成复杂任务
2.一切皆文件;
3.尽量避免捕获用户接口(避免与用户交互)
4.配置文件保存为纯文本格式
十.
CLI接口:
命令提示符:prompt,bash(shell)
#:root
$:普通用户
命令:
命令格式:
命令 选项(修正命令的执行方式)参数
选项:
短选项:-
多个选项可以组合:-a -b= -ab
长选项:--
多个选项不能组合
参数:命令的作用对象
十一.
虚拟终端(terminal):Ctrl+Alt+(F1-F6)
# su [-1] 用户名
完全切换:# su -1 用户名
半切换 # su 用户名
十二.
# passwd
密码复杂性规则:
1.使用4种类别字符中至少3种
2.足够长,大于7位
3.使用随机字符串
4.定期更换
5.循环周期足够大