当前位置: 首页 > news >正文

/var/lock/subsys目录的作用

总的来说,系统关闭的过程(发出关闭信号,调用服务自身的进程)中会检查/var/lock/subsys下的文件,逐一关闭每个服务,如果某一运行的服务在/var/lock/subsys下没有相应的选项。在系统关闭的时候,会像杀死普通进程一样杀死这个服务。通过察看/etc/rc.d/init.d下的脚本,可以发现每个服务自己操纵时都会去查看/var/lock/subsys下相应的服务。

[root@vm1 scripts]# ll /var/lock/subsys
total 0
-rw-r--r-- 1 root root 0 Jul 26  2023 network
[root@vm1 scripts]#

很多程序需要判断是否当前已经有一个实例在运行,这个目录就是让程序判断是否有实例运行的标志,比如说xinetd,如果存在这个文件,表示已经有xinetd在运行了,否则就是没有,当然程序里面还要有相应的判断措施来真正确定是否有实例在运行。通常与该目录配套的还有/var/run目录,用来存放对应实例的PID,如果你写脚本的话,会发现这2个目录结合起来可以很方便的判断出许多服务是否在运行,运行的相关信息等等。

 说明:有这个flag,启动脚本的一个思想。停掉的时候,再删除掉。

说明:/var/run/rpcbind*里面是pid文件。

实际上,判断是否上锁就是判断这个文件,所以文件存在与否也就隐含了是否上锁。而这个目录的内容并不能表示一定上锁了,因为很多服务在启动脚本里用touch来创建这个加锁文件,在系统结束时该脚本负责清除锁,这本身就不可靠(比如意外失败导致锁文件仍然存在),我在脚本里一般是结合PID文件(如果有PID文件的话),从PID文件里得到该实例的PID,然后用ps测试是否存在该PID,从而判断是否真正有这个实例在运行,更加稳妥的方法是用进程通讯了,不过这样的话单单靠脚本就做不到了。

http://www.lryc.cn/news/96356.html

相关文章:

  • DETR (DEtection TRansformer)基于自建数据集开发构建目标检测模型超详细教程
  • C++初阶 - 5.C/C++内存管理
  • 数学建模学习(3):综合评价类问题整体解析及分析步骤
  • 【后端面经】微服务构架 (1-5) | 限流:濒临奔溃?限流守护者拯救系统于水火之中!
  • HDFS异构存储详解
  • 《面试1v1》Kafka消息是采用Pull还是Push模式
  • Windows环境Docker安装
  • Spring 6.0官方文档示例(23): singleton类型的bean和prototype类型的bean协同工作的方法(二)
  • Docker Compose 容器编排
  • while循环
  • 从JVM指令看String对象的比较
  • python与深度学习(六):CNN和手写数字识别二
  • Linux使用教程
  • 项目名称:智能家居边缘网关项目
  • SciencePub学术 | 物联网类重点SCIEEI征稿中
  • EtherNet/IP转Modbus网关以连接AB PLC
  • mysql用户添加
  • 628. 三个数的最大乘积
  • linux驱动开发入门(学习记录)
  • SpringCloud-Alibaba之Sentinel熔断与限流
  • 深“扒”云原生高性能分布式文件系统JuiceFS
  • opencv-18 什么是色彩空间?
  • RedHat离线安装工具yum+gcc+pcre+zlib+openssl+openssh
  • Redis概述及安装、使用和管理
  • 【算法第十一天7.25】二叉树前、中、后递归、非递归遍历
  • Linux搭建Promtail + Loki + Grafana 轻量日志监控系统
  • [PyTorch][chapter 44][RNN]
  • 20230726----重返学习-vue3项目实战-知乎日报第3天-TS-简历
  • TypeScript 在前端开发中的应用实践
  • 商业密码应用安全性评估量化评估规则2023版更新点