Являются ли определенные части сценариев запуска необходимыми или просто хорошей практикой?

В настоящее время я изучаю создание сценария запуска в виде системного процесса, находящегося в /etc/init.d/, на моей установке Fedora 14 Linux. Похоже, что следующие две строки являются минимальными требованиями?

#!/bin/bash # chkconfig: 345 85 15 (however on this one I've seen different combos) 

Какова цель этих строк? Есть ли хороший ресурс, который поможет мне понять, как лучше создавать эти и другие строки заголовков для такого файла?

Посмотрите файл docs /usr/share/doc/initscripts-*/sysvinitfiles (В текущем F14, /usr/share/doc/initscripts-9.12.1/sysvinitfiles ). Здесь есть дополнительная документация: http://fedoraproject.org/wiki/Packaging/SysVInitScript .

Строка chkconfig определяет, какие уровни запуска будут запускаться по умолчанию (если есть), и где в процессе запуска они будут упорядочены.

 # chkconfig: <startlevellist> <startpriority> <endpriority> Required. <startlevellist> is a list of levels in which the service should be started by default. <startpriority> and <endpriority> are priority numbers. For example: # chkconfig: 2345 20 80 

И, обратите внимание, что все это становится устаревшим с Fedora 15 и systemd .

Первая строка – « she-bang » и используется для выполнения сценария без передачи его в качестве аргумента командной строки оболочки. Вторая строка – это комментарий и понимается только программой chkconfig . Он используется для обеспечения запуска скрипта на определенном уровне выполнения.