Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Автозапуск приложения и автовход в систему
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы > Linux
Dubov
Пытаюсь найти скрипт который бы выполнялся при запуске, но корневая построеная с помощью buildroot несколько отличается от корневой скажем Debian.
есть один пользователь root. папка пользователя лежит в корне /root
Эта папка пустая. Непонятно как настроить автоматический запуск приложений и осуществить автоматический вход от рута при старте. Рекомендации и HOWTO в сети относятся к распространённым дистрибутивам и не подходят для моей корневой созданной посредством buildroot.
Кроме того хотел настроить ip по умолчанию отредактировал файл /etc/network/intarfaces

# Configure Loopback
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet 192.168.0.5 netmask 255.255.255.0


всё равно при старте ip 192.168.0.107

kurtis
Если нужно запустить приложение, то необходимо в /etc/init.d добавить файл вида S[0-9[0-9].... и там прописать что нужно запустить.
По поводу настроек сети, то может плата подхватыет настроки через dhcp?
Dubov
Цитата(kurtis @ Apr 7 2013, 22:44) *
По поводу настроек сети, то может плата подхватыет настроки через dhcp?

нет, dhcp не работет - это 100%. там его нет

сам не пойму никак в чём дело...

sasamy
Цитата(Dubov @ Apr 6 2013, 23:05) *
Непонятно как настроить автоматический запуск приложений и осуществить автоматический вход от рута при старте .. для моей корневой созданной посредством buildroot.


1 скрипты инициализации в /etc/init.d/ запускаются с правами root
2 init=/bin/sh - шелл с правами root в обход скриптов инициализации
3 настоящий автологин для root
/etc/inittab
Цитата
tty1::respawn:/sbin/getty -n -l /root/autologin.sh 38400 tty1 linux

/root/autologin.sh
Цитата
#!/bin/sh
exec login -f root

4 man /etc/profile

Цитата
Кроме того хотел настроить ip по умолчанию отредактировал файл /etc/network/intarfaces


Цитата
auto eth0
iface eth0 inet static
address 192.168.0.136
netmask 255.255.255.0
gateway 192.168.0.2
Dubov
Цитата(sasamy @ Apr 8 2013, 10:29) *
1 скрипты инициализации в /etc/init.d/ запускаются с правами root
2 init=/bin/sh - шелл с правами root в обход скриптов инициализации
3 настоящий автологин для root
/etc/inittab

/root/autologin.sh

4 man /etc/profile


получил при старте : can't execute autologin.sh

sasamy
Цитата(Dubov @ Apr 8 2013, 21:27) *
получил при старте : can't execute autologin.sh


chmod +x /root/autologin.sh
Dubov
Цитата(sasamy @ Apr 8 2013, 22:19) *
chmod +x /root/autologin.sh

эх... спасибо. забыл я про это... знал ведь)
Dubov
Цитата(sasamy @ Apr 8 2013, 10:29) *
1 скрипты инициализации в /etc/init.d/ запускаются с правами root
2 init=/bin/sh - шелл с правами root в обход скриптов инициализации
3 настоящий автологин для root
/etc/inittab

/root/autologin.sh

4 man /etc/profile

спасибо. с автовходом получилось, а вот сеть не поднялась на новых настройках и запустились прежние ((
Славка
Проверьте параметры загрузчика, он может передавать настройки сети через параметры при загрузке линуха. (в uboot - bootargs)
TigerSHARC
Цитата(Славка @ Apr 10 2013, 07:44) *
Проверьте параметры загрузчика, он может передавать настройки сети через параметры при загрузке линуха. (в uboot - bootargs)

увидел тему - стало интересно.
А как посмотреть что передаёт u-boot при загрузке Linux?
как может получится так что Linux игнорирует файл конфигурации сети в корневой?
Славка
Цитата(TigerSHARC @ Apr 17 2013, 14:50) *
увидел тему - стало интересно.
А как посмотреть что передаёт u-boot при загрузке Linux?
как может получится так что Linux игнорирует файл конфигурации сети в корневой?

Игнорирует скорей не линукс, а busybox (или что там у автора). А в uboot параметры сети могут передаваться в bootargs через параметр ip=

У меня как то так на eth1 устанавливается ip 192.168.11.100
Код
=> print bootargs
bootargs=root=/dev/ram ramdisk_size=25000 rw ip=192.168.11.110:192.168.11.25::255.255.255.0:mpc8323erdb:eth1:off console=ttyS0,115200


Я не утверждаю, что игнорируются, прост предложил проверить. Откуда то же береться у автора фиксированный ip?
Dubov
Цитата(Славка @ Apr 17 2013, 18:50) *
Игнорирует скорей не линукс, а busybox (или что там у автора). А в uboot параметры сети могут передаваться в bootargs через параметр ip=

У меня как то так на eth1 устанавливается ip 192.168.11.100
Код
=> print bootargs
bootargs=root=/dev/ram ramdisk_size=25000 rw ip=192.168.11.110:192.168.11.25::255.255.255.0:mpc8323erdb:eth1:off console=ttyS0,115200


Я не утверждаю, что игнорируются, прост предложил проверить. Откуда то же береться у автора фиксированный ip?


простите меня тёмного, а где это посмотреть?

в buildroot во вкладке Boatloaders есть графа Custom Network Settings, звёздочка там не стоит. так что как я понимаю ничего не передаётся при загрузке...

пардон. посмотрел при запуске платы, нажав клавишу и отменив загрузку ядра. дейсвтительно строка похожа на вашу. но ведь это настройки самого uboot и ядро должно само подхватить адрес указаный в конфиге. разве нет?
как поменять передаваемые через uboot настройки сети? чтож теперь не установить сетевые настройки кроме как пересобрав uboot?
Славка
Цитата(Dubov @ Apr 17 2013, 20:02) *
простите меня тёмного, а где это посмотреть?

в buildroot во вкладке Boatloaders есть графа Custom Network Settings, звёздочка там не стоит. так что как я понимаю ничего не передаётся при загрузке...

пардон. посмотрел при запуске платы, нажав клавишу и отменив загрузку ядра. дейсвтительно строка похожа на вашу. но ведь это настройки самого uboot и ядро должно само подхватить адрес указаный в конфиге. разве нет?
как поменять передаваемые через uboot настройки сети? чтож теперь не установить сетевые настройки кроме как пересобрав uboot?

Linux не читает конфиги. Их читает busybox, или что там у вас в корневой по linuxrc? Я никогда не пользовался buildroot'ом, всегда все собирал сам, потому помочь в его конфиге не могу. Uboot может передавать параметры сети linux'у при старте в bootargs. bootargs - это переменная uboot, которая может храниться в ПЗУ, а может и не храниться, все зависит, как вы собирали uboot. Если они храняться в ПЗУ, то их можно менять путем setenv->saveenv.
/etc/network/interfaces у вас немного не по стандарту busybox'а. Busybox использует конфиги в стиле debian. Потому почитайте вниметельно это http://wiki.debian.org/NetworkConfiguration (Configuring the interface manually). Так же в папке исходников busybox'а есть много доков по конфигам.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.