[Linux] Matar procesos con un mes de antiguedad e incluir un script en la carga del sistema

Hola,

estoy estudiando este semestre Unix con UBUNTU LTS y la asignatura es bastante durilla puesto que nos dan mucha libertad para que busquemos por internet los comandos. El caso es que me han mandado un par de temas que llevo ya unas horas buscando info y no acabo de encontrarlo. Paso a detallar:

1) Como matar todos los procesos mas antiguos de 1 mes, excepto los de root. Es decir matar todos los procesos de todos los usuarios excepto root con un mes de antiguedad. He encontrado esto...

ps -aef |grep -v UID |grep -v root |awk '{print $1}'
|sort -u |while read name
do
echo "Killing process for user $name"
pkill -U $name
done

Pero no me mola nada meter scritps me gustaria montar un comando aunque sea largo.

2) Como incluir un script en el inicio de sistema para todos los usuarios. El caso es que he hecho un hola mundo como script pero he probado cosas y no acabo de incluirlo en el inicio de la carga del sistema. Por otra parte tengo dudas de lo que se carga al inicio porque si introducimos algo para todos los usuarios cuando debería aparecer, antes del login de user o despues?

Gracias de antemano.
JusticiaCIEGA escribió:Hola,
2) Como incluir un script en el inicio de sistema para todos los usuarios. El caso es que he hecho un hola mundo como script pero he probado cosas y no acabo de incluirlo en el inicio de la carga del sistema. Por otra parte tengo dudas de lo que se carga al inicio porque si introducimos algo para todos los usuarios cuando debería aparecer, antes del login de user o despues?

Gracias de antemano.


Estas lecturas te vendrán bien para el segundo punto que preguntas:
http://rm-rf.es/etc-rc-local-ejecutar-c ... ue-de-nix/
https://www.alvarolara.com/2013/03/20/e ... en-ubuntu/

Habitualmente en Ubuntu creo recordar que cuando se está cargando puedes pulsar la tecla "F2" y te mostrará información de los módulos, scripts, demonios etc que se están cargando ;) Seguramente la parte educativa del punto 2 es entender cómo es proceso de arranque en los sistemas basados en Unix.
Muchas gracias por los links!

El rc.local era la clave luego para el multiusuario es el nivel 3 ;)

Gracias!
Hola puedes meterlo en init.d y luego crear un enlace con ln a los rc (run level) por lo que cada vez que se inicie el ordenador de ejecutara el script...saludos

PD: no habia lleido el mensaje anterior XD ...
También puedes crear una tarea cron.
KePeRHeLL escribió:También puedes crear una tarea cron.


cron tiene varios problemas cron ejecuta tareas con intervalos de tiempo o sea cada minuto hora dia o mes, tambien tiene otra caracteristica que es que si el pc estaba apagado y paso la hora de ejcucion esta no se ejecuta nunca por lo que mejor en tal caso seria ejecutar anacron la cual funciona parecido a cron pero tambien como una cola de tareas o lo que es lo mismo si anacron ve que la tarea no se ejecuta en cuanto pueda o sea cuanto encienda el pc se ejecuta automaticamente... saludos
Elkubano escribió:
KePeRHeLL escribió:También puedes crear una tarea cron.


cron tiene varios problemas cron ejecuta tareas con intervalos de tiempo o sea cada minuto hora dia o mes, tambien tiene otra caracteristica que es que si el pc estaba apagado y paso la hora de ejcucion esta no se ejecuta nunca por lo que mejor en tal caso seria ejecutar anacron la cual funciona parecido a cron pero tambien como una cola de tareas o lo que es lo mismo si anacron ve que la tarea no se ejecuta en cuanto pueda o sea cuanto encienda el pc se ejecuta automaticamente... saludos

Cuando digo cron me refiero a todo, anacron los daylis, weekly y todo, en cron también puedes programar para que ejecute al iniciar el sistema y otras funciones.

Sera por formas de hacer las cosas en linux [360º] [360º]
6 respuestas