Выложил на SF. vzconfig это небольшой (менее 1к строк) bash скрипт написанный мной для конторских нужд в свете широкого применения виртуализации на базе OVZ. Скрипт публикуется под лицензией GPLv2. По сути vzconfig представляет собой GUI front-end для консольной утилиты администрирования vzctl и использующий ncurses приложение - dialog для визуализации. Прикрутил туда же autotool и дебианизировал. Сделал 2 сборки, соответственно для 2х LTS дистрибутивов Ubuntu: 8.04 hardy & 6.06 dapper.
Язык английский (да простят мне носители языка мой английский). Утилита оснащена дополнительной справкой. В настоящий момент это еще бета версия, ни смотря на активную эксплуатацию его в продакшене, ляпы всплывают регулярно.
Как показала практика выполнения операций через данный GUI и через консоль на прямую через vzctl, часть функций гораздо удобнее выполнять из GUI, а часть с консоли и соотношение удобства по моему субъективному мнению примерно 1 к 1, таким образом оптимальным будет использование и консоли и GUI. Опять же оговорюсь, что это всего лишь моё имхо, слишком широкая тема для холивара. Многие вещи очень сложно визуализировать в консоли в процессе выполнения, либо предварительно нужно набрать ряд вспомогательных команд, например для того, что бы посмотреть текущее значение параметра. С другой стороны многие примитивные операции, такие как start/stop/restart, гораздо проще сделать с консоли, чем бегать по многочисленным пунктам меню. Одна из основных фич повышающая юзабилити это возможность опускания различных, заранее описанных пользователем, конфигураций виртуальной машины.
При написании старался придерживаться принципов наибольшей прозрачности, а так же терминологии и иерархии меню взятой из man страницы vzctl.
Vzconfig, состоит из 3х основных файлов:
1) vzconfig - это сам bash скрипт.
2) vzconfig.conf - файл конфигурации.
3) vzhelp.inc - файл справки.
Основная разработка велась под Ubuntu 8.04, поэтому есть некоторые сомнения в полной обратной совместимости с dialog более ранних версий, потому и в пакете под hardy указана более жесткая зависимость (dialog(>=1.1-20071028)), нежели для dapper.
Попутно нашел баг в dialog, при использовании опций отключающих отдельные клавиши, например --no-ok, «съезжает» счетчик, а следовательно и функционал клавиш, судя по changelog баг появился в версии от 2007/09/30:
+ add "--no-ok" option (patch by Klaus Knopper).
И был внедрен в код не основным автором.
Баг легко обойти отказом от данной фичи и как показало тестирования на различных ОС(CentOS, SuSe), наиболее распространенные дистрибутивы используют более ранние версии, исключением оказалась последняя Ubuntu & Gentoo. bugreport пока что не отправлял, думаю, скоро просто напишу bugfix.
Буду, благодарен за тестирование и любую обратную связь.
Кир, от тебя отдельно хотелось бы получить комментарий.