Linux基础 | 青训营笔记

49 阅读4分钟

Linux基础

学习Linux价值

  1. Linux是现代化应用程序交付的首选平台,无论是部署在裸机、虚拟化还是容器化环境
  2. 公司内部服务(TCE、FaaS、SCM)统一使用Debian Linux系统
  3. 熟悉Linux基础指令,熟练运维前端常用服务(Nginx,Node.js)
  4. 加深对操作系统概念和实现的理解,夯实基础知识

计算机硬件

  • 计算机五大基本单元:控制器、运算器、存储器单元、输入单元、输出单元

计算机操作系统

  • 操作系统(OS):管理和控制计算机系统中的硬件和软件资源,用于在用户与系统硬件之间传递信息(承上启下)
  • 操作系统启动流程 屏幕截图 2023-05-07 151647.png

Linux系统概览

  • Linux发展简史
  • Linux版本
  1. 内核版本
  2. 发行版本
  3. Linux内核+常用软件=Linux发行版本 微信图片_20230507152230.jpg
  • 查看Linux系统内核版本(返回内核版本信息)
  1. 法1:uname -a
  2. 法2:cat/proc/version
  3. cat /etc/os-release(查看是哪个发行版本)
  • Linux系统应用领域
  1. IT服务器(操作系统、虚拟化和云计算)
  2. 嵌入式和智能设备
  3. 个人办公桌面
  4. 学术研究和软件研发

Linux系统结构

  • Linux基本组成:内核(操作系统底层能力)、shell(命令解释器)、文件系统、应用程序
  • Linux体系结构 主要分为内核空间和用户空间(内核空间拥有更高权限,内核是资源管理程序,应用程序在用户空间)

进程管理

  • 进程管理 进程是正在执行的一个程序或任务;有自己的地址空间,占用一定的系统资源;一个CPU核同一时间只能运行一个进程;进程由它的进程ID(PID)和它的父进程的进程(PPID)唯一识别
  • 查看进程信息
ps -ef 1 grep nginx
root   93824   1016:42?   00:00:00 nginx: master process /usr/ sbin/ nginx

#查看某个进程
top -p 93824
PID USER  PR NI  VIRT  RES   SHR S %CPU %MEM  TIME+ COMMAND
1 root  20  0  32632  5248  4572  S  0.0  0.0  0:00.02 nginx 

#关闭指定的进程
kill 93824
#全部进程动态实时视图
top 
  • 进程调度:操作系统按照某种策略或规则选择进程占用CPU进行运行的过程(同时运行多个程序)
  • 进程调度原则
  1. 一个CPU核同一时间只能运行一个进程
  2. 每个进程有近乎相等的执行时间
  3. 对于逻辑CPU而言进程调度使用轮询的方式执行,当轮询完成则回到第一个进程反复
  4. 进程执行消耗时间和进程量成正比
  • 进程的系统调用 内核空间:系统内核运行的空间 用户空间:应用程序运行的空间

文件系统

  • 文件系统 负责管理持久化数据的子系统,负责把用户的文件存到磁盘硬件中(Linux中一切皆文件) Linux文件系统采用树状的目录结构,最上层是根目录
  • 虚拟文件系统VFS(实现对用户统一调用接口) 对应用层提供一个标准的文件操作接口 对文件系统提供一个标准的文件接入接口
  • 查看文件系统类型
df -T
Filesystem Type Size Used Avail Use% Mounted on
/dev/sda2 ext4 19G 12G 6.3G 65%/
tmpfs tmpfs 491M 0 491M 0% /dev/shm
/dev/sdal ext4 19oM 65M 116M 36% /boot
# mount 命令是挂载文件系统用的,不带任何参数运行,会打印包含文件系统类型在内的磁盘分区的信息
mount
/ dev / sda2 on / tupe ext4 (rw)
proc on /proc type proc (rw)
  • 文件基本操作
mkdir demo #创建文件夹
mv demo /home #移动demo文件夹到/home
rm -r demo#删除demo文件夹
touch file.txt#创建空文件
cp file.txt file_bak .txt#复制文件
  • 文件读取流程 屏幕截图 2023-05-07 155848.png

用户权限

  • 用户账户 普通用户账户:在系统中进行普通作业 超级用户账户:在系统中对普通用户和整个系统进行管理
  • 用户组 标准组:可以容纳多个用户 私有组:只有用户自己
  • 文件权限
  1. 所有者:文件所有者
  2. 所在组:文件的所有者所在的组
  3. 其他人:除文件所有者及所在组外的其他人 每个用户对于文件都有不同权限,包括读(R)、写(W)、执行(X)
  • 查看用户信息
  • 用户权限操作

Linux软件包管理

  • 软件包:通常指一个应用程序,可以是一个GUI应用程序、命令行工具或(其他软件程序需要的)软件库
  • 软件包管理 底层工具:主要用来处理安装和删除软件包文件等任务,DPKG,RPM 上层工具:主要用于数据的搜索任务和依赖解析任务,APT,YUM,DNF
  • 软件包管理工具 RPM:为Red hat操作系统的包管理系统 DPKG:为Debian操作系统的包管理系统