Поместите свою программу где-нибудь.
Скопируйте и отредактируйте скелетный шаблонный файл для init управления заданиями, найденного в/etc/init.d/skeleton.
Измените этот файл для указания, КАКОЙ runlevel Вы хотите... в Вашем примере, Вы хотите 2,3,4,5, существуют опции наверху файла (в комментариях) для указания на желаемый runlevels
Поместите этот новый файл в/etc/init.d с описательным именем. (myfancyname используемый в примере)
Метод агностика платформы, чтобы протестировать это или позволить/запретить (если Вы использовали скелетный файл),
sudo /etc/init.d/myfancyname start
sudo /etc/init.d/myfancyname stop
sudo /etc/init.d/myfancyname restart
Существует распределение определенные методы для выполнения этих тех же действий, например, использование Debian обновляет-rc.d myfancyname [start|stop|enable|disable...]
Изменение inittab обычно является плохой идеей при завинчивании его система больше не загружается, и затем у Вас есть ДВЕ проблемы. (никакой regex не необходим!)
Добавление сценариев к/etc/init.d/подкаталогу более стандартизировано, может использоваться ПОЧТИ С ЛЮБОЙ разновидностью Linux, вероятно, некоторые *nix's, возможно, некоторый bsd's.
Проблема - то, что личинка ищет /boot/grub/i386-pc/normal.mod
на новом разделе. Поскольку корень того раздела теперь смонтирован в /boot
, файл в настоящее время располагается в /grub/i386-pc/normal.mod
на новом разделе. Любой необходимо переустановить grub
к тому разделу или, как временная мера, можно создать символьную ссылку путем вызова ln -s . /boot/boot
, который позволит файлу быть найденным под любым именем.
Сделайте "ls" для нахождения раздела начальной загрузки (новый, который является), говорят (hdX, Y).
Затем ls (hdX, Y)/usr/lib/grub/i386-pc
Вы видите файл там?
Вероятно, необходимо загрузиться со спасательным CD или usb, и переустановить личинку. Что-то повреждается.
Это происходит потому, что переменная префикса
, которая жестко закодирована в изображении core.img
с помощью grub-install
, больше не соответствует компоновке разделов. Вы можете временно переопределить эту переменную вручную и загрузить GRUB один раз, запустив следующие команды в оболочке восстановления :
set prefix=(hd0,1)/boot/grub
insmod normal
normal
Префиксом должен быть путь к файлам GRUB (grub. cfg и т.д.), обычно это что-то вроде (hdX,Y)/boot/grub
в случае с одним корневым разделом, или (hdX,Y)/grub
, если у вас есть выделенный раздел /boot
. В случае RAID-массива, управляемого mdadm, hdX,Y
скорее всего будет md/xxx
или mduuid/xxxx....
.
Если все пойдет правильно, GRUB должна иметь возможность загрузить свои модули и загрузить свой grub.cfg
, и вы должны иметь возможность запустить свою операционную систему. После загрузки запустите grub-install
для регенерации core.img
(который будет встроен в MBR диска) с новым префиксом.
Дополнительная информация в их (ужасной) документации .