监控怎么重启

监控怎么重启,第1张

问题一:监控硬盘机怎么重新启动 1 部分硬盘录像机带有开关功能,可以直接按。

2 可以使用监控设置里的重启功能

3 没有以上两项的直接拔电源就可以了,因为芦脊是嵌入式系统所以不用担心系统损坏。

问题二:监控设备关闭后怎么重新启动 监控设备怎么启动, 那 您是怎么关闭的呢,怎么关的就怎么开啊。

希望可以帮到您 求过

问题三:监控摄像头如何重新启动或者初始化? 模拟的直接断电在通电即可;数字的需要登录到摄像机,再进行设置或初始化。

问题四:不小心把电脑监控系统关闭了怎么重启 重启电脑

问题五:监控系统硬盘录像机如何重新启动 点击“退出”按钮,输入授权密码即可关闭DVR软件,重启系统后会自动打开DVR程序。

DVR软件设置里可以设置定时自动重启,这样可以防止死机。

问题六:监控隔5分钟自动重启是怎么回事 造成这个现象有几个原因:

第一是由于电源老化,造成供电不足,硬盘录像机的开机后会自动光机;

第二,是可能是硬盘录像机的里的硬盘故障,硬盘不停的自检,需要很大的电流,导致电源供电不足 造成不断重启;

第三,是硬盘录像机的运行环境比较恶劣,如环境通风不好,太热 问题太高等,像深圳施耐安的硬盘录像机主芯片都有过热自动关机保护的程序,防止温度过热烧坏主芯片;

第四,是主板上的IC被击穿导致的,这个需要返厂维修

基于以上原因你可以进一步检测:1.先换一个大功率的电源试下;2.再把硬盘的数据线和电源线拔下来通电测试一下;3.你把录像机打开看一下里面的风扇是睁森否工作正常(现在很多硬盘录像机为了节约成本都不放风扇,一般深圳施耐安的都会配的)如果通过以上可以解决问题就可以了,如果不行只能返厂维修了。

问题七:监控摄像头怎么重新开启 10分 关掉电脑监视屏,那只是掩耳盗铃的手法而已。

将摄像头拔电再插上。

问题八:监控自动重启怎么回事 建议你先把监控的软件删除后重新安装一下看能否解决?

如果不行那你就得考虑重新安装一下电脑系统试一下了!

这种情况一般都是产品冲突之后才会有这样的现象的……和软件有很大的关系

问题九:监控总是自动重启而且越来越频繁是怎么回事? 你好,一般按下面几个方法来排查:

留意机器重启是不是有规律性,是否是录像机系统的问题

2.检查悉哗亩录像机的电源是否供电稳定,

不接硬盘,看看录像机是否还重启,如果不接硬盘录像机不重启则可能是硬盘故障导致重启,如果不重启则可能是录像机的故障.可以直接联系售后处理一下。

可以分三步来做:

做两个简竖族单的守护进程,并能正常运行

监控进程是否在运行

启动进程

综合起来就可以了,代码如下:

被监控进程thisisatest.c(来自http://www.cnblogs.com/ringwang/p/3528093.html):

#include<unistd.h>

#include<signal.h>

#include<stdio.h>

#include<stdlib.h>

#include<sys/param.h>

#include<sys/types.h>

#include<sys/stat.h>

#include<time.h>

void init_daemon()

{

int pid

int i

pid=fork()

if(pid<0)  

  exit(1) //创建错误,退出

else if(pid>0) //父进程退出

  exit(0)

setsid()//使子进程成为组长

pid=fork()

if(pid>0)

  exit(0)//再次退出,使进程不是组长,这样进程就不会打开控制终端

else if(pid<0)  

  exit(1)

//关闭进程打开的文件句柄

for(i=0i<NOFILEi++)

  close(i)

chdir("/root/test") //改变目录

umask(0)//重设文件创建的掩码

return

}

void main()

{

  FILE *fp

  time_t t

  init_daemon()

  while(1)

  {

      sleep(60)//等待一分钟再写入

      fp=fopen("testfork2.log","a")

      if(fp>=0)

      {

          time(&宽碰t)

          fprintf(fp,"current time is:%s\n",asctime(localtime(&t))) //转换为本地时间输出

          fclose(fp)

      }

  }

  return

}

监控进程monitor.c:

#include<unistd.h>

#include<signal.h>

#include<stdio.h>

#include<stdlib.h>

#include<sys/param.h>

#include<sys/types.h>

#include<sys/stat.h>

#include<time.h>

#include<sys/wait.h>

#include<fcntl.h>

#include<limits.h>

#define BUFSZ 150

void init_daemon()

{

int pid

int i

pid=fork()

if(pid<0)

  exit(1) //创慎纤谈建错误,退出

else if(pid>0) //父进程退出

  exit(0)

setsid()//使子进程成为组长

pid=fork()

if(pid>0)

  exit(0)//再次退出,使进程不是组长,这样进程就不会打开控制终端

else if(pid<0)

  exit(1)

//关闭进程打开的文件句柄

for(i=0i<NOFILEi++)

  close(i)

chdir("/root/test") //改变目录

umask(0)//重设文件创建的掩码

return

}

void err_quit(char *msg)

{

perror(msg)

exit(EXIT_FAILURE)

}

// 判断程序是否在运行

int does_service_work()

{

FILE* fp

int count

char buf[BUFSZ]

char command[150]

sprintf(command, "ps -ef | grep thisisatest | grep -v grep | wc -l" )

if((fp = popen(command,"r")) == NULL)

err_quit("popen")

if( (fgets(buf,BUFSZ,fp))!= NULL )

{

count = atoi(buf)

}

pclose(fp)

  return count

// exit(EXIT_SUCCESS)

}

void main()

{

  FILE *fp

  time_t t

  int count

  init_daemon()

  while(1)

  {

      sleep(10)//等待一分钟再写入

      fp=fopen("testfork3.log","a")

      if(fp>=0)

      {

          count = does_service_work()

          time(&t)

          if(count>0)

              fprintf(fp,"current time is:%s and the process exists, the count is %d\n",asctime(localtime(&t)), count) //转换为本地时间输出

          else

          {

              fprintf(fp,"current time is:%s and the process does not exist, restart it!\n",asctime(localtime(&t))) //转换为本地时间输出

              system("/home/user/daemon/thisisatest")//启动服务

          }

          fclose(fp)

      }

  }

  return

}

具体CMD命令:

cc thisisatest.c -o thisisatest

./thisisatest

cc monitor.c -o monitor

./monitor

tail -f testfork3.log   -- 查看日志


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12476504.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存