- 博客(26)
- 收藏
- 关注
原创 Docker存储原理
Docker的镜像通过分层机制构 建,每个镜像层都是一个只读的模板,记录了所需的文件系统和配置。CGroup(Control Group 控制组)是内核功能,用于限制、记录和隔离进程组的 CPU、内存、磁盘 I/O 等资源的使用,主要的 CGroup 子系统有 cpu、blkio、device、freezer、memory。UnionFS(联合文件系统),允许将多个不同的文件系统或目录(称为分支)合并成一个单一的、虚拟的文件系统视图,UnionFS 在资源利用、系统维护、数据管理等方面有着重要的作用。
2026-05-14 22:08:27
64
原创 Docker原理
(1)容器=CGroup+Namespaces+Rootfs+容器引擎任何一组进程都是容器化的/proc/PID/cgroup 保存了进程所在的控制组/proc/PID/status 保存了进程的控制信息/proc/PID/ns 保存了进程的命名空间(2)容器运行时实现容器生命周期管理的工具(给容器提供资源的)容器运行时分为低层(Low-Level)运行时和高层(High-Level)运行时。低层运行时负责调整资源限制、安全限制和命名空间,并启动一组受限的进程。典型代表是 runC。
2026-05-13 19:34:09
342
原创 运行 容器
举例:在 MariaDB 镜像中,mysql 用户必须拥有 /var/lib/mysql 目录,打算挂载到容器中的目录,必须具有 mysql 作为用户和组所有者(或 mysql 用户的 UID/GID,如果主机上没有安装 MariaDB)无根容器更安全,但有一些限制。(3)容器化应用通过 docker 引擎共享主机的操作系统,节省的磁盘内存 CPU,轻小快,容器只打包他的应用和库。对仅使用单个容器且无需扩展的小型部署,可以在容器上创建要挂载的目录,映射到容器主机上创建的持久存储。容器镜像是创建容器的蓝图。
2026-05-11 19:00:00
15
原创 管理网络安全
nftables 数据包分类框架基于netfilter 框架而构建,可将防火墙规则应用到网络流量。在 RHEL9 中,nftables 是系统防火墙核心,取代了已弃用的 iptables 框架firewall-cmd是firewalld的客户端几乎所有命令都作用于 runtime 配置,当指定选项时除外如果指定了 --permanent(修改配置文件),还须通过运行firewall-cmd --reload 命令来激活设置,它将读取当前的永久配置并将其作为新的 runtime 配置来应用。
2026-05-10 19:30:00
44
原创 访问网络附加存储
(1)准备物理设备:使用 parted、gdisk 或 fdisk 创建新分区,在 LVM 分区上,始终将分区类型设置为 Linux LVM;对于 MBR 分区,使用 0x8e。如有必要,使用 partprobe 向内核注册新分区(2)创建物理卷:使用 pvcreate 将分区标记为物理卷,pvcreate 命令会将物理卷分成若干固定大小的物理区块 PE,如 4 MiB(3)创建卷组:使用vgcreate将一个或多个物理卷结合为一个卷组(4)创建逻辑卷:使用lvcreate。
2026-05-08 20:48:16
172
原创 管理基本存储
(1)磁盘分区是将硬盘驱动器划分为多个逻辑存储单元,这些单元称为分区MBR分区:默认的是DOS诞生自 1982 年的 MBR 分区方案在的系统上最多支持 4 个主分区,通过扩展分区和逻辑分区,最多创建 15 个分区。分区大小数据以 32 位值存储(4GiB),最大磁盘和分区大小为 2 TiB。2 TiB 磁盘和分区大小限制是 MBR 的局限。因此 MBR 方案已被 GUID 分区表 (GPT) 分区方案取代。
2026-04-24 16:30:00
295
原创 管理SELinux安全性
(1)SElinux可允许或拒绝访问文件和其他资源,且精准度比用户权限大幅提高SELinux 由若干组策略组成,准确声明了对于应用使用的每个可执行文件、配置文件和数据文件,哪些操作和访问是被允许的。这被称为 targeted policy。策略声明了各个程序、文件和网络端口的预定义label。
2026-04-23 18:06:52
385
原创 virtual-guest/tuned.conf :虚拟机客户端的调优配置文件
做任何操作,要在程序运行期间要对磁盘文件的数据,需要把这些数据读到内存里面去,改完之后,写进内存里面去。这个块和磁盘文件不同-->>dirty大量的用户在磁盘上读取文件以后读到那个缓冲区里面,它到磁盘写的时候它是统一写的(写的时候你要你是要请求总线控制权的你写个十兆的东西和你写一兆的东西,对计算机来说,它调度的过程完全是一样的)当vm.dirty_ratio=30;周期拉长了,对i/o的请求就降低了脏页比例变大 → 内存能攒更多写入数据刷盘次数变少 → 单次刷盘更大、更连续→。
2026-04-22 09:23:23
281
原创 分析和存储日志
如果没有可用的网络连接,chronyd 将计算 RTC 的时钟漂移,并记录在 /etc/chrony.conf。默认情况下,它将优先级为 notice 的消息发送给 user 类型的设备 (user.notice),除非通过 -p 选项另有指定。日志给它拷贝到其他磁盘上去,这样的它空间就腾出来了。若要向 rsyslog 服务发送消息并记录在 /var/log/boot.log 日志文件中。空间被占满轮转时,重命名日志文件(添加时间戳),并创建新的日志文件轮转若干次(),丢弃最旧的日志文件,
2026-04-20 17:21:00
309
原创 调度未来任务 归档和传输文件
(1)计划好运行的命令被称为任务或作业(task or job)at 软件包包含atd 守护进程,和一组命令(at、atq 等)。在默认的 RHEL 安装过程中,将自动安装并启用 atd 守护进程root 及普通用户可以使用 at 命令创建计划任务,atd 守护进程提供 a-z 共 26个队列,按字母排序,越后面的队列优先级越at创建的“作业”是一个,它会在指定时间由 atd守护进程启动。当它被启动时,会创建一个(或者一组进程组成的作业)。但这个“at作业”的生命周期是由atd。
2026-04-19 21:32:29
202
原创 提高命令行运行效率
(1)脚本第一行以开头脚本必须是可执行权限,chmod 添加775(其他用户不加w权限)(2)可以将脚本放在shell的PATH环境变量列出的目录中,即可输入脚本名来运行不在环境变量里面 ./ mysql_check.sh(3)对特殊字符加引号,有时需要使用这些字符的字面值,而非特殊含义(4)echo 命令可以显示任意文本/bin/bash>&2。
2026-04-16 20:21:02
285
原创 Linux文件系统
(1)ll -i 显示索引节点(B树的叶子节点),所有的叶子节点表示一个文件,非叶子节点是一个目录。(2)RHEL中,xfs作为默认的本地文件系统。文件系统本质上是B树结构,用于管理文件和目录。
2026-04-15 21:50:34
1537
原创 安装和更新软件包
(1)(全称 Red Hat Package Manager)是一个在 Linux 发行版中广泛使用的软件包管理系统。你可以把它理解为一个“软件管家”,专门用来在电脑上安装、卸载、更新和管理以.rpm格式打包的软件(2)每个 rpm 软件包包含 3 部分内容安装的文件元数据:如 name、version、release 和 arch;软件包的摘要和描述;依赖关系;授权许可信息;软件包更改日志安装、更新或删除软件包时可能运行的脚本红帽使用GPG密钥对 RPM 软件包进行数字签名。
2026-04-14 21:01:52
173
原创 管理配置网络
应用:应用程序,常见应用包括 SSH、HTTPS、NFS 或 CIFS、SMTP 等传输:TCP 和 UDP + 端口,/etc/services 文件中可以找到常用和已注册的端口列表。数据包在网络上通过 socket (IP+端口) 进行传输,每个数据包具有一个源 socket 和目标 socket。此信息可以在监控和过滤时使用:Internet,或 network 层将数据从源到目的传输,IPv4 和 IPv6 是 Internet 层协议,路由器在其间连接网络链路。
2026-04-13 21:21:15
395
原创 配置和保护SSH
(1)OpenSSH为Liunx提供了Secure Shell 和 SSH 协议(2)ssh root@servera "touch 1"-----> 在其他机器上执行命令(3)SSH通过公钥加密方式保持通信安全。在客户端登录以前,服务器会向其发送公钥副本,用于设置通信渠道的安全加密,并验证客户端服务器。用户连接服务器时,会检查客户机本地或者中是否含有服务器公钥,并从服务器获得公钥进行匹配,以验证服务器的身份。
2026-04-12 20:36:32
444
原创 控制服务和守护进程
并行化功能(同时启动多个服务),可提高系统的启动速度按需启动守护进程,而不需要单独的服务自动服务依赖关系管理,可以防止 timeouts。例如,只有在网络可用时,依赖网络的服务才会尝试启动利用 Linux cgroups 追踪相关进程资源占用。
2026-04-09 10:14:49
1034
原创 进程状态和生命周期 控制作业
进程:当前进程(parent)复制自己的地址空间(Fork)来创建一个新的(子)进程结构,每个(子)进程具有PID。eg: 在shell里面执行一个ls命令,ls是一个程序,ls是在当前shell命名空间内执行的,ls进程会在shell地址空间fork出一套地址空间出来。一执行就退出了。不管父进程有多少子进程,cpu每次只能执行一个指令。一个进程执行子进程,父进程进入休眠状态。
2026-04-08 17:09:21
692
原创 文件权限的理解 /etc/login.defs文件的作用 umask作用
用户是和组的成员。用户是和组的成员。用户是和组的成员。用户是和组的成员。在linux系统中实现以上内容1.创建以上组2.创建文件3.创建用户并添加权限用户的组 ≠ 文件的组:这是一个的属性。比如“张三”这个人,他可以同时是“财务部”和“技术部”的成员。这是写在/etc/group里的关系。:这是一个的标签。每个文件只能有一个“所属组”标签。这个标签决定了对这个文件拥有什么权限。如上:哪个文件属于consultant1组,只有app1.log;
2026-04-07 17:08:01
342
原创 对文件的访问权限
(1)X 对文件的影响是可以执行文件,对目录的影响是能不能cd(但还是需要读权限才能列出里面的文件),用户的权限覆盖组的权限,组的权限覆盖其他权限。对目录:文件的删除只能由文件的所有者删除(防止文件被误删)chmod 命令 who:u,g,o,a(全部) what: +,-,= which :r,w,x。unmask是一个八进制位的掩码,用于清除由该进程创建的新文件和目录的权限。(比如只想要文件的所有者执行,其他的如组内用户就算有执行权限也不能执行)(3)更改目录和文件的用户和组的所有权。
2026-04-04 19:01:24
238
原创 如何配置sudo权限 管理用户和组 用户密码
sudo权限是使普通用户临时获得root权限(1)给单个用户开全部的sudo权限i.编辑/etc/sudoers配置文件(看文件是否有写权限,没有的话先添加写权限)ii.在文件中加入 用户名 ALL=(ALL)ALL(2)给一个用户组开sudo权限i.编辑/etc/sudoers配置文件ii.在文件中加入 %组名 ALL=(ALL)ALL(3)配置免密sudo(4)最简单的方法:将用户直接加到wheel组,系统默认wheel组就是sudo组。
2026-04-03 19:19:06
63
原创 重定向 变量 用户和组 su和su - 切换用户的区别 sudo命令
sbin/nologin : 指的是该用户执行指令时由/sbin/nologin这个解释执行的。11.sudo 把普通用户的权限临时提升为root权限,sudo需要普通用户输入自己的密码进行验证,前提是这个用户得有sudo权限,通过sudo运行的命令会在/var/log/secure中记录日志。/etc/bashrc:任何用户启动一个shell的时候起作用———要对所有用户的登录shell起作用,修改/etc/bashrc文件。8.用户的定义放在 /etc/passwd中,其值记录他的主组。
2026-04-02 22:03:24
199
原创 shell命令-history用法 命令行管理文件 硬链接和软链接的理解
但重新登录后仍然会有记录,原因是其在系统中有保存,保存在 .bash_history中,想要删除彻底可以使用 cat /dev/null > /.bash_history 将空设备重定向到这个文件中,再使用 history -c 清除内存的命令。例如:当前工作目录为/tmp ,主目录为 /home/user ,使用cd命令会返回其主目录。6.软连接:符号链接,相当于快捷方式,其在B+树上没有对应的叶子节点。一般情况就ok了,但是会有审计记录,不可能一点痕迹不留。软连接的悬空:原始文件删了,就悬空了。
2026-04-01 17:36:26
51
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅