elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Los 10 CVE más críticos (peligrosos) de 2020


+  Foro de elhacker.net
|-+  Sistemas Operativos
| |-+  GNU/Linux (Moderador: MinusFour)
| | |-+  [Fedora] Servicio casero
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: [Fedora] Servicio casero  (Leído 1,816 veces)
yeikos


Desconectado Desconectado

Mensajes: 1.424



Ver Perfil
[Fedora] Servicio casero
« en: 26 Mayo 2010, 01:06 am »

Buenas noches...

Hará unas semanas que creé un programa en C que tomaba capturas de la webcam (cliente) y las enviaba por internet a otro programa para su almacenamiento (servidor). El caso es que he portado el servidor a linux y mi intención es ejecutarlo en segundo plano, y esto es lo que he hecho:

Código
  1. cp webcam /usr/sbin
  2. cd /etc/init.d
  3. touch wcam
  4. chmod +x wcam

Código
  1. #!/bin/sh
  2. # chkconfig: 345 90 10
  3. # description: webcamlive
  4.  
  5. # Source function library.
  6. . /etc/rc.d/init.d/functions
  7.  
  8. prog=webcam
  9. softbin=/usr/sbin/$prog
  10.  
  11.  
  12. OPTIONS=""
  13.  
  14. # Source an auxiliary options file if we have one, and pick up OPTIONS,
  15. #if [ -r /etc/sysconfig/$prog ]; then
  16. # . /etc/sysconfig/$prog
  17. #fi
  18.  
  19. RETVAL=0
  20.  
  21. start() {
  22. echo -n $"Starting $prog: "
  23. daemon $softbin -d $OPTIONS
  24. RETVAL=$?
  25. echo
  26. [ $RETVAL -eq 0 ] && touch /var/lock/subsys/$prog
  27. }
  28. stop() {
  29. echo -n $"Stopping $prog: "
  30. killproc $softbin
  31. RETVAL=$?
  32. echo
  33. [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/$prog
  34. }
  35.  
  36. restart() {
  37. stop
  38. start
  39. }
  40.  
  41. reload() {
  42. echo -n $"Reloading $prog: "
  43. killproc $softbin -HUP
  44. RETVAL=$?
  45. echo
  46. }
  47.  
  48. # See how we were called.
  49. case "$1" in
  50. start)
  51. start
  52. ;;
  53. stop)
  54. stop
  55. ;;
  56. restart)
  57. restart
  58. ;;
  59. reload)
  60. reload
  61. ;;
  62. condrestart)
  63. [ -f /var/lock/subsys/$prog ] && restart
  64. ;;
  65. status)
  66. status $softbin
  67. ;;
  68. *)
  69. echo $"Usage: $0 {start|stop|restart|condrestart|reload|status}"
  70. exit 1
  71. esac
  72.  
  73. exit $RETVAL

Código
  1. chkconfig --add wcam
  2. chconfig wcam on
  3. service wcam start
  4. Iniciando webcam:

El problema es que yo pensaba que ejecutaria el programa como servicio en segundo plano, y no es así, el programa se queda en "Iniciando webcam:", y funciona, pero es como si ejecutase el programa directamente desde la consola, si cierro ésta se cierra el programa.



En línea

dantemc


Desconectado Desconectado

Mensajes: 2.003

:D


Ver Perfil
Re: [Fedora] Servicio casero
« Respuesta #1 en: 26 Mayo 2010, 04:02 am »

puedes ejeutar el programa con nohup, ejecuta el programa y lo desvincula de la consola, ahora si lo quieres en segundo plano puedes aniadirle al programa un &, asi programa &, y si quieres el paquete completo
nohup programa &


En línea

8-D
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines