Автоматический вход в систему и запуск программы
Felzinger |
|
|
|
|
|
|
|
Пункты: 3672 |
Регистрация: 19.01.2010 |
Пол: Мужчина |
|
|
Хотелось бы чтобы после включения питания загрузки ядра происходил автоматический вход в систему и производился запуск некоторой программы. К сожелению мало знаний в области линукс хотелось, что бы знающие люди подсказали в какую сторону копать или может ктото уже делал подобную вещь и подскажет поточнее где что и как подправить. |
|
|
|
|
|
sasamy |
|
|
|
|
|
|
|
Пункты: 83542 |
Регистрация: 14.08.2009 |
|
|
|
|
|
|
|
Felzinger |
|
|
|
|
|
|
|
Пункты: 3672 |
Регистрация: 19.01.2010 |
Пол: Мужчина |
|
|
Спасибо я пробовал данный метод, но к сожелению на определенном этапе система виснет при загрузке(только вот сейчас не помню на каком моменте точно). По данному примеру я сделал следующие изменения(красный цвет) в файле inittab на плате:
# /etc/inittab
#
# Copyright (C) 2001 Erik Andersen <andersen@codepoet.org>
#
# Note: BusyBox init doesn't support runlevels. The runlevels field is
# completely ignored by BusyBox init. If you want runlevels, use
# sysvinit.
#
# Format for each entry: <id>:<runlevels>:<action>:<process>
#
# id == tty to run on, or empty for /dev/console
# runlevels == ignored
# action == one of sysinit, respawn, askfirst, wait, and once
# process == program to run
null::sysinit:/bin/mount -o remount,rw /
::sysinit:/etc/init.d/rcS
# Set up a couple of getty's
tty1::respawn:/sbin/getty -n -l /bin/autologin 38400 tty1 linux
#tty2::respawn:/sbin/getty 38400 tty2
# Put a getty on the serial port
ttyS0::respawn:/sbin/getty -L ttyS0 115200 vt100
# Logging junk
null::sysinit:/bin/touch /var/log/messages
null::respawn:/sbin/syslogd -n -m 0
null::respawn:/sbin/klogd -n
#tty3::respawn:/usr/bin/tail -f /var/log/messages
# Stuff to do for the 3-finger salute
::ctrlaltdel:/sbin/reboot
# Stuff to do before rebooting
null::shutdown:/usr/bin/killall klogd
null::shutdown:/usr/bin/killall syslogd
null::shutdown:/bin/umount -a -r
null::shutdown:/sbin/swapoff -a
где autologin программа имеющая код:
int main()
{
execlp( "login", "login", "-f", "root", 0);
}
Как запустить программу мне пока не понятно в какой момент ее надо запускать, тоесть именно где в данном файле требуется прописать ее запуск. Требуется зайти в консоль и затем запустить прогу если такое возможно, что бы была возможность также управления с клавиатуры |
|
|
|
|
|
sasamy |
|
|
|
|
|
|
|
Пункты: 83542 |
Регистрация: 14.08.2009 |
|
|
|
Запуск программы после автологина можно сделать через локальный профиль - попросту говоря это файл .profile в директории пользователя от чьего имени логин, если его нет - создать, это обычный текстовый файл. |
|
|
|
|
|
|