LINUX.ORG.RU

Вопросы по системе

 ,


1

2

Можно ли как-то логировать в файл всё что происходит в sysvinit?
Всё что бежит в консоли до запуска иксов (и после)?
Нужно как-то отслеживать ошибки, а в /var/log/ не всё попадает.

Помнится лет 5-7 назад в википедии была статья о сравнении sysV и BSD инитов. В статье была таблица, в которой была разница между этими двумя системами инициализации. Сейчас этой статьи нет. Может, кто-то даст ссылку на такую табличку?

Вот уже больше года пользуюсь слакой. Понравилось больше генты, которой пользовался, наверное, больше пяти лет. В генте постоянно были какие-то конфликты при обновлении. Хочу ещё попробовать CRUX, вдруг ещё больше слаки понравится. Вопрос, только получится ли в нём использовать fglrx и старые иксы (1.17.4) и ещё кое-какие старые пакеты, от которых зависят иксы? Или придётся обзавестись новым железом? Ещё хотел бы попробовать 4MLinux, OviOS, Source Mage и Void. С ними аналогичный вопрос. Есть ли тут кто пробовал данные дистрибутивы, что скажете?

★★★★★

Ответ на: комментарий от teod0r

ничего не выводит!

Посмотри в гентушной вики, там было что-то про это. По крайней мере лет десять назад видел.

Не конкретно твой случай, но общие принципы расскажет.

мне же надо смотреть что там уже есть, а там уже есть много строк, если переключиться в tty12

С этим чуть сложнее. Ну как сложнее… перед tail делаешь cat, а потом сразу tail.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Посмотри в гентушной вики, там было что-то про это.

что-то не находится

перед tail делаешь cat, а потом сразу tail.

как? cat /dev/tty12 | tail -f не работает

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

Да не пайпнуть в, а последовательно:

cat /your/log >> /dev/tty12
tail -f /your/log >> /dev/tty12

Или однострочником:

cat /your/log >> /dev/tty12; tail -f /your/log >> /dev/tty12
mord0d ★★★★★
()
Ответ на: комментарий от mord0d

какой ещё /your/log? мне нужно читать ИЗ tty12.
всмысле мне нужно читать то, что уже есть в tty12, находясь в другом tty (в иксах)

teod0r ★★★★★
() автор топика
Последнее исправление: teod0r (всего исправлений: 1)
Ответ на: комментарий от teod0r

мне нужно читать ИЗ tty12

А, ну тогда наоборот. ☺

Но чем читать буфер tty (а не перехватывать ввод с клавиатуры) я не знаю. Да и ограничено оно будет буфером, потому совсем всё прочитать не удастся, если лог сильно длинный.

Но вообще, хочешь ты совсем странного. Пиши в файл, а в tty выводи простым tail -f /your/log >> /dev/tty12. Тогда и с чтением отовсюду проблем не будет.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

Пиши в файл

хотел бы я. но как сделать такое с инитом (sysvinit)? как-то можно в скрипте сделать, чтобы вывод всего скрипта ДУБЛИРОВАЛСЯ в файл? как-нибудь через exec &>...? не буду же я на каждый чих в инит-скриптак tee плодить...

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

как сделать такое с инитом (sysvinit)?

bootlogd?

чтобы вывод всего скрипта ДУБЛИРОВАЛСЯ

Переписать скрипт, или script | tee /your/log.

не буду же я на каждый чих в инит-скриптак tee плодить

Во FreeBSD я бы поправил rc.subr, но у sysvinit такого вроде нет, насколько я помню.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

bootlogd

походу, то что нужно. попробую. как его запускать? просто в одном из скриптов инициализации, том что запускается первым bootlogd -d, и он будет отлавливать всё что в последующих скриптах??

rc.subr

посмотрел фряшный ман, там написано, что используется некий logger(1), logger из какого пакета?

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

как его запускать?

Понятия не имею. ☺ Я знаю что он есть и что он жрёт весь вывод из /dev/console (или что там по умолчанию в Linux сейчас) и сохраняет его в файл. На этом наши полномочия как бы всё, кончились.

logger из какого пакета?

Во фре это часть базовой системы (базовая система не управляется менеджером пакетов), в Linux это что-то про syslog, конкретнее надо смотреть листинги устанавливаемых файлов. rsyslog, sysklogd, их же много всяких.

mord0d ★★★★★
()
Ответ на: комментарий от mord0d

базовая система не управляется менеджером пакетов

а почему так?
как же её обновлять?

teod0r ★★★★★
() автор топика
Ответ на: комментарий от teod0r

а почему так?

Потому что компоненты базовой системы завязаны друг на друга, на то она и базовая система.

Пакеты ставятся в /usr/local, потому если ты грохнешь префикс, или удалишь все пакеты, ОС продолжит работать.

как же её обновлять?

Внутри релиза (12.2-RELEASE-p1 → 12.2-RELEASE-p2):

freebsd-update fetch
freebsd-update install

На новый релиз (12.1-RELEASE-p10 → 12.2-RELEASE):

freebsd-update upgrade -r 12.2-RELEASE
freebsd-update install
mord0d ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.