[LUG.ro] Apagar la compu
Sebastián D. Criado
lugro@lugro.org.ar
Fri, 8 Aug 2003 19:57:06 -0300
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Perfecto J. Mario.
Por que no te haces un documento y me lo mandas para que lo suba a la página.
De esa forma lo podrán encontrar más facil las personas que lo necesiten.
Te parece??
Saludos.-
El Viernes 08 Agosto 2003 18:13, J. Mario Oroz escribió:
> Disculpas por el mail anterior.
> Aqui esta lo que lo que queria comartir con ud.:
> ================================
> SO: GNU/linux
> Distro: RH6.2 RH8; con kernel oficial de la distro.
>
> Espero que le sea de utilidad a alguin.
>
> Que quiero hacer?
>
> Tener un server ppp y aún poder conectarse a internet
> con un solo modem/linea. Tareas mutuamente excluyentes; no?.
>
> teniendo corriendo ya el mgetty desde el /etc/inittab; lo que
> debemos hacer es:
>
> Modificamos automaticamente el /etc/inittab:
> Buscamos la linea que ejecuta el mgetty y la comentariamos.
> como root: (y haciendo un backup de tu inittab; # cp inittab inittab.bak)
>
> # sed s/^S2/#S2/ /etc/inittab > /etc/inittab.mod
> # cp -f /etc/inittab.mod inittab; rm -f /etc/inittab.mod
>
>
> Se pide a init que se reinicie y lea nuebamente /etc/inittab
> # init q (o # telinit q)
>
>
> Elimino el proceso mgetty que se encuentra corriendo
> # kill -9 `cat /var/run/mgetty.pid.ttyS2`
>
> y puede lanzarse el comando para conectarse a internet:
> # ifup ppp0
>
>
> Para volver atras todo lo tocado:
> Solo se debe descomentar la linea del inittab que hace referencia a mgetty
> y reiniciar init.
>
> modificamos nuevamente el /etc/inittab:
> Buscamos la linea comentada de mgetty y eliminamos el caracter "#".
> como root:
>
> # sed s/^#S2/S2/ /etc/inittab > /etc/inittab.mod
> # cp -f /etc/inittab.mod inittab; rm -f /etc/inittab.mod
>
>
> Se pide a init que se reinicie y lea nuebamente /etc/inittab
> # init q (o # telinit q)
>
> Y queda nuevamente mi modem en escucha de conecciones ppp.
>
>
> En forma de script seria algo así:
>
> Nota: este super script no controla si existe el servicio
> que esta dando mgetty.
> Supone que lo tenes configurado; es decir figura en inittab
> y hay un proceso en escuha corriendo.
>
> script: swt-ppp.1
> ------------------------------------------------------------
> #!/bin/sh
>
> if [ -f /var/run/mgetty-pid.ttyS2 ]
> then
> echo -n "Deshabilitando Server PPP ... "
> # Comentamos
> sed s/^S2/\#S2/ /etc/inittab > /etc/inittab.mod && echo "OK!" || echo
> "ERROR
> estado=0
> else
> echo -n "Habilitando Server PPP ... "
> # Descomentamos
> sed s/^\#S2/S2/ /etc/inittab > /etc/inittab.mod && echo "OK!" || echo
> "ERROR
> estado=1
> fi
> cp -f /etc/inittab.mod /etc/inittab
> rm -f /etc/inittab.mod
> telinit q
> [ $estado -eq 0 ] && rm -f /var/run/mgetty-pid.ttyS2
> -----------------------------------------------------------
> ============================================================
> ============================================================
>
> Uasando las acciones de inittab "kbrequest" y "ondemand"
>
> --- Accion: kbrequest ---
>
> script: swt-ppp.2
> ------------------------------------------------------------
> #!/bin/sh
> if [ -f /var/run/mgetty.pid.ttyS2 ]
> then
> echo -n "Deshabilitando Server PPP. "
> telinit q && kill -9 `cat /var/run/mgetty.pid.ttyS2` && echo "OK!" || echo
> "ERROR!"
> else
> echo -n "Habilitando Server PPP. "
> /sbin/mgetty -x5 -D ttyS2 && echo "OK!" || echo "ERROR!"
> fi
> ------------------------------------------------------------
>
> editamos /etc/inittab y agregamos esta linea:
>
> cb::kbrequest:/usr/bin/swt-ppp.2
>
> editamos /lib/kbd/keymaps/i386/qwerty/es.map.gz y
> en alguna de las letras definidas y agregamos la linea
> que se describe con un asterisco (*):
>
> keycode 52 = period colon
> alt keycode 52 = Meta_period
> shift alt keycode 52 = Meta_greater
> control alt keycode 52 = KeyboardSignal (*)
>
> Entomces al oprimir las teclas "Ctrl + Alt + ." (control + alt + punto)
> se ejecuta el proceso definido en inittab para la accion "kbrequest"
>
> El mecanismo funciona; al oprimir dicha convinacion se ejecuta el proceso
> que describo en /etc/inittab.
>
>
> Resultado:
> No funciono bien el script swt-ppp.2, de hecho no llevo a cabo el
> echo de que si se muere dicho proceso otro tiene que
> largarse desde inittab (accion "respawn") puesto que el proceso
> padre del mgetty es el script y no init.
>
> En cambio esta linea si funciona perfectamente.
> #Para apagar la compu con "ctrl + alt + ."
> cb::kbrequest:/usr/bin/shutdown -h now
>
> OBSERVACION:
> Como proceso use un " echo 'Hola Mundo' " y al ejecutarse no retorna a la
> linea de comandos; sino se queda en el retorno de carro del "echo" ...
> tipie un comando, di enter y lo ejecuto; esta combinacion funciona
> si sos root como si no lo sos. Prove comandos que solo pueden ser usados
> por root desde otro usuario NO PRIVILEGIADO y las restricciones se
> aplicaron bien; no me dejo cambiar el passwd del root. Pero el echo es que
> deja ejecutar
> comandos.
>
> --- Accion: ondemand ---
>
> El proceso se ejecuta cuando se da la orden "telinit letra"
> donde "letra" debe ser una de estas "a|b|c"; es decir la que
> hallamos definido en el /etc/inittab con la accion "ondemand".
>
> editamos /etc/inittab y agregamos esta linea:
>
> cb:a:ondemand:/sbin/mgetty -x5 -D ttyS2
>
> se activa con:
> # telinit a
>
> Telinit se ejecuta con un usuario que tenga los privilejios necesarios.
> En realidad no se switchea a ningun runlrvel en especial es decir no existe
> tal cambio de runlevel; y la caracteristica importante que tiene esta
> accion es que tiene el efecto de la accion "respawn"; por lo que si muere
> el proceso
> se lanza nuevamente.
>
> FIN - por ahora! ... gracias TOTALES!!!
>
> _______________________________________________
> Lugro mailing list
> Lugro@lugro.org.ar
> http://www.lugro.org.ar/mailman/listinfo/lugro
- --
- --
Sebastián D. Criado - scriado@ciudad.com.ar
L.U.G.R.o - http://www.lugro.org.ar
GNU/Linux Registered User # 146768
- -------------------------------------------------------------------
"Si el Universo fuera un programa estaría hecho en C, y correría sobre
un sistema UNIX"
Anónimo.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)
iD8DBQE/NCrY8hmHQ8ZCg0IRAvxXAKCAOKlMIKBuRcq2LA8p1rg+rlRjFwCbB8fe
XOLLJ/HBkVMDwvABjrcNtI8=
=fxy1
-----END PGP SIGNATURE-----