Почему является перезапуск inittab действием, прося у меня идентификатор?

Чтобы сделать сопоставление с образцом на путях портативно, можно установить IFS окружите переменную к / и затем используйте расширение параметра оболочки.

Выполнение всего этого в подоболочке помогает хранению неизменной среды родительской оболочки!

# cf. "The real Bourne shell problem",
# http://utcc.utoronto.ca/~cks/space/blog/programming/BourneShellLists

paths='
x86-headers/elf/C/populate.sh
x86-headers/gl/C/populate.sh
x86-headers/gmp/C/populate.sh
x86-headers/gnome2/C/populate.sh
x86-headers/gtk2/C/populate.sh
x86-headers/jni/C/populate.sh
x86-headers/libc/C/populate.sh
'

IFS='
'

# version 1
for x in $paths; do 
   ( IFS='/'; set -- ${x}; echo "$2" ); 
done


# version 2
set -- ${paths}
for x in $@; do 
   ( IFS='/'; set -- ${x}; echo "$2" ); 
done
2
19.11.2013, 18:55
1 ответ

Вы получаете ошибку о той строке, пропускающей идентификационное поле, потому что, ну, в общем, это пропускает идентификационное поле.

От inittab(5) страница справочника:

Запись в inittab файле имеет следующий формат:

 id:runlevels:action:process

Строки, начинающиеся '#', проигнорированы.

 id     is a unique sequence of 1-4 characters which identifies an entry
        in inittab […]

Его возможное, что Вы недавно добавили уродливую строку, или что, возможно, Вы были предыдущим выполнением версии init, который не заметил. Или это, Вы не заметили сообщение, или возможно что сообщение не было зарегистрировано правильно.

В любом случае фиксация проста: добавьте идентификатор.

[Примечание: Ваша строка имеет другие проблемы также. Его пропавшие без вести runlevels. Я не уверен, каково действие "перезапуска", возможно, это должна быть "переикра". И это действительно "reS" вместо "rcS"?]

3
27.01.2020, 22:06
  • 1
    Первая часть перепутана тем, хотя то, что в учебном руководстве он использует действие "перезапуска" без "идентификатора". Что идентификатор должен я ввести, если я хочу, чтобы тот сценарий оболочки был запущен "вместо init как PID1" (Это - функциональность, которая описана в том учебном руководстве.) Имело бы значение, какой идентификатор я выбираю? –  TopGunCoder 19.11.2013, 20:04
  • 2
    я предполагаю Вас, был правильным, я изменил действие на 'однажды' вместо 'перезапуска' (который, кажется, не документируется нигде), измененный id кому: mine, и удаленный killall5. Это успешно работало ubiformat Мне было нужно после kill -HUP 1. Спасибо за справку –  TopGunCoder 19.11.2013, 20:15

Теги

Похожие вопросы