[FreeBSD] Как при kernel.securelevel>0 переключать терминалы?

studio

OS: FreeBSD 4.9 STABLE
Xserver: XFree86 4.3.0
вопрос: как при kernel.securelevel>0, сделать свободным переключение между терминалами, где висят getty/шелл, и терминалом, где висит m/windows manager?
текущая ситуация такова: при установке kernel.securelevel>0, если не переключаться с терминала с m, то можно нормально работать (в т.ч. login, logout, перезапуск m [ctrl+c]). Однако при переключении на другие терминалы, обратный переход невозможен: прибивается Xserver (причем это происходит в момент обратного переключения на него) и init безуспешно пытается его перезапустить.

sergey_m

X сервер не может запуститься при таком securelevel. Поэтому, если он у тебя упал, то уже не встанет. Нужно искать проблему из-за которой он падает. core остается?

studio

Так в том то и дело, что
1. если переключиться на шелловый терминал, Xserver спокойно себе висит и не думает помирать,
он прибивается при попытке переключиться на m-овский терминал
2. securelevel поднимается в момент запуска m-а - так что Xserver работает и все с ним ок
коры не остается
(P.S. а у тебя на машине в общаге какой ksl был?)

studio

создается впечатление, что когда я с X-терминала переключаюсь
Xserver "отпускает" /dev/io и при попытке возобновить с ним контакт (переключение "обратно")
посылается системой и, как следствие, умирает без всяких кор
если это так, то, как я понимаю, работа в X-ах и ksl>0 несовместимы?

sergey_m

создается впечатление, что когда я с X-терминала переключаюсь
Xserver "отпускает" /dev/io и при попытке возобновить с ним контакт (переключение "обратно")
посылается системой и, как следствие, умирает без всяких кор

Надо проверить это впечатление. Лог XFree86?
если это так, то, как я понимаю, работа в X-ах и ksl>0 несовместимы?

Раньше XFree86 работало при securelevel = 1, если верить handbook.

studio

это действительно так:

(==) ModulePath set to "/usr/X11R6/lib/modules"
(WW) checkDevMem: failed to open /dev/mem (Operation not permitted)
(--) Using syscons driver with X support (version 2.0)
(--) using VT number 9
Fatal server error:
xf86EnableIO: Failed to open /dev/io for extended I/O


это при ksl=1, обратное переключение (происходит перезапуск сервера)
есть ли какие варианты обхода?

sergey_m

Ты не можешь запустить сервер при securelevel = 1, но ты можешь работать с ним, если он был запущен ранее. Разбираться нужно в том, почему он падает.

studio

Разбираться нужно в том, почему он падает.

ну, собственно за этим я тред этот и завел
вопрос: почему Xserver теряет связь с /dev/io и /dev/mem?

mama007

вопрос: почему Xserver теряет связь с /dev/io и /dev/mem?

ответ прост - потому что меняется состояние /dev/kmem и возможно терминала (getty думаю где-то так.
man securelevel
man security
остальное - разбор sources системы и работы X'ов
Оставить комментарий
Имя или ник:
Комментарий: