Создание пакета Debian или скрипта bash? [закрыто]


0

Я начал виртуализацию своего рабочего стола, чтобы упростить разработку ... В настоящее время я использую VirtualBox с Debian, выполняющим роль промежуточного сервера ... Я собираюсь начать процесс создания сервера разработки, который я затем смогу клонировать для каждого нового пользователя / разработчика в нашей команде по мере необходимости (вместо того, чтобы вручную настраивать различные необходимые системы).

Тем не менее, мне любопытно, может ли сценарий bash быть еще лучше ... это документация того, что и как все было настроено (если не считать изменения в файлах conf и т. Д.).

Когда я вызываю Debian apt-get install apache2, он знает, как и где все настроить, чтобы он просто работал ... Я хотел бы что-то похожее для Google App Engine ... пакеты debian вызывают сценарии для создания пользователей по умолчанию и т. Д.?

http://ubuntuportal.com/2011/12/install-and-configure-linux-server-using-a-bash-script-server-easy-install.html

Что-то вроде этого звучит о том, что я хочу сделать ... это распространено среди администраторов Linux?


Если ваша рабочая станция работает под управлением GNU / Linux, то, к чему вы стремитесь, может быть достигнуто с помощью Docker или Virsh, плюс немного сценариев Bash или Ansible для автоматизации. Vagrant также популярен для такого рода вещей.
sampablokuper

Ответы:


0

Во-первых, делать это путём deb-пакета слишком много. Нужно будет отследить все обновления вышестоящих пакетов, а затем повторно применить к ним все пользовательские конфигурации, а также позаботиться о том, чтобы перенести эти пакеты на соответствующие компьютеры (читай: неопределенный ад управления, пока один не выйдет из задания). Или просто игнорируйте все вышестоящие обновления и рискуйте использовать эксплойты безопасности / исправлять ошибки. Я был на этом пути раньше и изучил такую ​​проблему трудным путем, и абсолютно никому не рекомендую.

Однако, прежде чем писать скрипт, лучше узнать, как работают пакеты deb, так как было бы неразумно забивать существующую конфигурацию Debian, а затем вручную вмешиваться, когда процесс обновления deb спрашивает, сохранять ли конфигурацию расположения или использовать вышестоящий. За. Каждый. Машина.

Например, при создании виртуального хоста под Aapche рекомендуется сделать это «способом Debian»: поместить любую конфигурацию виртуального хоста в дополнительный файл в /etc/apache2/sites-available/и добавьте символическую ссылку на /etc/apache2/sites-enabled/ для этих виртуальных хостов нужно активировать, а не просто запихивать все внутрь httpd.conf,

Кроме того, такие системы автоматизации конфигурации, как шеф-повар а также марионетка также излишни. Они были бы полезны для развертывания крупномасштабных систем или когда необходимо частое развертывание. Они не приносят пользы для случаев «забей и забудь», таких как заданный OP (настройка некоторых машин разработчиков).


Спасибо за вклад ... высоко ценится. Я согласен с тем, чтобы делать «путь Debian» - я доверяю сопровождающим, они знают о Debian больше, чем я, - поэтому я стараюсь изо всех сил придерживаться этого. В этом случае, однако, я пытаюсь запустить Google App Engine параллельно (на другом порту), и поэтому я застрял, конфигурируя все вручную ... Любопытно, должен ли я писать сценарий или просто настроить его и сохранить изображение где-нибудь.
Alex.Barylski

1
Обычно сценарий отражает только то, что вы сделали на одной машине, и повторно применяете его на других машинах, так что в любом случае это не большая разница. Однако вы должны иметь в виду одну вещь: если вы храните образ и клонируете его для каждого разработчика, необходимо по крайней мере впоследствии изменить IP-адрес, MAC-адрес и имя узла для каждой клонированной копии.
Abel Cheung

Это то, что мне интересно ... как заставить пользователя изменить своего пользователя / пароль и т. Д. При первой загрузке ...
Alex.Barylski

Можете проверить это Unix & amp; Пост Linux
Abel Cheung
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.