Tengo algunos elogios que deseo que me llamen inmediatamente después de iniciar sesión, incluido 'startx', y pensé que rc.localparece un buen lugar para ellos, pero el problema es que rc.localse ejecuta como root y no quiero eso, obviamente puedo hacerlo algo como esto:
su username -c somecommend-here
Pero estoy buscando una manera de ejecutar todo el 'rc.local' como usuario normal, ¿o tal vez hay un lugar mejor para poner mi código?
PD. Estoy usando Ubuntu-mini-remix 1104i386
Gracias

Respuestas:
La forma más fácil de iniciar un comando cuando un usuario inicia sesión es crear un
.desktoparchivo para el comando y pegarlo en la~/.config/autostartcarpeta. ¿Cómo se ve el archivo de escritorio? Aquí hay un ejemplo que recupera la página de inicio de Ask Ubuntuwgetcada vez que el usuario inicia sesión:fuente
startx(como solicitó el OP) después del inicio de sesión gráfico.startxdesderc.local. Lo sentimosNo sé las diferencias entre /etc/rc.local y un crontab, pero generalmente hago una cuenta de servicio y agrego el trabajo apropiado. Por ejemplo: sudo crontab -u p4padmin -e
No tiene que iniciar sesión para que se ejecute el servicio.
fuente
La forma de Linux es agregar sus comandos a en
~/.bashrclugar de/etc/rc.local.Cada usuario tiene un
.bashrcen su directorio de inicio. Este archivo de script se ejecuta automáticamente justo después de que un usuario inicia sesión. Se ejecuta con las credenciales del usuario, porsulo que no se necesita un comando.Me parece que esto es exactamente lo que estás buscando.
fuente
.bashrcque no se lee cuando un usuario inicia sesión usando lo normallightdm, por ejemplo.