Bug #593
open-rc : проблема с зависимостями скриптов
| Статус: | Feedback | Начата: | 30.07.2013 | |
|---|---|---|---|---|
| Приоритет: | Normal | Дата выполнения: | ||
| Назначена: | - | Готовность в %: | 0% |
|
| Категория: | - | Затраченное время: | - | |
| Версия: | - | |||
| Голоса: | 0 |
Описание
На компьютере 2 сетевых карты: ethernet и wifi.
Сконфигурированы.
После перезагрузки с ethernet все нормально. Карточке wifi не назначается
сетевой адрес, кроме того не работают сетевые сервисы: hostapd, samba, sshd, vnc.
Чтение лога загрузки с экрана (кстати, куда пишут лог стартовые скрипты?)
показало, что сервисы запущены, но ждут мою сетевую wifi карточку, которая сконфигурирована, но не активна.
Конечно не активна! Это соединение нужно лишь время от времени, а не постоянно.
Пока что проблему решил самописным скриптом, запускающим нужные мне сервисы без всяких зависимостей.
Как правильно исправить это в Calculate, я не знаю.
История
Обновлено Mikhail Hiretsky больше 12 лет назад
- Параметр Статус изменился с New на Feedback
Укажите в переменной rc_hotplug конфига /etc/rc.conf те сетевые интерфейсы, которые означают запуск сети.
Обновлено Evgeny Pashigorov больше 12 лет назад
Наверное, мой английский сильно хромает, но фразу
"rc_hotplug is a list of services that we allow to be hotplugged.
By default we do not allow hotplugging"
я понимаю как список устройств, которые разрешено подключать "на горячую"
(то есть, их не надо ждать во время загрузки).
В любом случае, пишу ли я туда net.* или !net.*
сервисы все равно ждут эту злосчастную wi-fi, которая никогда не станет активной,
поскольку hostapd не запущен.
Обновлено Mikhail Hiretsky больше 12 лет назад
Попробуйте добавить такую строку:
rc_net_wlan0_provide="!net"
Обновлено Evgeny Pashigorov больше 12 лет назад
Правильно ли я понимаю, что в данной команде должно фигурировать
настоящее имя интерфейса? А то в моем Calculate wifi карточка
получила имя wlp2s0 (в связи с чем я поимел немало веселых минут,
перестали работать все скрипты, связанные с сетью).
Но неважно, пишу ли я: rc_net_wlan0_provide="!net"
или: rc_net_wlp2s0_provide="!net"
или даже: rc_net_wlp2s0_provide="!net.*"
- результата нет, сервисы ждут...
Обновлено Mikhail Hiretsky больше 12 лет назад
Какие сервисы у Вас в автозагрузке?
Обновлено Evgeny Pashigorov больше 12 лет назад
# rc-update
alsasound | default
bootmisc | boot
calculate-core | default
consolefont | boot
consolekit | boot
cpufrequtils | default
cupsd | default
dbus | boot
devfs | sysinit
dmesg | sysinit
fbcondecor | default
firewall | boot
fsck | boot
hostapd | default
hostname | boot
hwclock | boot
keymaps | boot
killprocs | shutdown
local | default nonetwork
localmount | boot
modules | boot
mount-ro | shutdown
mtab | boot
mylocal | default
mymount | boot
net.lo | boot
netmount | default
numlock | default
preload | default
procfs | boot
root | boot
samba | default
savecache | shutdown
sshd | default
swap | boot
swapfiles | boot
sysctl | boot
sysfs | sysinit
syslog-ng | boot
Скрипт mymount - подпорка, осталась от перехода с Дебиана.
Мои cкрипты firewall и mylocal - запускают NAT, hostapd, задают адрес для wlp2s0
без оглядки на зависимости.
Обновлено Mikhail Hiretsky больше 12 лет назад
Добавьте в /etc/conf.d/net:
modules_wlp2s0="plug"
Обновлено Evgeny Pashigorov больше 12 лет назад
Добавил. Ничего не изменилось. По-прежнему ждут.
Мне кажется, мы где-то не там копаем.
Какой-то простой косяк (ведь без зависимостей все работает!).
А можете подсказать, в какой лог пишут скрипты из init.d ?
Обновлено Mikhail Hiretsky больше 12 лет назад
Как я понимаю hostapd используется для wifi, а у Вас она в автозагрузке. Попробуйте удалить его из default.
Обновлено Mikhail Hiretsky больше 12 лет назад
Evgeny Pashigorov wrote:
А можете подсказать, в какой лог пишут скрипты из init.d ?
Если логирование включено (в /etc/rc.conf), то по идее в /var/log/rc.log.
Обновлено Михаил Гагауз около 12 лет назад
перестали работать все скрипты, связанные с сетью).
Скажем спасибо за это Поттерингу, кстати, отключается эта дичайшая штука приписыванием к параметрам ядра дополнительно этого параметра net.ifnames=0
В списке ваших служб я не вижу никаких сетевух. А вообще - какие скрипты запуска сетевух у вас есть?ls -l /etc/init.d/net.*
Обновлено Evgeny Pashigorov около 12 лет назад
В списке ваших служб я не вижу никаких сетевух. А вообще - какие скрипты запуска сетевух у вас есть?
ls -l /etc/init.d/net.*
$ ls -l /etc/init.d/net.*
lrwxrwxrwx 1 root root 6 авг. 5 22:23 /etc/init.d/net.enp3s0 -> net.lo
-rwxr-xr-x 1 root root 16919 янв. 11 2013 /etc/init.d/net.lo
lrwxrwxrwx 1 root root 6 авг. 5 22:23 /etc/init.d/net.wlp2s0 -> net.lo
Скрипты есть, я их повыключал, все равно они не работают, ждут друг друга. Тупо запускаю
скрипт mylocal:
cat /etc/init.d/mylocal
#!/sbin/runscript
depend()
{
need localmount
after bootmisc modules
before dns
}
start()
{
/etc/init.d/firewall start
/bin/ifconfig wlp2s0 192.168.2.11/24
/bin/ifconfig wlp2s0 up
/usr/sbin/hostapd -B /etc/hostapd/hostapd.conf
}
Теперь и сам удивляюсь, кто же ethernet мне конфигурирует?? :)
Долго мне еще к хенту привыкать!