- 博客(571)
- 收藏
- 关注
原创 [故障排除]shell-init: error retrieving current directory: getcwd: cannot access parent directories
早上同事说改了/etc/profile 后执行source出现一堆报错:由于服务器是日语的如果切换成英语就是。
2025-03-26 09:28:51
192
原创 [RH342]iscsi配置与排错
iscsi服务需要一个磁盘,我们就利用vdb上的空余磁盘建一个vdb2来作为iscsi数据存放的位置。我们发现只要任何一个网络通的节点,只要客户端配置正确就能挂载这个iscsi磁盘.可以看到iscsi的磁盘及内容未出现变化.而且这样多了一层用户名密码也更为安全.修改配置文件/etc/iscsi/initiatorname.iscsi。此时可以看到iscsi磁盘已经完成挂载,本地出现新磁盘sda。这显然是不够安全的.那么我们再上点验证.先卸载挂载并退出iscsi登录。创建backstores。
2025-03-18 13:52:22
633
原创 [漏洞修复]用yum update修openssh漏洞
将光盘作为基本镜像,这个实验就用/yum为仓库路径,如果公司内部可以是/yum/el7,/yum/el8这样来分,当然也可以根据具体版本分得更细。最近经常有朋友问Openssh 漏洞修复的问题,我也在自己的gitee仓库里更新了9.5,9.8,9.9p2多个版本的rpm包.编辑/etc/httpd/conf/httpd.conf修改以下内容,将原来的/var/www/html修改成/yum。更新,解压对应版本的包,并复制到仓库中,这里拿9.8为例,9.9一样操作就可以了。此时不要急着退出当前的窗口.
2025-03-18 11:38:43
874
原创 [漏洞修复]openssh-9.9p2 漏洞升级修复补丁
做了rhel7系列和8系列的rpm包,东西我放在了gitee仓库,需要的朋友自取。最近经常有openssh的漏洞需要修复,也经常后台问我.安装openssl 1.1.1以上版本就可以解决.如果有其他错误,可以在博客或Gitee中留言。
2025-03-14 14:43:26
362
原创 [RH342]验证已安装的软件包
RPM 软件包管理的⼀个主要优势是存储在系统的 RPM 数据库中的有⽤数据。每次安装 RPM 软件包(包括 EPEL 和第三⽅ RPM 软件包)时,RPM 数据库中都会记录软件包和事务信息。使⽤ RPM 数据库内容验证 RPM 软件包中的现有⽂件。验证已安装的软件包会将当前的⽂件属性与 RPM 数据库中存储的信息进⾏⽐较。rpm -V 命令验证指定的软件包,⽽ rpm -Va 则验证系统上安装的每个软件包。rpm 命令不会⽣成任何输出,除⾮它发现当前⽂件和 RPM 数据库之间存在差异。
2025-03-14 11:27:00
405
原创 [RH342]Linux服务器引导故障排除
这里我的磁盘是nvme0n1,根据不同硬盘总线可能会是vda或者sda等,根据自己情况进行修改.由于grub的程序在第一个磁盘的前446字节,我们破坏这部分的数据,造成grub无法正常引导。根据之前画的图,我们知道分区信息在前510个字节.破坏这部分分区信息就会丢失。这里一样,根据自己的实际情况修改成/dev/sda 或者/dev/vda。我们选择第二个kernel进入系统,发现这个kernel可以正常使用.在故障服务器的救援模式下配置ip地址,保证可以访问到备份文件的服务器。
2025-03-13 17:10:17
711
原创 [RH342] 修复LVM
重启完毕后确认分区是否挂载,文件是否可以正常访问。问题可能就发生在这次缩盘的时候。配置开机自动挂载后重启服务器。确认下问题可能出现在哪里。
2025-02-25 14:29:35
242
原创 [RH342]使⽤ auditd 进⾏系统审计
可以看到除了ls以外没有其他命令再访问或者修改这个目录了.且目录的权限不再变化。根据日志的内容,我们看到是一个python脚本进行的修改.很明显有一个service调用这个脚本,那么停止并禁用它。那么我们先找到这个文件,然后再看是什么东西运行的。再次确认下是否还有正在运行的,如果有就kill掉。那么禁用这个crontab就可以了.再确认是哪个crontab调用的.再确认是否有crontab调用它。
2025-02-25 13:40:54
220
原创 Rhel Centos环境开关机自动脚本
使用 tuned 的插件机制,好处就是隐蔽.一般不是资深的运维很难发现,当然时间长了自己也容易忘记.(详细学习的话见rh442的内容)这个比较简单,就是将脚本添加到rc.local的末尾,但值得注意的是必须给rc.local加上执行权限.由于是非标准的apache或者nginx之类的服务,需要开机执行一个脚本来启动业务.这个方法依赖相对隐蔽,但一旦被附着的服务被disabled了,那么你的这个也失效了.一台较老的服务器上面业务比较简单,提供一个简单的网站,但已经没有业务的运维人员.重启 tuned 服务。
2025-02-12 11:59:36
575
原创 [Do374]ansible-nagivator考前整理
Ansible Collections 是一种打包和分发自动化内容(如模块、插件、角色等)的方式。它们允许开发者将相关的组件组织在一起,便于管理和分发。Ansible Roles 是一种组织 Playbooks、任务、变量、文件和模板的方式,使得自动化内容更具可重用性和可维护性。角色通常用于定义特定功能或应用的配置和部署。
2025-02-10 11:44:26
923
原创 [Do374]Ansible一键搭建sftp实现用户批量增删
最近准备搞一下RHCA LV V,外加2.9之后的ansible有较大变化于是练习下Do374的课程内容.工作中也管理者几台sftp的服务器,由于sftp的目录权限比较特殊,有时候手工配置会出现一些报错需要排查.于是手写了个ansibleplay来完成一键搭建及后续的用户添加工作.
2025-01-14 12:31:47
1209
原创 服务器引导异常,Grub报错: error: ../../grub-core/fs/fshelp.c:258:file xxxx.img not found.
(如果是唯一的kernel那么也可以使用救援盘进入,但这个是一台云主机,可能会需要通过另外个云主机挂载这个启动镜像,再复制文件.然后根据快照再恢复会比较麻烦,但不复杂)非恶意,根据他的上下文分析,是由于安装配置kdump出现了某些错误,尝试解决那些错误的时候可能搜了某些错误的文档而去删除那2个文件.幸运的是,这个服务器有多个kernel.那么就尝试从其他kernel进入.运行history查看是否是人为的删除,及分析为什么要做这个操作.可以明显的看到是人为删除了2个img文件.非病毒或入侵造成的.
2025-01-13 12:02:54
1227
原创 [DO374] Ansible 配置文件
变量含义ssh端口服务器ipssh用户ssh连接类型:local,ssh,paramikko,默认sshssh 密码ssh秘钥文件路径ssh命令路径。
2025-01-10 15:24:52
1092
原创 面试题整理20----什么是蓝绿部署、灰度发布、金丝雀发布他们有什么区别?
蓝绿部署、灰度发布、金丝雀发布和滚动更新都是软件部署策略,旨在减少发布新版本时的风险,提高系统的稳定性和用户体验。
2024-12-25 10:17:57
1528
原创 面试题整理19----Metric的几种类型?分别是什么?
在Prometheus监控和度量系统中,Metric(指标)是衡量软件系统、应用程序或硬件设备性能和健康状况的关键数据点。不同的Metric类型适用于不同的监控场景和数据表现方式。每种Metric类型都有其特定的用途,选择合适的类型能够更有效地进行监控和数据分析。
2024-12-25 09:43:47
456
原创 面试题整理18----Pause容器的用途
在Kubernetes(K8s)中,Pause容器是一种特殊类型的容器,它的主要作用是充当依赖其他容器的容器,为其他容器提供一个可靠的、隔离的运行环境。
2024-12-24 08:30:07
503
原创 面试题整理17----K8s中request和limit资源限制是如何实现的
Kubernetes中的资源请求和限制是通过与容器运行时的交互来实现的,确保容器在启动时有足够的资源可用,并且在运行时不会超过设定的资源限制。这些机制有助于提高集群的稳定性和可靠性,防止资源耗尽导致的系统崩溃。
2024-12-24 08:24:44
618
原创 面试题整理16----节点NotReady可能的原因?会导致哪些问题?
在Kubernetes集群中,节点NotReady状态表示该节点当前不可用或不健康,无法接受新的工作负载或调度新的Pod。
2024-12-24 08:18:42
455
原创 面试题整理15----K8s常见的网络插件有哪些
选择哪个网络插件取决于具体的应用场景和需求。如果只需要基本的网络连接,Flannel 足够;如果需要更强大的网络策略和更好的性能,Calico 是一个不错的选择;如果对性能要求极高,Cilium 是最佳选择,但需要更高的学习成本。常见的K8s网络插件有Flannel,Calico,Cilium,Weave,Antrea,Kube-OVN等.其中Calico, Flannel, 和 Cilium较为常用.
2024-12-23 16:36:53
830
原创 面试题整理14----kube-proxy有什么作用
kube-proxy是Kubernetes集群中非常重要的组件,它确保了Service的网络可用性和负载均衡功能。,它在每个节点上运行,主要负责实现Service的网络代理和负载均衡功能。是Kubernetes集群中一个。
2024-12-23 16:21:49
442
原创 面试题整理13----deployment和statefulset区别
如果你的应用程序是无状态的,并且你希望快速、简单地部署和管理它,那么 Deployment 可能是一个更好的选择。如果你的应用程序是有状态的,并且你需要维护 Pod 的状态、网络标识和持久化存储,那么 StatefulSet 可能更适合你。当然,在实际应用中,你可能会遇到更复杂的情况,需要结合使用 Deployment 和 StatefulSet,甚至其他 Kubernetes 资源,以满足你的需求。
2024-12-23 16:13:57
691
原创 面试题整理12----K8s中Pod创建常见错误
在Kubernetes中,Pod是核心资源对象,其稳定运行至关重要。然而,Pod可能会遇到各种错误状态,影响其正常运行。
2024-12-23 16:10:49
1861
原创 面试题整理11----简述Pod创建过程
用户操作:用户通过kubectl命令行工具或API接口提交一个Pod的定义,通常是通过YAML或JSON格式的配置文件来描述Pod的详细信息,包括容器镜像、环境变量、资源需求、卷挂载等。
2024-12-20 08:31:36
473
原创 面试题整理10----k8s集群架构是什么
Kubernetes(简称K8s)是一个开源的容器编排平台,旨在自动化应用的部署、扩展和管理。它的架构设计旨在提供高可用性、可扩展性和自动化运维能力。
2024-12-20 08:26:08
611
原创 面试题整理9----谈谈对k8s的理解2
面试题整理----谈谈对k8s的理解21. Service 资源1.1 ServiceClusterIPNodePortLoadBalancerIngressExternalName1.2 Endpoints1.3 Ingress1.4 EndpointSlice1.5 IngressClass2. 配置和存储资源2.1 ConfigMap2.2 Secret2.3 PersistentVolume2.4 PersistentVolumeClaim2.5 StorageClass2.5.1 PV,PVC,S
2024-12-20 08:19:18
1302
原创 面试题整理9----谈谈对k8s的理解1
ReplicaSet:适用于需要简单副本管理的应用。Deployment:适用于需要高级部署策略的应用。DaemonSet:适用于需要在每个节点上运行的服务。:适用于有状态应用,需要稳定的网络标识和持久化存储。通过选择合适的控制器,可以更好地满足不同类型应用的需求,提高 Kubernetes 集群的灵活性和可管理性。
2024-12-19 13:59:23
1329
原创 面试题整理8----buffers与cached的区别
buffers和cached都是用于提高文件系统性能的内存缓存。buffers主要缓存文件系统的元数据,而cached主要缓存文件内容。两者共同作用,减少了磁盘 I/O 操作,提高了系统的整体性能。
2024-12-19 10:59:05
367
原创 面试题整理7----Nginx的access.log被删除在不影响应用的情况下恢复日志的写入
发送USR1 信号给nginx的主进程,让nginx重新打开新的日志文件,如果文件不存在会自动创建,并续写已经存在的文件。通过截图可以看到,日志已经开始续写,并且nginx的进程id没有发生变化,即服务没有重启,对使用中的业务也没有影响.logrotate 具体配置方法在其他的文档里有详细记录,这里我们就不在复述了.我们先模拟产生一个3.2GB的Nginx access.log。至此Nginx日志占用的空间已被释放,相关服务也没有被影响.此时我们发现文件虽然被删除了,但空间并未被释放。
2024-12-19 10:17:12
995
原创 面试题整理6----什么是进程最大数、最大线程数、进程打开的文件数,怎么调整
进程最大数是指操作系统允许同时运行的进程数量上限。这个限制通常由内核参数。通过合理调整这些参数,可以优化系统的性能和资源利用率,满足不同应用的需求。最大线程数是指单个进程可以创建的最大线程数量。控制,因为每个线程都被视为一个进程。这个调整只在当前shell会话有效。这个调整只在当前shell会话有效。是你想要设置的新限制。是你想要设置的新限制。表示对所有用户生效,表示对所有用户生效,
2024-12-19 09:05:58
287
原创 面试题整理5----进程、线程、协程区别及僵尸进程处理
特性进程线程协程资源隔离完全隔离部分共享完全共享调度方式操作系统内核操作系统内核用户态或编程语言开销较大较小极小适用场景需要隔离的任务需要并发的任务I/O密集型任务僵尸进程(Zombie Process)是已经完成执行并退出,但其进程表条目并未被删除的进程。这些进程虽然不再执行任何操作,但仍占用进程表中的一个位置。
2024-12-19 08:47:27
466
原创 面试题整理4----lvs,nginx,haproxy区别和使用场景
LVS是一个开源的负载均衡软件,由前阿里云首席科学家章文嵩博士创建。它可以将多个真实的服务器组成一个虚拟服务器,并通过负载均衡技术将客户端的请求分发到各个真实服务器上。Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。它以其稳定性、丰富的功能集和高性能而闻名。HAProxy是一款开源的高性能TCP/HTTP负载均衡器。它特别适合处理大量并发连接和基于内容的路由。特性LVSNginxHAProxy架构模式IP层负载均衡反向代理+负载均衡应用层负载均衡。
2024-12-19 08:42:48
858
原创 Redhat 10 beta安装流程步骤详细教程
暂时没找到特别好的方法永久去掉这2个,只能通过shell的方式删,每次删又很麻烦所以做成服务,每次在网络启动完毕后删除。这里有个提示,明显我们现在是做测试也知道这个是一个现行版,不会把它作为生产环境使用,那就继续安装吧。重启服务器,重启完后发现网卡已经改成eth0了,但是有enp3s0和ens160看着比较难受.内核版本默认使用了6.11,Openssh也使用了9.8已经是目前比较新的.配置服务/etc/systemd/system/eth0.service。一样,测试我们就打开了root的ssh登录。
2024-12-18 14:02:14
1408
原创 面试题整理3----nc命令的常见用法
命令可以用于读取和写入网络连接中的数据,支持TCP和UDP协议,因此广泛用于测试网络连接、调试网络服务和进行端口扫描等操作。命令的功能非常强大,它支持网络连接、数据传输、端口监听、代理等多种功能。的功能非常强大,但它的简洁性和灵活性也是它受到用户喜爱的原因之一。指定端口后,在服务端看到客户端连接过来的端口就是我们所指定的4479。启动指定端口的TCP监听,等待来自远程主机的连接。启动指定端口的UDP监听,等待来自远程主机的连接。扫描指定主机上的开放的端口,常用于端口扫描。设置连接的超时值,单位为秒。
2024-12-18 11:19:35
1253
原创 面试题整理2---Nginx 性能优化全方案
HTTP/2协议是一种新的HTTP协议,支持多路复用、头部压缩等功能,可以提高传输效率。然而在高并发、大流量的情况下,Nginx的性能可能会受到一定的影响。日志是排查问题的重要手段,但是过多的日志会导致磁盘空间不足,影响系统性能。需要注意的是,线程数并不是越大越好,因为线程之间的竞争可能会导致性能下降。需要注意的是,对于不同类型的文件,可以设置不同的缓存时间。对于代理缓存,您可以考虑增加一些更灵活的缓存策略,如缓存条件或不同状态码的缓存策略.的设置推荐为 CPU 核心数,或者是根据机器的负载情况适当调整。
2024-12-17 09:17:13
1034
原创 面试题整理1---正向代理和反向代理的含义及异同
正向代理是为客户端(用户)服务的代理,它帮助客户端向目标服务器发送请求并获取资源。客户端需要知道代理服务器的地址,并通过它访问目标服务器。反向代理是为服务器端服务的代理,它接收客户端的请求,然后将请求转发给后端的目标服务器,并将服务器的响应返回给客户端。客户端只需知道代理服务器的地址,不需要知道后端服务器的具体信息。
2024-12-16 16:15:54
695
原创 ssh 连接失败port 22: no matching key exchange method found. Their offer: diffie-hellman-group-exchange-s
由于ssh协议是使用加密方式通讯,新的openssh使用的加密格式老版本不支持.那么简单的方法就是通讯时使用低版本支持的加密方式进行通信.目标服务器是Redhat 5.8,Openssh 4.3。源服务器是Rocky8.10,Openssh 9.5。编辑~/.ssh/config。再次连接就跳出了密码进行验证。输入密码后就完成了登录验证。
2024-12-12 14:24:06
1165
原创 故障排除-------K8s挂载集群外NFS异常
常见的NFS CSI除了本文中的csi-nfs之外还有nfs-subdir-external-provisioner。证明我们的yaml是没有问题的,那么问题可能出在NFS服务端。回到nfs服务器也可以看到/nfs下对应的pvc目录被创建。在node节点上可以获取到nfs并挂载读取到nfs的内容。可我们明明(rw)了为啥没权限写入,可能问题就在这里了.在容器中创建一个文件,并在nfs服务器上可以正常读取到。可以看到目录被正常挂载到了pod的/var/www。至此K8s集群可以正常挂载集群外的NFS了。
2024-11-21 13:34:29
1155
openssh9.8 for rhel8 centos8 rokey8 rpms
2024-11-19
openssh9.8 for rhel7 centos7 rpms
2024-11-19
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人