<Linux基础第10集>复习前面内容

环境

  • WSL1 : 不是真正的Linux系统,只是把Linux命令翻译为Windows能理解执行的命令,只是"模拟Linux的环境"
  • WSL2(Windows System for Linux 2) : WSL2 的 Linux 内核是原生的、功能几乎完整的,但它的运行载体是 Windows 的轻量虚拟化层,并非独立的硬件环境
  • CMD : Windows中基础的命令行工具
  • PowerShell : Windows中比CMD更加强大的命令行工具
  • Windows Terminal : 终端模拟器,能同时运行多个终端设备

Linux命令怎么被执行

  • 1 预处理 : 解析 去重 替换
  • 2 判断类型 : Shell会通过type命令的逻辑,判断是内置命令/外部命令/函数
    内置命令 : Shell自身集成的命令,无需查找,直接执行
    外部命令 : 由独立的可执行文件
    函数 : 用户自定义的Shell函数,直接执行
  • 3 查找可执行文件(仅外部命令需要) : Shell在PATH环境变量记录的路径中顺序查找,找到与命令名一致的二进制可执行文件(找到一个就停止)
  • 4 创建子进程,执行命令 : Shell本身是一个用户态进程,不会直接执行命令,而是通过内核系统调用创建子进程,让子进程执行命令
    外部命令:fork创建子进程后,通过exec系统调用,将子进程的程序替换为步骤 4 找到的二进制可执行文件,由子进程执行该文件,内核负责调度 CPU / 内存 / 磁盘等资源完成实际操
    内置命令:无需创建子进程,由 Shell 进程自身直接执行(因为内置命令是 Shell 的一部分,无独立可执行文件,创建子进程无意义)
  • 5 返回执行结果,回收子进程(外部命令)

总结 : 终端是界面,Shell是命令解释器,内核是实际执行者

命令执行的核心 : Shell先预处理和判断命令类型,内置命令自身直接执行,外部命令在$PATH中查找可执行文件后创建子进程,最终由内核调度资源完成操作,结果返回到终端

子网掩码

子网掩码的作用就是<确定一个IP的网络位主机位 >

网络位一样代表在同一个网段(若两个IP的网络位相同,不需要网关,直接通信,否则需要把数据先发送给网关)

主机位用来表示一个网段中的不同主机

apt(advanced package tool)

  • apt update # 刷新本地软件包索引数据库,同步镜像源的最新软件信息(可装包,新版本,依赖关系),仅仅是更新索引,不下载,不安装,不升级
  • apt install 包名 # 从镜像源下载并安装指定软件包,自动下载软件包本体+所有依赖包,并自动解决依赖问题
  • apt remove 包名 # 仅仅删除软件包本体,保留所有配置文件
  • apt purge 包名 # 删除软件包本体+所有配置文件
  • apt autoremove # 清除无用的依赖包
  • apt upgrade # 将系统中所有已经安装的软件包,更新到本地索引中记录的最新版本
  • apt search 关键词 # 在本地软件包索引中,搜索所有可安装的软件包
  • apt show 包名 # 查看指定软件包的下详细信息
  • apt list --installed # 列出系统中所有已经安装的软件包
  • apt install --only-upgrade 包名 # 更新系统中单个软件包

apt install 包名 的执行过程

  • apt 首先解析命令的包名,检查本地索引数据库中是否存在该包的记录
  • 全自动解析依赖关系
  • 生成安装列表,弹出用户确认提示
  • 从镜像源下载所有待安装包
  • 校验包的完整性和安全性
  • 调用dpkg更具执行实际安装
  • 执行软件包的配置脚本
  • 清理临时文件,返回安装结果

which whereis type 命令

  • type命令查找命令的类型,别名/内置/外置命令
  • which查找命令的可执行文件(只取第一个)
  • whereis查找命令的所有关联文件(所有可执行文件,帮助手册文件,源码文件)

lsattr chattr

lsattr file01.txt

chattr +a file01.txt

top

系统资源监控

bash 复制代码
# -p PID # 只显示PID的进程信息
# -d 时间 # 设置刷新时间
相关推荐
senijusene1 小时前
Linux软件编程: Linux 操作系统基础与shell脚本
linux·运维·chrome
郝学胜-神的一滴1 小时前
超越Spring的Summer(一): PackageScanner 类实现原理详解
java·服务器·开发语言·后端·spring·软件构建
乾元1 小时前
身份与访问:行为生物识别(按键习惯、移动轨迹)的 AI 建模
运维·网络·人工智能·深度学习·安全·自动化·安全架构
ghostwritten1 小时前
春节前夕,运维的「年关」:用 Kubeowler 给集群做一次「年终体检」
运维·云原生·kubernetes
予枫的编程笔记1 小时前
【Linux进阶篇】Linux后台运行避坑指南:nohup、& 用法及Systemd守护进程实操
linux·进程管理·linux运维·nohup·systemctl·ps命令·kill命令
code monkey.2 小时前
【Linux之旅】Linux 进程间通信(IPC)全解析:从管道到共享内存,吃透进程协作核心
linux·c++·ipc
匆匆那年9672 小时前
llamafactory推理消除模型的随机性
linux·服务器·学习·ubuntu
杜子不疼.2 小时前
远程软件大战再升级:2026年2月三大远程控制软件深度横评,安全功能成新焦点
服务器·网络·安全
好好学习天天向上~~2 小时前
5_Linux学习总结_vim
linux·学习·vim
馨谙2 小时前
Ansible模块化Playbook管理:静态导入与动态包含详解
运维·ansible