Redhat init лучшая практика сценария

Резервное копирование, резервное копирование, резервное копирование!

Нет Действительно это бесполезно иметь миры самый большой сервер, если Вы не можете восстановить от крупной катастрофы в максимально короткий период времени.

Оборудование

  • Основанный на сервере случай с большим количеством потока воздуха и пространства жесткого диска
  • Двойной/Четырехъядерный ЦП
  • ПОРШЕНЬ НА 4-8 ГБ
  • Источник питания хорошего качества
  • Быстрые диски в RAID-массиве

Резервные опции

  • NAS
  • Лента
  • Внешний жесткий диск (USB/Firewire/eSATA)

Список

Создайте список целей и целей помочь Вам определить свои реальные потребности:

  • Сколько одновременных соединений?
  • Доступ к базе данных требуется?
  • Общедоступное или Частное направление?
  • Совместно использованный или для единственной цели?

После того как у Вас есть некоторые основные ответы, можно затем решить, нуждаетесь ли Вы в 1 сервере или нуждаетесь в нескольких серверах для обеспечения времени работы.

Кроме того, сервер только так же хорош как системные администраторы, поддерживающие его.

3
задан 19 December 2012 в 18:36
3 ответа

Вы можете просто su. Вам не будет нужен пароль, потому что сценарий будет initally работать как корень.

Существует также runuser команда.

Если Вы используете /etc/init.d/functions можно использовать daemon функция, которая имеет опцию для определения пользователя для выполнения как.

Я лично колебался бы к последнему при прочих равных условиях.

9
ответ дан 3 December 2019 в 04:48
  • 1
    Это предпочтительное решение: останьтесь максимально близкими к способу, которым ОС обеспечила работу initscripts. Используйте/etc/init.d/functions. It' ll даже предоставляют Вам зеленый OK и красные сообщения СБОЯ при запуске initscript. –  wzzrd 19 June 2009 в 17:54

Лучшая практика могла бы быть должна использовать sudo и изменить необходимые файлы, чтобы удостовериться, что это происходит автоматически, не будучи запрошенным пароль. Если Вы не возражаете против пароля, находящегося в сценарии, я думаю, что можно сделать что-то как

 echo password | sudo -S -u username command

Что ты делаешь? Возможно, существует лучший путь?

Править

Спасибо TCampbell

0
ответ дан 3 December 2019 в 04:48
  • 1
    При использовании sudo, you' d хотят добавить-u < выполненный как user> и рассмотрите использование опции NOPASSWD для той комбинации пользователя/команды. –  TCampbell 19 June 2009 в 17:09
  • 2
    Хорошо it' s в настоящее время выполненный как корень так su doesn' t требуют любого пароля (редактирование/etc/sudoers позволит sudo работать с паролем также). Но действительно ли это - предпочтительный метод? У нас есть некоторое внутреннее разработанное программное обеспечение, для которого я хочу записать сервисные сценарии. Я don' t хотят, чтобы это программное обеспечение было запущено как корень хотя (по очевидным причинам). –  Garry Harthill 19 June 2009 в 17:40
  • 3
    Я категорически не рекомендую использование sudo в init сценариях. sudo предназначен для пользователи , чтобы сделать материал, не зная пароля root. Так как init скрипт запущен как корень так или иначе, нет никакой потребности использовать sudo. Sudo только напрасно усложнит вещи. –  wzzrd 19 June 2009 в 17:53
  • 4
    Используя sudo в init сценарии перестанет работать, если requiretty будет включен в/etc/sudoers (на по умолчанию в 6 центах и 7 центах) github.com/influxdb/influxdb/issues/800 –  spuder 10 October 2014 в 19:41

Если вы пишете сценарий инициализации в стиле redhat, функция демона имеет параметр - пользователь .

daemon --user=$runasuser --pidfile="$PIDFILE" $yourbinary $youroptions
3
ответ дан 3 December 2019 в 04:48

Теги

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