第二讲:LInux基础
学习Linux的价值
- Linux是现代坏应用程序交付的首选平台,无论是部署在逻辑、虚拟化还是容器化环境
- 功底内部服务(TCE、Faas、SCM)统一使用DebianLinux系统
- 熟悉Linux基础指令,熟悉韵味前端常用服务(Nginx,Node.js)
- 加深对操作系统概念和实现的理解,夯实基础知识
01计算机硬件
计算机由五大基本单元组成
- 控制器
- 运算器
- 存储器
- 输入
- 输出
02操作系统
管理和控制计算机系统中的硬件和软件资源,用于在用户与系统硬件之间传递信息
BIOS|UEFI 一段在主办上的程序,找到并运行BOOtloader,让他去运行OS
UEFI是BIOS的优化和升级版本
03Linux系统概览
版本:
内核版本
发行版本:内核版本加常用软件
查看linux系统内核版本的方法
应用领域:
- IT服务器(操作系统、虚拟化和云计算)
- 嵌入式和智能设备
- 个人办公桌面
- 学术研究与软件研发
Linux系统结构
1.基本组成
Linux系统一般有4个主要部分
-
内核:提供底层能力,文件管理,硬件管理等
-
Shell:实现管理
-
文件系统:负责把用户文件存
-
应用程序
- 2.体系结构
内核是硬件与软件之间的中间层
内核是一个资源管理程序
内核提供一组面向系统的命令
内核态,用户态
底层:文件系统,文件操作等
中间层:进程
顶层:交互
04系统结构——进程结构
- 进程是正在执行的一个程序或命令
- 进程有自己的地址空间,占用一定的系统资源
- 一个 CPU 核同一时间只能运行一个进程
- 进程由它的进程 ID (PID)和它父进程的进程 ID (PPID )唯一识别
(进程层层拉动)
查看进程信息
NI:进程优先级
top:全部进程动态事实视图
进程调度
实现同时运行多个进程
- R (TASK_RUNNING),可执行状态
- S (TASK_INTERRUPTIBLE),可中断的睡眠状态。D (TASK_UNINTERRUPTIBLE),不可中断的睡眠状态。T(TASK_STOPPED or TASK_TRACED),暂停状态或跟踪状态。Z (TASK_DEAD - EXIT_ZOMBIE),退出状态,进程成为僵尸进
- 程
- X (TASK DEAD - EXIT_DEAD),退出状态,进程即将被销毁
- 一个CPU核同一时间只能运行一个进程
- 每个进程有近乎相等的执行时间
- 对于逻辑CPU而言进程调度使用轮训方式执行,完成则回到第一个进程反复(确保优先)
- 进程执行消耗时间和进程量成正比
系统调用
内核空间和用户空间
文件系统
文件系统是操作系统中负责管理持久数据的子系统,负责吧用户的文件存到磁盘硬件中,,持久化的保存文件
不同文件类型linux都视为文件,保证操作同意
Linux文件系统是财通梳妆的目录结构,最上层是根目录
Linux在中间层用VFS打通不同文件类型,保证接口统一
查看文件系统类型:
文件读取流程
dma
用户权限
- 用户账户:普通和超级(多一个整个系统进行管理)
- 组账户:标准组(多个用户)和自由组(自己)
- 文件权限关于用户有三个概念:
- 所有者:文件的所有者
- 所在组:文件的所有者所在的组
- 其他人:除文件所有者及所在组外的其他人
- 每个用户对于文件都有不同权限,包括读 (R)、写 (w) 、执行 (X)
05Linux软件包管理
软件包:应用程序
。软件包通常指的是一个应用程序,它可以是一个 GUI 应用程序、命令行工具或(其他软件程序需要的) 软件库
。软件包管理
底层工具:主要用来处理安装和删除软件包文件等任务,DPKG,RPM上层工具: 主要用于数据的搜索任务和依赖解析任务,APT,YUM,DNF
·RPM (Red Hat Package Manager),为 Red hat 操作系统的包管理系统·DPKG (Debian package),为 Debian 操作系统的包管理系统
DEbianAPT常用命令
列出所有可更新的软件清单命令: apt update
安装指定的软件命令: apt install <package_name>
安装多个软件包: apt install <package_1> <package 2> <package_3>
更新指定的软件命令: apt update <package_name>
删除软件包命令: apt remove <package_name>
查找软件包命令: apt search <keyword>
列出所有已安装的包: apt list --installed
配置软件源
通常 Debian 系的 Linux 软件源配置文件:/etc/apt/sources.list
镜像地址:mirrors.aliyun.com//dists;查看系统…
/pool: 查看软件分支
安装
配置修改